From c50ef90e9b39acd465917fe2f8481ee872c75e61 Mon Sep 17 00:00:00 2001 From: Elias Projahn Date: Sun, 10 Aug 2025 11:56:28 +0200 Subject: [PATCH] Remove AlbumPage from stack on library changes --- src/window.rs | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/src/window.rs b/src/window.rs index b263423..14ef619 100644 --- a/src/window.rs +++ b/src/window.rs @@ -9,6 +9,7 @@ use gettextrs::gettext; use gtk::{gio, glib, glib::clone}; use crate::{ + album_page::AlbumPage, config, editor::tracks::TracksEditor, empty_page::EmptyPage, @@ -362,17 +363,12 @@ impl Window { fn reset_view(&self) { let navigation = self.imp().navigation_view.get(); - // Get all pages that are not instances of SearchPage. + // Get all pages that are not instances of SearchPage or AlbumPage. let mut navigation_stack = navigation .navigation_stack() .iter::() - .filter_map(|page| match page { - Ok(page) => match page.downcast_ref::() { - Some(_) => None, - None => Some(page), - }, - Err(_) => None, - }) + .filter_map(|page| page.ok()) + .filter(|page| !page.is::() && !page.is::()) .collect::>(); navigation_stack.insert(