aboutsummaryrefslogtreecommitdiff
path: root/src/settings-manager.vala
diff options
context:
space:
mode:
authorConor Curran <conor.curran@canonical.com>2011-01-06 11:32:18 +0000
committerConor Curran <conor.curran@canonical.com>2011-01-06 11:32:18 +0000
commit474554b742855e28625b6b1768ce40c85072d528 (patch)
tree073a50e74369d0e4e54a953083e57262525b0f42 /src/settings-manager.vala
parent057a66af1bb84160e6bb1181274b3ca4cfc36983 (diff)
parentb8e5c4267c5c5db7889b18441a2fc733dd48cbdd (diff)
downloadayatana-indicator-sound-474554b742855e28625b6b1768ce40c85072d528.tar.gz
ayatana-indicator-sound-474554b742855e28625b6b1768ce40c85072d528.tar.bz2
ayatana-indicator-sound-474554b742855e28625b6b1768ce40c85072d528.zip
merge the blacklist work
Diffstat (limited to 'src/settings-manager.vala')
-rw-r--r--src/settings-manager.vala13
1 files changed, 10 insertions, 3 deletions
diff --git a/src/settings-manager.vala b/src/settings-manager.vala
index f7bb3b6..57b4487 100644
--- a/src/settings-manager.vala
+++ b/src/settings-manager.vala
@@ -35,9 +35,16 @@ public class SettingsManager : GLib.Object
return this.settings.get_strv ("blacklisted-media-players");
}
- public string[] fetch_interested()
+ public ArrayList<string> fetch_interested()
{
- return this.settings.get_strv ("interested-media-players");
+ var blacklisted = this.settings.get_strv ("blacklisted-media-players");
+ var interested = this.settings.get_strv ("interested-media-players");
+ var list = new ArrayList<string>();
+ foreach(var s in interested){
+ if ( s in blacklisted ) continue;
+ list.add(s);
+ }
+ return list;
}
public void clear_list()
@@ -47,7 +54,7 @@ public class SettingsManager : GLib.Object
public void add_interested(string app_desktop_name)
{
- var already_interested = fetch_interested();
+ var already_interested = this.settings.get_strv ("interested-media-players");
foreach ( var s in already_interested){
if ( s == app_desktop_name ) return;
}