On Thu, 2015-04-02 at 16:42 +0200, Marc-André Lureau wrote: > > On Thu, Apr 2, 2015 at 4:36 PM, Jonathon Jongsma <jjongsma@xxxxxxxxxx> > wrote: > That would be a pretty drastic change in behavior. So, no, I > have not > considered that. It would also open up a large can of worms. > For > example, what would happen if you re-configured the displays > from within > the guest control panel. What would you do then? > > > > I would eventually follow guest configuration, but I wouldn't send > back a new configuration (no auto-resize). > So, I did a quick test where I used an un-modified spice-server and the following diff to virt-viewer: =================== diff --git a/src/virt-viewer-session.c b/src/virt-viewer-session.c index 131a500..5f47d09 100644 --- a/src/virt-viewer-session.c +++ b/src/virt-viewer-session.c @@ -412,6 +412,13 @@ virt_viewer_session_on_monitor_geometry_changed(VirtViewerSession* self, if (!klass->apply_monitor_geometry) return; + /* don't send monitor resize if we're in auto-conf fullscreen mode...*/ + if (virt_viewer_app_get_fullscreen(self->priv->app)) { + g_debug("%s: not sending new monitors config because app is in fullscreen mode", G_STRFUNC); + return; + } + g_debug("%s: sending", G_STRFUNC); + /* find highest monitor ID so we can create the sparse array */ for (l = self->priv->displays; l; l = l->next) { VirtViewerDisplay *d = VIRT_VIEWER_DISPLAY(l->data); ==================== This is basically what you suggest. While we're in auto-conf mode, it never sends down monitor config changes, but it does respond to display updates from the server. When the user exits fullscreen mode, it resumes auto-resize and sends new monitor config messages to the server. It improved the situation, but didn't fix it. Before applying this patch, when I started virt-viewer in --full-screen mode, the extra display was left enabled about 25-50% of the time. After this patch, it happens only about 10% of the time. But it also seems to introduce a regression that I haven't investigated yet: when things work properly (e.g. only a single fullscreen display is shown) and I follow these steps: - exit fullscreen - enable a second display (View > Displays > Display 2) The second window appears, but it simply displays "Waiting for display 2..." forever. The display only shows starts working after you resize one of the windows. _______________________________________________ Spice-devel mailing list Spice-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/spice-devel