kwin/effects
Martin Gräßlin 2545162f87 Support highlighting windows through EffectsHandlerImpl
Summary:
So far TabBox used highlight windows by passing window ids around through
an X property. This doesn't work on Wayland where we don't have window
ids for our TabBox and the Wayland windows.

This change introduces a new Effect::Feature for HighlightWindows which
the HighlightWindowsEffect provides. The EffectsHandlerImpl has a new
method to highlightWindows which it delegates to that effect if it is
loaded by invoking a new performFeature method.

The TabBoxHandler now passes the highlighting to the effects system
instead of updating the x11 property. Thus this works on Wayland and
at the same time improves the X11 side by no longer having to go through
the property protocol.

Test Plan: Verified that Alt+Tab highlights the windows on Wayland correctly.

Reviewers: #kwin, #plasma_on_wayland

Subscribers: plasma-devel, kwin

Tags: #plasma_on_wayland, #kwin

Differential Revision: https://phabricator.kde.org/D2630
2016-09-13 08:36:12 +02:00
..
backgroundcontrast [effects] Disable Blur and BackgroundContrast on software emulation 2016-08-09 14:56:13 +02:00
blur [effects] Disable Blur and BackgroundContrast on software emulation 2016-08-09 14:56:13 +02:00
coverswitch Introduce an EffectsHandler::animationsSupported -> bool 2016-08-15 17:38:33 +02:00
cube Introduce an EffectsHandler::animationsSupported -> bool 2016-08-15 17:38:33 +02:00
desktopgrid Adding more frameless hints 2016-08-11 08:45:41 +02:00
dialogparent SVN_SILENT made messages (.desktop file) - always resolve ours 2016-01-30 09:40:55 +00:00
diminactive Use SERVICE_TYPES parameter to kcoreaddons_desktop_to_json() 2015-12-09 23:42:45 +00:00
dimscreen
eyeonscreen SVN_SILENT made messages (.desktop file) - always resolve ours 2016-08-28 11:30:20 +00:00
fade SVN_SILENT made messages (.desktop file) - always resolve ours 2016-02-20 09:52:01 +00:00
fadedesktop SVN_SILENT made messages (.desktop file) - always resolve ours 2016-01-30 09:40:55 +00:00
fallapart Introduce an EffectsHandler::animationsSupported -> bool 2016-08-15 17:38:33 +02:00
flipswitch Introduce an EffectsHandler::animationsSupported -> bool 2016-08-15 17:38:33 +02:00
glide Introduce an EffectsHandler::animationsSupported -> bool 2016-08-15 17:38:33 +02:00
highlightwindow Support highlighting windows through EffectsHandlerImpl 2016-09-13 08:36:12 +02:00
invert Port to CMake AUTOMOC 2016-02-01 21:05:36 +01:00
kscreen do not reinterpret_cast insufficient data 2015-10-05 23:41:16 +02:00
login SVN_SILENT made messages (.desktop file) - always resolve ours 2016-02-20 09:52:01 +00:00
logout/data [effects] Drop the logout effect 2016-08-24 10:09:22 +02:00
lookingglass [effects] Check for LimitedNPOT 2016-02-02 12:37:14 +01:00
magiclamp Introduce an EffectsHandler::animationsSupported -> bool 2016-08-15 17:38:33 +02:00
magnifier Port to CMake AUTOMOC 2016-02-01 21:05:36 +01:00
maximize SVN_SILENT made messages (.desktop file) - always resolve ours 2016-05-31 11:06:54 +00:00
minimizeanimation
morphingpopups Merge branch 'Plasma/5.7' 2016-09-12 13:14:15 +02:00
mouseclick SVN_SILENT made messages (.desktop file) - always resolve ours 2016-02-20 09:52:01 +00:00
mousemark Port to CMake AUTOMOC 2016-02-01 21:05:36 +01:00
presentwindows Add support for touch events in the Effect system 2016-08-16 14:18:40 +02:00
resize [effects] Use shader traits in Resize 2016-01-25 14:11:54 +01:00
scalein SVN_SILENT made messages (.desktop file) - always resolve ours 2016-01-30 09:40:55 +00:00
screenedge [effects] Use shader traits api in screenedge effect 2016-01-25 14:11:54 +01:00
screenshot Revert "Handle conflicts between epoxy and manually resolved function pointers" 2015-11-17 14:58:59 +01:00
sheet Introduce an EffectsHandler::animationsSupported -> bool 2016-08-15 17:38:33 +02:00
showfps SVN_SILENT made messages (.desktop file) - always resolve ours 2016-05-31 11:06:54 +00:00
showpaint [effects] Use shader traits in ShowPaint effect 2016-01-25 14:11:54 +01:00
slide Port to CMake AUTOMOC 2016-02-01 21:05:36 +01:00
slideback explicitly update the stack track on unminimization 2015-11-24 22:38:49 +01:00
slidingpopups [effects/slidingpopups] Don't reference previous pixmap 2016-07-15 12:45:10 +02:00
snaphelper [effects] Use shader traits in SnapHelper effect 2016-01-25 14:11:54 +01:00
startupfeedback [effects] Combine all shaders in resources 2016-02-01 08:42:30 +01:00
thumbnailaside Port to CMake AUTOMOC 2016-02-01 21:05:36 +01:00
touchpoints [effects] Add new effect for touch point visualization 2016-08-18 10:36:48 +02:00
trackmouse [effects] Use shader traits API in trackmouse 2016-01-25 14:11:54 +01:00
translucency SVN_SILENT made messages (.desktop file) - always resolve ours 2016-01-30 09:40:55 +00:00
windowaperture SVN_SILENT made messages (.desktop file) - always resolve ours 2016-02-09 10:37:25 +00:00
windowgeometry Use SERVICE_TYPES parameter to kcoreaddons_desktop_to_json() 2015-12-09 23:42:45 +00:00
wobblywindows Introduce an EffectsHandler::animationsSupported -> bool 2016-08-15 17:38:33 +02:00
zoom [effects/zoom] Remove unused variable 2016-06-29 10:51:47 +02:00
CMakeLists.txt [effects] Drop the logout effect 2016-08-24 10:09:22 +02:00
effect_builtins.cpp [effects] Drop the logout effect 2016-08-24 10:09:22 +02:00
effect_builtins.h [effects] Add enum value for new TouchPoints effect 2016-08-24 16:24:04 +02:00
kwineffect.desktop SVN_SILENT made messages (.desktop file) - always resolve ours 2015-12-06 09:17:34 +00:00
logging.cpp pedantic fixes 2016-07-16 13:14:44 -04:00
Messages.sh
shaders.qrc [effects] Drop the logout effect 2016-08-24 10:09:22 +02:00