diff options
| author | Daniel van Vugt <daniel.van.vugt@canonical.com> | 2012-10-26 17:05:22 +0200 |
|---|---|---|
| committer | Daniel van Vugt <daniel.van.vugt@canonical.com> | 2012-10-26 17:05:22 +0200 |
| commit | 85adae8e6fcf4ce34802f865805b236eabfbb29f (patch) | |
| tree | 49cbecb0a0992355928d1c7c7304474a5ad9e015 /plugins/unityshell/src | |
| parent | ccc68c08f423dc9a8d131b9fb31a5e22031fe33f (diff) | |
Stop Unity UI elements from flickering. This could happen in some odd
cases where UnityScreen::damageRegion has not received the full damage region for the frame, most likely due to the *SetEnabled() toggles. So the fix is to tell Nux about the final, complete, set of damage just before rendering. This ensures Nux is always told about everything it has to redraw on every frame, rather than flickering. (LP: #1070735) Fixes LP: #1070735 (bzr r2866.4.1)
Diffstat (limited to 'plugins/unityshell/src')
| -rw-r--r-- | plugins/unityshell/src/unityshell.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/plugins/unityshell/src/unityshell.cpp b/plugins/unityshell/src/unityshell.cpp index 08c91a643..528fbe92c 100644 --- a/plugins/unityshell/src/unityshell.cpp +++ b/plugins/unityshell/src/unityshell.cpp @@ -1311,6 +1311,8 @@ void UnityScreen::preparePaint(int ms) didShellRepaint = false; panelShadowPainted = CompRegion(); firstWindowAboveShell = NULL; + + compizDamageNux(cScreen->currentDamage()); } void UnityScreen::donePaint() |
