Add setstyle() - surf - Surf web browser.
       
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
 (DIR) LICENSE
       ---
 (DIR) commit 0290066b3110aa4f92c8809c610f86a74a260148
 (DIR) parent d84fe71094e5eb2598344da5c6a1d6f64381142c
 (HTM) Author: Quentin Rameau <quinq+hackers@fifth.space>
       Date:   Sat, 31 Oct 2015 12:34:57 +0100
       
       Add setstyle()
       
       Regroup style uri setting application calls under one function.
       
       Signed-off-by: Christoph Lohmann <20h@r-36.net>
       
       Diffstat:
         surf.c                              |      28 ++++++++++++++--------------
       
       1 file changed, 14 insertions(+), 14 deletions(-)
       ---
 (DIR) diff --git a/surf.c b/surf.c
       @@ -155,6 +155,7 @@ static void gettogglestat(Client *c);
        static void getpagestat(Client *c);
        static char *geturi(Client *c);
        static const gchar *getstyle(const char *uri);
       +static void setstyle(Client *c, const char *style);
        
        static void handleplumb(Client *c, WebKitWebView *w, const gchar *uri);
        
       @@ -663,6 +664,14 @@ getstyle(const char *uri)
        }
        
        void
       +setstyle(Client *c, const char *style)
       +{
       +        WebKitWebSettings *settings = webkit_web_view_get_settings(c->view);
       +
       +        g_object_set(G_OBJECT(settings), "user-stylesheet-uri", style, NULL);
       +}
       +
       +void
        handleplumb(Client *c, WebKitWebView *w, const gchar *uri)
        {
                Arg arg;
       @@ -776,7 +785,6 @@ loadstatuschange(WebKitWebView *view, GParamSpec *pspec, Client *c)
                WebKitWebFrame *frame;
                WebKitWebDataSource *src;
                WebKitNetworkRequest *request;
       -        WebKitWebSettings *set = webkit_web_view_get_settings(c->view);
                SoupMessage *msg;
                char *uri;
        
       @@ -793,10 +801,8 @@ loadstatuschange(WebKitWebView *view, GParamSpec *pspec, Client *c)
                        }
                        setatom(c, AtomUri, uri);
        
       -                if (enablestyles) {
       -                        g_object_set(G_OBJECT(set), "user-stylesheet-uri",
       -                                     getstyle(uri), NULL);
       -                }
       +                if (enablestyles)
       +                        setstyle(c, getstyle(uri));
                        break;
                case WEBKIT_LOAD_FINISHED:
                        c->progress = 100;
       @@ -997,11 +1003,6 @@ newclient(void)
                if (!(ua = getenv("SURF_USERAGENT")))
                        ua = useragent;
                g_object_set(G_OBJECT(settings), "user-agent", ua, NULL);
       -        if (enablestyles) {
       -                g_object_set(G_OBJECT(settings),
       -                             "user-stylesheet-uri", getstyle("about:blank"),
       -                             NULL);
       -        }
                g_object_set(G_OBJECT(settings),
                             "auto-load-images", loadimages, NULL);
                g_object_set(G_OBJECT(settings),
       @@ -1018,6 +1019,8 @@ newclient(void)
                             "default-font-size", defaultfontsize, NULL);
                g_object_set(G_OBJECT(settings),
                             "resizable-text-areas", 1, NULL);
       +        if (enablestyles)
       +                setstyle(c, getstyle("about:blank"));
        
                /*
                 * While stupid, CSS specifies that a pixel represents 1/96 of an inch.
       @@ -1531,11 +1534,8 @@ togglescrollbars(Client *c, const Arg *arg)
        void
        ttogglestyle(Client *c, const Arg *arg)
        {
       -        WebKitWebSettings *settings = webkit_web_view_get_settings(c->view);
       -
                enablestyles = !enablestyles;
       -        g_object_set(G_OBJECT(settings), "user-stylesheet-uri",
       -                     enablestyles ? getstyle(geturi(c)) : "", NULL);
       +        setstyle(c, enablestyles ? getstyle(geturi(c)) : "");
        
                updatetitle(c);
        }