diff options
| author | Aargh Rai <aargh.rai+git@gmail.com> | 2026-07-24 17:07:12 +0530 |
|---|---|---|
| committer | Aargh Rai <aargh.rai+git@gmail.com> | 2026-07-24 17:07:40 +0530 |
| commit | 4d4f5f6b1028ff65322a2a783dcf4363ea25389c (patch) | |
| tree | e020f751675e6dda76fdfc11a0801f0d46bd6aa6 /quickshell | |
| parent | ec9e16502d94555f139c5045897e7f7faab08c47 (diff) | |
when you have when, why use a calender
and a keybind of hide the navbar, is it called a nav bar? idk, hide the
bar via keyboard ig
Diffstat (limited to 'quickshell')
| -rw-r--r-- | quickshell/Calendar.qml | 150 | ||||
| -rw-r--r-- | quickshell/shell.qml | 56 |
2 files changed, 10 insertions, 196 deletions
diff --git a/quickshell/Calendar.qml b/quickshell/Calendar.qml deleted file mode 100644 index 1ad3c15..0000000 --- a/quickshell/Calendar.qml +++ /dev/null @@ -1,150 +0,0 @@ -import QtQuick -import QtQuick.Layouts -import Quickshell -import Quickshell.Io - -Rectangle { - id: calendarRoot - - color: shellRoot.black - antialiasing: true - focus: true - - property bool isVisible: false - property int monthOffset: 0 - - signal requestClose() - Keys.onEscapePressed: { - monthOffset = 0; - requestClose() - } - Keys.onPressed: (event) => { - if (event.key == Qt.Key_Comma) { - monthOffset--; - } else if (event.key == Qt.Key_Period) { - monthOffset++; - } - } - - Column { - anchors.fill: parent - spacing: 1 - Rectangle { - width: parent.width - height: parent.height - color: shellRoot.black - - Column { - anchors.fill: parent - anchors.margins: 5 - spacing: 6 - - RowLayout { - width: parent.width - Text { - text: " <" - font.pixelSize: 20 - font.family: shellRoot.fontFamily - color: shellRoot.white - MouseArea { - anchors.fill: parent - onClicked: monthOffset--; - } - } - Item { Layout.fillWidth: true } - Text { - text: { - const now = new Date() - const monthNames = ["January", "February", "March", "April", "May", "June", - "July", "August", "September", "October", "November", "December"] - let shiftedMonth = now.getMonth() + monthOffset; - let year = now.getFullYear(); - year += Math.floor(shiftedMonth / 12); - shiftedMonth %= 12; - return monthNames[shiftedMonth] + " " + year - } - font.family: shellRoot.fontFamily - font.pixelSize: 20 - font.weight: Font.Medium - color: shellRoot.white - horizontalAlignment: Text.AlignHCenter - } - Item { Layout.fillWidth: true } - Text { - text: "> " - font.pixelSize: 20 - font.family: shellRoot.fontFamily - color: shellRoot.white - MouseArea { - anchors.fill: parent - onClicked: monthOffset++; - } - } - } - Grid { - width: parent.width - columns: 7 - columnSpacing: 1 - rowSpacing: 1 - - Repeater { - model: ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"] - - Text { - text: modelData - font.family: shellRoot.fontFamily - font.pixelSize: 15 - font.weight: Font.Medium - color: shellRoot.white - width: 50 - height: 20 - horizontalAlignment: Text.AlignHCenter - verticalAlignment: Text.AlignVCenter - } - } - Repeater { - model: 35 - - Rectangle { - width: 60 - height: 60 - - property var now: new Date() - property int currentDay: now.getDate() - property int currentMonth: (now.getMonth() + monthOffset) % 12 - property int currentYear: now.getFullYear() + Math.floor((now.getMonth() + monthOffset) / 12) - - // Calculate what day this cell represents - property var firstDay: new Date(currentYear, currentMonth, 1) - property int startOffset: firstDay.getDay() // 0 = Sunday - property int dayNumber: index - startOffset + 1 - property var lastDay: new Date(currentYear, currentMonth + 1, 0) - property int daysInMonth: lastDay.getDate() - property bool isCurrentDay: dayNumber === currentDay - property bool isValidDay: dayNumber >= 1 && dayNumber <= daysInMonth - - color: { - if (!isValidDay) return "transparent" - if (monthOffset == 0 && isCurrentDay) return shellRoot.green - return shellRoot.gray - } - - Text { - anchors.centerIn: parent - text: parent.isValidDay ? parent.dayNumber : "" - font.family: shellRoot.fontFamily - font.pixelSize: 20 - color: { - if (parent.isValidDay && parent.isCurrentDay) return shellRoot.white - if (!parent.isValidDay) return shellRoot.white - return shellRoot.white - } - font.weight: parent.isValidDay && parent.isCurrentDay ? Font.DemiBold : Font.Normal - } - } - } - } - } - } - } -} diff --git a/quickshell/shell.qml b/quickshell/shell.qml index 3ed0161..2396ea8 100644 --- a/quickshell/shell.qml +++ b/quickshell/shell.qml @@ -25,23 +25,24 @@ ShellRoot { property int fontSize: 18 property bool appLauncherVisible: false + property bool barVisible: true property bool calendarVisible: false property bool dnd: false property bool batteryInfo: false property bool blink: false GlobalShortcut { - id: launcherShortcut - name: "toggleLauncher" + id: barShortcut + name: "toggleBar" onPressed: { - appLauncherVisible = true + barVisible = !barVisible } } GlobalShortcut { - id: calendarShortcut - name: "toggleCalendar" + id: launcherShortcut + name: "toggleLauncher" onPressed: { - calendarVisible = true + appLauncherVisible = !appLauncherVisible } } GlobalShortcut { @@ -56,6 +57,8 @@ ShellRoot { model: Quickshell.screens PanelWindow { id: root + // don't render this if shell.navVisible is false + visible: shellRoot.barVisible property int cpuUsage: 0 property int lastCpuTotal: 0 @@ -95,6 +98,7 @@ ShellRoot { anchors.leftMargin: 10 anchors.rightMargin: 10 + Workspace {} Item { Layout.fillWidth: true } Radio {} @@ -153,46 +157,6 @@ ShellRoot { model: Quickshell.screens PanelWindow { - visible: shellRoot.calendarVisible - - anchors { - top: true - left: true - } - - margins { - top: 5 - left: Screen.width - 435 - 5 - } - - implicitWidth: 435 - implicitHeight: 370 - - color: "transparent" - exclusiveZone: 0 - - WlrLayershell.layer: WlrLayer.Overlay - WlrLayershell.keyboardFocus: WlrKeyboardFocus.OnDemand - - Behavior on height { - NumberAnimation { duration: 200; easing.type: Easing.OutCubic } - } - - Calendar { - anchors.fill: parent - isVisible: shellRoot.calendarVisible - - onRequestClose: { - shellRoot.calendarVisible = false - } - } - } - } - - Variants { - model: Quickshell.screens - - PanelWindow { visible: shellRoot.batteryInfo anchors { |
