diff options
Diffstat (limited to 'qxt-mini/qxtglobalshortcut_x11.cpp')
-rw-r--r-- | qxt-mini/qxtglobalshortcut_x11.cpp | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/qxt-mini/qxtglobalshortcut_x11.cpp b/qxt-mini/qxtglobalshortcut_x11.cpp index a37b1b0b..2c5e8f2a 100644 --- a/qxt-mini/qxtglobalshortcut_x11.cpp +++ b/qxt-mini/qxtglobalshortcut_x11.cpp @@ -179,7 +179,15 @@ public: if (errorHandler.error) { qDebug() << "qxt-mini: error while binding to" << code << mods; - ungrabKey(code, mods); + for (const auto& set : evil_mods.sets()) + { + quint32 m = mods; + + for (int value : set) + m |= (unsigned)value; + + XUngrabKey(display(), native_code, m, rootWindow()); + } ret = false; } } @@ -210,7 +218,7 @@ public: for (int value : set) m |= (unsigned)value; - XUngrabKey(display(), code, m, rootWindow()); + XUngrabKey(display(), native_code, m, rootWindow()); } if (errorHandler.error) |