1
0
mirror of https://github.com/AvengeMedia/DankMaterialShell.git synced 2026-04-04 12:52:06 -04:00
Files
DankMaterialShell/quickshell/Modules/DankDash/OverviewTab.qml
Triệu Kha e18587c471 feat(calendar): add show week number option (#1990)
* increase DankDashPopout width to accommodate week number column

* add getWeekNumber function

* add week number column

* add showWeekNumber SettingsData

* add showWeekNumber SettingsSpec

* make dash popout width changes reponsively to showWeekNumber option

* complete and cleanup

* fix typo

* fix typo
2026-03-16 11:06:21 -04:00

76 lines
2.1 KiB
QML

import QtQuick
import qs.Common
import qs.Modules.DankDash.Overview
Item {
id: root
LayoutMirroring.enabled: I18n.isRtl
LayoutMirroring.childrenInherit: true
implicitWidth: SettingsData.showWeekNumber ? 736 : 700
implicitHeight: 410
signal switchToWeatherTab
signal switchToMediaTab
signal closeDash
Item {
anchors.fill: parent
// Clock - top left (narrower and shorter)
ClockCard {
x: 0
y: 0
width: parent.width * 0.2 - Theme.spacingM * 2
height: 180
}
// Weather - top middle-left (narrower)
WeatherOverviewCard {
x: SettingsData.weatherEnabled ? parent.width * 0.2 - Theme.spacingM : 0
y: 0
width: SettingsData.weatherEnabled ? parent.width * 0.3 : 0
height: 100
visible: SettingsData.weatherEnabled
onClicked: root.switchToWeatherTab()
}
// UserInfo - top middle-right (extend when weather disabled)
UserInfoCard {
x: SettingsData.weatherEnabled ? parent.width * 0.5 : parent.width * 0.2 - Theme.spacingM
y: 0
width: SettingsData.weatherEnabled ? parent.width * 0.5 : parent.width * 0.8
height: 100
}
// SystemMonitor - middle left (narrow and shorter)
SystemMonitorCard {
x: 0
y: 180 + Theme.spacingM
width: parent.width * 0.2 - Theme.spacingM * 2
height: 220
}
// Calendar - bottom middle (wider and taller)
CalendarOverviewCard {
x: parent.width * 0.2 - Theme.spacingM
y: 100 + Theme.spacingM
width: parent.width * 0.6
height: 300
onCloseDash: root.closeDash()
}
// Media - bottom right (narrow and taller)
MediaOverviewCard {
x: parent.width * 0.8
y: 100 + Theme.spacingM
width: parent.width * 0.2
height: 300
onClicked: root.switchToMediaTab()
}
}
}