From db8a118298552769e835c67d29dfe1fa41de698a Mon Sep 17 00:00:00 2001 From: Juanjo MarĂ­n Date: Sun, 21 Feb 2010 11:14:25 +0000 Subject: Fix dpi calculation Fixes bug #608586. --- diff --git a/shell/ev-utils.c b/shell/ev-utils.c index 8cda889..d77e91f 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); } -- cgit v0.9.1