From 9a7cf1242d296dbdb9c03df48ab09054960295aa Mon Sep 17 00:00:00 2001 From: Leander Scherer Date: Mon, 18 May 2026 21:48:24 +0200 Subject: feat(quickshell): basic bar, tray, notification --- modules/system/quickshell/ControlTile.qml | 50 +++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 modules/system/quickshell/ControlTile.qml (limited to 'modules/system/quickshell/ControlTile.qml') diff --git a/modules/system/quickshell/ControlTile.qml b/modules/system/quickshell/ControlTile.qml new file mode 100644 index 0000000..2c8e0a6 --- /dev/null +++ b/modules/system/quickshell/ControlTile.qml @@ -0,0 +1,50 @@ +import QtQuick +import QtQuick.Layouts +import Quickshell + +Item { + id: root + property string icon: "" + property string label: "" + property bool active: false + property var clickHandler: null + + Layout.fillWidth: true + Layout.preferredHeight: 64 + + Squircle { + anchors.fill: parent + cornerRadius: 16 + fillColor: root.active ? Theme.accent : Theme.surface + + MouseArea { + anchors.fill: parent + hoverEnabled: true + onClicked: { + if (root.clickHandler) root.clickHandler() + } + } + + RowLayout { + anchors.fill: parent + anchors.margins: 12 + spacing: 12 + + IconCircle { + source: root.icon + active: root.active + } + + Text { + text: root.label + color: root.active ? Theme.bg : Theme.text + font.family: Theme.mainFont + font.pixelSize: 11 + font.weight: Font.Medium + elide: Text.ElideRight + Layout.maximumWidth: 80 + visible: root.label !== "" + } + } + } +} \ No newline at end of file -- cgit v1.3.1