Introduction
Introduction Statistics Contact Development Disclaimer Help
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);
You are viewing proxied material from mx1.adamsgaard.dk. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.