diff --git a/composite.cpp b/composite.cpp index 598db03636..f4ed57a869 100644 --- a/composite.cpp +++ b/composite.cpp @@ -996,7 +996,10 @@ bool Unmanaged::shouldUnredirect() const { // the pixmap is needed for the login effect, a nicer solution would be the login effect increasing // refcount for the window pixmap (which would prevent unredirect), avoiding this hack - if (resourceClass() == "ksplashx" || resourceClass() == "ksplashsimple") + if (resourceClass() == "ksplashx" + || resourceClass() == "ksplashsimple" + || resourceClass() == "ksplashqml" + ) return false; // it must cover whole display or one xinerama screen, and be the topmost there if (geometry() == workspace()->clientArea(FullArea, geometry().center(), workspace()->currentDesktop()) diff --git a/effects/fade/fade.cpp b/effects/fade/fade.cpp index 52f0e3758f..076cb36dee 100644 --- a/effects/fade/fade.cpp +++ b/effects/fade/fade.cpp @@ -192,6 +192,7 @@ bool FadeEffect::isFadeWindow(EffectWindow* w) e = w->data(WindowAddedGrabRole).value(); if (w->windowClass() == "ksplashx ksplashx" || w->windowClass() == "ksplashsimple ksplashsimple" + || w->windowClass() == "qt-subapplication ksplashqml" || (e && e != this)) { // see login effect return false; diff --git a/effects/login/login.cpp b/effects/login/login.cpp index e1d934e236..9782c09f57 100644 --- a/effects/login/login.cpp +++ b/effects/login/login.cpp @@ -90,7 +90,8 @@ bool LoginEffect::isLoginSplash(EffectWindow* w) // TODO there should be probably a better way (window type?) // see also fade effect and composite.cpp if (w->windowClass() == "ksplashx ksplashx" - || w->windowClass() == "ksplashsimple ksplashsimple") { + || w->windowClass() == "ksplashsimple ksplashsimple" + || w->windowClass() == "qt-subapplication ksplashqml") { return true; } return false;