diff options
author | Lars Uebernickel <lars.uebernickel@canonical.com> | 2013-10-30 16:49:25 +0000 |
---|---|---|
committer | Tarmac <Unknown> | 2013-10-30 16:49:25 +0000 |
commit | 76d71b5213c0fffb212af68bf1cbe39924a06cd1 (patch) | |
tree | 29e74c3aee915cc5c5956b305026abc3ee65b0c3 /src/service.vala | |
parent | b9660509ac4306924e8d9cccb1728a8a459475a2 (diff) | |
parent | 9fb9f5077869c6e30d305ec7cb21d0129567e10e (diff) | |
download | ayatana-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.vala | 6 |
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); |