aboutsummaryrefslogtreecommitdiff
path: root/src/service.vala
diff options
context:
space:
mode:
authorLars Uebernickel <lars.uebernickel@canonical.com>2013-10-30 16:49:25 +0000
committerTarmac <Unknown>2013-10-30 16:49:25 +0000
commit76d71b5213c0fffb212af68bf1cbe39924a06cd1 (patch)
tree29e74c3aee915cc5c5956b305026abc3ee65b0c3 /src/service.vala
parentb9660509ac4306924e8d9cccb1728a8a459475a2 (diff)
parent9fb9f5077869c6e30d305ec7cb21d0129567e10e (diff)
downloadayatana-indicator-sound-76d71b5213c0fffb212af68bf1cbe39924a06cd1.tar.gz
ayatana-indicator-sound-76d71b5213c0fffb212af68bf1cbe39924a06cd1.tar.bz2
ayatana-indicator-sound-76d71b5213c0fffb212af68bf1cbe39924a06cd1.zip
Call Raise() when a media player is already running
Before, it was repeatedly launching the player. This patch also make the menu item insensitive if the player can't be raised. Fixes: https://bugs.launchpad.net/bugs/710824. Approved by Charles Kerr, PS Jenkins bot.
Diffstat (limited to 'src/service.vala')
-rw-r--r--src/service.vala6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/service.vala b/src/service.vala
index 7dc6824..14d4893 100644
--- a/src/service.vala
+++ b/src/service.vala
@@ -266,8 +266,10 @@ public class IndicatorSound.Service {
bool update_player_actions () {
foreach (var player in this.players) {
SimpleAction? action = this.actions.lookup_action (player.id) as SimpleAction;
- if (action != null)
+ if (action != null) {
action.set_state (this.action_state_for_player (player));
+ action.set_enabled (player.can_raise);
+ }
}
this.player_action_update_id = 0;
@@ -290,7 +292,7 @@ public class IndicatorSound.Service {
this.menus.@foreach ( (profile, menu) => menu.add_player (player));
SimpleAction action = new SimpleAction.stateful (player.id, null, this.action_state_for_player (player));
- action.activate.connect ( () => { player.launch (); });
+ action.activate.connect ( () => { player.activate (); });
this.actions.add_action (action);
var play_action = new SimpleAction.stateful ("play." + player.id, null, player.state);