From 4365b077d50d8ead3ed7c58ec2f5d6086cf22a40 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Gr=C3=A4=C3=9Flin?= Date: Sun, 15 May 2011 20:26:26 +0200 Subject: [PATCH] Do full repaints on window damage in boxswitch with GLES Due to changes in the blur effect, the EffectFrame was flickering with GLES. This can be worked around by doing full repaints whenever a window is damagded while boxswitch is active with GLES. The problem only occurs with the GLES backend due to the way how the buffers are swapped. BUG: 272688 --- effects/boxswitch/boxswitch.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/effects/boxswitch/boxswitch.cpp b/effects/boxswitch/boxswitch.cpp index 9875499c39..274417457b 100644 --- a/effects/boxswitch/boxswitch.cpp +++ b/effects/boxswitch/boxswitch.cpp @@ -272,6 +272,10 @@ void BoxSwitchEffect::slotWindowDamaged(EffectWindow* w, const QRect& damage) effects->addRepaint(desktops[ w->desktop()]->area); } } +#ifdef KWIN_HAVE_OPENGLES + // without full repaints, blur effect flickers on GLES, see BUG 272688 + effects->addRepaintFull(); +#endif } }