From 0b885f18e3aebee047e952620f8541491fe77b8a Mon Sep 17 00:00:00 2001 From: Christoph Lohmann <20h@r-36.net> Date: Wed, 31 Oct 2012 20:46:38 +0100 Subject: [PATCH] Add different progress colors when using proxy. --- config.def.h | 8 ++++++-- surf.c | 19 +++++++++++++++---- 2 files changed, 21 insertions(+), 6 deletions(-) diff --git a/config.def.h b/config.def.h index 91006f0..6acf38c 100644 --- a/config.def.h +++ b/config.def.h @@ -1,8 +1,11 @@ /* modifier 0 means no modifier */ static char *useragent = "Surf/"VERSION" (X11; U; Unix; en-US) AppleWebKit/531.2+ Compatible (Safari)"; -static char *progress = "#0066FF"; -static char *progress_untrust = "#FF6600"; +static char *progress = "#0000FF"; +static char *progress_untrust = "#FF0000"; static char *progress_trust = "#00FF00"; +static char *progress_proxy = "#FFFF00"; +static char *progress_proxy_trust = "#66FF00"; +static char *progress_proxy_untrust = "#FF6600"; static char *stylefile = ".surf/style.css"; static char *scriptfile = ".surf/script.js"; static char *cookiefile = ".surf/cookies.txt"; @@ -50,3 +53,4 @@ static Key keys[] = { { MODKEY, GDK_n, find, { .b = TRUE } }, { MODKEY|GDK_SHIFT_MASK,GDK_n, find, { .b = FALSE } }, }; + diff --git a/surf.c b/surf.c index ae1a935..4247de2 100644 --- a/surf.c +++ b/surf.c @@ -75,7 +75,7 @@ static GdkNativeWindow embed = 0; static gboolean showxid = FALSE; static char winid[64]; static char *progname; -static gboolean loadimage = 1, plugin = 1, script = 1; +static gboolean loadimage = 1, plugin = 1, script = 1, using_proxy = 0; static char *buildpath(const char *path); static gboolean buttonrelease(WebKitWebView *web, GdkEventButton *e, GList *gl); @@ -333,6 +333,7 @@ void drawindicator(Client *c) { gint width; const char *uri; + char *colorname; GtkWidget *w; GdkGC *gc; GdkColor fg; @@ -342,11 +343,20 @@ drawindicator(Client *c) { width = c->progress * w->allocation.width / 100; gc = gdk_gc_new(w->window); if(strstr(uri, "https://") == uri) { - gdk_color_parse(c->sslfailed ? - progress_untrust : progress_trust, &fg); + if(using_proxy) { + colorname = c->sslfailed? progress_proxy_untrust : progress_proxy_trust; + } else { + colorname = c->sslfailed? progress_untrust : progress_trust; + } } else { - gdk_color_parse(progress, &fg); + if(using_proxy) { + colorname = progress_proxy; + } else { + colorname = progress; + } } + + gdk_color_parse(colorname, &fg); gdk_gc_set_rgb_fg_color(gc, &fg); gdk_draw_rectangle(w->window, w->style->bg_gc[GTK_WIDGET_STATE(w)], @@ -816,6 +826,7 @@ setup(void) { g_object_set(G_OBJECT(s), "proxy-uri", puri, NULL); soup_uri_free(puri); g_free(new_proxy); + using_proxy = 1; } }