commit 624b4a57248b0fbfbbac9a47a7ce9f67e70b5920
parent b9ab118cfdc2e3c210633d34e564573379aca419
Author: Kyle Milz <kmilz@ucalgary.ca>
Date: Wed, 19 Sep 2012 19:14:26 -0600
run start scripts on uri change not load committed.
fixes hinting.js being available on all pages
Diffstat:
M | main.c | | | 48 | +++++++++++++----------------------------------- |
1 file changed, 13 insertions(+), 35 deletions(-)
diff --git a/main.c b/main.c
@@ -43,7 +43,7 @@ static void inputbox_keyrelease_cb (void *, Evas *, Evas_Object *, void *);
static void webview_console_cb(void *, Evas_Object *, const char *, unsigned int, const char *);
static void webview_hoverlink_cb (void *, Evas_Object *, void*);
static void webview_hoverlink_out_cb (void *, Evas_Object *, void*);
-static void webview_load_committed_cb (void *, Evas_Object *, void*);
+static void webview_uri_changed_cb (void *, Evas_Object *, void*);
static void webview_load_finished_cb (void *, Evas_Object *, void*);
static void history(void *);
static void webview_progress_changed_cb(void *, Evas_Object *, void *);
@@ -286,10 +286,16 @@ webview_progress_changed_cb(void *data, Evas_Object *obj, void *event_info)
}
void
-webview_load_committed_cb(void *data, Evas_Object *obj, void *event_info)
+webview_uri_changed_cb(void *data, Evas_Object *obj, void *event_info)
{
Arg a = { .i = Silent, .s = strdup(JS_SETUP_HINTS) };
Tab_Data *td = data;
+ const char *uri = event_info;
+
+ if (td->web != td->app->current_web)
+ return;
+
+ printf("load_committed()\n");
// Evas_Object *view = elm_web_webkit_view_get(td->web);
// Evas_Object *frame = ewk_view_frame_main_get(view);
@@ -319,7 +325,9 @@ webview_load_committed_cb(void *data, Evas_Object *obj, void *event_info)
Arg a = { .i = ModeNormal };
set(&a, td->app);
}
- td->app->manual_focus = FALSE;
+
+ td->app->manual_focus = EINA_FALSE;
+ update_url(uri, td->app);
}
void
@@ -1255,36 +1263,6 @@ _web_free_cb(void *data, Evas *e, Evas_Object *obj, void *event_info)
free(td);
}
-static void
-_uri_changed_cb(void *data, Evas_Object *obj, void *event_info)
-{
- Tab_Data *td = data;
- const char *uri = event_info;
-
- if (td->web != td->app->current_web)
- return;
-
- update_url(uri, td->app);
- // elm_object_text_set(td->app->url, uri);
-}
-
-/*
-static void
-_tb_item_del_cb(void *data, Evas_Object *obj, void *event_info)
-{
- Tab_Data *td = data;
- // if (!td->app->exiting && !elm_toolbar_selected_item_get(obj))
- if (!td->app->exiting)
- {
- // td->app->current_tab = NULL;
- // elm_entry_icon_visible_set(td->app->url, EINA_FALSE);
- // if (td->app->search_box)
- // evas_object_del(td->app->search_box);
- }
- // td->tab = NULL;
-}
-*/
-
Eina_Bool
add_tab(const Arg *arg, void *data)
{
@@ -1337,9 +1315,9 @@ tab_add(App_Data *ad)
/* signals */
evas_object_smart_callback_add(td->web, "title,changed", webview_title_changed_cb, td);
- evas_object_smart_callback_add(td->web, "uri,changed", _uri_changed_cb, td);
+ evas_object_smart_callback_add(td->web, "uri,changed", webview_uri_changed_cb, td);
evas_object_smart_callback_add(td->web, "load,progress", webview_progress_changed_cb, td);
- evas_object_smart_callback_add(td->web, "load,started", webview_load_committed_cb, td);
+ // evas_object_smart_callback_add(td->web, "load,started", webview_load_committed_cb, td);
evas_object_smart_callback_add(td->web, "load,finished", webview_load_finished_cb, td);
evas_object_smart_callback_add(td->web, "download,request", webview_download_cb, td);
evas_object_smart_callback_add(td->web, "link,hover,in", webview_hoverlink_cb, td);