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
aaca5b7e45
fix backwards example (after r1.45 of group.c); noticed by phessler@
...
ok oga@ phessler@
2010-07-23 15:13:00 +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
85a53083cb
initialize nitems
...
ok oga@
2010-05-22 22:32:08 +00:00
okan
72e6d2d0a9
replace XFetchName() with something more intelligent which attempts to
...
use the appropriate netwm Atom first, as well as deal with utf8.
slightly different incarnation tested by sthen@ and ajacoutot@ - thanks!
ok oga@
2010-05-22 22:10:31 +00:00
oga
a292c96977
grab events on the root window *before* we look for existing windows.
...
This closes a race we were hitting often where stuff started right
before cwm may not get noticed and not have borders.
ok okan@. Prompted by something todd noticed.
2010-04-12 16:17:46 +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
schwarze
46c9b5cbae
Fix formatting errors breaking the xenocara mandoc(1) build:
...
* .Bl may only have .It children
* .SH requires an argument
* blank lines are illegal outside literal context
Now "cd /usr/xenocara && make man" succeeds,
but unfortunately, that covers a minority of X11 manuals only.
ok matthieu@
2010-03-20 20:13:27 +00:00
okan
507480a695
preserve labels after an edit action is aborted; extending the menu
...
struct just for this is the least intrusive approach until the menu code
is reviewed.
inspired by Thomas Pfaff's report on tech@
ok oga@
2010-02-10 01:23:05 +00:00
stsp
c4a97053cd
Honour program-specified window position in size hints when placing windows.
...
Makes XMMS windows appear as expected.
ok okan, oga
2010-02-02 19:28:46 +00:00
okan
e88bda0df5
- allow per-screen gap; not (yet) user configurable.
...
- teach _NET_WORKAREA about gap.
ok oga@
2010-01-27 03:04:50 +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
2ad2b5f31d
rid ourselves of these functional macros; convert to real functions.
...
ok oga@
2009-12-15 03:26:22 +00:00
okan
597cb25820
mostly irrelevant now, so remove.
...
ok oga@
2009-12-15 03:25:22 +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
oga
49661d405b
kill _CWM_GRP atom setting. The netwm stuff does us well enough now that
...
it's superfluous.
ok okan@
2009-12-14 16:39:01 +00:00
oga
3b87bdb047
add _NET_WORKAREA. for now we ignore the gap, this'll change soonish.
...
ok okan@
2009-12-11 18:09:16 +00:00
oga
28e94b2fbc
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
a0ec2515e9
implement support for _NET_WM_DESKTOP properties on windows.
...
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@
2009-12-11 17:55:42 +00:00
oga
b35cbf81d8
Implement _NET_DESKTOP_NAMES, this one was a bit tricky since thespec
...
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@
2009-12-11 17:51:42 +00:00
oga
9b04930f24
Implement _NET_VIRTUAL_ROOTS (just clear it, we don't use that technique)
...
and _NET_SHOWING_DESKTOP (we're never doing so right now).
only three informational root-window hints to go.
ok okan@
2009-12-10 23:21:26 +00:00
oga
a7c3a7cac3
Implement _NET_CURRENT_DESKTOP, _NET_DESKTOP_VIEWPORT and
...
_NET_DESKTOP_GEOMETRY.
ok okan@
2009-12-10 23:14:58 +00:00
oga
134e777cf0
finish unfucking the screen_ctx handling.
...
remove screen_current() it was utterly bogus when nscreens > 1.
pass a fake client_ctx in the case where there's no client and the
kbfunc or mousefunc doesn't need a real one, it just contains the
current screen, modify these functions so that they pass down the screen
context to their callees.
make groups per screen, it's the only way it makes sense in this regard.
ok okan@.
2009-12-10 17:16:51 +00:00
okan
ee7df6a95f
start fixing screen_ctx usage, for it is utterly broken. bring font
...
into screen_ctx and start passing screen_ctx around to in order get rid
of Curscreen; fixup per-screen config colors the same way.
diff mostly from oga@, with a bit harsher reaction to the state of screen_ctx.
"please commit" oga@
2009-12-08 16:52:17 +00:00
oga
aa88d5848e
Implement _NET_NUMBER_OF_DESKTOPS, currently this is statically 9 and
...
unchangable. the group code needs some cleaning up before this will be a
bit less hackish.
ok okan@
2009-12-07 23:19:51 +00:00
oga
728d2a40dd
support _NET_CLIENT_LIST.
...
the x property api doesn't let you remove one entry from an X property
array, so client_remove is kinda expensive, but there's no real way
around that..
ok okan@
2009-12-07 22:46:15 +00:00
oga
3c60d854db
Implement _NET_ACTIVE_WINDOW. for now just the informational hint is
...
supported, the client message to change this will be supported when all
informational hints are working.
ok okan@
2009-12-07 22:21:59 +00:00
okan
3e309894c1
introduce the beginnings of netwm support, minimally and correctly;
...
allows java to be happy, but additionally stops others from whinning
about a non-netwm complaint wm. more to come.
written a few times; this one includes a clever hack from oga@ to
populate _NET_SUPPORTED.
ok oga@
2009-12-07 21:20:52 +00:00
okan
46630531f8
fix off-by-one where a mere click would select the first item inside a menu
...
from Thomas Pfaff
ok oga@
2009-12-07 19:48:08 +00:00
okan
ab4d36531c
we already have sc from the passed cc, so just used that instead.
...
ok oga@
2009-12-07 19:45:36 +00:00
okan
892e1e1c0d
be consistent
...
ok oga@
2009-12-07 19:44:31 +00:00
okan
4e2014863b
remove unused extern
...
ok oga@
2009-12-07 19:42:59 +00:00
tobias
42bf29fb20
style (whitespaces)
...
ok oga, okan
2009-11-28 17:52:12 +00:00
tobias
afaf69cefc
Corrected grammar in comment.
...
ok (and better style suggestion by) oga, okan
2009-11-22 21:38:50 +00:00
oga
85d8697676
With Xinerama enabled, the borders of a maximized window will show up on
...
all adjacent screens. This patch hides the borders while the window is
maximized.
From Bertrand Janin; thanks!
ok okan@
2009-09-25 15:57:49 +00:00
okan
4af6a60d84
re-introduce the intention of the change from rev 1.4 in menu.c here
...
instead, by moving the check for '\0' to only the places that it
matters. hint and 50% of the diff from oga@, prodded by todd@
ok oga@
2009-09-05 16:06:15 +00:00
tobias
38ad2e1d9c
style
...
ok oga
2009-09-05 14:10:11 +00:00
okan
7295c51155
unroll the CCTOSC macro; from Thomas Pfaff
...
ok oga@
2009-08-27 01:38:08 +00:00
okan
b9f8367089
static; ok oga@
2009-08-25 12:05:11 +00:00
okan
0a44f2e5c4
we are not doing access control here, so replace the "check if file is
...
executable" goo with access(2).
originally from jacekm@ long time ago.
"i can live with that" oga@
2009-08-25 02:02:59 +00:00
oga
1968561fcc
Reduce duplciation of code for checking modifiers in key/mouse bindings.
...
shaves a bunch of bytes.
ok okan@
2009-08-25 01:44:39 +00:00
oga
95f65b8be6
Instead of calling conf_bind*() 50 gazillion times in a row, store an
...
array with all the parameters in and just loop over that to setup the
default keybindings - it's so much easier to read.
okan@ "love love love"ed this
2009-08-25 01:42:05 +00:00
oga
8fd4ff1c7c
Instead of messing around everytime we do a resize, just clamp the
...
resize increments to a minimum of one, and use it unconditionally.
"you've convinced me, do it!" okan@
2009-08-25 01:32:40 +00:00
okan
fcb2684db1
unroll macro; ok oga@
2009-08-25 01:26:09 +00:00
oga
e2b1cb98c1
Add a keybinding to allow horizontal maximisation of a window (CMS-enter).
...
based on a diff by Thomas Pfaff; thanks!
ok okan@
2009-08-24 23:54:41 +00:00
okan
028a1778db
bring together gathering, calculating and applying of size hints;
...
additionally, respect aspect ratio hints.
ok oga@
2009-08-24 23:49:04 +00:00
oga
09d88f4a18
Instead of having a function that just calls TAILQ_INIT on a global, use
...
TAILQ_HEAD_INITIALIZER() and drop the function.
ok okan@
2009-08-24 21:22:48 +00:00
oga
e7f0d63413
instead of checking for flags in the client context, then removing them.
...
e.g.:
if (flags & flags_we_care_about)
flags &= ~(flags_we_care_about);
just whack the flags unconditionally, it's simpler.
okan@ agrees.
2009-08-24 17:04:39 +00:00