diff options
Diffstat (limited to 'src/player-item.vala')
-rw-r--r-- | src/player-item.vala | 41 |
1 files changed, 9 insertions, 32 deletions
diff --git a/src/player-item.vala b/src/player-item.vala index a5c5512..171c140 100644 --- a/src/player-item.vala +++ b/src/player-item.vala @@ -22,10 +22,16 @@ using Gee; public class PlayerItem : Dbusmenu.Menuitem { - public MprisController mpris_adaptor; - - public PlayerItem() + public PlayerController owner {get; construct;} + public string item_type { get; construct; } + + public PlayerItem(string type) { + Object(item_type: type); + } + + construct { + this.property_set(MENUITEM_PROP_TYPE, item_type); } public void reset(HashSet<string> attrs){ @@ -60,15 +66,8 @@ public class PlayerItem : Dbusmenu.Menuitem this.property_set_bool(property, v.get_boolean()); } } - // TODO: not working - //this.check_layout(); } - public void set_adaptor(MprisController adaptor) - { - this.mpris_adaptor = adaptor; - } - private static bool ensure_valid_updates(HashTable<string, Value?> data, HashSet<string> attributes) { if(data == null){ @@ -91,27 +90,5 @@ public class PlayerItem : Dbusmenu.Menuitem return result; } - - //----- Custom constructors for player items ----------------// - // Title item - public static PlayerItem new_title_item(dynamic string name) - { - PlayerItem item = new PlayerItem(); - item.property_set(MENUITEM_PROP_LABEL, name); - item.property_set(MENUITEM_PROP_ICON_NAME, "applications-multimedia"); - return item; - } - - // Separator item - public static PlayerItem new_separator_item() - { - PlayerItem separator = new PlayerItem(); - separator.property_set(MENUITEM_PROP_TYPE, CLIENT_TYPES_SEPARATOR); - return separator; - } - - public virtual void check_layout(){ - warning("this should not be hit"); - } } |