virt-viewer-window: Return early when zoom of window and zoom of display are same

The zoom level should be changed when zoom levels of the window and
the display are different. It is wrong to check the previous value of
the window because it could be set just for the window and not for
the display (e.g. when setting zoom level using the command line).

Related to: https://bugzilla.redhat.com/show_bug.cgi?id=1206460
This commit is contained in:
Pavel Grunt 2015-04-05 15:45:01 +02:00 committed by Fabiano Fidêncio
parent 998b13c881
commit 01249f7032

View File

@ -1409,11 +1409,10 @@ void
virt_viewer_window_set_zoom_level(VirtViewerWindow *self, gint zoom_level)
{
VirtViewerWindowPrivate *priv;
gint min_zoom, old_zoom;
gint min_zoom;
g_return_if_fail(VIRT_VIEWER_IS_WINDOW(self));
priv = self->priv;
old_zoom = priv->zoomlevel;
if (zoom_level < MIN_ZOOM_LEVEL)
zoom_level = MIN_ZOOM_LEVEL;
@ -1430,7 +1429,7 @@ virt_viewer_window_set_zoom_level(VirtViewerWindow *self, gint zoom_level)
priv->zoomlevel = min_zoom;
}
if (priv->zoomlevel == old_zoom) {
if (priv->zoomlevel == virt_viewer_display_get_zoom_level(priv->display)) {
g_debug("Zoom level not changed, using: %d", priv->zoomlevel);
return;
}