Let's say I want to use a WebKitWebView
in GTK to display some static HTML pages. These pages use a custom URL scheme, let's call it custom://
. This scheme represents a local file whose location is not known beforehand, at the time the HTML is generated. What I do is connect to the navigation-requested
signal of the webview, and do this:
const gchar *uri = webkit_network_request_get_uri(request);
gchar *scheme = g_uri_parse_scheme(uri);
if(strcmp(scheme, "custom") == 0) {
/* DO FILE LOCATING MAGIC HERE */
webkit_web_view_open(webview, real_location_of_file);
return WEBKIT_NAVIGATION_RESPONSE_IGNORE;
}
/* etc. */
This seems to work fine, unless the scheme is used in an <img>
tag, for example: <img src="custom://myfile.png">
, apparently these don't go through the navigation-requested
signal.
It seems to me there should be some way to register a handler for the custom URL scheme with Webkit. Is this possible?