From db8a118298552769e835c67d29dfe1fa41de698a Mon Sep 17 00:00:00 2001 From: =?utf8?q?Juanjo=20Mar=C3=ADn?= Date: Sun, 21 Feb 2010 12:14:25 +0100 Subject: [PATCH] Fix dpi calculation Fixes bug #608586. --- shell/ev-utils.c | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/shell/ev-utils.c b/shell/ev-utils.c index 8cda8899..d77e91ff 100644 --- a/shell/ev-utils.c +++ b/shell/ev-utils.c @@ -307,14 +307,17 @@ gdouble get_screen_dpi (GtkWindow *window) { GdkScreen *screen; - gdouble xdpi, ydpi; + gdouble dp, di; screen = gtk_window_get_screen (window); - xdpi = 25.4 * gdk_screen_get_width (screen) / gdk_screen_get_width_mm (screen); - ydpi = 25.4 * gdk_screen_get_height (screen) / gdk_screen_get_height_mm (screen); - - return (xdpi + ydpi) / 2.0; + /*diagonal in pixels*/ + dp = hypot (gdk_screen_get_width (screen), gdk_screen_get_height (screen)); + + /*diagonal in inches*/ + di = hypot (gdk_screen_get_width_mm(screen), gdk_screen_get_height_mm (screen)) / 25.4; + + return (dp / di); } -- 2.43.0