From f7e5e1e9a4317a813fd07afe0d12c906095480b7 Mon Sep 17 00:00:00 2001 From: Drew Weymouth Date: Fri, 31 Jan 2025 09:05:59 -0300 Subject: [PATCH] update searchdialog for fyne.Do --- ui/dialogs/searchdialog.go | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/ui/dialogs/searchdialog.go b/ui/dialogs/searchdialog.go index 117cac1..58801c9 100644 --- a/ui/dialogs/searchdialog.go +++ b/ui/dialogs/searchdialog.go @@ -101,7 +101,7 @@ func (sd *SearchDialog) SearchQuery() string { func (sd *SearchDialog) Show() { sd.BaseWidget.Show() - go sd.onSearched("") + sd.onSearched("") } func (sd *SearchDialog) Refresh() { @@ -163,14 +163,18 @@ func (sd *SearchDialog) setResults(results []*mediaprovider.SearchResult) { func (sd *SearchDialog) onSearched(query string) { sd.loadingDots.Start() var results []*mediaprovider.SearchResult - res := sd.OnSearched(query) - if len(res) == 0 { - log.Println("No results matched the query.") - } else { - results = res - } - sd.loadingDots.Stop() - sd.setResults(results) + go func() { + res := sd.OnSearched(query) + if len(res) == 0 { + log.Println("No results matched the query.") + } else { + results = res + } + fyne.Do(func() { + sd.loadingDots.Stop() + sd.setResults(results) + }) + }() } func (sd *SearchDialog) CreateRenderer() fyne.WidgetRenderer {