reuse hyperlinks in Similar Artists list
This commit is contained in:
@@ -306,7 +306,9 @@ func (a *ArtistPageHeader) Clear() {
|
|||||||
a.favoriteBtn.IsFavorited = false
|
a.favoriteBtn.IsFavorited = false
|
||||||
a.titleDisp.Segments[0].(*widget.TextSegment).Text = ""
|
a.titleDisp.Segments[0].(*widget.TextSegment).Text = ""
|
||||||
a.biographyDisp.Segments[0].(*widget.TextSegment).Text = artistBioNotAvailableStr
|
a.biographyDisp.Segments[0].(*widget.TextSegment).Text = artistBioNotAvailableStr
|
||||||
a.similarArtists.RemoveAll()
|
for _, obj := range a.similarArtists.Objects {
|
||||||
|
obj.Hide()
|
||||||
|
}
|
||||||
a.artistImage.SetImage(nil, false)
|
a.artistImage.SetImage(nil, false)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -336,21 +338,29 @@ func (a *ArtistPageHeader) UpdateInfo(info *mediaprovider.ArtistInfo) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
a.similarArtists.RemoveAll()
|
if len(a.similarArtists.Objects) == 0 {
|
||||||
|
a.similarArtists.Add(widget.NewLabel("Similar Artists:"))
|
||||||
|
}
|
||||||
|
for _, obj := range a.similarArtists.Objects {
|
||||||
|
obj.Hide()
|
||||||
|
}
|
||||||
for i, art := range info.SimilarArtists {
|
for i, art := range info.SimilarArtists {
|
||||||
if i == 0 {
|
if i == 0 {
|
||||||
a.similarArtists.Add(widget.NewLabel("Similar Artists:"))
|
a.similarArtists.Objects[0].Show() // "Similar Artists:" label
|
||||||
}
|
}
|
||||||
if i == 4 {
|
if i == 4 {
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
h := widgets.NewCustomHyperlink()
|
if len(a.similarArtists.Objects) <= i+1 {
|
||||||
|
a.similarArtists.Add(widgets.NewCustomHyperlink())
|
||||||
|
}
|
||||||
|
h := a.similarArtists.Objects[i+1].(*widgets.CustomHyperlink)
|
||||||
h.NoTruncate = true
|
h.NoTruncate = true
|
||||||
h.SetText(art.Name)
|
h.SetText(art.Name)
|
||||||
h.OnTapped = func(id string) func() {
|
h.OnTapped = func(id string) func() {
|
||||||
return func() { a.artistPage.contr.NavigateTo(controller.ArtistRoute(id)) }
|
return func() { a.artistPage.contr.NavigateTo(controller.ArtistRoute(id)) }
|
||||||
}(art.ID)
|
}(art.ID)
|
||||||
a.similarArtists.Add(h)
|
h.Show()
|
||||||
}
|
}
|
||||||
a.similarArtists.Refresh()
|
a.similarArtists.Refresh()
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user