diff --git a/modules/bar/Bar.qml b/modules/bar/Bar.qml index b9d2ee8..d46c8c3 100644 --- a/modules/bar/Bar.qml +++ b/modules/bar/Bar.qml @@ -25,11 +25,12 @@ PanelWindow { RowLayout { id: centerLayout anchors.centerIn: parent + Clock {} } RowLayout { id: rightLayout - spacing: 0 + spacing: 10 anchors.right: parent.right anchors.verticalCenter: parent.verticalCenter Volume {} diff --git a/modules/bar/Battery.qml b/modules/bar/Battery.qml index bc9a20c..2cde372 100644 --- a/modules/bar/Battery.qml +++ b/modules/bar/Battery.qml @@ -17,6 +17,7 @@ Item { } Text { id: batteryText + font.weight: 900 font.family: Appearance.font font.pixelSize: Appearance.fontSize color: Colors.foreground diff --git a/modules/bar/Clock.qml b/modules/bar/Clock.qml index 4f278c7..4427ce9 100644 --- a/modules/bar/Clock.qml +++ b/modules/bar/Clock.qml @@ -3,10 +3,23 @@ import Quickshell Item { id: root - implicitWidth: clockText.text.length + 10 + // FIX: Real pixels please! + implicitWidth: clockText.implicitWidth + implicitHeight: 30 + Text { id: clockText anchors.centerIn: parent - text: "sigma balls" + font.weight: 900 + font.family: Appearance.font + font.pixelSize: Appearance.fontSize + color: Colors.foreground + + text: Qt.formatDateTime(clock.date, "hh:mm") + + SystemClock { + id: clock + precision: SystemClock.Minutes + } } } diff --git a/modules/bar/Volume.qml b/modules/bar/Volume.qml index 587b7a7..d2e9787 100644 --- a/modules/bar/Volume.qml +++ b/modules/bar/Volume.qml @@ -70,6 +70,7 @@ Item { PwObjectTracker { objects: Pipewire.defaultAudioSink } + font.weight: 900 color: Colors.foreground font.family: Appearance.font font.pixelSize: Appearance.fontSize diff --git a/modules/bar/Workspaces.qml b/modules/bar/Workspaces.qml index f4ff34c..df123dc 100644 --- a/modules/bar/Workspaces.qml +++ b/modules/bar/Workspaces.qml @@ -13,13 +13,10 @@ Item { Repeater { id: workspaceRepeater - model: Hyprland.workspaces - Rectangle { - id: workspaceCircle - width: 16 - height: 16 - radius: 20 + width: 18 + height: 18 + radius: 10 //color: modelData.active ? myPallete.accent : myPallete.window color: modelData.active ? Colors.foreground : "transparent" @@ -33,6 +30,7 @@ Item { color: modelData.active ? Colors.background : Colors.foreground // Set contrasting color for workspace number } } + model: Hyprland.workspaces } } } diff --git a/modules/wallpaper/Wallpaper.qml b/modules/wallpaper/Wallpaper.qml new file mode 100644 index 0000000..d54d2b3 --- /dev/null +++ b/modules/wallpaper/Wallpaper.qml @@ -0,0 +1,36 @@ +import QtQuick +import Quickshell +import Quickshell.Wayland + +WlrLayershell { + id: root + + // 1. Send it to the bottom of the stack! + layer: WlrLayer.Background + + // 2. Stretch it to cover the ENTIRE screen + anchors { + top: true + bottom: true + left: true + right: true + } + + // 3. IMPORTANT: Tell the compositor NOT to reserve space for this. + // If you don't do this, your wallpaper might push your windows aside! + exclusionMode: ExclusionMode.Ignore + + // 4. The actual content + Image { + anchors.fill: parent + source: "/home/lucy/.walls/eoe.png" + fillMode: Image.PreserveAspectCrop + } + + // Bonus: A dark rectangle to dim the wallpaper slightly? + Rectangle { + anchors.fill: parent + color: "black" + opacity: 0.2 + } +} diff --git a/shell.qml b/shell.qml index 5aff166..56b4ccf 100644 --- a/shell.qml +++ b/shell.qml @@ -1,4 +1,22 @@ //@ pragma UseQApplication import qs.modules.bar +import qs.modules.wallpaper +import Quickshell -Bar {} +Scope { + Variants { + id: wallpaperVariants + model: Quickshell.screens + delegate: Wallpaper { + screen: modelData + } + } + Variants { + id: barVariants + model: Quickshell.screens + + delegate: Bar { + screen: modelData + } + } +}