From 34427e5033a7cda743682909a20b9dd8994bc470 Mon Sep 17 00:00:00 2001 From: Drew Weymouth Date: Fri, 24 May 2024 07:58:40 -0700 Subject: [PATCH] move "Create new playlist" result to bottom of list --- ui/dialogs/selectplaylist.go | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/ui/dialogs/selectplaylist.go b/ui/dialogs/selectplaylist.go index d3c6fcf..9032e0d 100644 --- a/ui/dialogs/selectplaylist.go +++ b/ui/dialogs/selectplaylist.go @@ -29,7 +29,6 @@ func NewSelectPlaylistDialog(mp mediaprovider.MediaProvider, im util.ImageFetche loggedInUser: loggedInUser, SkipDuplicates: false, } - sp.fetchUserOwnedPlaylists() sd := NewSearchDialog( im, "Add to playlist", @@ -69,21 +68,23 @@ func (sp *SelectPlaylist) playlistToSearchResult(playlist *mediaprovider.Playlis } func (sp *SelectPlaylist) onSearched(query string) []*mediaprovider.SearchResult { + if sp.allPlaylistResuts == nil { + sp.fetchUserOwnedPlaylists() + } var results []*mediaprovider.SearchResult if query == "" { results = sp.allPlaylistResuts } else { - results = []*mediaprovider.SearchResult{{ - Name: fmt.Sprintf("Create new playlist: %s", query), - Type: mediaprovider.ContentTypePlaylist, - }} - filteredPlaylists := sharedutil.FilterSlice(sp.allPlaylistResuts, func(playlist *mediaprovider.SearchResult) bool { + results = sharedutil.FilterSlice(sp.allPlaylistResuts, func(playlist *mediaprovider.SearchResult) bool { return strings.Contains( sanitize.Accents(strings.ToLower(playlist.Name)), sanitize.Accents(strings.ToLower(query)), ) }) - results = append(results, filteredPlaylists...) + results = append(results, &mediaprovider.SearchResult{ + Name: fmt.Sprintf("Create new playlist: %s", query), + Type: mediaprovider.ContentTypePlaylist, + }) } return results