1
0
mirror of https://github.com/AvengeMedia/DankMaterialShell.git synced 2026-01-27 15:02:50 -05:00

locale-aware clock and date formatting

This commit is contained in:
bbedward
2025-09-02 13:37:33 -04:00
parent 3eddef40fb
commit 544a17b0db
5 changed files with 71 additions and 29 deletions

View File

@@ -50,8 +50,8 @@ Singleton {
property bool focusedWindowCompactMode: false
property bool runningAppsCompactMode: true
property bool runningAppsCurrentWorkspace: false
property string clockDateFormat: "ddd d"
property string lockDateFormat: "dddd, MMMM d"
property string clockDateFormat: ""
property string lockDateFormat: ""
property int mediaSize: 1
property var topBarLeftWidgets: ["launcherButton", "workspaceSwitcher", "focusedWindow"]
property var topBarCenterWidgets: ["music", "clock", "weather"]
@@ -107,6 +107,22 @@ Singleton {
signal forceTopBarLayoutRefresh
signal widgetDataChanged
signal workspaceIconsUpdated
function getEffectiveTimeFormat() {
if (use24HourClock) {
return Locale.ShortFormat
} else {
return "h:mm AP"
}
}
function getEffectiveClockDateFormat() {
return clockDateFormat && clockDateFormat.length > 0 ? clockDateFormat : "ddd d"
}
function getEffectiveLockDateFormat() {
return lockDateFormat && lockDateFormat.length > 0 ? lockDateFormat : Locale.LongFormat
}
function initializeListModels() {
// ! Hack-ish to add all properties to the listmodel once
@@ -224,9 +240,9 @@ Singleton {
runningAppsCurrentWorkspace = settings.runningAppsCurrentWorkspace
!== undefined ? settings.runningAppsCurrentWorkspace : false
clockDateFormat = settings.clockDateFormat
!== undefined ? settings.clockDateFormat : "ddd d"
!== undefined ? settings.clockDateFormat : ""
lockDateFormat = settings.lockDateFormat
!== undefined ? settings.lockDateFormat : "dddd, MMMM d"
!== undefined ? settings.lockDateFormat : ""
mediaSize = settings.mediaSize !== undefined ? settings.mediaSize : (settings.mediaCompactMode !== undefined ? (settings.mediaCompactMode ? 0 : 1) : 1)
if (settings.topBarWidgetOrder) {
topBarLeftWidgets = settings.topBarWidgetOrder.filter(w => {
@@ -474,12 +490,12 @@ Singleton {
}
function setClockDateFormat(format) {
clockDateFormat = format
clockDateFormat = format || ""
saveSettings()
}
function setLockDateFormat(format) {
lockDateFormat = format
lockDateFormat = format || ""
saveSettings()
}