[empathy] Add /inspector command to show webkit inspector



commit 381062d1a807da25f188340cdc81188c43bf0f58
Author: Xavier Claessens <xclaesse gmail com>
Date:   Fri Sep 23 15:31:58 2011 +0200

    Add /inspector command to show webkit inspector

 libempathy-gtk/empathy-chat.c        |   13 +++++++++++++
 libempathy-gtk/empathy-theme-adium.c |   14 ++++++++++++++
 libempathy-gtk/empathy-theme-adium.h |    1 +
 3 files changed, 28 insertions(+), 0 deletions(-)
---
diff --git a/libempathy-gtk/empathy-chat.c b/libempathy-gtk/empathy-chat.c
index 570d73b..c9f6dd9 100644
--- a/libempathy-gtk/empathy-chat.c
+++ b/libempathy-gtk/empathy-chat.c
@@ -56,6 +56,7 @@
 #include "empathy-input-text-view.h"
 #include "empathy-search-bar.h"
 #include "empathy-theme-manager.h"
+#include "empathy-theme-adium.h"
 #include "empathy-smiley-manager.h"
 #include "empathy-ui-utils.h"
 #include "empathy-string-parser.h"
@@ -1042,6 +1043,16 @@ chat_command_babywhale (EmpathyChat *chat,
 	g_object_unref (message);
 }
 
+static void
+chat_command_inspector (EmpathyChat *chat,
+		    GStrv        strv)
+{
+	if (EMPATHY_IS_THEME_ADIUM (chat->view)) {
+		empathy_theme_adium_show_inspector (
+			EMPATHY_THEME_ADIUM (chat->view));
+	}
+}
+
 static void chat_command_help (EmpathyChat *chat, GStrv strv);
 
 typedef void (*ChatCommandFunc) (EmpathyChat *chat, GStrv strv);
@@ -1097,6 +1108,8 @@ static ChatCommandItem commands[] = {
 	 N_("/help [<command>]: show all supported commands. "
 	    "If <command> is defined, show its usage.")},
 
+	{"inspector", 1, 1, chat_command_inspector, NULL, NULL},
+
 	{"whale", 1, 1, chat_command_whale, NULL, NULL},
 	{"babywhale", 1, 1, chat_command_babywhale, NULL, NULL},
 };
diff --git a/libempathy-gtk/empathy-theme-adium.c b/libempathy-gtk/empathy-theme-adium.c
index f81329b..8877a27 100644
--- a/libempathy-gtk/empathy-theme-adium.c
+++ b/libempathy-gtk/empathy-theme-adium.c
@@ -1654,6 +1654,20 @@ empathy_theme_adium_set_variant (EmpathyThemeAdium *theme,
 	g_object_notify (G_OBJECT (theme), "variant");
 }
 
+void
+empathy_theme_adium_show_inspector (EmpathyThemeAdium *theme)
+{
+	WebKitWebView      *web_view = WEBKIT_WEB_VIEW (theme);
+	WebKitWebInspector *inspector;
+
+	g_object_set (G_OBJECT (webkit_web_view_get_settings (web_view)),
+		      "enable-developer-extras", TRUE,
+		      NULL);
+
+	inspector = webkit_web_view_get_inspector (web_view);
+	webkit_web_inspector_show (inspector);
+}
+
 gboolean
 empathy_adium_path_is_valid (const gchar *path)
 {
diff --git a/libempathy-gtk/empathy-theme-adium.h b/libempathy-gtk/empathy-theme-adium.h
index 1c01b7b..6f7573b 100644
--- a/libempathy-gtk/empathy-theme-adium.h
+++ b/libempathy-gtk/empathy-theme-adium.h
@@ -53,6 +53,7 @@ EmpathyThemeAdium *empathy_theme_adium_new      (EmpathyAdiumData *data,
 						 const gchar *variant);
 void               empathy_theme_adium_set_variant (EmpathyThemeAdium *theme,
 						    const gchar *variant);
+void               empathy_theme_adium_show_inspector (EmpathyThemeAdium *theme);
 
 gboolean           empathy_adium_path_is_valid (const gchar *path);
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]