From cf22503610ed2f95fdaad793e6217f7315d5673f Mon Sep 17 00:00:00 2001 From: Drew Weymouth Date: Thu, 20 Apr 2023 21:27:46 -0700 Subject: [PATCH] make search bar on tracks page Ctrl+F focusable; reset tracklist selection on clear --- ui/browsing/trackspage.go | 6 ++++++ ui/widgets/tracklist.go | 1 + 2 files changed, 7 insertions(+) diff --git a/ui/browsing/trackspage.go b/ui/browsing/trackspage.go index dd19b53..86ff873 100644 --- a/ui/browsing/trackspage.go +++ b/ui/browsing/trackspage.go @@ -88,6 +88,12 @@ func (t *TracksPage) OnSongChange(track *subsonic.Child, lastScrobbledIfAny *sub } } +var _ Searchable = (*TracksPage)(nil) + +func (t *TracksPage) SearchWidget() fyne.Focusable { + return t.searcher.Entry +} + func (t *TracksPage) OnSearched(query string) { t.searchText = query if query == "" { diff --git a/ui/widgets/tracklist.go b/ui/widgets/tracklist.go index 1ab2f48..1bc2e34 100644 --- a/ui/widgets/tracklist.go +++ b/ui/widgets/tracklist.go @@ -201,6 +201,7 @@ func (t *Tracklist) IncrementPlayCount(trackID string) { // Remove all tracks from the tracklist. Thread-safe. func (t *Tracklist) Clear() { + t.selectionMgr.UnselectAll() t.tracksMutex.Lock() defer t.tracksMutex.Unlock() t.Tracks = nil