switch to simpler way of themeing PNG icons

This commit is contained in:
Drew Weymouth
2023-05-01 17:49:59 -07:00
parent 0d8c7d3830
commit 6c81db4398
11 changed files with 91 additions and 92 deletions
+7 -5
View File
@@ -4,6 +4,8 @@ import (
"fmt"
"log"
"strconv"
"time"
"supersonic/sharedutil"
"supersonic/ui/layouts"
"supersonic/ui/os"
@@ -524,7 +526,7 @@ func NewTrackRow(tracklist *Tracklist, playingIcon fyne.CanvasObject) *TrackRow
t.album.OnTapped = func() { tracklist.onAlbumTapped(t.albumID) }
t.dur = newTrailingAlignRichText()
t.year = newTrailingAlignRichText()
favorite := NewThemedTappableIcon(myTheme.IconNameNotFavorite)
favorite := NewTappbaleIcon(myTheme.NotFavoriteIcon)
favorite.OnTapped = t.toggleFavorited
t.favorite = container.NewCenter(favorite)
t.rating = NewStarRating()
@@ -623,10 +625,10 @@ func (t *TrackRow) Update(tr *subsonic.Child, rowNum int) {
// Render favorite column
if tr.Starred.IsZero() {
t.isFavorite = false
t.favorite.Objects[0].(*ThemedTappableIcon).IconName = myTheme.IconNameNotFavorite
t.favorite.Objects[0].(*TappableIcon).Resource = myTheme.NotFavoriteIcon
} else {
t.isFavorite = true
t.favorite.Objects[0].(*ThemedTappableIcon).IconName = myTheme.IconNameFavorite
t.favorite.Objects[0].(*TappableIcon).Resource = myTheme.FavoriteIcon
}
t.rating.Rating = tr.UserRating
@@ -648,12 +650,12 @@ func (t *TrackRow) Update(tr *subsonic.Child, rowNum int) {
func (t *TrackRow) toggleFavorited() {
if t.isFavorite {
t.favorite.Objects[0].(*ThemedTappableIcon).IconName = myTheme.IconNameNotFavorite
t.favorite.Objects[0].(*TappableIcon).Resource = myTheme.NotFavoriteIcon
t.favorite.Refresh()
t.isFavorite = false
t.tracklist.onSetFavorite(t.trackID, false)
} else {
t.favorite.Objects[0].(*ThemedTappableIcon).IconName = myTheme.IconNameFavorite
t.favorite.Objects[0].(*TappableIcon).Resource = myTheme.FavoriteIcon
t.favorite.Refresh()
t.isFavorite = true
t.tracklist.onSetFavorite(t.trackID, true)