[Spice-devel] [PATCH spice 4/4] client: change monitor mode setting <-> fullscreen window mode setting order
Hans de Goede
hdegoede at redhat.com
Sun Oct 17 02:46:20 PDT 2010
1) Make the order when starting up in fullscreen mode the same as when
switching from window -> fullscreen:
First set the mode, then make the window fullscreen
2) Change the order when leaving fullscreen mode, first restore the original
monitor mode, then make the window non fullscreen. Changing the monitor
mode in X11 causes the window manager to re-arrange windows, and if this
happens while compiz is busy mapping the window it gets confused and
maps the window with a maxmimized size. This likely also fixes the window
not always being shown on top when going from fullscreen -> windowed in
kde (still need to test)
---
client/application.cpp | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/client/application.cpp b/client/application.cpp
index c5d34ff..e828968 100644
--- a/client/application.cpp
+++ b/client/application.cpp
@@ -660,9 +660,9 @@ RedScreen* Application::get_screen(int id)
mon = get_monitor(id);
capture = release_capture();
screen->set_monitor(mon);
+ prepare_monitors();
position_screens();
screen->show_full_screen();
- prepare_monitors();
if (capture) {
_main_screen->activate();
@@ -1499,6 +1499,7 @@ void Application::exit_full_screen()
LOG_INFO("");
_changing_screens = true;
release_capture();
+ restore_monitors();
for (int i = 0; i < (int)_screens.size(); i++) {
if (_screens[i]) {
Monitor* mon;
@@ -1509,7 +1510,6 @@ void Application::exit_full_screen()
}
}
}
- restore_monitors();
_full_screen = false;
restore_screens_size();
show();
--
1.7.3.1
More information about the Spice-devel
mailing list