[prev in list] [next in list] [prev in thread] [next in thread]
List: kwin
Subject: [Differential] [Request, 97 lines] D2630: Support highlighting windows through EffectsHandlerImpl
From: graesslin_(Martin_Gräßlin) <noreply () phabricator ! kde ! or
Date: 2016-08-30 14:08:32
Message-ID: differential-rev-PHID-DREV-lxrux7ymbtxu3lmo6ns2-req () phabricator ! kde ! org
[Download RAW message or body]
graesslin created this revision.
graesslin added reviewers: KWin, Plasma on Wayland.
Restricted Application added subscribers: kwin, plasma-devel.
Restricted Application added projects: Plasma on Wayland, KWin.
REVISION 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 slot through the meta object.
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.
REPOSITORY
rKWIN KWin
BRANCH
highlight-windows-through-effects
REVISION DETAIL
https://phabricator.kde.org/D2630
AFFECTED FILES
autotests/tabbox/mock_tabboxhandler.h
effects.cpp
effects.h
effects/highlightwindow/highlightwindow.cpp
effects/highlightwindow/highlightwindow.h
libkwineffects/kwineffects.h
tabbox/tabbox.cpp
tabbox/tabbox.h
tabbox/tabboxhandler.cpp
tabbox/tabboxhandler.h
EMAIL PREFERENCES
https://phabricator.kde.org/settings/panel/emailpreferences/
To: graesslin, #kwin, #plasma_on_wayland
Cc: plasma-devel, kwin, lesliezhai, ali-mohamed, hardening, jensreuterberg, abetts, sebas
[Attachment #3 (text/html)]
<table><tr><td style="">graesslin created this revision.<br />graesslin added \
reviewers: KWin, Plasma on Wayland.<br />Restricted Application added subscribers: \
kwin, plasma-devel.<br />Restricted Application added projects: Plasma on Wayland, \
KWin.</td><a style="text-decoration: none; padding: 4px 8px; margin: 0 8px 8px; \
float: right; color: #464C5C; font-weight: bold; border-radius: 3px; \
background-color: #F7F7F9; background-image: linear-gradient(to bottom,#fff,#f1f0f1); \
display: inline-block; border: 1px solid rgba(71,87,120,.2);" \
href="https://phabricator.kde.org/D2630" rel="noreferrer">View \
Revision</a></tr></table><br /><div><strong>REVISION SUMMARY</strong><div><p>So far \
TabBox used highlight windows by passing window ids around through<br /> an X \
property. This doesn't work on Wayland where we don't have window<br /> ids \
for our TabBox and the Wayland windows.</p>
<p>This change introduces a new Effect::Feature for HighlightWindows which<br />
the HighlightWindowsEffect provides. The EffectsHandlerImpl has a new<br />
method to highlightWindows which it delegates to that effect if it is<br />
loaded by invoking a slot through the meta object.</p>
<p>The TabBoxHandler now passes the highlighting to the effects system<br />
instead of updating the x11 property. Thus this works on Wayland and<br />
at the same time improves the X11 side by no longer having to go through<br />
the property protocol.</p></div></div><br /><div><strong>TEST \
PLAN</strong><div><p>Verified that Alt+Tab highlights the windows on Wayland \
correctly.</p></div></div><br /><div><strong>REPOSITORY</strong><div><div>rKWIN \
KWin</div></div></div><br \
/><div><strong>BRANCH</strong><div><div>highlight-windows-through-effects</div></div></div><br \
/><div><strong>REVISION DETAIL</strong><div><a \
href="https://phabricator.kde.org/D2630" \
rel="noreferrer">https://phabricator.kde.org/D2630</a></div></div><br \
/><div><strong>AFFECTED \
FILES</strong><div><div>autotests/tabbox/mock_tabboxhandler.h<br /> effects.cpp<br />
effects.h<br />
effects/highlightwindow/highlightwindow.cpp<br />
effects/highlightwindow/highlightwindow.h<br />
libkwineffects/kwineffects.h<br />
tabbox/tabbox.cpp<br />
tabbox/tabbox.h<br />
tabbox/tabboxhandler.cpp<br />
tabbox/tabboxhandler.h</div></div></div><br /><div><strong>EMAIL \
PREFERENCES</strong><div><a \
href="https://phabricator.kde.org/settings/panel/emailpreferences/" \
rel="noreferrer">https://phabricator.kde.org/settings/panel/emailpreferences/</a></div></div><br \
/><div><strong>To: </strong>graesslin, KWin, Plasma on Wayland<br /><strong>Cc: \
</strong>plasma-devel, kwin, lesliezhai, ali-mohamed, hardening, jensreuterberg, \
abetts, sebas<br /></div>
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic