tImplementing fullscreen mode. Thanks Krol, Willem van de! - surf - customized build of surf, the suckless webkit browser
 (HTM) git clone git://src.adamsgaard.dk/surf
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
 (DIR) LICENSE
       ---
 (DIR) commit 0dfdb75804315678fb22e9703b3e48f5c2b8e1cd
 (DIR) parent 1f30ddf22410c7c01487a84097ef485af4617c86
 (HTM) Author: Christoph Lohmann <20h@r-36.net>
       Date:   Mon,  3 Dec 2012 21:19:16 +0100
       
       Implementing fullscreen mode. Thanks Krol, Willem van de!
       
       Diffstat:
         M TODO.md                             |       1 -
         M config.def.h                        |       1 +
         M surf.c                              |      13 ++++++++++++-
       
       3 files changed, 13 insertions(+), 2 deletions(-)
       ---
 (DIR) diff --git a/TODO.md b/TODO.md
       t@@ -3,6 +3,5 @@
        * suckless adblocking
        * integrate the WebKitWebInspector API
        * make scrollbars a switch and allow them to be disabled
       -* implement fullscreen mode (F11)
        * replace webkit with something sane
        
 (DIR) diff --git a/config.def.h b/config.def.h
       t@@ -66,6 +66,7 @@ static Key keys[] = {
            { MODKEY,               GDK_i,           scroll_h,   { .i = +1 } },
            { MODKEY,               GDK_u,           scroll_h,   { .i = -1 } },
        
       +    { 0,                    GDK_F11,    fullscreen, { 0 } },
            { 0,                    GDK_Escape, stop,       { 0 } },
            { MODKEY,               GDK_o,      source,     { 0 } },
        
 (DIR) diff --git a/surf.c b/surf.c
       t@@ -46,7 +46,7 @@ typedef struct Client {
                gint progress;
                gboolean sslfailed;
                struct Client *next;
       -        gboolean zoomed;
       +        gboolean zoomed, fullscreen;
        } Client;
        
        typedef struct {
       t@@ -101,6 +101,7 @@ static void die(char *str);
        static void drawindicator(Client *c);
        static gboolean exposeindicator(GtkWidget *w, GdkEventExpose *e, Client *c);
        static void find(Client *c, const Arg *arg);
       +static void fullscreen(Client *c, const Arg *arg);
        static const char *getatom(Client *c, int a);
        static char *geturi(Client *c);
        static gboolean initdownload(WebKitWebView *v, WebKitDownload *o, Client *c);
       t@@ -399,6 +400,16 @@ find(Client *c, const Arg *arg) {
                webkit_web_view_search_text(c->view, s, FALSE, forward, TRUE);
        }
        
       +void
       +fullscreen(Client *c, const Arg *arg) {
       +        if(c->fullscreen) {
       +                gtk_window_unfullscreen(GTK_WINDOW(c->win));
       +        } else {
       +                gtk_window_fullscreen(GTK_WINDOW(c->win));
       +        }
       +        c->fullscreen = !c->fullscreen;
       +}
       +
        const char *
        getatom(Client *c, int a) {
                static char buf[BUFSIZ];