diff options
Diffstat (limited to 'home-configuration/config')
| -rw-r--r-- | home-configuration/config/niri/config.kdl | 1 | ||||
| -rw-r--r-- | home-configuration/config/quickshell/config.js | 4 | ||||
| -rw-r--r-- | home-configuration/config/quickshell/shell.qml | 127 |
3 files changed, 89 insertions, 43 deletions
diff --git a/home-configuration/config/niri/config.kdl b/home-configuration/config/niri/config.kdl index f91c17f..7864ed1 100644 --- a/home-configuration/config/niri/config.kdl +++ b/home-configuration/config/niri/config.kdl @@ -2,6 +2,7 @@ spawn-at-startup "waybar" spawn-at-startup "awww-daemon" spawn-at-startup "awww" "img" "/home/coast/Wallpapers/nature2art.png" spawn-sh-at-startup "XDG_DATA_DIRS=/etc/profiles/per-user/coast/share:/run/current-system/sw/share:$HOME/.nix-profile/share:$XDG_DATA_DIRS" +spawn-at-startup "qs" input { mod-key "Super" diff --git a/home-configuration/config/quickshell/config.js b/home-configuration/config/quickshell/config.js index 0983a40..08d6518 100644 --- a/home-configuration/config/quickshell/config.js +++ b/home-configuration/config/quickshell/config.js @@ -1,6 +1,6 @@ const colors = { - bg: "#1a1b26", - bgDark: "#16161a", + bg: "#121212", + bgDark: "#121212", fg: "#cdd6f4", muted: "#444b6a", cyan: "#d3869b", diff --git a/home-configuration/config/quickshell/shell.qml b/home-configuration/config/quickshell/shell.qml index a1356b1..c9425cd 100644 --- a/home-configuration/config/quickshell/shell.qml +++ b/home-configuration/config/quickshell/shell.qml @@ -22,7 +22,7 @@ Scope { PanelWindow { anchors { top: true; right: true } - margins { top: 56; right: 12 } + margins { top: 12; right: 12 } implicitWidth: 380 implicitHeight: Math.max(1, column.implicitHeight) @@ -41,19 +41,24 @@ Scope { id: card required property var modelData + Layout.fillWidth: true + implicitHeight: cardLayout.implicitHeight + 20 + + radius: 12 + color: Config.colors.bgDark + border.color: hoverArea.containsMouse ? Config.colors.purple : "transparent" + border.width: 1 + + Behavior on border.color { ColorAnimation { duration: 150 } } + Timer { - running: card.modelData.urgency !== NotificationUrgency.Critical + id: dismissTimer + running: card.modelData.urgency !== NotificationUrgency.Critical && !hoverArea.containsMouse interval: Config.notifications.timeout repeat: false onTriggered: card.modelData.dismiss() } - Layout.fillWidth: true - implicitHeight: layout.implicitHeight + 20 - - radius: 12 - color: Config.colors.bgDark - Rectangle { anchors.left: parent.left anchors.top: parent.top @@ -65,57 +70,97 @@ Scope { : Config.colors.purple } - RowLayout { - id: layout + ColumnLayout { + id: cardLayout anchors.fill: parent anchors.margins: 10 anchors.leftMargin: 18 - spacing: 10 - - Image { - Layout.preferredWidth: 36 - Layout.preferredHeight: 36 - Layout.alignment: Qt.AlignTop - fillMode: Image.PreserveAspectFit - visible: source.toString() !== "" - source: card.modelData.image || card.modelData.appIcon || "" - } + spacing: 8 - ColumnLayout { + RowLayout { Layout.fillWidth: true - spacing: 2 - - Text { - Layout.fillWidth: true - text: card.modelData.summary - color: Config.colors.cyan - - font.family: Config.bar.fontFamily - font.pixelSize: Config.bar.fontSize - font.bold: true - - elide: Text.ElideRight + spacing: 10 + + Image { + Layout.preferredWidth: 36 + Layout.preferredHeight: 36 + Layout.alignment: Qt.AlignTop + fillMode: Image.PreserveAspectFit + visible: source.toString() !== "" + source: card.modelData.image || card.modelData.appIcon || "" } - Text { + ColumnLayout { Layout.fillWidth: true - visible: text !== "" - text: card.modelData.body - color: Config.colors.fg - - font.family: Config.bar.fontFamily - font.pixelSize: Config.bar.fontSize - 1 + spacing: 2 + + Text { + Layout.fillWidth: true + text: card.modelData.summary + color: Config.colors.cyan + font.family: Config.bar.fontFamily + font.pixelSize: Config.bar.fontSize + font.bold: true + elide: Text.ElideRight + } + + Text { + Layout.fillWidth: true + visible: text !== "" + text: card.modelData.body + color: Config.colors.fg + font.family: Config.bar.fontFamily + font.pixelSize: Config.bar.fontSize - 1 + wrapMode: Text.WordWrap + maximumLineCount: 4 + elide: Text.ElideRight + } + } + } - wrapMode: Text.WordWrap + RowLayout { + Layout.fillWidth: true + visible: card.modelData.actions.length > 0 + spacing: 8 + + Repeater { + model: card.modelData.actions + + delegate: Rectangle { + required property var modelData + + Layout.fillWidth: true + Layout.preferredHeight: 26 + radius: 6 + color: actionArea.containsMouse ? Config.colors.purple : Qt.rgba(1, 1, 1, 0.05) + + Text { + anchors.centerIn: parent + text: parent.modelData.text + color: Config.colors.fg + font.family: Config.bar.fontFamily + font.pixelSize: Config.bar.fontSize - 2 + } + + MouseArea { + id: actionArea + anchors.fill: parent + hoverEnabled: true + cursorShape: Qt.PointingHandCursor + onClicked: card.modelData.invokeAction(parent.modelData.identifier) + } + } } } } MouseArea { + id: hoverArea anchors.fill: parent hoverEnabled: true cursorShape: Qt.PointingHandCursor onClicked: card.modelData.dismiss() + z: -1 } } } |
