a6ec6cd9e9
Support mod4 (windows key) in mouse bindings too.
oga
2008-06-25 22:40:27 +00:00
05b17bf803
Support shift in mouse bindings. There's really no reason not to.
oga
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).
oga
2008-06-25 22:37:29 +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.
oga
2008-06-25 00:52:47 +00:00
e21e7680e4
No need to map/unmap the window on hide/show since we already do the same to its parent.
oga
2008-06-18 20:42:29 +00:00
2bddbe12f4
Revert previous "fix" it introduces new issues of its own.
oga
2008-06-18 19:09:12 +00:00
0ba60f0b94
missed one mouse function
okan
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.
oga
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.
oga
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!
oga
2008-06-17 20:21:17 +00:00
867652c484
Make this not crash when compiled with -g.
mk
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.
oga
2008-06-15 02:47:46 +00:00
96d7310b4a
(mostly) proper xshape event support
okan
2008-06-14 22:04:11 +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
okan
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.
okan
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.
okan
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.
oga
2008-06-13 03:41:58 +00:00
077173527b
kill another long gone proto
okan
2008-06-12 19:10:56 +00:00
ff9e573e1d
remove old (moved) code
okan
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.
okan
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.
okan
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.
okan
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
okan
2008-06-12 04:59:51 +00:00
9037043088
Enter -> Return, to be consistant and correct.
okan
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.
okan
2008-06-05 04:01:37 +00:00
efbfc5fa42
actually honor termpath and lockpath if specified in cwmrc.
okan
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@
okan
2008-06-03 21:27:47 +00:00
72bc2a295b
make sure to take bwdith into account when placing a new window.
okan
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.
oga
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().
oga
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.
oga
2008-05-20 14:50:51 +00:00
3bb0b451f7
General cleanup.
oga
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.
okan
2008-05-19 18:07:53 +00:00
981c2480db
Function prototypes should not have parameter names in them. These must have been missed last time i knfed this.
oga
2008-05-19 17:32:22 +00:00
6733ac217f
client_cyclenext() -> client_cycle() since we now pass an arg.
okan
2008-05-19 17:24:19 +00:00
71f99ab78f
allow an autogroup value of 0 to mean no group. This means you can set automatically "sticky" (in the traditional sense of the word) windows in autogroup mode.
oga
2008-05-19 17:13:55 +00:00
d347aa3d9a
as done with cycle/rcycle, make prev/next group switching one kbfuncs and use a flag; adjusted to match and rename to {r,}cycle.
okan
2008-05-19 17:11:19 +00:00
43d6e147c2
Use the XGrabKeyboard hack in for alt-tabbing as well. This stops the mru getting the order messed up when gvim/xpdf et all steal key events.
oga
2008-05-19 15:17:50 +00:00
7957a470fd
finally implement keyboard binding for group toggling
okan
2008-05-19 12:56:58 +00:00
a94f4bbb7a
send the correct x/y coordinates to XConfigureWindow()
okan
2008-05-18 20:06:36 +00:00
5a0128bdc7
remove extra calls to client_draw_border()
okan
2008-05-18 20:00:16 +00:00
5fee379cb5
fix backwards logic in example; found by oga@
okan
2008-05-18 19:57:43 +00:00
b700be764a
Fix two problems with conf_unbind():
oga
2008-05-18 19:47:19 +00:00
27b023ebcb
Kill conf_get_int(), it was a silly function anyway.
oga
2008-05-18 19:43:50 +00:00
5c402536fa
group_ctx->name is only used in this one function, and for now it corresponds directly to the static list of group names. Just use the static list and stop strdup()ing a new version for the context struct. Since that never got freed this also fixes a small memleak.
oga
2008-05-18 19:38:18 +00:00
a21a064a9b
When we're cleaning out the lists in parse_config and conf_clear it's a lot simpler just to do while (entry = TAILQ_FIRST(head)) than to do a for () over the whole lot. Simpler, shorter and probably faster.
oga
2008-05-18 19:34:09 +00:00
0f50af616e
- re-order and mostly re-write cwmrc(5) - merge example config file into cwmrc(5) and remove (little good in here)
okan
2008-05-18 19:33:36 +00:00
9a58e74401
fix cwm's current XShape support from Edd Barrett -thanks.
okan
2008-05-17 03:59:54 +00:00
5034a77849
KNF, no binary change.
oga
2008-05-15 22:18:00 +00:00
ec77265b87
tiny bit of knf
okan
2008-05-15 21:56:21 +00:00
458f96936d
Signal handler of SIGCHLD calls waitpid() which sets errno on error. To avoid clubbering of errno in normal context, save_errno got introduced.
tobias
2008-05-06 15:12:04 +00:00
cd0ce46817
Rework the alt-tabbing code to be a lot simpler.
oga
2008-05-01 18:01:13 +00:00
79569a4d59
Allow slashes in unquoted strings.
simon
2008-04-29 20:17:28 +00:00
e3971fc758
nits from Pierre Riteau - thanks!
okan
2008-04-28 01:27:46 +00:00
898bfff36a
merge kbfunc_{ptrmove,client_{move,resize}} into one function that takes a flag, this code was almost identical...
oga
2008-04-16 13:47:29 +00:00
cd5c340e01
remove infowin. It slipped out of the last commit, for some reason.
oga
2008-04-16 13:40:34 +00:00
f473dc3d12
Replace a few leftover calls to strdup and calloc with xstrdup and xcalloc respectively.
oga
2008-04-16 13:38:09 +00:00
f67772be65
Remove screen_infomsg(), nothing uses it.
oga
2008-04-16 13:35:37 +00:00
642afbdf8c
kill an unused struct member.
oga
2008-04-16 13:33:26 +00:00
d5794a6b02
make the argument parser for commands accept quoted strings, while i'm there make u_spawn use exec_wm (renamed to u_exec) for it's execution to remove duplicated code.
oga
2008-04-15 21:20:56 +00:00
887a5aa65f
Kill dirent_isdir() and dirent_islink() nothing used them since the new parser went in.
oga
2008-04-15 20:26:50 +00:00
75182c6d9c
hit it with the knf stick.
oga
2008-04-15 20:24:41 +00:00
3a94c57afc
Add "gap" support to .cwmrc. The options put in here make gaps on the edge of the screen where an application won't be {,vert}maximized over. used for placing a statusbar or something like xclock.
oga
2008-04-15 18:46:58 +00:00
4bbb472a25
- add vi keybindings to search - allow for ctrl-h as well
okan
2008-04-15 18:33:13 +00:00
539b5c6534
Make _xev_quit "volatile sig_atomic_t" for proper correctness.
simon
2008-04-08 00:09:50 +00:00
0f18223042
Add quit function, bind it per default to CM-q and change exec_wm binding to CM-w.
simon
2008-04-07 23:47:09 +00:00
cb2cc70c3f
- use $PATH before _PATH_DEFPATH, from Tim van der Molen - plug leak, noticed by oga
okan
2008-04-05 21:09:19 +00:00
ef0859de20
Sync usage() with reality and manpage.
simon
2008-04-03 13:58:57 +00:00
34c0a0635f
Fix a couple of issues with the maximization code.
oga
2008-03-26 15:45:42 +00:00
e704b57d33
Introduce bsd.xconf.mk to set default config variables used at several places in the Xenocara build in a central place instead of duplicating the checks all over the place. ok oga@.
matthieu
2008-03-25 23:41:50 +00:00
c3aa344e78
Replace the symlink configuration scheme with a simple yacc parser as found in other places of the tree. Remove sticky and font commandline options and add another one for alternative config locations. Split off cwmrc(5) from cwm(1), nuke #ifdef __OpenBSD__ while there.
simon
2008-03-23 15:09:21 +00:00
38ff7a904e
allow autogrouping and sticky mode to work together
okan
2008-03-22 21:34:07 +00:00
36c1aac90f
Rip out, burn, and dance around the grave of group-edit mode. I've yet to speak to anyone who uses it, so just kill it.
oga
2008-03-22 15:09:45 +00:00
cd46788d85
Remove a bunch of unused variables and incorrect comments.
oga
2008-03-22 14:09:02 +00:00
fead0d511f
As mentioned in my last commit, there was an issue where the switching code would always assume that the number of windows to switch to was three if there were more windows hidden. Check for CLIENT_HIDDEN when we count. Now it counts correctly.
oga
2008-03-19 00:18:28 +00:00
f85ba10437
client_{,r}cycle() doens't need a client. so get rid of KBFUNC_NEEDSCLIENT.
oga
2008-03-18 00:48:56 +00:00
a466ddaa2d
typo fix. ok oga
sthen
2008-03-14 14:38:10 +00:00
d816834954
Change the default for XSRCDIR to /usr/xenocara. ok deraadt@
matthieu
2008-03-03 07:01:44 +00:00
de36e6ec2f
add exec_wm to calmwm.h, it was missing (bad ian@!)
oga
2008-02-20 13:00:18 +00:00
3f63e529bf
usage never returns, and thus should be __dead.
oga
2008-02-13 21:48:03 +00:00
9cb4f8884e
add usage() for when an unknown option is given.
oga
2008-02-13 21:04:19 +00:00
09dbddac87
Make cwm print the XDisplayName() if it fails to open the display, instead of an error message that'll be gibberish to most people.
oga
2008-02-13 12:09:47 +00:00
a936ffc470
Trivial typo in recent "exec windowmanager" addition
ian
2008-01-22 17:35:23 +00:00
de72f62924
All of the 9wm code in cwm has been removed or re-written. Edit LICENSE and the manpage to reflect this. While i'm here remove the note in todo about cleaning up the menu code; it's been done.
oga
2008-01-16 16:14:55 +00:00
7fb2664f92
huge amount of cleanup and dead code removal.
oga
2008-01-16 11:39:20 +00:00
1eed217b1c
Rewrite most of grab_menu in grab.c (it was partly 9wm code). This should work functionally the same, with a few simplifications.
oga
2008-01-14 15:21:10 +00:00
e5cabb0f43
- Remove the "all rights reserved" tag at the top of most of the source files, and replace them with the actual ISC license.
oga
2008-01-11 16:06:44 +00:00
3de5c68888
Kill some more dead code, cursor.c goes away.
oga
2008-01-08 20:21:43 +00:00
160d6aa910
Adjust initial window placement with any geometry that would place the window at or over the right or bottom edge. OK oda@
marc
2008-01-03 20:20:20 +00:00
847191cff3
Kill draw.c, nothing uses the code in it.
oga
2008-01-03 01:58:16 +00:00
f82afee4e2
Kill some warnings intoduced with the execwm feature.
oga
2008-01-03 01:56:25 +00:00
381ba77e03
remove declaration of removed function Reminded by matthieu@ (thanks!)
marc
2008-01-02 20:54:32 +00:00