make inactive lyric color less hard to see
This commit is contained in:
@@ -22,6 +22,7 @@ const (
|
|||||||
ColorNameListHeader fyne.ThemeColorName = "ListHeader"
|
ColorNameListHeader fyne.ThemeColorName = "ListHeader"
|
||||||
ColorNamePageBackground fyne.ThemeColorName = "PageBackground"
|
ColorNamePageBackground fyne.ThemeColorName = "PageBackground"
|
||||||
ColorNamePageHeader fyne.ThemeColorName = "PageHeader"
|
ColorNamePageHeader fyne.ThemeColorName = "PageHeader"
|
||||||
|
ColorNameInactiveLyric fyne.ThemeColorName = "InactiveLyric"
|
||||||
)
|
)
|
||||||
|
|
||||||
var (
|
var (
|
||||||
@@ -105,6 +106,18 @@ func (m *MyTheme) Color(name fyne.ThemeColorName, _ fyne.ThemeVariant) color.Col
|
|||||||
defColors = m.defaultThemeFile.LightColors
|
defColors = m.defaultThemeFile.LightColors
|
||||||
}
|
}
|
||||||
switch name {
|
switch name {
|
||||||
|
case ColorNameInactiveLyric:
|
||||||
|
// average the Foreground and Disabled colors
|
||||||
|
foreground := colorOrDefault(colors.Foreground, defColors.Foreground, theme.ColorNameForeground, variant)
|
||||||
|
disabled := colorOrDefault(colors.Disabled, defColors.Disabled, theme.ColorNameDisabled, variant)
|
||||||
|
pr, pg, pb, pa := foreground.RGBA()
|
||||||
|
dr, dg, db, da := disabled.RGBA()
|
||||||
|
|
||||||
|
rAvg := uint8((pr/257 + dr/257) / 2)
|
||||||
|
gAvg := uint8((pg/257 + dg/257) / 2)
|
||||||
|
bAvg := uint8((pb/257 + db/257) / 2)
|
||||||
|
aAvg := uint8((pa/257 + da/257) / 2)
|
||||||
|
return color.RGBA{R: rAvg, G: gAvg, B: bAvg, A: aAvg}
|
||||||
case ColorNameListHeader:
|
case ColorNameListHeader:
|
||||||
return colorOrDefault(colors.ListHeader, defColors.ListHeader, name, variant)
|
return colorOrDefault(colors.ListHeader, defColors.ListHeader, name, variant)
|
||||||
case ColorNamePageBackground:
|
case ColorNamePageBackground:
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ import (
|
|||||||
"fyne.io/fyne/v2/widget"
|
"fyne.io/fyne/v2/widget"
|
||||||
fynelyrics "github.com/dweymouth/fyne-lyrics"
|
fynelyrics "github.com/dweymouth/fyne-lyrics"
|
||||||
"github.com/dweymouth/supersonic/backend/mediaprovider"
|
"github.com/dweymouth/supersonic/backend/mediaprovider"
|
||||||
|
"github.com/dweymouth/supersonic/ui/theme"
|
||||||
)
|
)
|
||||||
|
|
||||||
type LyricsViewer struct {
|
type LyricsViewer struct {
|
||||||
@@ -50,6 +51,7 @@ func (l *LyricsViewer) SetLyrics(lyrics *mediaprovider.Lyrics) {
|
|||||||
if l.viewer == nil {
|
if l.viewer == nil {
|
||||||
l.viewer = fynelyrics.NewLyricsViewer()
|
l.viewer = fynelyrics.NewLyricsViewer()
|
||||||
l.viewer.ActiveLyricPosition = fynelyrics.ActiveLyricPositionTopThird
|
l.viewer.ActiveLyricPosition = fynelyrics.ActiveLyricPositionTopThird
|
||||||
|
l.viewer.InactiveLyricColorName = theme.ColorNameInactiveLyric
|
||||||
}
|
}
|
||||||
lines := make([]string, len(lyrics.Lines))
|
lines := make([]string, len(lyrics.Lines))
|
||||||
for i, line := range lyrics.Lines {
|
for i, line := range lyrics.Lines {
|
||||||
|
|||||||
Reference in New Issue
Block a user