viking

webkit based web browser for Enlightenment
Log | Files | Refs | LICENSE

commit a029c27c81c55772aba42d2188ea1970dea8d8db
parent f17ef1c37df5d4122be258f1291e39faed66a897
Author: Kyle Milz <kmilz@ucalgary.ca>
Date:   Fri, 21 Sep 2012 19:56:26 -0600

proxy: inital working implementation.

Diffstat:
Mcommands.c | 37++++++++++++++++++-------------------
Mcommands.h | 2+-
Mkeymap.h | 1+
3 files changed, 20 insertions(+), 20 deletions(-)

diff --git a/commands.c b/commands.c @@ -1154,36 +1154,35 @@ browser_settings(const Arg *arg, void *data) { } */ -void -toggle_proxy(Eina_Bool onoff) +Eina_Bool +proxy(const Arg *arg, void *data) { - // SoupURI *proxy_uri; - char *filename, *new; + App_Data *ad = data; + char *proxy_uri, *new; - if (onoff == FALSE) { - // g_object_set(session, "proxy-uri", NULL, NULL); + if (ewk_network_proxy_uri_get()) { + printf("proxy off\n"); ewk_network_proxy_uri_set(NULL); } else { - filename = getenv("http_proxy"); - - /* Fallthrough to checking HTTP_PROXY as well, since this can also be - * defined. - */ - if (filename == NULL) - filename = getenv("HTTP_PROXY"); + printf("proxy on .. "); + proxy_uri = getenv("http_proxy"); + if (proxy_uri == NULL) + proxy_uri = getenv("HTTP_PROXY"); - if (filename != NULL && 0 < strlen(filename)) { - new = strstr(filename, "http://") ? strdup(filename) : strdup_printf("http://%s", filename); - // proxy_uri = soup_uri_new(new); + if (proxy_uri != NULL && 0 < strlen(proxy_uri)) { + new = strstr(proxy_uri, "http://") ? + strdup(proxy_uri) : strdup_printf("http://%s", proxy_uri); - // g_object_set(session, "proxy-uri", proxy_uri, NULL); - printf("toggle_proxy(%i, %s)\n", onoff, new); + printf("success! (%s)\n", new); ewk_network_proxy_uri_set(new); - // soup_uri_free(proxy_uri); free(new); } } + + elm_web_reload(ad->current_web); + + return EINA_TRUE; } Eina_Bool diff --git a/commands.h b/commands.h @@ -30,10 +30,10 @@ Eina_Bool set(const Arg *, void *); Eina_Bool list(const Arg *, void *); Eina_Bool switch_buffer(const Arg *, void *); Eina_Bool inspector(const Arg *, void *); +Eina_Bool proxy(const Arg *, void *); // static Eina_Bool fake_key_event(const Arg *, void *); Eina_Bool process_set_line(char *line); -void toggle_proxy(Eina_Bool onoff); extern char startpage[MAX_SETTING_SIZE]; diff --git a/keymap.h b/keymap.h @@ -83,6 +83,7 @@ static Key keys[] = { { 0, 'g', "h", open_arg, {TargetCurrent, startpage} }, { 0, 'g', "H", open_arg, {TargetNew, startpage} }, + { "Control", 0, "p", proxy, {0} }, { 0, 0, "p", paste, {TargetCurrent | ClipboardPrimary | ClipboardGTK} }, { 0, 0, "P", paste, {TargetNew | ClipboardPrimary | ClipboardGTK} },