tReplace loadstatuschanged() with loadchanged() - surf - customized build of su… | |
git clone git://src.adamsgaard.dk/surf | |
Log | |
Files | |
Refs | |
README | |
LICENSE | |
--- | |
commit e9ec482049972d8b6b0c73faf452666b3cc32520 | |
parent bce814b30ae026f97067bdd3c43a3b08f78c33bf | |
Author: Quentin Rameau <[email protected]> | |
Date: Wed, 18 Nov 2015 18:39:45 +0100 | |
Replace loadstatuschanged() with loadchanged() | |
Diffstat: | |
M surf.c | 50 ++++++++++++++---------------… | |
1 file changed, 23 insertions(+), 27 deletions(-) | |
--- | |
diff --git a/surf.c b/surf.c | |
t@@ -153,8 +153,7 @@ static gboolean keypress(GtkAccelGroup *group, GObject *ob… | |
GdkModifierType mods, Client *c); | |
static void mousetargetchanged(WebKitWebView *v, WebKitHitTestResult *h, | |
guint modifiers, Client *c); | |
-static void loadstatuschange(WebKitWebView *view, GParamSpec *pspec, | |
- Client *c); | |
+static void loadchanged(WebKitWebView *v, WebKitLoadEvent e, Client *c); | |
static void loaduri(Client *c, const Arg *arg); | |
static void navigate(Client *c, const Arg *arg); | |
static Client *newclient(Client *c); | |
t@@ -809,37 +808,34 @@ mousetargetchanged(WebKitWebView *v, WebKitHitTestResult… | |
} | |
void | |
-loadstatuschange(WebKitWebView *view, GParamSpec *pspec, Client *c) | |
+loadchanged(WebKitWebView *v, WebKitLoadEvent e, Client *c) | |
{ | |
- WebKitWebFrame *frame; | |
- WebKitWebDataSource *src; | |
- WebKitNetworkRequest *request; | |
- SoupMessage *msg; | |
- char *uri; | |
- | |
- switch (webkit_web_view_get_load_status (c->view)) { | |
+ switch (e) { | |
+ case WEBKIT_LOAD_STARTED: | |
+ c->tlsflags = G_TLS_CERTIFICATE_VALIDATE_ALL + 1; | |
+ break; | |
+ case WEBKIT_LOAD_REDIRECTED: | |
+ setatom(c, AtomUri, geturi(c)); | |
+ break; | |
case WEBKIT_LOAD_COMMITTED: | |
- uri = geturi(c); | |
- if (strstr(uri, "https://") == uri) { | |
- frame = webkit_web_view_get_main_frame(c->view); | |
- src = webkit_web_frame_get_data_source(frame); | |
- request = webkit_web_data_source_get_request(src); | |
- msg = webkit_network_request_get_message(request); | |
- c->sslfailed = !(soup_message_get_flags(msg) | |
- & SOUP_MESSAGE_CERTIFICATE_TRUSTED); | |
- } | |
- setatom(c, AtomUri, uri); | |
+ if (!webkit_web_view_get_tls_info(c->view, NULL, &(c->tlsflags… | |
+ c->tlsflags = G_TLS_CERTIFICATE_VALIDATE_ALL + 1; | |
+ | |
+ setatom(c, AtomUri, geturi(c)); | |
if (enablestyle) | |
- setstyle(c, getstyle(uri)); | |
+ setstyle(c, getstyle(geturi(c))); | |
break; | |
case WEBKIT_LOAD_FINISHED: | |
- c->progress = 100; | |
- updatetitle(c); | |
- break; | |
- default: | |
+ /* Disabled until we write some WebKitWebExtension for | |
+ * manipulating the DOM directly. | |
+ evalscript(c, "document.documentElement.style.overflow = '%s'", | |
+ enablescrollbars ? "auto" : "hidden"); | |
+ */ | |
+ runscript(c); | |
break; | |
} | |
+ updatetitle(c); | |
} | |
void | |
t@@ -992,8 +988,8 @@ newview(Client *c, WebKitWebView *rv) | |
"window-object-cleared", | |
G_CALLBACK(windowobjectcleared), c); | |
g_signal_connect(G_OBJECT(v), | |
- "notify::load-status", | |
- G_CALLBACK(loadstatuschange), c); | |
+ "load-changed", | |
+ G_CALLBACK(loadchanged), c); | |
g_signal_connect(G_OBJECT(v), | |
"notify::progress", | |
G_CALLBACK(progresschange), c); |