[virt-tools-list] [PATCH 13/22] session: skip monitor changes if there is no sized monitors
marcandre.lureau at redhat.com
marcandre.lureau at redhat.com
Tue Jul 31 13:41:16 UTC 2018
From: Marc-André Lureau <marcandre.lureau at redhat.com>
spice-gtk discards configurations without any sized monitors.
Also shuts extra warnings when shifting the monitors.
Signed-off-by: Marc-André Lureau <marcandre.lureau at redhat.com>
---
src/virt-viewer-session.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/src/virt-viewer-session.c b/src/virt-viewer-session.c
index 5bac3d9..cd1f037 100644
--- a/src/virt-viewer-session.c
+++ b/src/virt-viewer-session.c
@@ -406,6 +406,7 @@ virt_viewer_session_on_monitor_geometry_changed(VirtViewerSession* self,
gboolean all_fullscreen = TRUE;
/* GHashTable<gint, GdkRectangle*> */
GHashTable *monitors;
+ gint n_sized_monitors = 0;
GList *l;
klass = VIRT_VIEWER_SESSION_GET_CLASS(self);
@@ -421,6 +422,8 @@ virt_viewer_session_on_monitor_geometry_changed(VirtViewerSession* self,
g_object_get(d, "nth-display", &nth, NULL);
virt_viewer_display_get_preferred_monitor_geometry(d, rect);
+ if (rect->width > 0 && rect->height > 0)
+ n_sized_monitors++;
if (virt_viewer_display_get_enabled(d) &&
!virt_viewer_display_get_fullscreen(d))
@@ -428,6 +431,9 @@ virt_viewer_session_on_monitor_geometry_changed(VirtViewerSession* self,
g_hash_table_insert(monitors, GINT_TO_POINTER(nth), rect);
}
+ if (!n_sized_monitors)
+ return;
+
if (!all_fullscreen)
virt_viewer_align_monitors_linear(monitors);
--
2.18.0.321.gffc6fa0e39
More information about the virt-tools-list
mailing list