mirror of
https://github.com/TermoraDev/termora.git
synced 2026-01-15 18:02:58 +08:00
feat: support Dracula
This commit is contained in:
@@ -8,6 +8,51 @@ import com.formdev.flatlaf.FlatPropertiesLaf
|
|||||||
import com.formdev.flatlaf.util.SystemInfo
|
import com.formdev.flatlaf.util.SystemInfo
|
||||||
import java.util.*
|
import java.util.*
|
||||||
|
|
||||||
|
class DraculaLaf : FlatPropertiesLaf("Dracula", Properties().apply {
|
||||||
|
putAll(
|
||||||
|
mapOf(
|
||||||
|
"@baseTheme" to "dark",
|
||||||
|
"@background" to "#282935",
|
||||||
|
"@windowText" to "#eaeaea",
|
||||||
|
)
|
||||||
|
)
|
||||||
|
}), ColorTheme {
|
||||||
|
override fun getColor(color: TerminalColor): Int {
|
||||||
|
return when (color) {
|
||||||
|
TerminalColor.Basic.BACKGROUND -> 0x282935
|
||||||
|
TerminalColor.Basic.FOREGROUND -> 0xeaeaea
|
||||||
|
TerminalColor.Basic.SELECTION_BACKGROUND -> 0x56596b
|
||||||
|
TerminalColor.Basic.SELECTION_FOREGROUND -> 0xfeffff
|
||||||
|
TerminalColor.Basic.HYPERLINK -> 0x255ab4
|
||||||
|
|
||||||
|
TerminalColor.Cursor.BACKGROUND -> 0xc7c7c7
|
||||||
|
|
||||||
|
TerminalColor.Find.BACKGROUND -> 0xffff00
|
||||||
|
TerminalColor.Find.FOREGROUND -> 0x282935
|
||||||
|
|
||||||
|
TerminalColor.Normal.BLACK -> 0
|
||||||
|
TerminalColor.Normal.RED -> 0xef766d
|
||||||
|
TerminalColor.Normal.GREEN -> 0x88f397
|
||||||
|
TerminalColor.Normal.YELLOW -> 0xf4f8a7
|
||||||
|
TerminalColor.Normal.BLUE -> 0xc4a9f4
|
||||||
|
TerminalColor.Normal.MAGENTA -> 0xf297cd
|
||||||
|
TerminalColor.Normal.CYAN -> 0xaceafb
|
||||||
|
TerminalColor.Normal.WHITE -> 0xc7c7c7
|
||||||
|
|
||||||
|
TerminalColor.Bright.BLACK -> 0x676767
|
||||||
|
TerminalColor.Bright.RED -> 0xef766d
|
||||||
|
TerminalColor.Bright.GREEN -> 0x88f397
|
||||||
|
TerminalColor.Bright.YELLOW -> 0xf4f8a7
|
||||||
|
TerminalColor.Bright.BLUE -> 0xc4a9f4
|
||||||
|
TerminalColor.Bright.MAGENTA -> 0xf297cd
|
||||||
|
TerminalColor.Bright.CYAN -> 0xaceafb
|
||||||
|
TerminalColor.Bright.WHITE -> 0xfeffff
|
||||||
|
|
||||||
|
else -> Int.MAX_VALUE
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
class LightLaf : FlatLightLaf(), ColorTheme {
|
class LightLaf : FlatLightLaf(), ColorTheme {
|
||||||
override fun getColor(color: TerminalColor): Int {
|
override fun getColor(color: TerminalColor): Int {
|
||||||
@@ -163,7 +208,7 @@ class TermiusDarkLaf : FlatPropertiesLaf("Termius Dark", Properties().apply {
|
|||||||
TerminalColor.Basic.SELECTION_BACKGROUND,
|
TerminalColor.Basic.SELECTION_BACKGROUND,
|
||||||
TerminalColor.Cursor.BACKGROUND -> 0x21b568
|
TerminalColor.Cursor.BACKGROUND -> 0x21b568
|
||||||
|
|
||||||
TerminalColor.Basic.SELECTION_FOREGROUND ->0
|
TerminalColor.Basic.SELECTION_FOREGROUND -> 0
|
||||||
|
|
||||||
TerminalColor.Basic.FOREGROUND -> 0x21b568
|
TerminalColor.Basic.FOREGROUND -> 0x21b568
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,7 @@ class ThemeManager private constructor() {
|
|||||||
val themes = mapOf(
|
val themes = mapOf(
|
||||||
"Light" to LightLaf::class.java.name,
|
"Light" to LightLaf::class.java.name,
|
||||||
"Dark" to DarkLaf::class.java.name,
|
"Dark" to DarkLaf::class.java.name,
|
||||||
|
"Dracula" to DraculaLaf::class.java.name,
|
||||||
"iTerm2 Dark" to iTerm2DarkLaf::class.java.name,
|
"iTerm2 Dark" to iTerm2DarkLaf::class.java.name,
|
||||||
"Termius Dark" to TermiusDarkLaf::class.java.name,
|
"Termius Dark" to TermiusDarkLaf::class.java.name,
|
||||||
"Termius Light" to TermiusLightLaf::class.java.name,
|
"Termius Light" to TermiusLightLaf::class.java.name,
|
||||||
|
|||||||
Reference in New Issue
Block a user