fix scrolling performance of grid views when not showing album year

This commit is contained in:
Drew Weymouth
2024-12-21 11:13:12 -08:00
parent e174f08fe1
commit 800a15683d
2 changed files with 6 additions and 5 deletions
+4 -4
View File
@@ -3,10 +3,11 @@ package widgets
import (
"context"
"fmt"
"fyne.io/fyne/v2/lang"
"strconv"
"sync"
"fyne.io/fyne/v2/lang"
"github.com/dweymouth/supersonic/backend/mediaprovider"
"github.com/dweymouth/supersonic/sharedutil"
myTheme "github.com/dweymouth/supersonic/ui/theme"
@@ -329,14 +330,13 @@ func (g *GridView) doUpdateItemCard(itemIdx int, card *GridViewItem) {
}
card.ItemIndex = itemIdx
g.itemForIndex[itemIdx] = card
card.Cover.Im.PlaceholderIcon = g.Placeholder
card.ShowSuffix = g.ShowSuffix
if !card.NeedsUpdate(item) && card.ItemIndex == itemIdx {
if !card.NeedsUpdate(item) {
// nothing to do
g.stateMutex.Unlock()
card.Refresh()
return
}
card.Cover.Im.PlaceholderIcon = g.Placeholder
g.stateMutex.Unlock()
card.Update(item)
card.ImgLoader.Load(item.CoverArtID)
+2 -1
View File
@@ -207,7 +207,8 @@ func NewGridViewItem(placeholderResource fyne.Resource) *GridViewItem {
func (g *GridViewItem) NeedsUpdate(model GridViewItemModel) bool {
return g.itemID != model.ID || !slices.Equal(g.secondaryIDs, model.SecondaryIDs) ||
g.secondaryText.Suffix != model.Suffix
(g.ShowSuffix && g.secondaryText.Suffix != model.Suffix) ||
(!g.ShowSuffix && g.secondaryText.Suffix != "")
}
func (g *GridViewItem) Update(model GridViewItemModel) {