WebKit2.WebView::load-changed (original) (raw)
Signal
WebKit2WebView::load-changed
Declaration
void
load_changed (
WebKitWebView* self,
WebKitLoadEvent load_event,
gpointer user_data
)
Description [src]
Emitted when a load operation in web_view
changes. The signal is always emitted with WEBKIT_LOAD_STARTED
when a new load request is made and WEBKIT_LOAD_FINISHED
when the load finishes successfully or due to an error. When the ongoing load operation fails WebKitWebView::load-failed
signal is emitted before WebKitWebView::load-changed
is emitted withWEBKIT_LOAD_FINISHED
. If a redirection is received from the server, this signal is emitted with WEBKIT_LOAD_REDIRECTED
after the initial emission withWEBKIT_LOAD_STARTED
and before WEBKIT_LOAD_COMMITTED
. When the page content starts arriving the signal is emitted withWEBKIT_LOAD_COMMITTED
event.
You can handle this signal and use a switch to track any ongoing load operation.
static void web_view_load_changed (WebKitWebView *web_view, WebKitLoadEvent load_event, gpointer user_data) { switch (load_event) { case WEBKIT_LOAD_STARTED: // New load, we have now a provisional URI provisional_uri = webkit_web_view_get_uri (web_view); // Here we could start a spinner or update the // location bar with the provisional URI break; case WEBKIT_LOAD_REDIRECTED: redirected_uri = webkit_web_view_get_uri (web_view); break; case WEBKIT_LOAD_COMMITTED: // The load is being performed. Current URI is // the final one and it won't change unless a new // load is requested or a navigation within the // same page is performed uri = webkit_web_view_get_uri (web_view); break; case WEBKIT_LOAD_FINISHED: // Load finished, we can now stop the spinner break; } }
Default handler:
The default handler is called after the handlers added via g_signal_connect()
.