okan
d796bd3619
no need for calloc(1,.. here, malloc is fine since we initialize
2014-10-08 15:31:01 +00:00
okan
72676125b1
make group_init work like other *_init's
2014-10-08 12:48:51 +00:00
okan
b9aa350408
Move stuff that doesn't belong in group_init; while here, explicitly
...
initialize hideall and cycling.
2014-09-23 13:45:48 +00:00
okan
0fefd96f3e
Remove duplicate client queue (mruq); instead, remove and take the
...
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).
2014-09-08 20:11:22 +00:00
okan
c4e86dacb9
more style nits
2014-09-07 19:27:30 +00:00
okan
ae092d4229
screen_fromroot -> screen_find
2014-09-07 17:38:38 +00:00
okan
4485c34f15
gc->hidden has never consistently kept track of a group's state;
...
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.
2014-08-24 15:37:45 +00:00
okan
b7cd8019f2
Purely mechanical; unify 'num', 'no' and 'shortcut'.
2014-08-20 15:15:29 +00:00
okan
2c1d1423f8
whitespace
2014-08-20 12:35:39 +00:00
okan
875128a0cb
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
16de3733be
Introduce a region queue and replace screen's XineramaScreenInfo; we
...
still use Xinerama to populate the regions per screen, but will switch
at a more appropriate time.
2014-02-03 21:07:47 +00:00
okan
4c3987dcc1
make this XQueryTree like the other
2014-02-03 20:29:05 +00:00
okan
ea2abae9f3
Move redundant bits from screen_init (while dealing with existing
...
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.
2014-02-03 20:20:39 +00:00
okan
03847f1c2e
No need to store screen colormap and visual; rather just use the X
...
macros in the one place they are needed.
2014-02-02 16:29:04 +00:00
okan
49f2f86dbd
Unlike free(3), XFree(3) can't be passed a NULL pointer.
2014-02-02 16:13:50 +00:00
okan
beb28798ef
move some init up and shed some blank lines
2014-01-27 15:13:09 +00:00
okan
72ccee09ff
use consistent types
2014-01-03 15:29:06 +00:00
okan
4104232e02
Teach screen_find_xinerama() to apply gap only when told to do so;
...
adjust callers. Needed for an upcoming feature.
2013-12-13 22:39:13 +00:00
okan
537fe7febb
move Cursors into conf.
2013-06-17 17:11:10 +00:00
okan
bd38e60d03
- configure menuwin with the screen, then create the xft drawable using
...
the menu window since that's the only place on which we draw
- elminate the need to change the drawable on every font draw
2013-05-20 20:21:04 +00:00
okan
7ab1469590
new -> init
2013-05-11 22:01:07 +00:00
okan
f00ab96178
replace conf_{gap,color,font} with conf_screen since really we are
...
configuring the screen *after* parsing, just as we do a conf_client on
client manage.
2013-05-11 21:46:27 +00:00
okan
b0af7028d0
group conf_* init functions
2013-04-30 21:12:20 +00:00
okan
87e16df157
use an int in screen_init and avoid needing to cast for screen number (which).
2013-04-29 00:56:47 +00:00
okan
0b6abd364f
push Screenq into screen_init
2013-04-12 14:46:30 +00:00
okan
62ff18b6d7
teach screen_find_xinerama() about gap and adjust (simplify) callers;
...
menu becomes gap-aware for free.
2013-01-08 04:12:51 +00:00
okan
5c111b8c13
revert previous
2013-01-07 21:45:24 +00:00
okan
0fc885f41e
unbreak xinerama support from r1.41 for panning setups
2013-01-07 20:32:19 +00:00
okan
68cdbb853d
merge in Xinerama screen query; no functional change.
2013-01-02 18:11:23 +00:00
okan
10e814fedf
have screen_find_xinerama() return struct geom *reliably* instead of
...
XineramaScreenInfo; simplifies goop around the callers.
2013-01-02 16:26:34 +00:00
okan
9a1820657c
expand CHILDMASK
2012-12-18 18:39:55 +00:00
okan
2410477c9d
stash the default screen visual and colormap in screen_ctx
2012-12-17 18:34:06 +00:00
okan
ddf27615e6
x_setupscreen -> screen_init; no functional change.
2012-11-29 03:54:46 +00:00
okan
4f78cb6835
sort
2012-11-09 03:52:02 +00:00
okan
9e50f2e028
Further simplify Xinerama init and re-init on XRR events.
...
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.
2012-07-18 21:53:22 +00:00
okan
8a8244095d
check value
2012-07-16 01:42:00 +00:00
okan
147b66e3ac
move the HasXinerama check into screen_find_xinerama and simplify logic;
...
moves closer to logic in menu code.
2012-07-16 01:36:30 +00:00
okan
6ee7c6534f
convert xmax/ymax uses to view geometry.
2012-07-13 15:21:35 +00:00
okan
3f2059e461
introduce screen "view" area and "work" area (gap applied) to simplify
...
various blocks that require understanding the screen geometry.
2012-07-13 14:18:04 +00:00
okan
37bdf57a02
querying for Xinerama should be done per display, not per screen, so
...
move chuck to display init; allows some shuffling to occur limiting
screen_init_xinerama()'s scope while keeping order intact.
2012-07-06 14:18:00 +00:00
okan
43b628a3d0
the display's width and height are updated after an XRandR event so we
...
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.
2012-07-05 17:35:13 +00:00
okan
d24974f4cb
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
4fb00eca7b
tag and comment cleanup; ok oga@
2011-05-11 13:53:51 +00:00
okan
f109779994
(0,0) is also inside in the screen; from Sviatoslav Chagaev.
...
ok oga@
2011-03-22 10:54:42 +00:00
okan
3d3e2130f8
- allow per-screen gap; not (yet) user configurable.
...
- teach _NET_WORKAREA about gap.
ok oga@
2010-01-27 03:04:50 +00:00
okan
ba93a73ad3
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
9dfa8ad14a
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
oga
d0275e11af
add _NET_WORKAREA. for now we ignore the gap, this'll change soonish.
...
ok okan@
2009-12-11 18:09:16 +00:00
oga
3ec3bf2582
another int/long fixup that was giving dodgy property values on amd64, shame on
...
me for not reading xlibs (appauling) documentation more closely.
ok okan@
2009-12-11 17:57:38 +00:00
oga
a53f6f767e
Implement _NET_CURRENT_DESKTOP, _NET_DESKTOP_VIEWPORT and
...
_NET_DESKTOP_GEOMETRY.
ok okan@
2009-12-10 23:14:58 +00:00