X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;ds=sidebyside;f=src%2Fbindings.cc;h=757f66b589d5c96cde988adf5dcc2655a5aadea7;hb=3e889e72f500cf523edf2b8e51964a8af63c70e1;hp=78fc74cdfe642f1e5ca1f241104c2c65cc2c5429;hpb=997f94cf8657201ea9d1f2497e4ec4f56342e22f;p=chaz%2Fopenbox diff --git a/src/bindings.cc b/src/bindings.cc index 78fc74cd..757f66b5 100644 --- a/src/bindings.cc +++ b/src/bindings.cc @@ -386,6 +386,9 @@ bool Bindings::grabKeyboard(int screen, PyObject *callback) if (XGrabKeyboard(**otk::display, root, false, GrabModeAsync, GrabModeAsync, CurrentTime)) return false; + // the pointer grab causes pointer events during the keyboard grab to go away + XGrabPointer(**otk::display, root, false, 0, GrabModeAsync, + GrabModeAsync, None, None, CurrentTime); _keybgrab_callback = callback; return true; } @@ -397,6 +400,7 @@ void Bindings::ungrabKeyboard() _keybgrab_callback = 0; XUngrabKeyboard(**otk::display, CurrentTime); + XUngrabPointer(**otk::display, CurrentTime); }