2f8639d37b
kill another leftover prototype.
...
ok okan@
2008-07-22 19:52:54 +00:00
556f7a0871
Put back the initialisation of gc in group_cycle. No cookie for okan.
...
Reported by Dan Harnett, thanks!
2008-07-18 15:40:52 +00:00
2798cdc9a7
move client_vertmaximize to a more sensible location, purely for readability.
...
"don't mind at all" oga@
2008-07-15 22:12:09 +00:00
8afabd6c55
save an X call and use what we already have stored.
...
ok oga@
2008-07-15 22:06:48 +00:00
96f03c8cbc
don't compensate for bwidth twice.
...
ok oga@
2008-07-15 13:52:02 +00:00
6d268bfa4a
Nm makes more sense than Xr, from Pierre Riteau - thanks!
2008-07-11 22:43:44 +00:00
b6dab5ccf3
Change "a window" to "current window" in documentation. it's more correct.
...
While i'm here: Capital letter and full stop in descriptions in cwmrc.5
"looks good - do it" okan@.
2008-07-11 15:42:29 +00:00
a556d3fa1f
add Xr for cwm(1)
2008-07-11 15:20:04 +00:00
6ea4b1bd3b
no more hidden (and mysterious) config reloads and allow binding a key
...
to a config reload; CMS-r by default.
ok oga@
2008-07-11 15:18:29 +00:00
8be175b175
replace snprintf with strlcpy
...
ok oga@
2008-07-11 14:24:34 +00:00
85e6c61360
we already have ymax, so use it instead of asking X for it again.
...
ok oga@
2008-07-11 14:23:30 +00:00
b23fad3987
spacing, declaration lineup to be consistent throughout cwm,
...
readability, and a bit of knf.
ok oga@
2008-07-11 14:21:28 +00:00
734f45ab4b
only cycle through visible *and* non-ignored windows.
...
ok oga@
2008-06-30 17:52:37 +00:00
993fd4311f
Allow a mouse binding to hide a window, and add a default keybinding for CMS-M3,
...
so it's hard to press by accident, but there if you need it.
requested (in a way) and tested by johan and todd.
2008-06-25 22:44:42 +00:00
a6ec6cd9e9
Support mod4 (windows key) in mouse bindings too.
2008-06-25 22:40:27 +00:00
05b17bf803
Support shift in mouse bindings. There's really no reason not to.
...
tested by johan@ and todd@.
2008-06-25 22:38:36 +00:00
2dfd021f8b
Actually grab the correct mouse buttons for a window, instead of doing the
...
old hardcoded ones (which now can be wrong).
tested by todd@ and johan@.
2008-06-25 22:37:29 +00:00
77058c59e2
Sort flags.
...
From Pierre Riteau, thanks!
ok okan@.
2008-06-25 01:09:09 +00:00
187e7dfad2
Stop keyboard move moving the window utterly off the screen. If that
...
happens there's no way to get it back. Also, stop resize making a
windows size negative or zero. X does not like that one bit.
Diff from Martynas. Ok okan@.
2008-06-25 00:52:47 +00:00
6f1ed5bfe3
Don't link "-lX11 -lXau -lXdmcp" twice.
...
From Martin Toft, thanks!
2008-06-19 02:21:30 +00:00
e21e7680e4
No need to map/unmap the window on hide/show since we already do the
...
same to its parent.
"makes sense" okan@.
2008-06-18 20:42:29 +00:00
2bddbe12f4
Revert previous "fix" it introduces new issues of its own.
...
The problem that's causing us to lose windows is that rapid hiding and
unhiding causes a backlog of X events, so we lose track of client state,
and delete cc->pwin when we should not. A proper fix will arrive when it's been
worked out.
2008-06-18 19:09:12 +00:00
0ba60f0b94
missed one mouse function
...
noticed by oga
2008-06-17 23:46:49 +00:00
4f2d4724c9
Ignore caps lock and numlock for keyboard bindings. The way Xlib makes
...
you do this is ugly. Also remove mod2 (numlock) and mod3 (odd) from the
list of keybinding modifiers. They don't make much sense here.
based on a heavily modified diff from Martynas.
ok okan.
2008-06-17 23:40:33 +00:00
19ba704ee3
Just rework the mouse binding calculation on event to look like the
...
kbfunc one. Makes the code a lot easier to read.
Fixes a bug i introduced in the last commit here.
ok okan.
2008-06-17 20:55:48 +00:00
9657664c7b
The mousebinding code missing a break once it had found the correct
...
binding, this expose another issue that's still being debugged.
Issue pointed out by Dan Harnett, thanks!
While i'm here KNF and rework the logic to not be ass-backwards.
ok okan.
2008-06-17 20:21:17 +00:00
867652c484
Make this not crash when compiled with -g.
...
Found by myself, analysis by kurt@, fix by me with input from otto.
``Just get some fix in...'' deraadt
2008-06-16 19:09:48 +00:00
07cd0b1ac5
Rip out and burn the HASH_* stuff. We don't need a SPLAY tree for one font.
...
makes the code a lot simpler. While here rearrange the font handling functions
to be less shit.
ok and help okan@.
2008-06-15 02:47:46 +00:00
96d7310b4a
(mostly) proper xshape event support
...
ok oga@
2008-06-14 22:04:11 +00:00
160228210b
unbreak
2008-06-14 21:59:09 +00:00
9d9c61b8f6
slightly alter the semantics of config files:
...
- if no config file, continue silently and apply defaults
- if config file, parse and move on
- if config file specified but not found, error out
ok oga@
2008-06-14 21:51:00 +00:00
bdcbbe7f53
confable menu and window mouse bindings from rivo nurges (thanks!) with
...
some minor fixups, man page bits and knf.
ok oga@
2008-06-14 21:48:54 +00:00
b4ae492b7b
finally document functions that can be bound, removing the need to have
...
name_to_kbfunc[] around.
feedback jmc@, ok oga@
2008-06-13 21:22:34 +00:00
01eecac5d4
Don't client_delete() on an Unmap event, only do that on a client delete event.
...
found by (among others) todd@ when you have a lot of clients and do something
that maps and umaps a lot of windows fast.
Debugged with aid of gdb, todd, okan and NULL pointers in a pizza place in
edmonton while waiting an inordinately long time for food.
ok okan@, todd@
2008-06-13 03:41:58 +00:00
077173527b
kill another long gone proto
2008-06-12 19:10:56 +00:00
ff9e573e1d
remove old (moved) code
...
ok oga@
2008-06-12 18:55:35 +00:00
198bb381a9
instead of forcing the ptr in the middle everytime, be more 'calm'; keep
...
the ptr still unless it moves out-of-bounds, then just follow the edge.
brought up by todd@
ok oga@
2008-06-12 18:32:06 +00:00
6f1f3592d4
place the pointer in the middle of the window after resizing with grab,
...
just like keyboard resize.
from Edd Barrett
ok oga@
2008-06-12 05:10:24 +00:00
78c8bf08cb
ignore if non-zero expose events, for we could be covered by multiple
...
windows; merely an optimization.
ok oga@
2008-06-12 05:01:13 +00:00
4377b5ac3f
re-work client_placecalc()
...
- make sure new clients sit inside the current screen
- respect 'gap' placement on new clients
ok oga@
2008-06-12 04:59:51 +00:00
9037043088
Enter -> Return, to be consistant and correct.
...
found the hard way by johan and discovered by oga.
"do it" oga@
2008-06-05 14:29:01 +00:00
610e8e83ac
prevent trying to exec a null char; could potentially happen with a
...
canceled or empty searchstr.
ok oga@
2008-06-05 04:01:37 +00:00
efbfc5fa42
actually honor termpath and lockpath if specified in cwmrc.
...
"now" oga@
2008-06-05 00:07:05 +00:00
b86d3cfae9
"Meta is a perfectly well defined concept in X (The keys bound to the
...
Meta_L or Meta_R keysysm). no need to redefine it roughly there" - matthieu@
2008-06-03 21:27:47 +00:00
72bc2a295b
make sure to take bwdith into account when placing a new window.
...
ok oga@
2008-05-23 18:57:35 +00:00
48528d9ba1
Grab the keyboard when we initialise the menu. This stops the keyboard
...
shortcut code stealing our events in some cases.
"put 'er in" okan@.
2008-05-23 18:48:57 +00:00
779cf04f05
Make menu_filter handle mouse movement too. This enables the keyboard
...
search dialogues to be manipulated with the mouse, too. It also allows
me to shrink the codebase further by killing grab_menu().
One known issue with highlighting the first entry in a search dialogue,
that'll be fixed soonish.
ok okan@, tested by Edd Barrett and todd@.
2008-05-21 14:11:19 +00:00
1e46ba72f7
Pull out the behaviour in grab_label and search_start into one utility
...
function menu_filter(). The plan is to eventually merge in grab_menu too.
Shrinks the code a fair bit.
Also, change XMaskEvent for XWindowEvent to prevent getting exposes for other
windows. This is particuarly noticable on slow machines with a LOT of xterms
(todd, you're an odd man).
ok okan@, todd@.
2008-05-20 14:50:51 +00:00
3bb0b451f7
General cleanup.
...
ok okan@.
2008-05-19 18:53:09 +00:00
53116c4ec3
stop normalizing search input; searching and matching are still
...
case-insensitive. since this was the only use of normalizing input,
simplify as well.
allows one to exec with mixed case unmatched commands.
"works for me" oga@
2008-05-19 18:07:53 +00:00