Add zoom level support.
authorChristoph Lohmann <20h@r-36.net>
Sat, 19 Oct 2013 16:55:53 +0000 (18:55 +0200)
committerChristoph Lohmann <20h@r-36.net>
Sat, 19 Oct 2013 16:55:53 +0000 (18:55 +0200)
config.def.h
surf.1
surf.c

index 7927b42..b81e6b0 100644 (file)
@@ -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 (file)
--- a/surf.1
+++ b/surf.1
@@ -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
@@ -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 (file)
--- a/surf.c
+++ b/surf.c
@@ -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(
@@ -1280,7 +1283,8 @@ static void
 usage(void) {
        die("usage: %s [-bBfFgGiIkKnNpPsSvx]"
                " [-c cookiefile] [-e xid] [-r scriptfile]"
-               " [-t stylefile] [-u useragent] [uri]\n", basename(argv0));
+               " [-t stylefile] [-u useragent] [-z zoomlevel]"
+               " [uri]\n", basename(argv0));
 }
 
 static void
@@ -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;