summary refs log tree commit diff
path: root/group.c
Commit message (Collapse)AuthorAgeFilesLines
...
* | Replace a few hand rolled loops with like tailq loops.okan2014-02-081-16/+12
| |
* | If _NET_WM_DESKTOP is set to -1 during client creation, place the client intookan2014-02-071-28/+12
| | | | | | | | | | | | | | | | | | | | | | | | 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).
* | correct arguments and drop the cast.okan2014-01-241-1/+1
| | | | | | | | sanity check by oga@nicotinebsd
* | Add a function that adds an entry to a menuq, normalizing a common codeokan2014-01-201-9/+2
| | | | | | | | path; from Tiago Cunha.
* | Stash Class and WM Hints in client_ctxokan2013-12-111-3/+3
| |
* | a few err->errx since we don't have error messages here; from Tiago Cunhaokan2013-10-171-3/+3
| |
* | unify type; no changeokan2013-10-031-1/+1
| |
* | simplify atom handling; allows us to limit to one round-trip to serverokan2013-07-151-3/+3
| | | | | | | | for gathering Atoms.
* | since the root and event window are the same in the case of a buttonokan2013-07-091-4/+1
| | | | | | | | | | | | | | 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.
* | replace a few (x)malloc with (x)calloc to prevent potential integerokan2013-07-081-2/+2
| | | | | | | | overflows; from Tiago Cunha
* | remove group in client_delete directly.okan2013-05-061-11/+0
| |
* | type fixokan2013-04-301-2/+1
| |
* | add conf_ignore and move group_make_autogroup to conf_autogroup to match.okan2013-04-171-21/+0
| |
* | reverse logic to make it like the othersokan2013-04-081-8/+4
| |
* | consistencyokan2013-04-081-0/+1
| |
* | zap stray whitespaceokan2013-04-051-1/+1
| |
* | put back r1.68 which allows an empty group to be sticky; behaviorokan2013-01-131-1/+5
| | | | | | | | | | | | 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.
* | set the initial group to '1', missed by recent off-by-one groupokan2013-01-101-1/+1
| | | | | | | | | | | | numbering re-work; discovered the hard way by sthen@. ok sthen@
* | after we toggle a group hidden, it makes no sense to set it as activeokan2013-01-011-5/+1
| | | | | | | | | | | | | | | | (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.
* | make num of groups no longer off-by-one; from Alexander Polakovokan2013-01-011-5/+5
| | | | | | | | | | | | 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.
* | replace client highlight with a client flagokan2012-12-171-6/+4
| |
* | create and use menuq_clear() helper; from Tiago Cunhaokan2012-12-171-4/+1
| |
* | specific last match for autogroup; few iterations with Kent Spillner.okan2012-11-291-6/+8
| |
* | sortokan2012-11-091-1/+1
| |
* | fix some warnings; inspired by a diff from Thordur Bjornsson.okan2012-11-081-2/+2
| |
* | get rid of the xfree() wrapper around free(); from Tiago Cunha.okan2012-11-071-3/+3
| |
* | replace with xu_getprop wrapper used everywhere else.okan2012-09-091-12/+6
| |
* | remove a redundant assignment and another one up.okan2012-07-081-2/+1
| |
* | re-implement atom handing; makes for a normalized and more consistentokan2012-07-031-38/+17
| | | | | | | | separation between cwm and ewmh. seen by a few.
* | get rid of more stray lines/spacesokan2012-05-161-2/+2
| |
* | fix commentokan2012-05-161-2/+3
| |
* | check if we're in the group already, else multiple calls tookan2011-12-291-1/+3
| | | | | | | | | | | | | | | | | | | | 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@
* | use xfree instead of free since strings is allocated with xmalloc; fromokan2011-10-121-1/+1
| | | | | | | | | | | | dhill ok oga@
* | move client to group (movetogroup) and hide client only if group isokan2011-09-191-1/+5
| | | | | | | | | | | | already hidden (suggested behavior from Alexander Polakov). ok sthen oga
* | repair groupcycle (broke after cycle-in-group support added more flags);okan2011-09-131-5/+5
| | | | | | | | | | | | found by and fix from Thomas Pfaff. ok oga@
* | We are inconsistent when it comes to function returns, so just go allokan2011-07-251-3/+3
| | | | | | | | | | | | the way with the cwm specific parts. ok oga@
* | tag and comment cleanup; ok oga@okan2011-05-111-1/+1
| |
* | we lose track of highstack somewhere, so recompute it before we need it.tedu2011-02-131-0/+5
| | | | | | | | fixes a crash reported by christian neukirchen. ok okan
* | spacing nitsokan2010-09-251-4/+5
| |
* | revert -r1.45 of group.c (log was: fix window name and class to matchokan2010-07-301-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | 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@
* | fix window name and class to match cwmrc(5); from Holger Mikolon - thanks!okan2010-06-281-3/+2
| | | | | | | | ok oga@
* | clean up a few xu_* functions to just accept what they need (Window).okan2010-04-111-1/+1
| | | | | | | | ok oga@
* | pull all non-X11 headers from calmwm.h and place them only where theyokan2009-12-151-0/+9
| | | | | | | | | | | | are required. encourged to go all the way by oga@
* | spacingokan2009-12-151-3/+1
| |
* | pull these headers only into files that need them.okan2009-12-151-0/+2
| | | | | | | | ok oga@
* | merge the 2 common header files; specific includes to be pulled out asokan2009-12-151-1/+0
| | | | | | | | | | | | separate commits. ok oga@
* | kill _CWM_GRP atom setting. The netwm stuff does us well enough now thatoga2009-12-141-16/+1
| | | | | | | | | | | | it's superfluous. ok okan@
* | implement support for _NET_WM_DESKTOP properties on windows.oga2009-12-111-6/+25
| | | | | | | | | | | | | | | | | | | | | | | | it works kinda like _CWM_GRP, which we added to aid restarts a while ago, but it's standardised and clients are specifically allowed to set it to request a desktop. for noe we leave _CWM_GRP support in, but its days are now numbered. while i'm here fixup an int/long mixup with an earlier diff. ok okan@
* | Implement _NET_DESKTOP_NAMES, this one was a bit tricky since thespecoga2009-12-111-9/+116
| | | | | | | | | | | | | | | | | | | | says that a pager can change the property at any time (most need a clientmessage). So deal with property updates. Needed to shuffle some of the other code around since we can't just use shortcut_to_name[] everywhere now. ok okan@
* | Implement _NET_VIRTUAL_ROOTS (just clear it, we don't use that technique)oga2009-12-101-1/+14
| | | | | | | | | | | | | | | | and _NET_SHOWING_DESKTOP (we're never doing so right now). only three informational root-window hints to go. ok okan@