kwin/plugins/platforms/x11/standalone
Martin Gräßlin 014afe1c05 [platformx/x11] Fix touch events for internal Qt windows
Summary:
To have touch events working we need to do memory layout changes on the
xcb events. This is fine for identifying the touch events which should
trigger the screen edge. But when passed on to Qt to have QtQuick windows
(e.g. Alt+Tab) handle the touch events, this results in a problem:
Qt itself does also the memory movement and then the movement is double
and touch events break.

To prevent this problem an RAII class is added which moves the memory in
the ctor and moves it back in the dtor. So during KWin's processing it
has the right memory layout and later on in Qt's processing it has the
proper "wrong" layout which Qt can fix again.

Test Plan: Touch events in Alt+Tab work

Reviewers: #kwin, #plasma

Subscribers: plasma-devel, kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D5549
2017-05-02 20:32:58 +02:00
..
CMakeLists.txt Move linking to DL_LIBRARY to x11standalone platform 2016-11-22 14:22:06 +01:00
edge.cpp Don't map screenedge approach window if edge is only used for touch 2017-04-22 08:17:59 +02:00
edge.h Add support for activating screenedges through touch swipe gestures 2017-03-27 17:44:02 +02:00
glxbackend.cpp Move linking to DL_LIBRARY to x11standalone platform 2016-11-22 14:22:06 +01:00
glxbackend.h Remove KWin::display from kwinglobals 2016-11-16 18:00:00 +01:00
logging.cpp
logging.h
screens_xrandr.cpp
screens_xrandr.h
windowselector.cpp Support interactive window selection through the Platform 2016-11-17 08:08:56 +01:00
windowselector.h Support interactive window selection through the Platform 2016-11-17 08:08:56 +01:00
x11.json SVN_SILENT made messages (.desktop file) - always resolve ours 2017-04-25 10:05:35 +02:00
x11_platform.cpp Split modifier only handling into a dedicated InputEventSpy 2017-02-14 17:02:18 +01:00
x11_platform.h Move X11 specific KGlobalAccel handling into the x11-standalone platform 2017-01-17 17:01:32 +01:00
x11cursor.cpp Move X11Cursor into the x11standalone platform plugin 2016-08-19 10:57:09 +02:00
x11cursor.h Move X11Cursor into the x11standalone platform plugin 2016-08-19 10:57:09 +02:00
xinputintegration.cpp [platformx/x11] Fix touch events for internal Qt windows 2017-05-02 20:32:58 +02:00
xinputintegration.h Split modifier only handling into a dedicated InputEventSpy 2017-02-14 17:02:18 +01:00