diff --git a/effects/glide/glide.h b/effects/glide/glide.h --- a/effects/glide/glide.h +++ b/effects/glide/glide.h @@ -25,7 +25,9 @@ #include -class QTimeLine; +#include +#include +#include namespace KWin { @@ -85,6 +87,7 @@ GlideOut = 3 }; EffectStyle effect; + QSet blacklist; }; class GlideEffect::WindowInfo diff --git a/effects/glide/glide.cpp b/effects/glide/glide.cpp --- a/effects/glide/glide.cpp +++ b/effects/glide/glide.cpp @@ -60,6 +60,7 @@ duration = animationTime(350); effect = (EffectStyle) GlideConfig::glideEffect(); angle = GlideConfig::glideAngle(); + blacklist = GlideConfig::blacklist().toSet(); } void GlideEffect::prePaintScreen(ScreenPrePaintData& data, int time) @@ -209,6 +210,8 @@ return false; if (!w->isVisible()) return false; + if (blacklist.contains(w->windowClass())) + return false; if (w->data(IsGlideWindow).toBool()) return true; if (w->hasDecoration()) diff --git a/effects/glide/glide.kcfg b/effects/glide/glide.kcfg --- a/effects/glide/glide.kcfg +++ b/effects/glide/glide.kcfg @@ -14,5 +14,8 @@ -90 + + ksmserver ksmserver,ksplashx ksplashx,ksplashsimple ksplashsimple,ksplashqml ksplashqml +