On 02/05/2016 01:27 PM, Pavel Grunt wrote: > --- > src/virt-viewer-display.c | 52 ++++++++++++++++++++++++++++------------------- > 1 file changed, 31 insertions(+), 21 deletions(-) > > diff --git a/src/virt-viewer-display.c b/src/virt-viewer-display.c > index 654cada..a289b6f 100644 > --- a/src/virt-viewer-display.c > +++ b/src/virt-viewer-display.c > @@ -448,24 +448,39 @@ virt_viewer_display_make_resizable(VirtViewerDisplay *self) > > #else > > +static void virt_viewer_display_get_preferred_dimension_from_desktop(VirtViewerDisplay *display, > + const int minimal_size, > + const int desktop_dim, > + int *minimal_dim, > + int *preferred_dim) > +{ > + int border_width = gtk_container_get_border_width(GTK_CONTAINER(display)); > + > + if (virt_viewer_display_get_zoom(display)) { > + guint zoom_level = virt_viewer_display_get_zoom_level(display); The functions you removed access these fields directly? Any reason for not doing it? Acked-by: Eduardo Lima (Etrunko) <etrunko@xxxxxxxxxx> > + *preferred_dim = round(desktop_dim * zoom_level / (double) NORMAL_ZOOM_LEVEL); > + *minimal_dim = round(minimal_size * zoom_level / (double) NORMAL_ZOOM_LEVEL); > + } else { > + *preferred_dim = desktop_dim; > + *minimal_dim = minimal_size; > + } > + *preferred_dim += 2 * border_width; > + *minimal_dim += 2 * border_width; > +} > + > + > static void virt_viewer_display_get_preferred_width(GtkWidget *widget, > int *minwidth, > int *defwidth) > { > VirtViewerDisplay *display = VIRT_VIEWER_DISPLAY(widget); > VirtViewerDisplayPrivate *priv = display->priv; > - int border_width = gtk_container_get_border_width(GTK_CONTAINER(widget)); > - > > - if (priv->zoom) { > - *defwidth = round(priv->desktopWidth * priv->zoom_level / (double) NORMAL_ZOOM_LEVEL); > - *minwidth = round(MIN_DISPLAY_WIDTH * priv->zoom_level / (double) NORMAL_ZOOM_LEVEL); > - } else { > - *defwidth = priv->desktopWidth; > - *minwidth = MIN_DISPLAY_WIDTH; > - } > - *defwidth += 2 * border_width; > - *minwidth += 2 * border_width; > + virt_viewer_display_get_preferred_dimension_from_desktop(display, > + MIN_DISPLAY_WIDTH, > + priv->desktopWidth, > + minwidth, > + defwidth); > } > > > @@ -475,17 +490,12 @@ static void virt_viewer_display_get_preferred_height(GtkWidget *widget, > { > VirtViewerDisplay *display = VIRT_VIEWER_DISPLAY(widget); > VirtViewerDisplayPrivate *priv = display->priv; > - int border_height = gtk_container_get_border_width(GTK_CONTAINER(widget)); > > - if (priv->zoom) { > - *defheight = round(priv->desktopHeight * priv->zoom_level / (double) NORMAL_ZOOM_LEVEL); > - *minheight = round(MIN_DISPLAY_HEIGHT * priv->zoom_level / (double) NORMAL_ZOOM_LEVEL); > - } else { > - *defheight = priv->desktopHeight; > - *minheight = MIN_DISPLAY_HEIGHT; > - } > - *defheight += 2 * border_height; > - *minheight += 2 * border_height; > + virt_viewer_display_get_preferred_dimension_from_desktop(display, > + MIN_DISPLAY_HEIGHT, > + priv->desktopHeight, > + minheight, > + defheight); > } > #endif > > -- Eduardo de Barros Lima (Etrunko) Software Engineer - RedHat etrunko@xxxxxxxxxx _______________________________________________ virt-tools-list mailing list virt-tools-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/virt-tools-list