Only pass key press events to TabBox
We want TabBox to operate on key press, not on key release. So far it only operated on release as the press was filtered out by the global shortcuts filter. To prevent that the tab box filter is moved before the global shortcuts filter. Note: first usage of TabBox has current window selected instead of next. This problem is also visible on X11.
This commit is contained in:
parent
d2716c834b
commit
2c0df531b7
1 changed files with 3 additions and 2 deletions
|
@ -492,6 +492,7 @@ public:
|
||||||
if (!TabBox::TabBox::self() || !TabBox::TabBox::self()->isGrabbed()) {
|
if (!TabBox::TabBox::self() || !TabBox::TabBox::self()->isGrabbed()) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
if (event->type() == QEvent::KeyPress)
|
||||||
TabBox::TabBox::self()->keyPress(event->modifiers() | event->key());
|
TabBox::TabBox::self()->keyPress(event->modifiers() | event->key());
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
@ -868,10 +869,10 @@ void InputRedirection::setupInputFilters()
|
||||||
installInputEventFilter(new ScreenEdgeInputFilter);
|
installInputEventFilter(new ScreenEdgeInputFilter);
|
||||||
installInputEventFilter(new EffectsFilter);
|
installInputEventFilter(new EffectsFilter);
|
||||||
installInputEventFilter(new MoveResizeFilter);
|
installInputEventFilter(new MoveResizeFilter);
|
||||||
installInputEventFilter(new GlobalShortcutFilter);
|
|
||||||
#ifdef KWIN_BUILD_TABBOX
|
#ifdef KWIN_BUILD_TABBOX
|
||||||
installInputEventFilter(new TabBoxInputFilter);
|
installInputEventFilter(new TabBoxInputFilter);
|
||||||
#endif
|
#endif
|
||||||
|
installInputEventFilter(new GlobalShortcutFilter);
|
||||||
installInputEventFilter(new InternalWindowEventFilter);
|
installInputEventFilter(new InternalWindowEventFilter);
|
||||||
installInputEventFilter(new DecorationEventFilter);
|
installInputEventFilter(new DecorationEventFilter);
|
||||||
if (waylandServer()) {
|
if (waylandServer()) {
|
||||||
|
|
Loading…
Reference in a new issue