[hackers] [surf] Add zoom level support. || Christoph Lohmann

From: <git_AT_suckless.org>
Date: Sat, 19 Oct 2013 18:56:39 +0200

commit 432f45a85213a78da207c63890ed7f85afff5478
Author: Christoph Lohmann <20h_AT_r-36.net>
Date: Sat Oct 19 18:55:53 2013 +0200

    Add zoom level support.

diff --git a/config.def.h b/config.def.h
index 7927b42..b81e6b0 100644
--- a/config.def.h
+++ b/config.def.h
_AT_@ -13,7 +13,8 @@ static Bool showindicators = TRUE; /* Show indicators in window title */
 static Bool zoomto96dpi = TRUE; /* Zoom pages to always emulate 96dpi */
 static Bool runinfullscreen = FALSE; /* Run in fullscreen mode by default */
 
-static guint defaultfontsize = 12;
+static guint defaultfontsize = 12; /* Default font size */
+static gfloat zoomlevel = 1.0; /* Default zoom level */
 
 /* Webkit default features */
 static Bool enablescrollbars = TRUE;
diff --git a/surf.1 b/surf.1
index a4e7fd2..325e817 100644
--- a/surf.1
+++ b/surf.1
_AT_@ -9,6 +9,7 @@ surf \- simple webkit-based browser
 .RB [-r\ scriptfile]
 .RB [-t\ stylefile]
 .RB [-u\ useragent]
+.RB [-z\ zoomlevel]
 .RB "URI"
 .SH DESCRIPTION
 surf is a simple Web browser based on WebKit/GTK+. It is able
_AT_@ -92,6 +93,11 @@ Prints version information to standard output, then exits.
 .TP
 .B \-x
 Prints xid to standard output. This can be used to script the browser by using
+.TP
+.B \-z zoomlevel
+Specify the
+.I zoomlevel
+which surf should use.
 .BR xprop(1).
 .SH USAGE
 .B Escape
diff --git a/surf.c b/surf.c
index 28d56d0..d970f7f 100644
--- a/surf.c
+++ b/surf.c
_AT_@ -819,6 +819,9 @@ newclient(void) {
                         webkit_web_view_set_zoom_level(c->view, dpi/96);
                 }
         }
+ /* This might conflict with _zoomto96dpi_. */
+ if(zoomlevel != 1.0)
+ webkit_web_view_set_zoom_level(c->view, zoomlevel);
 
         if(enableinspector) {
                 c->inspector = WEBKIT_WEB_INSPECTOR(
_AT_@ -1280,7 +1283,8 @@ static void
 usage(void) {
         die("usage: %s [-bBfFgGiIkKnNpPsSvx]"
                 " [-c cookiefile] [-e xid] [-r scriptfile]"
- " [-t stylefile] [-u useragent] [uri]
", basename(argv0));
+ " [-t stylefile] [-u useragent] [-z zoomlevel]"
+ " [uri]
", basename(argv0));
 }
 
 static void
_AT_@ -1382,6 +1386,9 @@ main(int argc, char *argv[]) {
         case 'x':
                 showxid = TRUE;
                 break;
+ case 'z':
+ zoomlevel = strtof(EARGF(usage()), NULL);
+ break;
         default:
                 usage();
         } ARGEND;
Received on Sat Oct 19 2013 - 18:56:39 CEST

This archive was generated by hypermail 2.3.0 : Sat Oct 19 2013 - 19:00:25 CEST