okan
5d22b261a6
fix a misleading comment and function name
2014-08-20 12:33:12 +00:00
okan
01cca3c114
Pull highstack from group_ctx (and useless calculations of); in the one
...
place that we use highstack, replace that usage with a local variable
(for now until stacking is done properly).
2014-08-19 12:47:51 +00:00
okan
1192007171
Get rid of nhidden in group_ctx; it actually never reported correctly
...
since nhidden wasn't incremented nor decremeted in all the right places,
thus confusing matters. We don't need to carry a count around, so just
use a local variable in the one place we need one to supply
XRestackWindows().
2014-08-18 13:57:57 +00:00
okan
6798e3dde3
Make sure we cycle through existing client's group membership and set
...
the hidden state on the group; important to know group hidden state
after a re-exec or restart of cwm (as easily seen in group menu).
2014-02-08 02:49:30 +00:00
okan
1208225fbd
Replace a few hand rolled loops with like tailq loops.
2014-02-08 02:40:43 +00:00
okan
3cb81ebeea
If _NET_WM_DESKTOP is set to -1 during client creation, place the client into
...
group 0 (nogroup); solves problem initially discovered by oga@nicotinebsd with
tint2. A clientmessage *after* client creation already handles this case.
Go further and assign every client to a group; in non-sticky mode, group 0
(nogroup) and sticky mode, the active group. In both cases, autogroup will
override the group assignment. Removing a group from a client always places
the client back into group 0 (nogroup). Autogroup can also assign a client to
group 0 (nogroup) to keep a client always visible (unless of course one opts to
hide all clients).
2014-02-07 18:09:54 +00:00
okan
c7e2ee5dd5
correct arguments and drop the cast.
...
sanity check by oga@nicotinebsd
2014-01-24 15:08:06 +00:00
okan
720b5452aa
Add a function that adds an entry to a menuq, normalizing a common code
...
path; from Tiago Cunha.
2014-01-20 18:58:03 +00:00
okan
23a1abdd8a
Stash Class and WM Hints in client_ctx
2013-12-11 14:09:21 +00:00
okan
a88b8c1363
a few err->errx since we don't have error messages here; from Tiago Cunha
2013-10-17 13:59:10 +00:00
okan
6ac51b8e41
unify type; no change
2013-10-03 13:51:57 +00:00
okan
4119b5c065
simplify atom handling; allows us to limit to one round-trip to server
...
for gathering Atoms.
2013-07-15 14:50:44 +00:00
okan
dd10412804
since the root and event window are the same in the case of a button
...
event on the screen's root window, there's no need to pass down the
entire XButtonEvent event, at least to group_menu(), the only callback
which takes an argument at this point; instead use the already populated
screen.
2013-07-09 01:24:49 +00:00
okan
fe439f2b96
replace a few (x)malloc with (x)calloc to prevent potential integer
...
overflows; from Tiago Cunha
2013-07-08 15:48:16 +00:00
okan
1db7cc2a18
remove group in client_delete directly.
2013-05-06 16:03:11 +00:00
okan
6e8f1f2955
type fix
2013-04-30 21:10:23 +00:00
okan
a899d267fe
add conf_ignore and move group_make_autogroup to conf_autogroup to match.
2013-04-17 13:30:38 +00:00
okan
62a685d82a
reverse logic to make it like the others
2013-04-08 13:05:27 +00:00
okan
28b54db221
consistency
2013-04-08 13:02:31 +00:00
okan
670207f79b
zap stray whitespace
2013-04-05 17:07:25 +00:00
okan
47aa485fa2
put back r1.68 which allows an empty group to be sticky; behavior
...
change noticed by Thomas Pfaff and diagnosis why we need to
group_setactive in this case by Alexander Polakov. replace XXX with
a useful comment.
2013-01-13 13:55:12 +00:00
okan
62acbee4b3
set the initial group to '1', missed by recent off-by-one group
...
numbering re-work; discovered the hard way by sthen@.
ok sthen@
2013-01-10 15:28:11 +00:00
okan
afb3648440
after we toggle a group hidden, it makes no sense to set it as active
...
(in sticky or non-stick mode), regardless of existing clients assigned
to that group; oga marked this bit XXX in -r1.34 for it didn't seem make
sense then either.
pulled from a diff from from Alexander Polakov.
2013-01-01 14:50:01 +00:00
okan
0957fbbee2
make num of groups no longer off-by-one; from Alexander Polakov
...
note that a re-exec of cwm will not rewrite the group number atom of
*existing* clients, so they will remain off-by-one until each client has
its atom updated, or of course a restart of X.
2013-01-01 14:19:56 +00:00
okan
82e8ec4245
replace client highlight with a client flag
2012-12-17 17:48:57 +00:00
okan
3a3e0383b2
create and use menuq_clear() helper; from Tiago Cunha
2012-12-17 14:32:39 +00:00
okan
560acb43fc
specific last match for autogroup; few iterations with Kent Spillner.
2012-11-29 04:25:49 +00:00
okan
28224ff830
sort
2012-11-09 03:52:02 +00:00
okan
04d4ed7b7e
fix some warnings; inspired by a diff from Thordur Bjornsson.
2012-11-08 20:18:19 +00:00
okan
76b0874b4c
get rid of the xfree() wrapper around free(); from Tiago Cunha.
2012-11-07 20:34:39 +00:00
okan
3a45879d76
replace with xu_getprop wrapper used everywhere else.
2012-09-09 20:52:57 +00:00
okan
c8a17ef536
remove a redundant assignment and another one up.
2012-07-08 01:00:24 +00:00
okan
f98e123bfc
re-implement atom handing; makes for a normalized and more consistent
...
separation between cwm and ewmh. seen by a few.
2012-07-03 13:49:03 +00:00
okan
956c47dbeb
get rid of more stray lines/spaces
2012-05-16 21:57:21 +00:00
okan
b4d582c6ef
fix comment
2012-05-16 01:10:11 +00:00
okan
fd9b83a232
check if we're in the group already, else multiple calls to
...
group_movetogroup() on one client will still increment nhidden if the
group is hidden.
found the hard way by Thomas Jeunet and fix from Alexander Polakov -
thanks to both!
ok oga@
2011-12-29 20:48:38 +00:00
okan
f60f630b81
use xfree instead of free since strings is allocated with xmalloc; from
...
dhill
ok oga@
2011-10-12 15:43:50 +00:00
okan
ba3dfcf7bd
move client to group (movetogroup) and hide client only if group is
...
already hidden (suggested behavior from Alexander Polakov).
ok sthen oga
2011-09-19 07:23:03 +00:00
okan
b96caa16e6
repair groupcycle (broke after cycle-in-group support added more flags);
...
found by and fix from Thomas Pfaff.
ok oga@
2011-09-13 08:37:49 +00:00
okan
f51f3cb9c2
We are inconsistent when it comes to function returns, so just go all
...
the way with the cwm specific parts.
ok oga@
2011-07-25 15:10:24 +00:00
okan
c8cd94882d
tag and comment cleanup; ok oga@
2011-05-11 13:53:51 +00:00
tedu
0884d38e3b
we lose track of highstack somewhere, so recompute it before we need it.
...
fixes a crash reported by christian neukirchen. ok okan
2011-02-13 17:25:20 +00:00
okan
917bce4b8d
spacing nits
2010-09-25 20:01:27 +00:00
okan
2440efad06
revert -r1.45 of group.c (log was: fix window name and class to match
...
cwmrc(5)). instead, fix cwmrc(5) to match the old behavior which also
happens to match the example config, of which many have based their
configs; this also nicely matches the output of xprop(1).
clean-up of variable names as a separate commit.
suggested by sthen (and something we should have done initially).
discussed with and ok oga@
2010-07-30 12:28:19 +00:00
okan
2a5e1791d4
fix window name and class to match cwmrc(5); from Holger Mikolon - thanks!
...
ok oga@
2010-06-28 12:29:04 +00:00
okan
b12e6fc5cd
clean up a few xu_* functions to just accept what they need (Window).
...
ok oga@
2010-04-11 16:51:26 +00:00
okan
ccb207a8a8
pull all non-X11 headers from calmwm.h and place them only where they
...
are required.
encourged to go all the way by oga@
2009-12-15 04:10:42 +00:00
okan
09a2d7fb98
spacing
2009-12-15 03:38:11 +00:00
okan
b27c3c22b5
pull these headers only into files that need them.
...
ok oga@
2009-12-15 03:34:34 +00:00
okan
b6b7d273d4
merge the 2 common header files; specific includes to be pulled out as
...
separate commits.
ok oga@
2009-12-15 03:24:36 +00:00