61 lines
3.1 KiB
QML
61 lines
3.1 KiB
QML
// Theme.qml - global palette & dimensions
|
|
// QuickShell auto-discovers this; access from any file as `Theme.colorN` etc.
|
|
pragma Singleton
|
|
import Quickshell
|
|
import QtQuick
|
|
|
|
Singleton {
|
|
|
|
function setColorAlpha(color, alpha) {
|
|
return Qt.hsla(color.hslHue, color.hslSaturation, color.hslLightness, alpha)
|
|
}
|
|
|
|
// ── Wallust palette ──────────────────────────────────────
|
|
readonly property color background: Colors.foreground
|
|
readonly property color foreground: Colors.background
|
|
readonly property color color0: Colors.color0
|
|
readonly property color color1: Colors.color1
|
|
readonly property color color2: Colors.color2
|
|
readonly property color color3: Colors.color3
|
|
readonly property color color4: Colors.color4
|
|
readonly property color color5: Colors.color5
|
|
readonly property color color6: Colors.color6
|
|
readonly property color color7: Colors.color7
|
|
|
|
readonly property color color8: Colors.color8
|
|
// ── Derived / semantic ────────────────────────────────────
|
|
readonly property color pill: setColorAlpha(Colors.background, 0.8)
|
|
readonly property color pillText: setColorAlpha(Colors.foreground, 1)
|
|
readonly property color pillHover: color2
|
|
readonly property color wsActive: color3
|
|
readonly property color wsUrgent: color1
|
|
|
|
// ── Typography ────────────────────────────────────────────
|
|
readonly property string fontSans: "Fira Sans Condensed"
|
|
readonly property string fontMono: "FiraCode Nerd Font"
|
|
readonly property int fontSize: 11
|
|
readonly property int fontSizeSecondary: 10
|
|
|
|
// ── Bar geometry ─────────────────────────────────────────
|
|
readonly property int barHeight: 24
|
|
readonly property int barPadding: 2
|
|
readonly property int radius: 5
|
|
readonly property int pillPadH: 10
|
|
readonly property int spacing: 4
|
|
|
|
// ── Popup ───────────────────────────────────────────────
|
|
readonly property color popupBackground: setColorAlpha(Colors.background, 0.75)
|
|
readonly property int popupBorderWidth: 0
|
|
readonly property color popupBorderColor: setColorAlpha(Colors.foreground, 0.1)
|
|
readonly property int popupPadding: 10
|
|
readonly property double popupOpacity: 0.7
|
|
|
|
// ── Animations ───────────────────────────────────────────
|
|
readonly property int cavaDissapearTime: 500
|
|
readonly property int workspaceSlideTime: 250
|
|
readonly property int popupAutoHideDelay: 500
|
|
|
|
// ── Other constants ───────────────────────────────────────
|
|
readonly property int titleLength: 75
|
|
}
|