kwin/src
Vlad Zahorodnii dd36387c1f Pass all key events to kglobalacceld
kglobalacceld needs to process all key events to detect whether
a modifier only shortcut has been triggered.

On the other hand, when using Meta+Space keyboard layout switching
shortcut, we will get the following key syms (not native scan codes)

- press meta: Meta_L
- press spacebar: Super_L
- release meta: Meta_L
- release spacebar: Space

The fact that xkb reports Super_L when the spacebar is pressed trips
modifier only shortcut detection in kglobalacceld, and it's likely
that kickoff will open after pressing Meta+Space to switch the keyboard
layout.

In order to prevent that, kglobalacceld needs to see all key events
even with invalid key codes. As an alternative, we could explore the
possibility of using native scan codes instead of mapping keysyms to
key codes, but that needs thorough analysis, which we have no time
for.

The check was introduced in 4403e86acc.
After that check is removed, the test still passes.
2024-05-23 10:58:16 +00:00
..
3rdparty
backends backends/drm: don't update outputs from within DrmGpu 2024-05-22 20:33:51 +00:00
colors backends/drm: fix night light updates after dpms 2024-02-07 20:49:58 +01:00
core core/renderjournal: tweak render time prediction to reduce latency slower 2024-05-22 17:18:11 +02:00
decorations Make it possible to build KWin without libxcb 2024-02-28 16:03:50 +00:00
effect effects: Support dynamic delegate changes whilst running 2024-05-23 12:00:56 +03:00
helpers SVN_SILENT made messages (.desktop file) - always resolve ours 2024-03-03 01:16:28 +00:00
kcms kcms/rules: Handle Escape key to exit Export mode 2024-05-12 23:38:49 +02:00
opengl opengl: make GLRenderTimeQuery::query non-destructive 2024-05-14 12:33:08 +00:00
platformsupport waylandserver: set render backend for linuxdrmsyncobj directly 2024-05-22 00:26:14 +02:00
plugins Add support for input capturing for the portal 2024-05-23 09:17:14 +00:00
qml Round all the things consistently 2024-04-08 16:56:50 +00:00
scene backends: refactor direct scanout and dmabuf feedback 2024-04-27 18:39:23 +00:00
scripting scripting/windowmodel: match screen closest to center for filter 2024-04-11 09:36:26 -07:00
tabbox SVN_SILENT made messages (.desktop file) - always resolve ours 2024-03-03 01:16:28 +00:00
tiles Quick tiling double buffereing 2024-04-15 12:18:09 +00:00
utils utils/edid: use detailed timings to compute physical screen size 2024-05-21 11:22:51 +00:00
wayland wayland: port linux drm syncobj from RenderBackend to DrmDevice 2024-05-22 00:26:14 +02:00
xwayland xwayland: Avoid forwarding spurious mouse events 2024-05-22 07:32:36 +00:00
activation.cpp Make it possible to build KWin without libxcb 2024-02-28 16:03:50 +00:00
activities.cpp Rename Workspace::updateClientArea as Workspace::rearrange 2024-03-07 13:41:02 +02:00
activities.h Remove unneeded includes from headers and cpp files 2024-01-13 11:34:45 +01:00
appmenu.cpp Make it possible to build KWin without libxcb 2024-02-28 16:03:50 +00:00
appmenu.h Make it possible to build KWin without libxcb 2024-02-28 16:03:50 +00:00
atoms.cpp
atoms.h Make it possible to build KWin without libxcb 2024-02-28 16:03:50 +00:00
client_machine.cpp Make it possible to build KWin without libxcb 2024-02-28 16:03:50 +00:00
client_machine.h Make it possible to build KWin without libxcb 2024-02-28 16:03:50 +00:00
CMakeLists.txt wayland: implement linux-drm-syncobj-v1 2024-04-10 19:06:00 +02:00
compositor.cpp compositor: move the composite method into X11 and Wayland implementations 2024-04-29 14:56:20 +02:00
compositor.h compositor: move the composite method into X11 and Wayland implementations 2024-04-29 14:56:20 +02:00
compositor_wayland.cpp compositor_wayland: properly handle moving the cursor plane failing 2024-05-20 11:14:01 +00:00
compositor_wayland.h compositor: move the composite method into X11 and Wayland implementations 2024-04-29 14:56:20 +02:00
compositor_x11.cpp backends: move render time queries into OutputFrame 2024-05-02 13:03:27 +00:00
compositor_x11.h Remove unneeded includes from headers and cpp files 2024-01-13 11:34:45 +01:00
config-kwin.h.cmake xwayland: Enable xtest libei integration 2024-05-15 09:31:53 +00:00
cursor.cpp backends/x11/standalone: remove on-demand mouse polling 2024-04-29 14:13:32 +00:00
cursor.h backends/x11/standalone: remove on-demand mouse polling 2024-04-29 14:13:32 +00:00
cursorsource.cpp Handle wl_surface destruction in SurfaceCursorSource 2024-02-09 13:53:04 +02:00
cursorsource.h Handle wl_surface destruction in SurfaceCursorSource 2024-02-09 13:53:04 +02:00
dbusinterface.cpp Do not rely on NETWM for the main Window class 2024-02-20 18:04:06 +00:00
dbusinterface.h Avoid QtDBus module include in commonly used headers 2023-10-22 13:45:28 +00:00
debug_console.cpp opengl/glplatform: remove dependency on OpenGlContext 2024-03-08 17:26:54 +00:00
debug_console.h Unify the format for #include "config.h" 2024-02-28 16:03:50 +00:00
debug_console.ui
dpmsinputeventfilter.cpp dpmsinputeventfilter: Don't wake screens up on warp events 2024-04-30 19:01:15 +02:00
dpmsinputeventfilter.h There's no QVector anymore, QList is the QVector in Qt6 2023-10-19 13:43:53 +00:00
events.cpp Move code to initiate interactive move by dragging the decoration outside Window::handleInteractiveMoveResize() 2024-03-15 23:01:30 +02:00
focuschain.cpp
focuschain.h libkwineffects/ -> effect/ 2023-11-20 11:32:43 +00:00
ftrace.cpp
ftrace.h libkwineffects/ -> effect/ 2023-11-20 11:32:43 +00:00
gestures.cpp
gestures.h libkwineffects/ -> effect/ 2023-11-20 11:32:43 +00:00
globalshortcuts.cpp Pass all key events to kglobalacceld 2024-05-23 10:58:16 +00:00
globalshortcuts.h libkwineffects/ -> effect/ 2023-11-20 11:32:43 +00:00
group.cpp Make it possible to build KWin without libxcb 2024-02-28 16:03:50 +00:00
group.h Make it possible to build KWin without libxcb 2024-02-28 16:03:50 +00:00
hide_cursor_spy.cpp
hide_cursor_spy.h
idle_inhibition.cpp Port away the remaining users of windowShown/windowHidden to hiddenChanged 2024-02-27 20:58:52 +00:00
idle_inhibition.h There's no QVector anymore, QList is the QVector in Qt6 2023-10-19 13:43:53 +00:00
idledetector.cpp Port IdleDetector to QBasicTimer 2024-03-08 13:12:09 +02:00
idledetector.h Port IdleDetector to QBasicTimer 2024-03-08 13:12:09 +02:00
input.cpp Add a libeis input backend plugin 2024-04-15 13:05:15 +00:00
input.h input: fix warning about nodiscard 2024-04-25 19:24:19 +02:00
input_event.cpp pointer input: handle warp events differently from absolute motion events 2024-03-19 20:13:11 +01:00
input_event.h pointer input: handle warp events differently from absolute motion events 2024-03-19 20:13:11 +01:00
input_event_spy.cpp
input_event_spy.h
inputmethod.cpp Make it possible to build KWin without libxcb 2024-02-28 16:03:50 +00:00
inputmethod.h libkwineffects/ -> effect/ 2023-11-20 11:32:43 +00:00
inputpanelv1integration.cpp wayland: Integrate KWaylandServer classes into KWin namespace 2023-09-15 16:31:15 +03:00
inputpanelv1integration.h wayland: Integrate KWaylandServer classes into KWin namespace 2023-09-15 16:31:15 +03:00
inputpanelv1window.cpp Improve integration of preferred buffer scale with xdg shell configure events 2024-05-23 08:15:29 +00:00
inputpanelv1window.h Improve integration of preferred buffer scale with xdg shell configure events 2024-05-23 08:15:29 +00:00
internalwindow.cpp Improve integration of preferred buffer scale with xdg shell configure events 2024-05-23 08:15:29 +00:00
internalwindow.h Move X11Window::findModal() to Window and remove boolean trap 2024-03-19 12:47:59 +00:00
keyboard_input.cpp Add a libeis input backend plugin 2024-04-15 13:05:15 +00:00
keyboard_input.h Add a libeis input backend plugin 2024-04-15 13:05:15 +00:00
keyboard_layout.cpp keyboard_layout: always expose dbus interface 2024-03-15 22:21:08 +00:00
keyboard_layout.h Export KeyboardLayout 2024-04-15 13:05:15 +00:00
keyboard_layout_switching.cpp
keyboard_layout_switching.h
keyboard_repeat.cpp wayland: Drop "_interface" from filenames 2023-09-15 13:13:43 +00:00
keyboard_repeat.h
killprompt.cpp Make it possible to build KWin without libxcb 2024-02-28 16:03:50 +00:00
killprompt.h Support kill prompt for XdgTopLevelWindows 2023-11-27 14:10:15 +00:00
killwindow.cpp
killwindow.h
kscreenintegration.cpp kscreenintegration: fix rotation not being preserved from Plasma 5 2024-02-12 13:38:14 +00:00
kscreenintegration.h There's no QVector anymore, QList is the QVector in Qt6 2023-10-19 13:43:53 +00:00
kwin.kcfg workspace: unify active screen modes 2024-04-29 14:13:32 +00:00
kwin.notifyrc SVN_SILENT made messages (.desktop file) - always resolve ours 2024-05-09 01:18:28 +00:00
KWinConfig.cmake.in Add missing find_dependency for epoxy 2024-01-15 18:02:44 +00:00
layers.cpp workspace: fix syncing the stacking order with Xorg 2024-05-03 20:00:19 +03:00
layershellv1integration.cpp Rename Workspace::updateClientArea as Workspace::rearrange 2024-03-07 13:41:02 +02:00
layershellv1integration.h wayland: Fix windows shrinking when output layout changes 2024-03-07 13:41:01 +02:00
layershellv1window.cpp Improve integration of preferred buffer scale with xdg shell configure events 2024-05-23 08:15:29 +00:00
layershellv1window.h Improve integration of preferred buffer scale with xdg shell configure events 2024-05-23 08:15:29 +00:00
lidswitchtracker.cpp
lidswitchtracker.h
main.cpp Make it possible to build KWin without libxcb 2024-02-28 16:03:50 +00:00
main.h Make it possible to build KWin without libxcb 2024-02-28 16:03:50 +00:00
main_wayland.cpp Make it possible to build KWin without libxcb 2024-02-28 16:03:50 +00:00
main_wayland.h Make it possible to build KWin without libxcb 2024-02-28 16:03:50 +00:00
main_x11.cpp autotests/integration: clean up remnants of "active output follows mouse" setting in screenstest 2024-04-29 14:13:32 +00:00
main_x11.h
Messages.sh
modifier_only_shortcuts.cpp Unify the format for #include "config.h" 2024-02-28 16:03:50 +00:00
mousebuttons.cpp
mousebuttons.h
moving_client_x11_filter.cpp tiling: update ui on shift press/release 2023-11-13 12:31:17 +00:00
moving_client_x11_filter.h
netinfo.cpp Fix sending window to all desktops 2024-03-08 08:21:29 +00:00
netinfo.h Make it possible to build KWin without libxcb 2024-02-28 16:03:50 +00:00
onscreennotification.cpp Unify the format for #include "config.h" 2024-02-28 16:03:50 +00:00
onscreennotification.h
options.cpp workspace: unify active screen modes 2024-04-29 14:13:32 +00:00
options.h workspace: unify active screen modes 2024-04-29 14:13:32 +00:00
org.freedesktop.DBus.Properties.xml
org.kde.kappmenu.xml
org.kde.kwin.Compositing.xml Drop compositing suspension dbus api 2023-09-20 12:15:08 +00:00
org.kde.kwin.Effects.xml
org.kde.KWin.Plugins.xml
org.kde.KWin.Session.xml Expose a method to allow closing windows on shutdown. 2023-11-20 14:56:17 +00:00
org.kde.KWin.VirtualDesktopManager.xml
org.kde.KWin.xml
osd.cpp
osd.h
outline.cpp
outline.h libkwineffects/ -> effect/ 2023-11-20 11:32:43 +00:00
outputconfigurationstore.cpp outputconfigurationstore: increase the default SDR brightness 2024-05-18 20:37:07 +00:00
outputconfigurationstore.h backends/drm: add support for an HDR brightness setting 2024-05-14 09:51:59 +02:00
placeholderinputeventfilter.cpp
placeholderinputeventfilter.h
placeholderoutput.cpp Disable placeholder output when removing it 2024-03-21 12:19:20 +02:00
placeholderoutput.h
placement.cpp Drop Window::keepInArea() overload with hidden moveResize() 2024-04-24 14:19:42 +00:00
placement.h
placementtracker.cpp placementtracker: fix restoring of windows in custom tiles 2024-05-03 16:47:47 +02:00
placementtracker.h placementtracker: save geometry restores more explicitly 2024-02-19 17:18:28 +01:00
plugin.cpp
plugin.h Unify the format for #include "config.h" 2024-02-28 16:03:50 +00:00
pluginmanager.cpp Avoid QtDBus module include in commonly used headers 2023-10-22 13:45:28 +00:00
pluginmanager.h libkwineffects/ -> effect/ 2023-11-20 11:32:43 +00:00
pointer_input.cpp workspace: unify active screen modes 2024-04-29 14:13:32 +00:00
pointer_input.h pointer input: handle warp events differently from absolute motion events 2024-03-19 20:13:11 +01:00
popup_input_filter.cpp wayland: Drop "_interface" from filenames 2023-09-15 13:13:43 +00:00
popup_input_filter.h There's no QVector anymore, QList is the QVector in Qt6 2023-10-19 13:43:53 +00:00
resources.qrc plugins/invert: support color management 2023-12-11 22:46:27 +01:00
rootinfo_filter.cpp Ignore external updates of _NET_DESKTOP_LAYOUT and _NET_DESKTOP_NAMES 2024-01-30 14:14:09 +02:00
rootinfo_filter.h Make it possible to build KWin without libxcb 2024-02-28 16:03:50 +00:00
rulebooksettings.cpp rules/RuleBook: Optimize saving discarded rules to config 2024-05-13 20:18:09 +02:00
rulebooksettings.h rules/RuleBook: Optimize saving discarded rules to config 2024-05-13 20:18:09 +02:00
rulebooksettingsbase.kcfg
rulebooksettingsbase.kcfgc
rules.cpp rules/RuleBook: Optimize saving discarded rules to config 2024-05-13 20:18:09 +02:00
rules.h rules/RuleBook: Optimize saving discarded rules to config 2024-05-13 20:18:09 +02:00
rulesettings.kcfg Add Adaptive Sync window rule 2024-02-12 12:05:52 +00:00
rulesettings.kcfgc
screenedge.cpp screenedge: reset timer when pointer leaves edge 2024-04-10 20:55:29 +00:00
screenedge.h pointer_input: implement edge barrier between screens 2024-03-08 12:03:28 -08:00
screenlockerwatcher.cpp
screenlockerwatcher.h libkwineffects/ -> effect/ 2023-11-20 11:32:43 +00:00
settings.kcfgc
shadow.cpp Make it possible to build KWin without libxcb 2024-02-28 16:03:50 +00:00
shadow.h Drop some unused kwineffects.h includes 2023-11-15 14:41:42 +02:00
shortcutdialog.ui
sm.cpp Make it possible to build KWin without libxcb 2024-02-28 16:03:50 +00:00
sm.h Make it possible to build KWin without libxcb 2024-02-28 16:03:50 +00:00
syncalarmx11filter.cpp There's no QVector anymore, QList is the QVector in Qt6 2023-10-19 13:43:53 +00:00
syncalarmx11filter.h
tablet_input.cpp workspace: unify active screen modes 2024-04-29 14:13:32 +00:00
tablet_input.h
tabletmodemanager.cpp Port away from deprecated KConfigBase::group() api 2023-11-28 10:02:03 +00:00
tabletmodemanager.h Unify the format for #include "config.h" 2024-02-28 16:03:50 +00:00
touch_input.cpp workspace: unify active screen modes 2024-04-29 14:13:32 +00:00
touch_input.h
useractions.cpp workspace: unify active screen modes 2024-04-29 14:13:32 +00:00
useractions.h libkwineffects/ -> effect/ 2023-11-20 11:32:43 +00:00
virtualdesktops.cpp Make it possible to build KWin without libxcb 2024-02-28 16:03:50 +00:00
virtualdesktops.h Make it possible to build KWin without libxcb 2024-02-28 16:03:50 +00:00
virtualdesktopsdbustypes.cpp
virtualdesktopsdbustypes.h Avoid QtDBus module include in commonly used headers 2023-10-22 13:45:28 +00:00
virtualkeyboard_dbus.cpp
virtualkeyboard_dbus.h
was_user_interaction_x11_filter.cpp There's no QVector anymore, QList is the QVector in Qt6 2023-10-19 13:43:53 +00:00
was_user_interaction_x11_filter.h
watchdog.cpp systemd: Set up a watchdog 2024-02-22 16:47:35 +00:00
wayland_server.cpp wayland: port linux drm syncobj from RenderBackend to DrmDevice 2024-05-22 00:26:14 +02:00
wayland_server.h wayland: implement linux-drm-syncobj-v1 2024-04-10 19:06:00 +02:00
waylandshellintegration.cpp
waylandshellintegration.h
waylandwindow.cpp Improve integration of preferred buffer scale with xdg shell configure events 2024-05-23 08:15:29 +00:00
waylandwindow.h Move X11Window::findModal() to Window and remove boolean trap 2024-03-19 12:47:59 +00:00
window.cpp Improve integration of preferred buffer scale with xdg shell configure events 2024-05-23 08:15:29 +00:00
window.h Improve integration of preferred buffer scale with xdg shell configure events 2024-05-23 08:15:29 +00:00
window_property_notify_x11_filter.cpp effects.h -> effecthandler.h 2023-11-20 15:47:36 +00:00
window_property_notify_x11_filter.h Merge EffectsHandlerImpl and EffectsHandler 2023-11-15 15:21:50 +02:00
workspace.cpp Do not snap to windows of the Dock type 2024-05-17 09:17:24 +00:00
workspace.h workspace: unify active screen modes 2024-04-29 14:13:32 +00:00
x11eventfilter.cpp There's no QVector anymore, QList is the QVector in Qt6 2023-10-19 13:43:53 +00:00
x11eventfilter.h There's no QVector anymore, QList is the QVector in Qt6 2023-10-19 13:43:53 +00:00
x11syncmanager.cpp opengl: remove most of glutils 2024-03-08 17:26:54 +00:00
x11syncmanager.h opengl: remove most of glutils 2024-03-08 17:26:54 +00:00
x11window.cpp Improve integration of preferred buffer scale with xdg shell configure events 2024-05-23 08:15:29 +00:00
x11window.h Rework how geometry updates blocking is handled in X11Window 2024-04-30 14:28:27 +00:00
xdgactivationv1.cpp wayland: Install display.h 2024-01-08 23:06:43 +00:00
xdgactivationv1.h wayland: Integrate KWaylandServer classes into KWin namespace 2023-09-15 16:31:15 +03:00
xdgshellintegration.cpp xdgshell: Use killPingTimeout option 2023-11-27 14:10:15 +00:00
xdgshellintegration.h xdgshell: Use killPingTimeout option 2023-11-27 14:10:15 +00:00
xdgshellwindow.cpp Improve integration of preferred buffer scale with xdg shell configure events 2024-05-23 08:15:29 +00:00
xdgshellwindow.h Improve integration of preferred buffer scale with xdg shell configure events 2024-05-23 08:15:29 +00:00
xkb.cpp xkb: always update keysym 2024-03-11 15:29:02 +00:00
xkb.h input_event: remove modifiersRelevantForTabBox 2024-02-14 14:25:03 +00:00