summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdam Endrodi <ext-adam.endrodi@nokia.com>2010-11-24 18:27:18 +0200
committerAdam Endrodi <ext-adam.endrodi@nokia.com>2010-12-03 14:05:10 +0200
commit0ec672c1b39f7c3fd983724319c373285aec5386 (patch)
tree6c520f3988ac93d4525b78843b004e7c2d347d52
parentf5b9a5805adfab54993a7ad0b81e817b8eb000e3 (diff)
exposee desktop in checkStacking()
Booting the gadget we falsely tell the desktop it's VisibilityFullyObscured, thus it doesn't update (but still gets and reacts to pointer events). This is because an ALWAYS_MAPPED window is mapped after the desktop's. checkStacking() correctly determines that new window should be below, but the damage has been done by activateWindow() and isn't undone. Make checkStacking undo it now. * src/mcompositemanager.cpp (MCompositeManagerPrivate::checkStacking): Explicitly expose or unexpose the desktop depending on desktop_up.
-rw-r--r--src/mcompositemanager.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/mcompositemanager.cpp b/src/mcompositemanager.cpp
index 6892415..8439a86 100644
--- a/src/mcompositemanager.cpp
+++ b/src/mcompositemanager.cpp
@@ -1936,6 +1936,7 @@ void MCompositeManagerPrivate::checkStacking(bool force_visibility_check,
* there is no active application */
STACKING("checkStacking: desktop_up: %d, active_app: 0x%lx, app_i: %d",
desktop_up, active_app, app_i);
+ setExposeDesktop(desktop_up);
if (!desktop_up && active_app && app_i >= 0 && aw) {
/* raise application windows belonging to the same group */
XID group;