[empathy] CallWindow: add a Settings menu item
- From: Emilio Pozuelo Monfort <epm src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [empathy] CallWindow: add a Settings menu item
- Date: Thu, 4 Aug 2011 09:13:35 +0000 (UTC)
commit f27e9f59c9b21d4097a805abe24a769446c2351f
Author: Emilio Pozuelo Monfort <emilio pozuelo collabora co uk>
Date: Wed Aug 3 09:12:15 2011 +0100
CallWindow: add a Settings menu item
https://bugzilla.gnome.org/show_bug.cgi?id=655884
src/empathy-call-window.c | 49 ++++++++++++++++++++++++++++++++++++++++++++
src/empathy-call-window.ui | 8 +++++++
2 files changed, 57 insertions(+), 0 deletions(-)
---
diff --git a/src/empathy-call-window.c b/src/empathy-call-window.c
index 2d7d53e..b3272bd 100644
--- a/src/empathy-call-window.c
+++ b/src/empathy-call-window.c
@@ -731,6 +731,54 @@ create_pipeline (EmpathyCallWindow *self)
}
static void
+empathy_call_window_settings_cb (GtkAction *action,
+ EmpathyCallWindow *self)
+{
+ GdkDisplay *display;
+ GError *error = NULL;
+ gchar *path, *cmd;
+ GAppInfo *app_info;
+ GdkAppLaunchContext *context = NULL;
+
+ /* Try to run from source directory if possible */
+ path = g_build_filename (g_getenv ("EMPATHY_SRCDIR"), "src",
+ "empathy", NULL);
+
+ if (!g_file_test (path, G_FILE_TEST_EXISTS))
+ {
+ g_free (path);
+ path = g_build_filename (BIN_DIR, "empathy", NULL);
+ }
+
+ cmd = g_strconcat (path, " -p", NULL);
+
+ app_info = g_app_info_create_from_commandline (cmd, NULL, 0, &error);
+ if (app_info == NULL)
+ {
+ DEBUG ("Failed to create app info: %s", error->message);
+ g_error_free (error);
+ goto out;
+ }
+
+ display = gdk_display_get_default ();
+ context = gdk_display_get_app_launch_context (display);
+
+ if (!g_app_info_launch (app_info, NULL, (GAppLaunchContext *) context,
+ &error))
+ {
+ g_warning ("Failed to open debug window: %s", error->message);
+ g_error_free (error);
+ goto out;
+ }
+
+out:
+ tp_clear_object (&app_info);
+ tp_clear_object (&context);
+ g_free (path);
+ g_free (cmd);
+}
+
+static void
empathy_call_window_contents_cb (GtkAction *action,
EmpathyCallWindow *self)
{
@@ -883,6 +931,7 @@ empathy_call_window_init (EmpathyCallWindow *self)
"camera", "toggled", empathy_call_window_camera_toggled_cb,
"dialpad", "toggled", empathy_call_window_dialpad_cb,
"menufullscreen", "activate", empathy_call_window_fullscreen_cb,
+ "menusettings", "activate", empathy_call_window_settings_cb,
"menucontents", "activate", empathy_call_window_contents_cb,
"menudebug", "activate", empathy_call_window_debug_cb,
"menuabout", "activate", empathy_call_window_about_cb,
diff --git a/src/empathy-call-window.ui b/src/empathy-call-window.ui
index 17ab475..b376323 100644
--- a/src/empathy-call-window.ui
+++ b/src/empathy-call-window.ui
@@ -31,6 +31,13 @@
</object>
</child>
<child>
+ <object class="GtkAction" id="menusettings">
+ <property name="stock_id">gtk-preferences</property>
+ <property name="name">menusettings</property>
+ <property name="label" translatable="yes">_Settings</property>
+ </object>
+ </child>
+ <child>
<object class="GtkAction" id="help">
<property name="name">help</property>
<property name="label" translatable="yes">_Help</property>
@@ -83,6 +90,7 @@
</menu>
<menu action="edit">
<menu action="menumicrophone"/>
+ <menuitem name="menusettings" action="menusettings"/>
</menu>
<menu action="help">
<menuitem name="menucontents" action="menucontents"/>
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]