clear tracks from tracklists before releasing to widget pool
This commit is contained in:
@@ -117,6 +117,7 @@ func (a *AlbumPage) Save() SavedPage {
|
|||||||
s.sort = a.tracklist.Sorting()
|
s.sort = a.tracklist.Sorting()
|
||||||
a.header.page = nil
|
a.header.page = nil
|
||||||
a.pool.Release(util.WidgetTypeAlbumPageHeader, a.header)
|
a.pool.Release(util.WidgetTypeAlbumPageHeader, a.header)
|
||||||
|
a.tracklist.Clear()
|
||||||
a.pool.Release(util.WidgetTypeTracklist, a.tracklist)
|
a.pool.Release(util.WidgetTypeTracklist, a.tracklist)
|
||||||
return &s
|
return &s
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -127,6 +127,7 @@ func (a *ArtistPage) Save() SavedPage {
|
|||||||
if a.tracklistCtr != nil {
|
if a.tracklistCtr != nil {
|
||||||
tl := a.tracklistCtr.Objects[0].(*widgets.Tracklist)
|
tl := a.tracklistCtr.Objects[0].(*widgets.Tracklist)
|
||||||
s.trackSort = tl.Sorting()
|
s.trackSort = tl.Sorting()
|
||||||
|
tl.Clear()
|
||||||
a.pool.Release(util.WidgetTypeTracklist, tl)
|
a.pool.Release(util.WidgetTypeTracklist, tl)
|
||||||
}
|
}
|
||||||
a.pool.Release(util.WidgetTypeArtistPageHeader, a.header)
|
a.pool.Release(util.WidgetTypeArtistPageHeader, a.header)
|
||||||
|
|||||||
@@ -202,6 +202,7 @@ func (a *FavoritesPage) Save() SavedPage {
|
|||||||
if a.tracklistCtr != nil {
|
if a.tracklistCtr != nil {
|
||||||
tl := a.tracklistCtr.Objects[0].(*widgets.Tracklist)
|
tl := a.tracklistCtr.Objects[0].(*widgets.Tracklist)
|
||||||
sf.trackSort = tl.Sorting()
|
sf.trackSort = tl.Sorting()
|
||||||
|
tl.Clear()
|
||||||
a.pool.Release(util.WidgetTypeTracklist, tl)
|
a.pool.Release(util.WidgetTypeTracklist, tl)
|
||||||
}
|
}
|
||||||
return sf
|
return sf
|
||||||
|
|||||||
@@ -99,6 +99,7 @@ func (a *NowPlayingPage) CreateRenderer() fyne.WidgetRenderer {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (a *NowPlayingPage) Save() SavedPage {
|
func (a *NowPlayingPage) Save() SavedPage {
|
||||||
|
a.tracklist.Clear()
|
||||||
a.pool.Release(util.WidgetTypeTracklist, a.tracklist)
|
a.pool.Release(util.WidgetTypeTracklist, a.tracklist)
|
||||||
nps := a.nowPlayingPageState
|
nps := a.nowPlayingPageState
|
||||||
return &nps
|
return &nps
|
||||||
|
|||||||
@@ -116,6 +116,7 @@ func (a *PlaylistPage) Save() SavedPage {
|
|||||||
p := a.playlistPageState
|
p := a.playlistPageState
|
||||||
p.trackSort = a.tracklist.Sorting()
|
p.trackSort = a.tracklist.Sorting()
|
||||||
p.widgetPool.Release(util.WidgetTypePlaylistPageHeader, a.header)
|
p.widgetPool.Release(util.WidgetTypePlaylistPageHeader, a.header)
|
||||||
|
a.tracklist.Clear()
|
||||||
p.widgetPool.Release(util.WidgetTypeTracklist, a.tracklist)
|
p.widgetPool.Release(util.WidgetTypeTracklist, a.tracklist)
|
||||||
return &p
|
return &p
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -151,6 +151,7 @@ func (t *TracksPage) CreateRenderer() fyne.WidgetRenderer {
|
|||||||
|
|
||||||
func (t *TracksPage) Save() SavedPage {
|
func (t *TracksPage) Save() SavedPage {
|
||||||
t.loader.Dispose()
|
t.loader.Dispose()
|
||||||
|
t.tracklist.Clear()
|
||||||
t.widgetPool.Release(util.WidgetTypeTracklist, t.tracklist)
|
t.widgetPool.Release(util.WidgetTypeTracklist, t.tracklist)
|
||||||
state := t.tracksPageState
|
state := t.tracksPageState
|
||||||
return &state
|
return &state
|
||||||
|
|||||||
Reference in New Issue
Block a user