aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--debian/changelog7
-rw-r--r--debian/patches/sound_nua.patch21
-rw-r--r--src/sound-service-dbus.c9
3 files changed, 32 insertions, 5 deletions
diff --git a/debian/changelog b/debian/changelog
index 4e80ecf..5b1e804 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,10 @@
+indicator-sound (0.8.3.0-0ubuntu2) precise; urgency=low
+
+ * debian/patches/sound_nua.patch
+ - Sound Settings link doesn't work in GNOME Classic (LP: #941704)
+
+ -- Ken VanDine <ken.vandine@canonical.com> Fri, 16 Mar 2012 13:39:03 -0400
+
indicator-sound (0.8.3.0-0ubuntu1) precise; urgency=low
* New upstream release.
diff --git a/debian/patches/sound_nua.patch b/debian/patches/sound_nua.patch
index 4b31b61..97ba41b 100644
--- a/debian/patches/sound_nua.patch
+++ b/debian/patches/sound_nua.patch
@@ -1,13 +1,26 @@
=== modified file 'src/sound-service-dbus.c'
---- old/src/sound-service-dbus.c 2011-08-10 16:58:49 +0000
-+++ new/src/sound-service-dbus.c 2012-02-09 21:32:58 +0000
-@@ -228,7 +228,7 @@
+--- old/src/sound-service-dbus.c 2012-03-02 16:34:50 +0000
++++ new/src/sound-service-dbus.c 2012-03-16 17:24:56 +0000
+@@ -228,13 +228,20 @@
+ gpointer user_data)
{
GError * error = NULL;
++ gchar* cmd;
++ if (!g_strcmp0 (g_getenv ("XDG_CURRENT_DESKTOP"), "Unity"))
++ cmd = "gnome-control-center sound-nua";
++ else
++ cmd = "gnome-control-center sound";
++
if (!g_spawn_command_line_async("gnome-volume-control --page=applications", &error) &&
- !g_spawn_command_line_async("gnome-control-center sound", &error) &&
-+ !g_spawn_command_line_async("gnome-control-center sound-nua", &error) &&
++ !g_spawn_command_line_async(cmd, &error) &&
!g_spawn_command_line_async("xfce4-mixer", &error))
{
g_warning("Unable to show dialog: %s", error->message);
+ g_error_free(error);
+ }
++ g_free (cmd);
+ }
+
+ static void
diff --git a/src/sound-service-dbus.c b/src/sound-service-dbus.c
index 9cfee11..fe041ea 100644
--- a/src/sound-service-dbus.c
+++ b/src/sound-service-dbus.c
@@ -228,13 +228,20 @@ show_sound_settings_dialog (DbusmenuMenuitem *mi,
gpointer user_data)
{
GError * error = NULL;
+ gchar* cmd;
+ if (!g_strcmp0 (g_getenv ("XDG_CURRENT_DESKTOP"), "Unity"))
+ cmd = "gnome-control-center sound-nua";
+ else
+ cmd = "gnome-control-center sound";
+
if (!g_spawn_command_line_async("gnome-volume-control --page=applications", &error) &&
- !g_spawn_command_line_async("gnome-control-center sound-nua", &error) &&
+ !g_spawn_command_line_async(cmd, &error) &&
!g_spawn_command_line_async("xfce4-mixer", &error))
{
g_warning("Unable to show dialog: %s", error->message);
g_error_free(error);
}
+ g_free (cmd);
}
static void