diff options
-rw-r--r-- | debian/changelog | 7 | ||||
-rw-r--r-- | debian/patches/sound_nua.patch | 21 | ||||
-rw-r--r-- | src/sound-service-dbus.c | 9 |
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 |