D5549: [platformx/x11] Fix touch events for internal Qt windows

Martin Gräßlin noreply at phabricator.kde.org
Sun Apr 23 13:05:36 UTC 2017


graesslin created this revision.
Restricted Application added a project: KWin.
Restricted Application added subscribers: kwin, plasma-devel.

REVISION 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

REPOSITORY
  R108 KWin

BRANCH
  tabbox-touch-events

REVISION DETAIL
  https://phabricator.kde.org/D5549

AFFECTED FILES
  plugins/platforms/x11/standalone/xinputintegration.cpp

To: graesslin, #kwin, #plasma
Cc: plasma-devel, kwin, spstarr, progwolff, lesliezhai, ali-mohamed, hardening, jensreuterberg, abetts, sebas, apol
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/plasma-devel/attachments/20170423/406bd831/attachment.html>


More information about the Plasma-devel mailing list