mirror of
https://github.com/Kyren223/eko.git
synced 2026-08-31 03:33:33 +00:00
Networklist now properly darkens custom colors from networks
This commit is contained in:
@@ -156,6 +156,7 @@ func Save() {
|
||||
|
||||
func Restore() {
|
||||
Load(colors)
|
||||
isDarkened = false
|
||||
}
|
||||
|
||||
func Load(colors []lipgloss.Color) {
|
||||
@@ -255,15 +256,25 @@ func ToHexRGB(r, g, b uint8) string {
|
||||
return fmt.Sprintf("#%02X%02X%02X", r, g, b)
|
||||
}
|
||||
|
||||
var isDarkened = false
|
||||
|
||||
const DarkeningFactor = 0.5
|
||||
|
||||
func Darken() {
|
||||
Save()
|
||||
|
||||
colors := Get()
|
||||
for i, color := range colors {
|
||||
colors[i] = DarkenColor(color, 0.5)
|
||||
colors[i] = DarkenColor(color, DarkeningFactor)
|
||||
}
|
||||
|
||||
Load(colors)
|
||||
|
||||
isDarkened = true
|
||||
}
|
||||
|
||||
func IsDarkened() bool {
|
||||
return isDarkened
|
||||
}
|
||||
|
||||
func DarkenColor(color lipgloss.Color, factor float64) lipgloss.Color {
|
||||
|
||||
@@ -171,6 +171,8 @@ func (m Model) View() string {
|
||||
popup = m.banViewPopup.View()
|
||||
} else if m.signalAddPopup != nil {
|
||||
popup = m.signalAddPopup.View()
|
||||
} else {
|
||||
assert.Never("missing handling of a popup!")
|
||||
}
|
||||
|
||||
x := (ui.Width - lipgloss.Width(popup)) / 2
|
||||
|
||||
@@ -75,6 +75,13 @@ func (m Model) View() string {
|
||||
networks = networks[m.base:upper]
|
||||
for i, networkId := range networks {
|
||||
network := state.State.Networks[networkId]
|
||||
fg := lipgloss.Color(network.FgHexColor)
|
||||
bg := lipgloss.Color(network.BgHexColor)
|
||||
|
||||
if colors.IsDarkened() {
|
||||
fg = colors.DarkenColor(fg, colors.DarkeningFactor)
|
||||
bg = colors.DarkenColor(bg, colors.DarkeningFactor)
|
||||
}
|
||||
|
||||
pings, ok := 0, false
|
||||
frequencies := state.State.Frequencies[networkId]
|
||||
@@ -86,17 +93,9 @@ func (m Model) View() string {
|
||||
|
||||
var icon lipgloss.Style
|
||||
if ok && pings != 0 {
|
||||
icon = ui.IconStyleNotif(network.Icon,
|
||||
lipgloss.Color(network.FgHexColor),
|
||||
lipgloss.Color(network.BgHexColor),
|
||||
colors.BackgroundDimmer, pings,
|
||||
)
|
||||
icon = ui.IconStyleNotif(network.Icon, fg, bg, colors.BackgroundDimmer, pings)
|
||||
} else {
|
||||
icon = ui.IconStyle(network.Icon,
|
||||
lipgloss.Color(network.FgHexColor),
|
||||
lipgloss.Color(network.BgHexColor),
|
||||
colors.BackgroundDimmer,
|
||||
)
|
||||
icon = ui.IconStyle(network.Icon, fg, bg, colors.BackgroundDimmer)
|
||||
}
|
||||
|
||||
if m.index == m.base+i {
|
||||
|
||||
Reference in New Issue
Block a user