diff --git a/effects/slideback/slideback.cpp b/effects/slideback/slideback.cpp --- a/effects/slideback/slideback.cpp +++ b/effects/slideback/slideback.cpp @@ -307,8 +307,11 @@ EffectWindowList SlideBackEffect::usableWindows(const EffectWindowList & allWindows) { EffectWindowList retList; + auto isWindowVisible = [] (const EffectWindow *window) { + return window && effects->virtualScreenGeometry().intersects(window->geometry()); + }; foreach (EffectWindow * tmp, allWindows) { - if (isWindowUsable(tmp)) { + if (isWindowUsable(tmp) && isWindowVisible(tmp)) { retList.append(tmp); } }