[hackers] [surf] applied Nick's 96dpi patch, thanks || Anselm R Garbe

From: <git_AT_suckless.org>
Date: Sat, 20 Jul 2013 08:52:55 +0200

commit 7001df98d1cb8121f4555e76c47a31f0975a85dc
Author: Anselm R Garbe <anselm_AT_garbe.us>
Date: Sat Jul 20 08:52:10 2013 +0200

    applied Nick's 96dpi patch, thanks

diff --git a/config.def.h b/config.def.h
index 08ff707..49ffa49 100644
--- a/config.def.h
+++ b/config.def.h
_AT_@ -10,6 +10,7 @@ static char *cafile = "/etc/ssl/certs/ca-certificates.crt";
 static char *strictssl = FALSE; /* Refuse untrusted SSL connections */
 static Bool kioskmode = FALSE; /* Ignore shortcuts */
 static Bool showindicators = TRUE; /* Show indicators in window title */
+static Bool zoomto96dpi = TRUE; /* Zoom pages to always emulate 96dpi */
 
 static guint defaultfontsize = 12;
 
diff --git a/surf.c b/surf.c
index 939a06f..1a9b17a 100644
--- a/surf.c
+++ b/surf.c
_AT_@ -658,6 +658,8 @@ newclient(void) {
         WebKitWebSettings *settings;
         WebKitWebFrame *frame;
         GdkGeometry hints = { 1, 1 };
+ GdkScreen *screen;
+ gdouble dpi;
         char *uri, *ua;
 
         if(!(c = calloc(1, sizeof(Client))))
_AT_@ -802,6 +804,19 @@ newclient(void) {
         g_object_set(G_OBJECT(settings), "default-font-size",
                         defaultfontsize, NULL);
 
+ /* While stupid, CSS specifies that a pixel represents 1/96 of an inch.
+ * This ensures websites are not unusably small with a high DPI screen.
+ * It is equivalent to firefox's "layout.css.devPixelsPerPx" setting. */
+ if(zoomto96dpi) {
+ screen = gdk_window_get_screen(GTK_WIDGET(c->win)->window);
+ dpi = gdk_screen_get_resolution(screen);
+ if(dpi != -1) {
+ g_object_set(G_OBJECT(settings), "enforce-96-dpi", true,
+ NULL);
+ webkit_web_view_set_zoom_level(c->view, dpi/96);
+ }
+ }
+
         if(enableinspector) {
                 c->inspector = WEBKIT_WEB_INSPECTOR(
                                 webkit_web_view_get_inspector(c->view));
Received on Sat Jul 20 2013 - 08:52:55 CEST

This archive was generated by hypermail 2.3.0 : Sat Jul 20 2013 - 09:00:28 CEST