diff options
-rw-r--r-- | src/Keys.cc | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/Keys.cc b/src/Keys.cc index 6a4406a..7e6c93e 100644 --- a/src/Keys.cc +++ b/src/Keys.cc | |||
@@ -27,6 +27,7 @@ | |||
27 | #include "fluxbox.hh" | 27 | #include "fluxbox.hh" |
28 | #include "Screen.hh" | 28 | #include "Screen.hh" |
29 | 29 | ||
30 | #include "FbTk/EventManager.hh" | ||
30 | #include "FbTk/StringUtil.hh" | 31 | #include "FbTk/StringUtil.hh" |
31 | #include "FbTk/App.hh" | 32 | #include "FbTk/App.hh" |
32 | #include "FbTk/Command.hh" | 33 | #include "FbTk/Command.hh" |
@@ -392,7 +393,8 @@ bool Keys::doAction(int type, unsigned int mods, unsigned int key, | |||
392 | 393 | ||
393 | // if focus changes, windows will get NotifyWhileGrabbed, | 394 | // if focus changes, windows will get NotifyWhileGrabbed, |
394 | // which they tend to ignore | 395 | // which they tend to ignore |
395 | if (temp_key && type == KeyPress) | 396 | if (temp_key && type == KeyPress && |
397 | !FbTk::EventManager::instance()->grabbingKeyboard()) | ||
396 | XUngrabKeyboard(Fluxbox::instance()->display(), CurrentTime); | 398 | XUngrabKeyboard(Fluxbox::instance()->display(), CurrentTime); |
397 | 399 | ||
398 | if (temp_key && !temp_key->keylist.empty()) { // emacs-style | 400 | if (temp_key && !temp_key->keylist.empty()) { // emacs-style |