From 44f7eebad18d2862fb418c6174f4c4409a23a10a Mon Sep 17 00:00:00 2001 From: Drew Weymouth Date: Thu, 23 May 2024 16:32:07 -0700 Subject: [PATCH] customize placeholder text and fix update bug --- ui/dialogs/searchdialog.go | 11 ++++++++++- ui/dialogs/selectplaylist.go | 1 + 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/ui/dialogs/searchdialog.go b/ui/dialogs/searchdialog.go index cfdadee..e63b25b 100644 --- a/ui/dialogs/searchdialog.go +++ b/ui/dialogs/searchdialog.go @@ -24,6 +24,8 @@ import ( type SearchDialog struct { widget.BaseWidget + PlaceholderText string + OnDismiss func() OnNavigateTo func(mediaprovider.ContentType, string) OnSearched func(string) []*mediaprovider.SearchResult @@ -97,6 +99,13 @@ func (sd *SearchDialog) Show() { sd.BaseWidget.Show() } +func (sd *SearchDialog) Refresh() { + if sd.PlaceholderText != "" { + sd.searchEntry.SetPlaceHolder(sd.PlaceholderText) + } + sd.BaseWidget.Refresh() +} + func (sd *SearchDialog) onDismiss() { if sd.OnDismiss != nil { sd.OnDismiss() @@ -267,7 +276,7 @@ func (s *searchResult) Update(result *mediaprovider.SearchResult) { if result == nil { return } - if s.contentType == result.Type && s.id == result.ID { + if s.contentType == result.Type && s.id == result.ID && s.title.Text == result.Name { return // nothing to do } s.id = result.ID diff --git a/ui/dialogs/selectplaylist.go b/ui/dialogs/selectplaylist.go index 53f2a86..46a4c80 100644 --- a/ui/dialogs/selectplaylist.go +++ b/ui/dialogs/selectplaylist.go @@ -35,6 +35,7 @@ func NewSelectPlaylistDialog(mp mediaprovider.MediaProvider, im util.ImageFetche sp.onSearched, sp.onInit, ) + sd.PlaceholderText = "Search playlists or new playlist name" sp.SearchDialog = sd return sp }