From 5b2441f8f2631f7b2308fc73f4548a1cbc7c8fc5 Mon Sep 17 00:00:00 2001
From: Robert Timm <mail@rtti.de>
Date: Fri, 16 Sep 2016 00:48:52 +0200
Subject: [PATCH] Custom default_zoom disables HIGH_DPI logic

---
 src/main.c | 31 +++++++++++++++++++------------
 1 file changed, 19 insertions(+), 12 deletions(-)

diff --git a/src/main.c b/src/main.c
index 1349095..e32a06a 100644
--- a/src/main.c
+++ b/src/main.c
@@ -1134,20 +1134,27 @@ static void init_core(void)
     }
 
 #ifdef FEATURE_HIGH_DPI
-    /* fix for high dpi displays */
-    GdkScreen *screen = gdk_window_get_screen(gtk_widget_get_window(vb.gui.window));
-    gdouble dpi = gdk_screen_get_resolution(screen);
-    if (dpi != -1) {
-        WebKitWebSettings *setting = webkit_web_view_get_settings(gui->webview);
-        webkit_web_view_set_full_content_zoom(gui->webview, true);
-        g_object_set(G_OBJECT(setting), "enforce-96-dpi", true, NULL);
-
-        /* calculate the zoom level based on 96 dpi */
-        vb.config.default_zoom = dpi/96;
-
-        webkit_web_view_set_zoom_level(gui->webview, vb.config.default_zoom);
+#ifdef FEATURE_DEFAULT_ZOOM
+    /* if default_zoom was not changed via config */
+    if (vb.config.default_zoom == 1.0) {
+#endif
+        /* fix for high dpi displays */
+        GdkScreen *screen = gdk_window_get_screen(gtk_widget_get_window(vb.gui.window));
+        gdouble dpi = gdk_screen_get_resolution(screen);
+        if (dpi != -1) {
+            WebKitWebSettings *setting = webkit_web_view_get_settings(gui->webview);
+            webkit_web_view_set_full_content_zoom(gui->webview, true);
+            g_object_set(G_OBJECT(setting), "enforce-96-dpi", true, NULL);
+
+            /* calculate the zoom level based on 96 dpi */
+            vb.config.default_zoom = dpi/96;
+
+            webkit_web_view_set_zoom_level(gui->webview, vb.config.default_zoom);
+        }
+#ifdef FEATURE_DEFAULT_ZOOM
     }
 #endif
+#endif
 }
 
 static void marks_clear(void)
-- 
2.20.1