URI: 
       Adapt user agent handling - surf - [fork] surf browser, a WebKit based browser
  HTML git clone git@git.drkhsh.at/surf.git
   DIR Log
   DIR Files
   DIR Refs
   DIR README
   DIR LICENSE
       ---
   DIR commit 5bca2223399bb18bada2a48db7411d181e3186e6
   DIR parent e6cefa584e605b8a9984b1a542098df1191adcb1
  HTML Author: Quentin Rameau <quinq@fifth.space>
       Date:   Fri, 20 Nov 2015 17:12:00 +0100
       
       Adapt user agent handling
       
       Now we can only append Surf version to the default WebKit user agent
       instead of setting the whole string (while this remains possible to do).
       
       Diffstat:
         M config.def.h                        |       5 ++---
         M surf.c                              |      13 +++++++++----
       
       2 files changed, 11 insertions(+), 7 deletions(-)
       ---
   DIR diff --git a/config.def.h b/config.def.h
       @@ -1,7 +1,6 @@
        /* modifier 0 means no modifier */
       -static char *useragent      = "Mozilla/5.0 (X11; U; Unix; en-US) "
       -                              "AppleWebKit/537.15 (KHTML, like Gecko) "
       -                              "Chrome/24.0.1295.0 Safari/537.15 Surf/"VERSION;
       +static int surfuseragent    = 1;  /* Append Surf version to default WebKit user agent */
       +static char *fulluseragent  = ""; /* Or override the whole user agent string */
        static char *scriptfile     = "~/.surf/script.js";
        static char *styledir       = "~/.surf/styles/";
        static char *cachedir       = "~/.surf/cache/";
   DIR diff --git a/surf.c b/surf.c
       @@ -112,6 +112,7 @@ static char pagestats[2];
        static GTlsDatabase *tlsdb;
        static int cookiepolicy;
        static char *stylefile = NULL;
       +static const char *useragent;
        
        static void addaccelgroup(Client *c);
        static char *buildfile(const char *path);
       @@ -899,7 +900,6 @@ newview(Client *c, WebKitWebView *rv)
                WebKitSettings *settings;
                WebKitUserContentManager *contentmanager;
                WebKitWebContext *context;
       -        char *ua;
        
                /* Webview */
                if (rv) {
       @@ -918,12 +918,17 @@ newview(Client *c, WebKitWebView *rv)
                            "enable-javascript", enablescripts,
                            "enable-plugins", enableplugins,
                            NULL);
       -                if (!(ua = getenv("SURF_USERAGENT")))
       -                        ua = useragent;
       -                webkit_settings_set_user_agent(settings, ua);
                        /* Have a look at http://webkitgtk.org/reference/webkit2gtk/stable/WebKitSettings.html
                         * for more interesting settings */
        
       +                if (strcmp(fulluseragent, "")) {
       +                        webkit_settings_set_user_agent(settings, fulluseragent);
       +                } else if (surfuseragent) {
       +                        webkit_settings_set_user_agent_with_application_details(
       +                            settings, "Surf", VERSION);
       +                }
       +                useragent = webkit_settings_get_user_agent(settings);
       +
                        contentmanager = webkit_user_content_manager_new();
        
                        context = webkit_web_context_new_with_website_data_manager(