summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeremy Huddleston <jeremyhu@freedesktop.org>2008-12-24 08:39:06 (GMT)
committerJeremy Huddleston <jeremyhu@freedesktop.org>2008-12-29 06:17:12 (GMT)
commit61ae56f97326c57dda05632ca9f4873238ee18e1 (patch)
treec502830484a12f0b2582f91636f75b4096a2b508
parent85347902d97f2d4937f63ae1fac62ee46a61c82f (diff)
XQuartz: Reposition windows when we enter fullscreen to ensure our root window
(cherry picked from commit 7617d3659b5481ef85aecc1f936e7dd2662bdfbd)
-rw-r--r--hw/xquartz/quartz.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/hw/xquartz/quartz.c b/hw/xquartz/quartz.c
index 7f30201..1f0b004 100644
--- a/hw/xquartz/quartz.c
+++ b/hw/xquartz/quartz.c
@@ -324,6 +324,10 @@ void QuartzSetFullscreen(Bool state) {
if (quartzHasRoot && !quartzEnableRootless)
RootlessShowAllWindows ();
+ if (quartzHasRoot || quartzEnableRootless) {
+ RootlessRepositionWindows(screenInfo.screens[0]);
+ }
+
/* Somehow the menubar manages to interfere with our event stream
* in fullscreen mode, even though it's not visible.
*/
@@ -341,18 +345,18 @@ void QuartzSetRootless(Bool state) {
quartzEnableRootless = state;
+ xp_disable_update();
+
/* When in rootless, the menubar is not part of the screen, so we need to update our screens on toggle */
QuartzUpdateScreens();
if (!quartzEnableRootless && !quartzHasRoot) {
- xp_disable_update();
RootlessHideAllWindows();
- xp_reenable_update();
} else if (quartzEnableRootless && !quartzHasRoot) {
- xp_disable_update();
RootlessShowAllWindows();
- xp_reenable_update();
}
+
+ xp_reenable_update();
}
/*