Re: Review Request 129967: Make KGlobalaccel X11 track XInput events to still work when an application grabs the keyboard
--- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/129967/#review102585 --- As an idea: if I understand correctly the main motivation is to be able to trigger the volume control keys while a context menu is open. You are not that much interested in e.g. triggering Alt+Tab while context menu is shown. So a possibility might be to add this to the client side. Assuming the Qt case: if keyboard is grabbed, context menu is open and the key event is not handled and one of the special keys which the application does not care about, it could close the context menu and XTest the event again. Then kglobalaccel would be able to handle it. - Martin Gräßlin On Feb. 24, 2017, 5:26 p.m., David Edmundson wrote: > > --- > This is an automatically generated e-mail. To reply, visit: > https://git.reviewboard.kde.org/r/129967/ > --- > > (Updated Feb. 24, 2017, 5:26 p.m.) > > > Review request for KDE Frameworks. > > > Repository: kglobalaccel > > > Description > --- > > This means shortcuts still work when keyboard is grabbed by another > application. This allows us to still take a screenshot/change volume > with a context menu open. > > The existing code doesn't seem to actually handle dynamic keyboard > layout switching, this code matches that behaviour. > > Interestingly alt+tab behavior is unchanged so it doesn't /severely/ break > legitimate keyboard grabs like virtualbox. > > > Diffs > - > > CMakeLists.txt 0de00d4a6b0700a0c36fe291a8240bea43e62cc2 > cmake/modules/FindXKB.cmake PRE-CREATION > src/runtime/plugins/xcb/CMakeLists.txt > 45bf4dc9f9ec9146a0db5f93b4259ea6c4306d17 > src/runtime/plugins/xcb/kglobalaccel_x11.h > 88b7f61e9cfa5e30df7f04f492a864f1ce8eb37a > src/runtime/plugins/xcb/kglobalaccel_x11.cpp > 9b37c7b600d6f25a0ea43643d8dee2593c3b7417 > > Diff: https://git.reviewboard.kde.org/r/129967/diff/ > > > Testing > --- > > > Thanks, > > David Edmundson > >
Re: Review Request 129967: Make KGlobalaccel X11 track XInput events to still work when an application grabs the keyboard
--- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/129967/#review102584 --- This introduces a security issue as it would be possible to trigger global shortcuts while the screen is locked. Given that I am reluctant to accept it. This will also mean lots of bug reports raised due to it. Also it can result in severe issues in code which currently can savely assume that no global shortcut gets trigger. Large parts of KWin rely on the knowledge that no global shortcut gets triggered. E.g. Present Windows and Alt+Tab are mutual exclusive due to the keyboard grab. This change would result in undefined behavior in such a situation. It is not known how the code would react as that is outside the specification. We don't know how many more applications rely on keyboard grabbing not triggering global shortcuts. For what is worth: on Wayland it is possible to trigger global shortcuts while context menus are open. I think now it is better to spend the time on making Wayland a first class citizen than to try working around X11 limitations. - Martin Gräßlin On Feb. 24, 2017, 5:26 p.m., David Edmundson wrote: > > --- > This is an automatically generated e-mail. To reply, visit: > https://git.reviewboard.kde.org/r/129967/ > --- > > (Updated Feb. 24, 2017, 5:26 p.m.) > > > Review request for KDE Frameworks. > > > Repository: kglobalaccel > > > Description > --- > > This means shortcuts still work when keyboard is grabbed by another > application. This allows us to still take a screenshot/change volume > with a context menu open. > > The existing code doesn't seem to actually handle dynamic keyboard > layout switching, this code matches that behaviour. > > Interestingly alt+tab behavior is unchanged so it doesn't /severely/ break > legitimate keyboard grabs like virtualbox. > > > Diffs > - > > CMakeLists.txt 0de00d4a6b0700a0c36fe291a8240bea43e62cc2 > cmake/modules/FindXKB.cmake PRE-CREATION > src/runtime/plugins/xcb/CMakeLists.txt > 45bf4dc9f9ec9146a0db5f93b4259ea6c4306d17 > src/runtime/plugins/xcb/kglobalaccel_x11.h > 88b7f61e9cfa5e30df7f04f492a864f1ce8eb37a > src/runtime/plugins/xcb/kglobalaccel_x11.cpp > 9b37c7b600d6f25a0ea43643d8dee2593c3b7417 > > Diff: https://git.reviewboard.kde.org/r/129967/diff/ > > > Testing > --- > > > Thanks, > > David Edmundson > >
Review Request 129967: Make KGlobalaccel X11 track XInput events to still work when an application grabs the keyboard
--- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/129967/ --- Review request for KDE Frameworks. Repository: kglobalaccel Description --- This means shortcuts still work when keyboard is grabbed by another application. This allows us to still take a screenshot/change volume with a context menu open. The existing code doesn't seem to actually handle dynamic keyboard layout switching, this code matches that behaviour. Interestingly alt+tab behavior is unchanged so it doesn't /severely/ break legitimate keyboard grabs like virtualbox. Diffs - CMakeLists.txt 0de00d4a6b0700a0c36fe291a8240bea43e62cc2 cmake/modules/FindXKB.cmake PRE-CREATION src/runtime/plugins/xcb/CMakeLists.txt 45bf4dc9f9ec9146a0db5f93b4259ea6c4306d17 src/runtime/plugins/xcb/kglobalaccel_x11.h 88b7f61e9cfa5e30df7f04f492a864f1ce8eb37a src/runtime/plugins/xcb/kglobalaccel_x11.cpp 9b37c7b600d6f25a0ea43643d8dee2593c3b7417 Diff: https://git.reviewboard.kde.org/r/129967/diff/ Testing --- Thanks, David Edmundson