Changes
4 changed files (+33/-1)
-
-
@@ -58,5 +58,10 @@ SPDX-License-Identifier: Apache-2.0<summary>Show separators for browse items</summary> <description>Show separator between browse items.</description> </key> <key name="focus-browse-items-on-load" type="b"> <default>false</default> <summary>Focus browse items on load</summary> <description>Move focus to the first browse item or search entry right after the page is loaded.</description> </key> </schema> </schemalist>
-
-
-
@@ -65,9 +65,15 @@ namespace PlacGtkAdwaita {show_browse_item_separators.title = "Show separators for browse items"; show_browse_item_separators.subtitle = "Show separator between browse items."; var focus_browse_items_on_load = new Adw.SwitchRow(); settings.settings.bind(Settings.FOCUS_BROWSE_ITEMS_ON_LOAD, focus_browse_items_on_load, "active", DEFAULT); focus_browse_items_on_load.title = "Focus browse items on load"; focus_browse_items_on_load.subtitle = "Move focus to the first browse item or search entry right after the page is loaded."; var browse = new Adw.PreferencesGroup(); browse.add(label_parsing_enabled); browse.add(show_browse_item_separators); browse.add(focus_browse_items_on_load); browse.title = "Browse"; var show_seek_by_10secs = new Adw.SwitchRow();
-
-
-
@@ -25,6 +25,7 @@ namespace PlacGtkAdwaita {public const string LABEL_PARSING_ENABLED = "label-parsing-enabled"; public const string SHOW_SEEK_BY_10SECS = "show-seek-by-10secs"; public const string SHOW_BROWSE_ITEM_SEPARATORS = "show-browse-item-separators"; public const string FOCUS_BROWSE_ITEMS_ON_LOAD = "focus-browse-items-on-load"; public GLib.Settings settings;
-
@@ -68,5 +69,10 @@ namespace PlacGtkAdwaita {owned get { return settings.get_boolean(LABEL_PARSING_ENABLED); } set { settings.set_boolean(LABEL_PARSING_ENABLED, value); } } public bool focus_browse_items_on_load { owned get { return settings.get_boolean(FOCUS_BROWSE_ITEMS_ON_LOAD); } set { settings.set_boolean(FOCUS_BROWSE_ITEMS_ON_LOAD, value); } } } }
-
-
-
@@ -56,6 +56,7 @@ namespace PlacGtkAdwaita {private BrowseItem.Item? item = null; private bool is_loading = false; private bool is_root = true; private Settings settings = new Settings(); public Roon.Browse.Hierarchy hierarchy { get; set; default = BROWSE; }
-
@@ -91,6 +92,18 @@ namespace PlacGtkAdwaita {} }); this.notify["sensitive"].connect(() => { if (!this.sensitive || !settings.focus_browse_items_on_load) { return; } if (this.hierarchy == SEARCH && this.is_root) { search_query.focus(TAB_FORWARD); } else { items.focus(TAB_FORWARD); } }); items.single_click_activate = true; items.model = new Gtk.NoSelection(items_store);
-
@@ -256,7 +269,9 @@ namespace PlacGtkAdwaita {items_store.append(new BrowseItem.Item(new_item, conn)); } back.visible = load_res.list.level > 0; var is_root = load_res.list.level == 0; back.visible = !is_root; this.is_root = is_root; } private async Roon.Browse.Browse.Response browse_async(Roon.Browse.Browse.Request request) throws GLib.Error {
-