[effects] Handle windowShown and windowHidden in fade effect
ClosedPublic

Authored by graesslin on Nov 18 2016, 3:41 PM.

Details

Summary

For Wayland windows we can have a sequence of window unmapped
(windowHidden signal) followed by a windowClosed way later when the
application quits. This is for example the case with menus.

The result of this was that the fade out animation triggered when the
application quit showing all the already closed menus again.

This change implements a windowShown and windowHidden handler and
triggers the fadeIn/Out animation on it. If the window gets shown
again the existing fadeOut animation gets cancelled, so that it can run
again.

If a window gets closed for which a fade out animation has been run
already, it's not triggered again, thus ensuring that we don't see
zombie windows.

CCBUG: 372622

Diff Detail

Repository
R108 KWin
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.
graesslin updated this revision to Diff 8310.Nov 18 2016, 3:41 PM
graesslin retitled this revision from to [effects] Handle windowShown and windowHidden in fade effect.
graesslin updated this object.
graesslin edited the test plan for this revision. (Show Details)
graesslin added reviewers: KWin, Plasma on Wayland, hein.
Restricted Application added projects: Plasma on Wayland, KWin. · View Herald TranscriptNov 18 2016, 3:41 PM
Restricted Application added subscribers: kwin, plasma-devel. · View Herald Transcript

Please note: the fadeOut on windowHidden is not visible. This another bug which still needs investigation.

hein accepted this revision.Nov 20 2016, 2:53 PM
hein edited edge metadata.

Thanks!

This revision is now accepted and ready to land.Nov 20 2016, 2:53 PM
This revision was automatically updated to reflect the committed changes.