using Gtk 4.0; using Adw 1; template $UiWindow: Adw.ApplicationWindow { title: _("audrey"); default-width: 800; default-height: 600; content: Adw.BottomSheet bottom_sheet { can-open: false; // broken in libadwaita [content] Adw.OverlaySplitView { margin-bottom: bind bottom_sheet.bottom-bar-height; vexpand: true; [sidebar] Adw.NavigationPage { width-request: 100; Adw.ToolbarView { [top] Adw.HeaderBar { [end] Button { icon-name: "applications-system"; clicked => $show_setup_dialog (); } } content: Box { orientation: vertical; ListBox sidebar { styles [ "navigation-sidebar", ] row-activated => $on_sidebar_row_activated(); ListBoxRow sidebar_play_queue { Label { xalign: 0; label: _("Play queue"); } } } Separator {} ListBox { selection-mode: none; styles [ "navigation-sidebar", ] Adw.ButtonRow shuffle_all_tracks { title: _("Shuffle all tracks"); start-icon-name: "media-playlist-shuffle"; sensitive: false; } } Separator { styles [ "spacer", ] vexpand: true; } Picture { paintable: bind template.playing_cover_art; } }; } } [content] Stack stack { StackPage { name: "play_queue"; title: _("Play queue"); child: $UiPlayQueue play_queue { playbin: bind template.playbin; }; } } } [sheet] Box {} [bottom-bar] $UiPlaybar playbar { song: bind template.song; playbin: bind template.playbin; } }; }