From 381062d1a807da25f188340cdc81188c43bf0f58 Mon Sep 17 00:00:00 2001 From: Xavier Claessens Date: Fri, 23 Sep 2011 15:31:58 +0200 Subject: 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(+) (limited to 'libempathy-gtk') diff --git a/libempathy-gtk/empathy-chat.c b/libempathy-gtk/empathy-chat.c index 570d73b69..c9f6dd9d5 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 []: show all supported commands. " "If 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 f81329b79..8877a2796 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 1c01b7b37..6f7573b04 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); -- cgit v1.2.3