about summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--inspector.c59
-rw-r--r--xxxterm.c8
-rw-r--r--xxxterm.h3
3 files changed, 64 insertions, 6 deletions
diff --git a/inspector.c b/inspector.c
index b154047..25e155d 100644
--- a/inspector.c
+++ b/inspector.c
@@ -17,6 +17,36 @@
 
 #include "xxxterm.h"
 
+gboolean
+inspector_attach_window(WebKitWebInspector *inspector, struct tab *t)
+{
+	DNPRINTF(XT_D_INSPECTOR, "%s: tab %d\n", __func__, t->tab_id);
+
+	return (FALSE); /* NOT handled */
+}
+
+gboolean
+inspector_close_window(WebKitWebInspector *inspector, struct tab *t)
+{
+	DNPRINTF(XT_D_INSPECTOR, "%s: tab %d\n", __func__, t->tab_id);
+
+	return (FALSE); /* NOT handled */
+}
+
+gboolean
+inspector_detach_window(WebKitWebInspector *inspector, struct tab *t)
+{
+	DNPRINTF(XT_D_INSPECTOR, "%s: tab %d\n", __func__, t->tab_id);
+
+	return (FALSE); /* NOT handled */
+}
+
+void
+inspector_finished(WebKitWebInspector *inspector, struct tab *t)
+{
+	DNPRINTF(XT_D_INSPECTOR, "%s: tab %d\n", __func__, t->tab_id);
+}
+
 WebKitWebView*
 inspector_inspect_web_view_cb(WebKitWebInspector *inspector, WebKitWebView* wv,
     struct tab *t)
@@ -24,6 +54,8 @@ inspector_inspect_web_view_cb(WebKitWebInspector *inspector, WebKitWebView* wv,
 	GtkWidget	*inspector_window;
 	GtkWidget	*inspector_view;
 
+	DNPRINTF(XT_D_INSPECTOR, "%s: tab %d\n", __func__, t->tab_id);
+
 	inspector_window = create_window("inspector");
 	inspector_view = webkit_web_view_new();
 	gtk_container_add(GTK_CONTAINER(inspector_window), inspector_view);
@@ -31,3 +63,30 @@ inspector_inspect_web_view_cb(WebKitWebInspector *inspector, WebKitWebView* wv,
 
 	return WEBKIT_WEB_VIEW(inspector_view);
 }
+
+gboolean
+inspector_show_window(WebKitWebInspector *inspector, struct tab *t)
+{
+	DNPRINTF(XT_D_INSPECTOR, "%s: tab %d\n", __func__, t->tab_id);
+
+	return (FALSE); /* NOT handled */
+}
+
+void
+setup_inspector(struct tab *t)
+{
+	WebKitWebInspector	*inspector;
+
+	DNPRINTF(XT_D_INSPECTOR, "%s: tab %d\n", __func__, t->tab_id);
+
+	inspector = webkit_web_view_get_inspector(WEBKIT_WEB_VIEW(t->wv));
+
+	g_object_connect(G_OBJECT(inspector),
+	    "signal::attach-window", G_CALLBACK(inspector_attach_window), t,
+	    "signal::close-window", G_CALLBACK(inspector_close_window), t,
+	    "signal::detach-window", G_CALLBACK(inspector_detach_window), t,
+	    "signal::finished", G_CALLBACK(inspector_finished), t,
+	    "signal::inspect-web-view", G_CALLBACK(inspector_inspect_web_view_cb), t,
+	    "signal::show-window", G_CALLBACK(inspector_show_window), t,
+	    (char *)NULL);
+}
diff --git a/xxxterm.c b/xxxterm.c
index d4570db..6394d22 100644
--- a/xxxterm.c
+++ b/xxxterm.c
@@ -24,7 +24,6 @@
 static char		*version = XXXTERM_VERSION;
 
 
-/*#define XT_DEBUG*/
 #ifdef XT_DEBUG
 u_int32_t		swm_debug = 0
 			    | XT_D_MOVE
@@ -42,6 +41,7 @@ u_int32_t		swm_debug = 0
 			    | XT_D_KEYBINDING
 			    | XT_D_CLIP
 			    | XT_D_BUFFERCMD
+			    | XT_D_INSPECTOR
 			    ;
 #endif
 
@@ -7949,7 +7949,6 @@ create_browser(struct tab *t)
 	GtkWidget		*w;
 	gchar			*strval;
 	GtkAdjustment		*adjustment;
-	WebKitWebInspector	*inspector;
 
 	if (t == NULL) {
 		show_oops(NULL, "create_browser invalid parameters");
@@ -7989,10 +7988,7 @@ create_browser(struct tab *t)
 	    G_CALLBACK(update_statusbar_position), NULL);
 
 	setup_webkit(t);
-
-	inspector = webkit_web_view_get_inspector(WEBKIT_WEB_VIEW(t->wv));
-	g_signal_connect(G_OBJECT(inspector), "inspect-web-view",
-	    G_CALLBACK(inspector_inspect_web_view_cb), t);
+	setup_inspector(t);
 
 	return (w);
 }
diff --git a/xxxterm.h b/xxxterm.h
index 3ad3fb2..86d3e46 100644
--- a/xxxterm.h
+++ b/xxxterm.h
@@ -126,6 +126,7 @@ THE SOFTWARE.
 #define XT_D_KEYBINDING		0x1000
 #define XT_D_CLIP		0x2000
 #define XT_D_BUFFERCMD		0x4000
+#define XT_D_INSPECTOR		0x8000
 extern u_int32_t	swm_debug;
 #else
 #define DPRINTF(x...)
@@ -304,6 +305,7 @@ struct karg {
 
 GtkWidget		*create_window(const gchar *);
 
+/* inspector */
 WebKitWebView*		inspector_inspect_web_view_cb(WebKitWebInspector *,
 			    WebKitWebView*, struct tab *);
 struct settings;
@@ -354,3 +356,4 @@ void		wl_init(void);
 void		(*_soup_cookie_jar_add_cookie)(SoupCookieJar *, SoupCookie *);
 void		(*_soup_cookie_jar_delete_cookie)(SoupCookieJar *,
 		    SoupCookie *);
+void			setup_inspector(struct tab *);