kwin/libkwineffects
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
..
anidata.cpp optimize string operations 2015-11-05 14:14:06 +00:00
anidata_p.h use a global static for animation ids 2016-03-23 12:03:31 +01:00
CMakeLists.txt Add a PlatformCursorImage to Platform and EffectsHandler 2016-10-20 07:51:49 +02:00
kwinanimationeffect.cpp use a global static for animation ids 2016-03-23 12:03:31 +01:00
kwinanimationeffect.h allow to retarget animations 2016-02-16 13:59:22 +01:00
kwinconfig.h.cmake Bind building of glx support on whether epoxy has a glx header 2015-11-03 09:29:31 +01:00
kwineffects.cpp Pass the current output geometry to ScreenPaintData 2016-10-17 09:02:30 +02:00
kwineffects.h Add a PlatformCursorImage to Platform and EffectsHandler 2016-10-20 07:51:49 +02:00
kwinglcolorcorrection.cpp [libkwinglutils] Cleanup Shader API: removal of ShaderType 2016-01-26 09:42:49 +01:00
kwinglcolorcorrection.h
kwinglcolorcorrection_p.h
kwinglobals.h Add a PlatformCursorImage to Platform and EffectsHandler 2016-10-20 07:51:49 +02:00
kwinglplatform.cpp [libkwineffects] Port getXServerVersion from X11 to xcb 2016-08-23 11:45:59 +02:00
kwinglplatform.h [libkwineffects] Add detection code for Qualcomm Adreno to GLPlatform 2016-08-12 09:59:38 +02:00
kwingltexture.cpp [kwinglutils] Don't setup old shader API for rendering a texture 2016-01-25 14:11:54 +01:00
kwingltexture.h [libkwineffects] Fix includes in kwingltexture.h 2016-08-08 15:46:25 +02:00
kwingltexture_p.h
kwinglutils.cpp Fix viewport restore in GLRenderTarget::popRenderTarget 2016-10-18 16:11:22 +02:00
kwinglutils.h Expose GLRenderTarget::virtualScreenGeometry 2016-10-18 16:25:36 +02:00
kwinglutils_funcs.cpp Don't query for GL_CONTEXT_FLAGS if not at least OpenGL 3.0 2015-11-19 11:20:33 +01:00
kwinglutils_funcs.h Revert "Handle conflicts between epoxy and manually resolved function pointers" 2015-11-17 14:58:59 +01:00
kwinxrenderutils.cpp [libkwinxrenderutils] Clean up static blend picture before going down 2016-06-13 15:29:07 +02:00
kwinxrenderutils.h [libkwinxrenderutils] Clean up static blend picture before going down 2016-06-13 15:29:07 +02:00
logging.cpp pedantic fixes 2016-07-16 13:14:44 -04:00
logging_p.h pedantic fixes 2016-07-16 13:14:44 -04:00
Mainpage.dox
Messages.sh