diff options
author | oga | 2008-05-19 15:17:50 +0000 |
---|---|---|
committer | oga | 2008-05-19 15:17:50 +0000 |
commit | a47b4ccaab4803eba1fb0774e26abd3ed06f9fd4 (patch) | |
tree | d464c9dc57d07c9f8085f6e6aa2865ba49f13fcb /kbfunc.c | |
parent | 281da1fba3c4cf7c09351c088ec4f5793f9ce96e (diff) | |
download | cwm-a47b4ccaab4803eba1fb0774e26abd3ed06f9fd4.tar.gz |
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.
While i'm here, change the logic in client_cyclenext() to use break instead
of goto, it's nicer that way.
Thirdly, instead of two different kbfuncs, just use the one and a flag.
"put your cycle diff in so I can pkg_delete gvim" okan@
Diffstat (limited to '')
-rw-r--r-- | kbfunc.c | 14 |
1 files changed, 7 insertions, 7 deletions
@@ -15,7 +15,7 @@ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * - * $Id: kbfunc.c,v 1.23 2008/05/19 12:56:58 okan Exp $ + * $Id: kbfunc.c,v 1.24 2008/05/19 15:17:50 oga Exp $ */ #include <paths.h> @@ -176,13 +176,13 @@ kbfunc_menu_search(struct client_ctx *scratch, void *arg) void kbfunc_client_cycle(struct client_ctx *scratch, void *arg) { - client_cyclenext(0); -} + struct screen_ctx *sc = screen_current(); -void -kbfunc_client_rcycle(struct client_ctx *scratch, void *arg) -{ - client_cyclenext(1); + /* XXX for X apps that ignore events */ + XGrabKeyboard(X_Dpy, sc->rootwin, True, + GrabModeAsync, GrabModeAsync, CurrentTime); + + client_cyclenext((int)arg); } void |