summaryrefslogtreecommitdiffstats
path: root/src/web-view-schemes/view-source.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/web-view-schemes/view-source.c')
-rw-r--r--src/web-view-schemes/view-source.c21
1 files changed, 13 insertions, 8 deletions
diff --git a/src/web-view-schemes/view-source.c b/src/web-view-schemes/view-source.c
index 7ed062d..a654e5d 100644
--- a/src/web-view-schemes/view-source.c
+++ b/src/web-view-schemes/view-source.c
@@ -40,13 +40,7 @@ match_uri(const gchar *uri)
}
static void
-finalize(MqWebViewScheme *scheme)
-{
- memset(&scheme->view_source, 0, sizeof(scheme->view_source));
-}
-
-static gchar *
-rewrite_uri(MqWebView *web_view, MqWebViewScheme *scheme, const gchar *uri)
+initialize(MqWebView *web_view, MqWebViewScheme *scheme, const gchar *uri)
{
MqTabPage *origin_tab;
@@ -65,8 +59,18 @@ rewrite_uri(MqWebView *web_view, MqWebViewScheme *scheme, const gchar *uri)
scheme->view_source.uri = mq_web_view_get_uri(
mq_tab_page_get_web_view(origin_tab));
/* TODO: Get data. */
+}
+
+static void
+finalize(MqWebViewScheme *scheme)
+{
+ memset(&scheme->view_source, 0, sizeof(scheme->view_source));
+}
- /* Rewrite URI. */
+static gchar *
+rewrite_uri(MqWebView *web_view, MqWebViewScheme G_GNUC_UNUSED *scheme,
+ const gchar G_GNUC_UNUSED *uri)
+{
return g_strdup_printf("view-source:view-tab=%" PRId64,
mq_tab_page_get_id(mq_web_view_get_tab_page(web_view)));
}
@@ -221,6 +225,7 @@ save_file(MqWebView *web_view, MqWebViewScheme *scheme)
MqWebViewSchemeMethods mq_web_view_view_source_scheme_methods = {
.match_uri = match_uri,
+ .initialize = initialize,
.finalize = finalize,
.rewrite_uri = rewrite_uri,
.display_uri = display_uri,