On Fri 2010.01.29 at 11:05 +0100, Christian Neukirchen wrote: > Hi, > > Currently cwm(1) grabs the keyboard for M-Tab/MS-Tab cycling, which > works well until you try to rebind these keys to, say, 4-Tab. I > propose clearing the keygrab if any modifier is released (this kind of > "breaks" the current behavior if you, M-Tab-Tab-Tab-Tab and, say, press > Ctrl in between, but who does that?):
hi - there's an issue with just checking for e->state, for once you cycle through more than once, cwm will be grabbing the keyboard until the very next keyrelease event; so you'd end up cycling through a bunch of windows and have to hit some other key to hit XUngrabKeyboard(). i would find this highly annoying :) you'll notice a bunch of XXX's around code that deals with cycling and it all needs to be re-done; doing so should hopefully get rid of the keyrelease event all-together - i think i have an idea how ... > I also have a small wishlist of features that generally would be useful: > - a keybinding to pop up the hide menu shouldn't be too difficult. > - a command to remove all keybindings (it's hell for Emacs users to > disable all default commands and remap them to e.g. 4-) > - alternatively, changing all key prefixes at once (like evilwm did). ah, we've had a few iterations of the above 2 points floating around for sometime; have to find and review all of them someday :) cheers, okan