From 6b8acc6fa193fc38ab0e68f6616bc994aafa23a0 Mon Sep 17 00:00:00 2001 From: Drew Weymouth Date: Fri, 10 Feb 2023 18:05:33 -0800 Subject: [PATCH] continue refactor for favorites page --- ui/browsing/favoritespage.go | 17 +++++++---------- ui/browsing/router.go | 2 +- 2 files changed, 8 insertions(+), 11 deletions(-) diff --git a/ui/browsing/favoritespage.go b/ui/browsing/favoritespage.go index 82e2b3f..16f6832 100644 --- a/ui/browsing/favoritespage.go +++ b/ui/browsing/favoritespage.go @@ -16,6 +16,7 @@ import ( type FavoritesPage struct { widget.BaseWidget + pm *backend.PlaybackManager im *backend.ImageManager sm *backend.ServerManager lm *backend.LibraryManager @@ -26,12 +27,11 @@ type FavoritesPage struct { searchText string titleDisp *widget.RichText container *fyne.Container - - OnPlayAlbum func(string, int) } -func NewFavoritesPage(sm *backend.ServerManager, lm *backend.LibraryManager, im *backend.ImageManager, nav func(Route)) *FavoritesPage { +func NewFavoritesPage(sm *backend.ServerManager, pm *backend.PlaybackManager, lm *backend.LibraryManager, im *backend.ImageManager, nav func(Route)) *FavoritesPage { a := &FavoritesPage{ + pm: pm, lm: lm, sm: sm, im: im, @@ -66,6 +66,7 @@ func (a *FavoritesPage) createContainer() { func restoreFavoritesPage(saved *savedFavoritesPage) *FavoritesPage { a := &FavoritesPage{ + pm: saved.pm, lm: saved.lm, sm: saved.sm, im: saved.im, @@ -88,16 +89,13 @@ func (a *FavoritesPage) Route() Route { return FavoritesRoute() } -func (a *FavoritesPage) SetPlayAlbumCallback(cb func(string, int)) { - a.OnPlayAlbum = cb -} - func (a *FavoritesPage) Reload() { a.grid.Reset(a.lm.StarredIter()) } func (a *FavoritesPage) Save() SavedPage { return &savedFavoritesPage{ + pm: a.pm, sm: a.sm, im: a.im, lm: a.lm, @@ -142,9 +140,7 @@ func (a *FavoritesPage) doSearch(query string) { } func (a *FavoritesPage) onPlayAlbum(albumID string) { - if a.OnPlayAlbum != nil { - a.OnPlayAlbum(albumID, 0) - } + a.pm.PlayAlbum(albumID, 0) } func (a *FavoritesPage) onShowAlbumPage(albumID string) { @@ -161,6 +157,7 @@ func (a *FavoritesPage) CreateRenderer() fyne.WidgetRenderer { } type savedFavoritesPage struct { + pm *backend.PlaybackManager sm *backend.ServerManager im *backend.ImageManager lm *backend.LibraryManager diff --git a/ui/browsing/router.go b/ui/browsing/router.go index e95b453..d739b8c 100644 --- a/ui/browsing/router.go +++ b/ui/browsing/router.go @@ -93,7 +93,7 @@ func (r Router) CreatePage(rte Route) Page { case Artists: return NewArtistsGenresPage(false, r.App.ServerManager, r.OpenRoute) case Favorites: - return NewFavoritesPage(r.App.ServerManager, r.App.LibraryManager, r.App.ImageManager, r.OpenRoute) + return NewFavoritesPage(r.App.ServerManager, r.App.PlaybackManager, r.App.LibraryManager, r.App.ImageManager, r.OpenRoute) case Genre: return NewGenrePage(rte.Arg, r.App.LibraryManager, r.App.ImageManager, r.OpenRoute) case Genres: