From 65804b1715f223d1ab6cddfd949a2d4dd47ca8b1 Mon Sep 17 00:00:00 2001 From: Brendan Taylor Date: Fri, 25 Feb 2011 13:47:21 -0700 Subject: add current_encoding variable --- src/callbacks.h | 3 +++ 1 file changed, 3 insertions(+) (limited to 'src/callbacks.h') diff --git a/src/callbacks.h b/src/callbacks.h index 13cb83d..ab0c1df 100644 --- a/src/callbacks.h +++ b/src/callbacks.h @@ -109,6 +109,9 @@ cmd_resizable_txt(); void cmd_default_encoding(); +void +set_current_encoding(); + void cmd_enforce_96dpi(); -- cgit v1.2.3 From 5bdc30a7ff4d18450eacd0d01860f707a56689ae Mon Sep 17 00:00:00 2001 From: Brendan Taylor Date: Sat, 5 Mar 2011 10:39:51 -0700 Subject: change @uri when the fragment identifier changes --- src/callbacks.c | 45 +++++++++++++++++++++++---------------------- src/callbacks.h | 3 +++ src/uzbl-core.c | 2 +- 3 files changed, 27 insertions(+), 23 deletions(-) (limited to 'src/callbacks.h') diff --git a/src/callbacks.c b/src/callbacks.c index cb9b492..3a544a1 100644 --- a/src/callbacks.c +++ b/src/callbacks.c @@ -455,29 +455,44 @@ void load_status_change_cb (WebKitWebView* web_view, GParamSpec param_spec) { (void) param_spec; - WebKitWebFrame *frame = webkit_web_view_get_main_frame(web_view); WebKitLoadStatus status = webkit_web_view_get_load_status(web_view); switch(status) { case WEBKIT_LOAD_PROVISIONAL: - send_event(LOAD_START, NULL, TYPE_STR, uzbl.state.uri ? uzbl.state.uri : "", NULL); + send_event(LOAD_START, NULL, TYPE_STR, uzbl.state.uri ? uzbl.state.uri : "", NULL); break; case WEBKIT_LOAD_COMMITTED: - g_free (uzbl.state.uri); - GString* newuri = g_string_new (webkit_web_frame_get_uri (frame)); - uzbl.state.uri = g_string_free (newuri, FALSE); - g_setenv("UZBL_URI", uzbl.state.uri, TRUE); - + frame = webkit_web_view_get_main_frame(web_view); send_event(LOAD_COMMIT, NULL, TYPE_STR, webkit_web_frame_get_uri (frame), NULL); break; case WEBKIT_LOAD_FINISHED: - send_event(LOAD_FINISH, NULL, TYPE_STR, webkit_web_frame_get_uri(frame), NULL); + send_event(LOAD_FINISH, NULL, TYPE_STR, uzbl.state.uri, NULL); break; case WEBKIT_LOAD_FIRST_VISUALLY_NON_EMPTY_LAYOUT: break; /* we don't do anything with this (yet) */ case WEBKIT_LOAD_FAILED: break; /* load_error_cb will handle this case */ } +} + +void +load_error_cb (WebKitWebView* page, WebKitWebFrame* frame, gchar *uri, gpointer web_err, gpointer ud) { + (void) page; (void) frame; (void) ud; + GError *err = web_err; + + send_event (LOAD_ERROR, NULL, + TYPE_STR, uri, + TYPE_INT, err->code, + TYPE_STR, err->message, + NULL); +} + +void +uri_change_cb (WebKitWebView *web_view, GParamSpec param_spec) { + (void) param_spec; + g_free (uzbl.state.uri); + g_object_get (web_view, "uri", &uzbl.state.uri, NULL); + g_setenv("UZBL_URI", uzbl.state.uri, TRUE); } void @@ -491,20 +506,6 @@ selection_changed_cb(WebKitWebView *webkitwebview, gpointer ud) { g_free(tmp); } -void -load_error_cb (WebKitWebView* page, WebKitWebFrame* frame, gchar *uri, gpointer web_err, gpointer ud) { - (void) page; - (void) frame; - (void) ud; - GError *err = web_err; - - send_event (LOAD_ERROR, NULL, - TYPE_STR, uri, - TYPE_INT, err->code, - TYPE_STR, err->message, - NULL); -} - void destroy_cb (GtkWidget* widget, gpointer data) { (void) widget; diff --git a/src/callbacks.h b/src/callbacks.h index ab0c1df..d34b9fa 100644 --- a/src/callbacks.h +++ b/src/callbacks.h @@ -160,6 +160,9 @@ load_status_change_cb (WebKitWebView* web_view, GParamSpec param_spec); void load_error_cb (WebKitWebView* page, WebKitWebFrame* frame, gchar *uri, gpointer web_err, gpointer ud); +void +uri_change_cb (WebKitWebView *web_view, GParamSpec param_spec); + void selection_changed_cb(WebKitWebView *webkitwebview, gpointer ud); diff --git a/src/uzbl-core.c b/src/uzbl-core.c index 31ed50d..d73fbdf 100644 --- a/src/uzbl-core.c +++ b/src/uzbl-core.c @@ -1394,7 +1394,6 @@ update_title(void) { } } - void create_scrolled_win() { GUI* g = &uzbl.gui; @@ -1423,6 +1422,7 @@ create_scrolled_win() { "signal::selection-changed", (GCallback)selection_changed_cb, NULL, "signal::notify::progress", (GCallback)progress_change_cb, NULL, "signal::notify::load-status", (GCallback)load_status_change_cb, NULL, + "signal::notify::uri", (GCallback)uri_change_cb, NULL, "signal::load-error", (GCallback)load_error_cb, NULL, "signal::hovering-over-link", (GCallback)link_hover_cb, NULL, "signal::navigation-policy-decision-requested", (GCallback)navigation_decision_cb, NULL, -- cgit v1.2.3