summary refs log tree commit diff
path: root/screen.c
Commit message (Collapse)AuthorAgeFilesLines
* Switch to limits.h; replace MAXPATHLEN and MAXHOSTNAMELEN with PATH_MAXokan2015-01-191-1/+2
| | | | | | and HOST_NAME_MAX+1, respectively. ok doug@
* no need for calloc(1,.. here, malloc is fine since we initializeokan2014-10-081-1/+2
|
* make group_init work like other *_init'sokan2014-10-081-1/+3
|
* Move stuff that doesn't belong in group_init; while here, explicitlyokan2014-09-231-0/+9
| | | | initialize hideall and cycling.
* Remove duplicate client queue (mruq); instead, remove and take theokan2014-09-081-1/+1
| | | | | | global Clientq and place it inside screen_ctx since every client belongs to a screen, then use the same per screen clientq to track stacking order (the sole reason for mruq).
* more style nitsokan2014-09-071-5/+5
|
* screen_fromroot -> screen_findokan2014-09-071-2/+2
|
* gc->hidden has never consistently kept track of a group's state;okan2014-08-241-1/+0
| | | | | | | | | | group_show() and group_hide() are not the only ways a group can change state - if all clients in a group are either hidden or unhidden, then that group's state should change, as well as the various EWMH ways. Instead of trying to keep track in a wide variety of places, simply query the clients in a group before needing to take action based on the group's state. Solves long standing confusion of when a group is hidden or not.
* Purely mechanical; unify 'num', 'no' and 'shortcut'.okan2014-08-201-3/+3
|
* whitespaceokan2014-08-201-1/+1
|
* Make sure we cycle through existing client's group membership and setokan2014-02-081-0/+1
|\ | | | | | | | | 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).
* | Introduce a region queue and replace screen's XineramaScreenInfo; weokan2014-02-031-22/+26
| | | | | | | | | | still use Xinerama to populate the regions per screen, but will switch at a more appropriate time.
* | make this XQueryTree like the otherokan2014-02-031-12/+10
| |
* | Move redundant bits from screen_init (while dealing with existingokan2014-02-031-11/+5
| | | | | | | | | | | | clients) directly into client_init, performing the X roundtrip only once. With the previous change in maprequest, this moves decision making into one place for creating new clients.
* | No need to store screen colormap and visual; rather just use the Xokan2014-02-021-2/+0
| | | | | | | | macros in the one place they are needed.
* | Unlike free(3), XFree(3) can't be passed a NULL pointer.okan2014-02-021-2/+2
| |
* | move some init up and shed some blank linesokan2014-01-271-5/+3
| |
* | use consistent typesokan2014-01-031-2/+2
| |
* | Teach screen_find_xinerama() to apply gap only when told to do so;okan2013-12-131-5/+11
| | | | | | | | adjust callers. Needed for an upcoming feature.
* | move Cursors into conf.okan2013-06-171-1/+1
| |
* | - configure menuwin with the screen, then create the xft drawable usingokan2013-05-201-1/+0
| | | | | | | | | | the menu window since that's the only place on which we draw - elminate the need to change the drawable on every font draw
* | new -> initokan2013-05-111-1/+1
| |
* | replace conf_{gap,color,font} with conf_screen since really we areokan2013-05-111-3/+1
| | | | | | | | | | configuring the screen *after* parsing, just as we do a conf_client on client manage.
* | group conf_* init functionsokan2013-04-301-5/+3
| |
* | use an int in screen_init and avoid needing to cast for screen number (which).okan2013-04-291-1/+1
| |
* | push Screenq into screen_initokan2013-04-121-1/+6
| |
* | teach screen_find_xinerama() about gap and adjust (simplify) callers;okan2013-01-081-5/+5
| | | | | | | | menu becomes gap-aware for free.
* | revert previousokan2013-01-071-2/+2
| |
* | unbreak xinerama support from r1.41 for panning setupsokan2013-01-071-2/+2
| |
* | merge in Xinerama screen query; no functional change.okan2013-01-021-22/+10
| |
* | have screen_find_xinerama() return struct geom *reliably* instead ofokan2013-01-021-5/+13
| | | | | | | | XineramaScreenInfo; simplifies goop around the callers.
* | expand CHILDMASKokan2012-12-181-2/+3
| |
* | stash the default screen visual and colormap in screen_ctxokan2012-12-171-0/+2
| |
* | x_setupscreen -> screen_init; no functional change.okan2012-11-291-0/+54
| |
* | sortokan2012-11-091-1/+1
| |
* | Further simplify Xinerama init and re-init on XRR events.okan2012-07-181-15/+5
| | | | | | | | | | | | | | | | | | | | | | While testing for Xinerama during setup was done display-wide, each time XineramaQueryScreens() is called either in start-up or due to an XRR event, the library re-tests for the Xinerama extension anyway before moving on; so the initial test is redundant and allows another global to go away with one other change: always fill in sc->xinerama (and _no), regardless of the success of malloc in XineramaQueryScreens(), and use it to see if Xinerama dimensions exist when asked by client and/or menu code.
* | check valueokan2012-07-161-1/+1
| |
* | move the HasXinerama check into screen_find_xinerama and simplify logic;okan2012-07-161-0/+3
| | | | | | | | moves closer to logic in menu code.
* | convert xmax/ymax uses to view geometry.okan2012-07-131-3/+0
| |
* | introduce screen "view" area and "work" area (gap applied) to simplifyokan2012-07-131-0/+10
| | | | | | | | various blocks that require understanding the screen geometry.
* | querying for Xinerama should be done per display, not per screen, sookan2012-07-061-0/+8
| | | | | | | | | | move chuck to display init; allows some shuffling to occur limiting screen_init_xinerama()'s scope while keeping order intact.
* | the display's width and height are updated after an XRandR event so weokan2012-07-051-3/+3
| | | | | | | | | | | | don't need to pass down the new values to screen_update_geometry(); so just read the width/height values directly for both uses of screen_update_geometry(). prep for further changes in this area.
* | re-implement atom handing; makes for a normalized and more consistentokan2012-07-031-18/+4
| | | | | | | | separation between cwm and ewmh. seen by a few.
* | tag and comment cleanup; ok oga@okan2011-05-111-1/+1
| |
* | (0,0) is also inside in the screen; from Sviatoslav Chagaev.okan2011-03-221-2/+2
| | | | | | | | ok oga@
* | - allow per-screen gap; not (yet) user configurable.okan2010-01-271-5/+5
| | | | | | | | | | | | - teach _NET_WORKAREA about gap. ok oga@
* | pull all non-X11 headers from calmwm.h and place them only where theyokan2009-12-151-0/+10
| | | | | | | | | | | | are required. encourged to go all the way by oga@
* | merge the 2 common header files; specific includes to be pulled out asokan2009-12-151-1/+0
| | | | | | | | | | | | separate commits. ok oga@
* | add _NET_WORKAREA. for now we ignore the gap, this'll change soonish.oga2009-12-111-1/+14
| | | | | | | | ok okan@
* | another int/long fixup that was giving dodgy property values on amd64, shame onoga2009-12-111-1/+1
| | | | | | | | | | | | me for not reading xlibs (appauling) documentation more closely. ok okan@