extend searchdialog / SearchResult to properly support headphone profiles

This commit is contained in:
Drew Weymouth
2026-02-06 08:27:52 -08:00
parent 7e3b102fa4
commit daf0440fbc
5 changed files with 41 additions and 15 deletions
+24 -10
View File
@@ -272,7 +272,11 @@ func (s *searchResult) Update(result *mediaprovider.SearchResult) {
}
s.id = result.ID
s.contentType = result.Type
s.image.PlaceholderIcon = placeholderIconForContentType(result.Type)
if result.Icon != nil {
s.image.PlaceholderIcon = result.Icon
} else {
s.image.PlaceholderIcon = placeholderIconForContentType(result.Type)
}
s.imageLoader.Load(result.CoverID)
s.title.SetText(result.Name)
@@ -300,19 +304,29 @@ func (s *searchResult) Update(result *mediaprovider.SearchResult) {
} else {
secondaryText = ""
}
case mediaprovider.ContentTypeOther:
secondaryText = result.ArtistName
}
s.secondary.Segments = []widget.RichTextSegment{
&widget.TextSegment{
Text: result.Type.String(),
Style: widget.RichTextStyle{SizeName: theme.SizeNameCaptionText, TextStyle: fyne.TextStyle{Bold: true}, Inline: true},
},
if result.Type == mediaprovider.ContentTypeOther {
s.secondary.Segments = []widget.RichTextSegment{}
} else {
s.secondary.Segments = []widget.RichTextSegment{
&widget.TextSegment{
Text: result.Type.String(),
Style: widget.RichTextStyle{SizeName: theme.SizeNameCaptionText, TextStyle: fyne.TextStyle{Bold: true}, Inline: true},
},
}
}
if secondaryText != "" {
if len(s.secondary.Segments) > 0 {
s.secondary.Segments = append(s.secondary.Segments,
&widget.TextSegment{
Text: " · ",
Style: widget.RichTextStyle{SizeName: theme.SizeNameCaptionText, Inline: true},
})
}
s.secondary.Segments = append(s.secondary.Segments,
&widget.TextSegment{
Text: " · ",
Style: widget.RichTextStyle{SizeName: theme.SizeNameCaptionText, Inline: true},
},
&widget.TextSegment{
Text: secondaryText,
Style: widget.RichTextStyle{SizeName: theme.SizeNameCaptionText, Inline: true},