kwin/plugins/platforms/x11/standalone
Martin Gräßlin ea52ef9e57 Add a PlatformCursorImage to Platform and EffectsHandler
Summary:
There are several effects (screenshot, zoom) which need access to the
cursor image and cursor hotspot. So far these effects used X11
unconditionally to get the cursor which obviously does not work on
Wayland.

This change adds a new class PlatformCursorImage to kwinglobals which
wraps what a cursor is (image and hotspot) and adds a new virtual method
to Platform to provide such a PlatformCursorImage. By default it's the
cursor image the Platform tracks. On X11/standalone platform this new
virtual method is overriden and provides a PlatformCursorImage from X11
using the code previously used in screenshot effect.

Screenshot effect and zoom are adjusted to use the new API instead of
X11.

Test Plan:
Zoom effect tested on Wayland, now gets the proper cursor icon.
X11 functionality not yet tested.

Reviewers: #kwin, #plasma_on_wayland

Subscribers: plasma-devel, kwin

Tags: #plasma_on_wayland, #kwin

Differential Revision: https://phabricator.kde.org/D3093
2016-10-20 07:51:49 +02:00
..
CMakeLists.txt Move X11Cursor into the x11standalone platform plugin 2016-08-19 10:57:09 +02:00
edge.cpp Create screen edge through the Platform 2016-04-19 13:29:55 +02:00
edge.h Create screen edge through the Platform 2016-04-19 13:29:55 +02:00
glxbackend.cpp Remove the unredirect fullscreen windows functionality 2016-08-04 14:48:35 +02:00
glxbackend.h Move glxbackend to x11 standalone plugin 2016-04-15 07:46:02 +02:00
logging.cpp [plugins/platforms] Dedicated logging category for X11 standalone platform 2016-04-12 14:48:54 +02:00
logging.h [plugins/platforms] Dedicated logging category for X11 standalone platform 2016-04-12 14:48:54 +02:00
screens_xrandr.cpp Move XRandrScreens to the x11/standalone plugin 2016-04-12 08:04:16 +02:00
screens_xrandr.h Move XRandrScreens to the x11/standalone plugin 2016-04-12 08:04:16 +02:00
x11.json SVN_SILENT made messages (.desktop file) - always resolve ours 2016-10-05 09:29:10 +00:00
x11_platform.cpp Add a PlatformCursorImage to Platform and EffectsHandler 2016-10-20 07:51:49 +02:00
x11_platform.h Add a PlatformCursorImage to Platform and EffectsHandler 2016-10-20 07:51:49 +02: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 Add event filter for key press/release events while KWin grabbed keyboard on root window 2016-10-10 16:59:06 +02:00
xinputintegration.h Add event filter for key press/release events while KWin grabbed keyboard on root window 2016-10-10 16:59:06 +02:00