[virt-tools-list] [PATCH] Fix scaling of window upon resize

Marc-André Lureau mlureau at redhat.com
Wed Mar 12 17:39:16 UTC 2014


ack

----- Original Message -----
> The code to determine scaling of windows was incorrectly
> using the original desktop size instead of the host screen
> size. The 128 pixel fudge factor was also causing windows
> to be scaled when there was no need for them to be.
> 
> Signed-off-by: Daniel P. Berrange <berrange at redhat.com>
> ---
>  src/virt-viewer-window.c | 16 +++++++---------
>  1 file changed, 7 insertions(+), 9 deletions(-)
> 
> diff --git a/src/virt-viewer-window.c b/src/virt-viewer-window.c
> index 05d5fe7..3740a9e 100644
> --- a/src/virt-viewer-window.c
> +++ b/src/virt-viewer-window.c
> @@ -433,24 +433,22 @@ virt_viewer_window_resize(VirtViewerWindow *self,
> gboolean keep_win_size)
>                                      (screen,
>                                      gtk_widget_get_window(priv->window)),
>                                      &fullscreen);
>  
> -    g_return_if_fail(fullscreen.height > 128);
> -    g_return_if_fail(fullscreen.width > 128);
>      g_return_if_fail(desktopWidth > 0);
>      g_return_if_fail(desktopHeight > 0);
>  
>      desktopAspect = (double)desktopWidth / (double)desktopHeight;
> -    screenAspect = (double)(fullscreen.width - 128) /
> (double)(fullscreen.height - 128);
> +    screenAspect = (double)fullscreen.width / (double)fullscreen.height;
>  
> -    if ((desktopWidth > (fullscreen.width - 128)) ||
> -        (desktopHeight > (fullscreen.height - 128))) {
> +    if ((desktopWidth > fullscreen.width) ||
> +        (desktopHeight > fullscreen.height)) {
>          /* Doesn't fit native res, so go as large as possible
>             maintaining aspect ratio */
>          if (screenAspect > desktopAspect) {
> -            width = desktopHeight * desktopAspect;
> -            height = desktopHeight;
> +            width = fullscreen.height * desktopAspect;
> +            height = fullscreen.height;
>          } else {
> -            width = desktopWidth;
> -            height = desktopWidth / desktopAspect;
> +            width = fullscreen.width;
> +            height = fullscreen.width / desktopAspect;
>          }
>      } else {
>          width = desktopWidth;
> --
> 1.8.5.3
> 
> _______________________________________________
> virt-tools-list mailing list
> virt-tools-list at redhat.com
> https://www.redhat.com/mailman/listinfo/virt-tools-list
> 




More information about the virt-tools-list mailing list