graesslin created this revision. graesslin added reviewers: KWin, Plasma on Wayland. Restricted Application added subscribers: kwin, plasma-devel. Restricted Application added projects: Plasma on Wayland, KWin.
REVISION SUMMARY By default the InputRedirectionCursor is created and only the X11 standalone platform creates the X11 specific cursor. This is a preparation step for moving the X11 specific cursor implementation into the x11standalone platform plugin. Move X11Cursor into the x11standalone platform plugin At the same time the xinput2 integration is split out of X11Cursor and made a standalone part of the platform plugin. XInput integration is nowadays not only used by the cursor position polling, but also for modifier only shortcuts. By splitting it out the modifier shortcuts start to work also when one doesn't have anything requesting a mouse position polling. This also simplifies the conditional builds: xinput integration is only included if we have support for it at compile time without having to have many ifdefs in the cursor implementation. For the inclusion of cursor in the kcmkwin this also removes all the ifdefs. The key events are only requested if we have xinput 2.1. Otherwise we would not get all raw events if the input device gets grabbed. REPOSITORY rKWIN KWin BRANCH x11cursor-to-platform REVISION DETAIL https://phabricator.kde.org/D2473 AFFECTED FILES CMakeLists.txt cursor.cpp cursor.h kcmkwin/kwinrules/CMakeLists.txt kcmkwin/kwinrules/detectwidget.cpp kcmkwin/kwinrules/kwinsrc.cpp keyboard_input.h main.cpp platform.cpp platform.h plugins/platforms/x11/standalone/CMakeLists.txt plugins/platforms/x11/standalone/x11_platform.cpp plugins/platforms/x11/standalone/x11_platform.h plugins/platforms/x11/standalone/x11cursor.cpp plugins/platforms/x11/standalone/x11cursor.h plugins/platforms/x11/standalone/xinputintegration.cpp plugins/platforms/x11/standalone/xinputintegration.h utils.h EMAIL PREFERENCES https://phabricator.kde.org/settings/panel/emailpreferences/ To: graesslin, #kwin, #plasma_on_wayland Cc: plasma-devel, kwin, lesliezhai, ali-mohamed, hardening, jensreuterberg, abetts, sebas