summaryrefslogtreecommitdiffstats
path: root/src/virt-viewer-window.c
diff options
context:
space:
mode:
authorDaniel P. Berrange <berrange@redhat.com>2014-03-12 17:33:24 +0000
committerDaniel P. Berrange <berrange@redhat.com>2014-03-12 17:34:47 +0000
commitf2c4a99b6e94bdcdd71f4ab5f264849e1cd45e33 (patch)
treed2ff08a04bf5a66c32436cd97561bbdfa4c47eb2 /src/virt-viewer-window.c
parent03035cf69eb2bfa701b7cebd629ebd4a76129f03 (diff)
downloadvirt-viewer-f2c4a99b6e94bdcdd71f4ab5f264849e1cd45e33.tar.gz
virt-viewer-f2c4a99b6e94bdcdd71f4ab5f264849e1cd45e33.tar.xz
virt-viewer-f2c4a99b6e94bdcdd71f4ab5f264849e1cd45e33.zip
Fix scaling of window upon resize
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@redhat.com>
Diffstat (limited to 'src/virt-viewer-window.c')
-rw-r--r--src/virt-viewer-window.c16
1 files 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;