using Gtk 4.0; using Adw 1; template $AudreyUiPlayQueue: Adw.Bin { name: "play-queue"; child: Stack { visible-child-name: bind $visible_child_name(template.model as <$GListStore>.n-items) as ; StackPage { name: "empty"; child: Adw.StatusPage { icon-name: "list-remove-all"; title: "No songs queued"; }; } StackPage { name: "not-empty"; child: ScrolledWindow { hexpand: true; vscrollbar-policy: always; hscrollbar-policy: never; ListView view { show-separators: true; single-click-activate: true; activate => $on_row_activated() swapped; model: NoSelection { model: bind template.model; }; factory: SignalListItemFactory { setup => $on_song_list_setup() swapped; bind => $on_song_list_bind() swapped; unbind => $on_song_list_unbind() swapped; }; } }; } }; }