[effects/fallapart] Override scale, fade, and glide effect

Summary:
Currently the fall apart effect doesn't work in conjuction with window
open/close animation effects, e.g. scale. The reason for that is those
effects grab windows before the fall apart effect.

Test Plan:
* Enable the fall apart effect and the scale effect;
* Close a window.
(without this patch the window doesn't fall apart)

Reviewers: #kwin, davidedmundson

Reviewed By: #kwin, davidedmundson

Subscribers: ngraham, davidedmundson, kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D19723
This commit is contained in:
Vlad Zagorodniy 2019-12-06 11:01:08 +02:00 committed by Vlad Zahorodnii
parent d394855536
commit 1747e497e4

View file

@ -163,9 +163,6 @@ void FallApartEffect::slotWindowClosed(EffectWindow* c)
return; return;
if (!c->isVisible()) if (!c->isVisible())
return; return;
const void* e = c->data(WindowClosedGrabRole).value<void*>();
if (e && e != this)
return;
c->setData(WindowClosedGrabRole, QVariant::fromValue(static_cast<void*>(this))); c->setData(WindowClosedGrabRole, QVariant::fromValue(static_cast<void*>(this)));
windows[ c ] = 0; windows[ c ] = 0;
c->refWindow(); c->refWindow();