1
0
mirror of https://github.com/AvengeMedia/DankMaterialShell.git synced 2026-01-24 21:42:51 -05:00

DankDash: Replace CentCom center with a new widget

This commit is contained in:
bbedward
2025-09-09 20:00:31 -04:00
parent 1c7d8a55f3
commit a67a6c7c1c
26 changed files with 3361 additions and 1818 deletions

View File

@@ -6,7 +6,6 @@ import qs.Widgets
Rectangle {
id: root
property date currentDate: new Date()
property bool compactMode: false
property string section: "center"
property var popupTarget: null
@@ -28,9 +27,6 @@ Rectangle {
const baseColor = clockMouseArea.containsMouse ? Theme.primaryHover : Theme.surfaceTextHover
return Qt.rgba(baseColor.r, baseColor.g, baseColor.b, baseColor.a * Theme.widgetTransparency)
}
Component.onCompleted: {
root.currentDate = systemClock.date
}
Row {
id: clockRow
@@ -41,7 +37,7 @@ Rectangle {
StyledText {
text: {
const format = SettingsData.use24HourClock ? "HH:mm" : "h:mm AP"
return root.currentDate.toLocaleTimeString(Qt.locale(), format)
return systemClock?.date?.toLocaleTimeString(Qt.locale(), format)
}
font.pixelSize: Theme.fontSizeMedium - 1
color: Theme.surfaceText
@@ -59,10 +55,10 @@ Rectangle {
StyledText {
text: {
if (SettingsData.clockDateFormat && SettingsData.clockDateFormat.length > 0) {
return root.currentDate.toLocaleDateString(Qt.locale(), SettingsData.clockDateFormat)
return systemClock?.date?.toLocaleDateString(Qt.locale(), SettingsData.clockDateFormat)
}
return root.currentDate.toLocaleDateString(Qt.locale(), "ddd d")
return systemClock?.date?.toLocaleDateString(Qt.locale(), "ddd d")
}
font.pixelSize: Theme.fontSizeMedium - 1
color: Theme.surfaceText
@@ -73,9 +69,7 @@ Rectangle {
SystemClock {
id: systemClock
precision: SystemClock.Seconds
onDateChanged: root.currentDate = systemClock.date
}
MouseArea {

View File

@@ -161,7 +161,7 @@ PanelWindow {
"loader": appDrawerLoader,
"prop": "shouldBeVisible"
}, {
"loader": centcomPopoutLoader,
"loader": dankDashPopoutLoader,
"prop": "shouldBeVisible"
}, {
"loader": processListPopoutLoader,
@@ -415,7 +415,7 @@ PanelWindow {
property var centerWidgets: []
property int totalWidgets: 0
property real totalWidth: 0
property real spacing: SettingsData.topBarNoBackground ? 2 : Theme.spacingS
property real spacing: SettingsData.topBarNoBackground ? 2 : Theme.spacingXS
function updateLayout() {
if (width <= 0 || height <= 0 || !visible) {
@@ -678,14 +678,15 @@ PanelWindow {
widgetHeight: root.widgetHeight
section: topBarContent.getWidgetSection(parent) || "center"
popupTarget: {
centcomPopoutLoader.active = true
return centcomPopoutLoader.item
dankDashPopoutLoader.active = true
return dankDashPopoutLoader.item
}
parentScreen: root.screen
onClockClicked: {
centcomPopoutLoader.active = true
if (centcomPopoutLoader.item) {
centcomPopoutLoader.item.calendarVisible = !centcomPopoutLoader.item.calendarVisible
dankDashPopoutLoader.active = true
if (dankDashPopoutLoader.item) {
dankDashPopoutLoader.item.calendarVisible = !dankDashPopoutLoader.item.calendarVisible
dankDashPopoutLoader.item.currentTabIndex = 0 // Overview tab
}
}
}
@@ -700,14 +701,15 @@ PanelWindow {
widgetHeight: root.widgetHeight
section: topBarContent.getWidgetSection(parent) || "center"
popupTarget: {
centcomPopoutLoader.active = true
return centcomPopoutLoader.item
dankDashPopoutLoader.active = true
return dankDashPopoutLoader.item
}
parentScreen: root.screen
onClicked: {
centcomPopoutLoader.active = true
if (centcomPopoutLoader.item) {
centcomPopoutLoader.item.calendarVisible = !centcomPopoutLoader.item.calendarVisible
dankDashPopoutLoader.active = true
if (dankDashPopoutLoader.item) {
dankDashPopoutLoader.item.calendarVisible = !dankDashPopoutLoader.item.calendarVisible
dankDashPopoutLoader.item.currentTabIndex = 1 // Media tab
}
}
}
@@ -721,14 +723,15 @@ PanelWindow {
widgetHeight: root.widgetHeight
section: topBarContent.getWidgetSection(parent) || "center"
popupTarget: {
centcomPopoutLoader.active = true
return centcomPopoutLoader.item
dankDashPopoutLoader.active = true
return dankDashPopoutLoader.item
}
parentScreen: root.screen
onClicked: {
centcomPopoutLoader.active = true
if (centcomPopoutLoader.item) {
centcomPopoutLoader.item.calendarVisible = !centcomPopoutLoader.item.calendarVisible
dankDashPopoutLoader.active = true
if (dankDashPopoutLoader.item) {
dankDashPopoutLoader.item.calendarVisible = !dankDashPopoutLoader.item.calendarVisible
dankDashPopoutLoader.item.currentTabIndex = 2 // Weather tab
}
}
}