[Spice-devel] [PATCH spice 4/4] client: change monitor mode setting <-> fullscreen window mode setting order

Arnon Gilboa agilboa at redhat.com
Sun Oct 17 07:54:16 PDT 2010


Ack

Hans de Goede wrote:
> 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();
>   



More information about the Spice-devel mailing list