1
0
mirror of https://github.com/AvengeMedia/DankMaterialShell.git synced 2026-08-07 05:58:28 -04:00

feat(settings): implement greeter & lockscreen customization options

- New option to customize your font & wallpaper on the LockScreen
- New floating sync button if missed to explicitly sync on greeter changes
This commit is contained in:
purian23
2026-07-02 17:13:18 -04:00
parent 957020c9ea
commit 597ba597e5
9 changed files with 372 additions and 221 deletions
+16 -10
View File
@@ -218,18 +218,20 @@ var SPEC = {
centeringMode: { def: "index" },
clockDateFormat: { def: "" },
lockDateFormat: { def: "" },
greeterRememberLastSession: { def: true },
greeterRememberLastUser: { def: true },
greeterRememberLastSession: { def: true, onChange: "markGreeterSyncPending" },
greeterRememberLastUser: { def: true, onChange: "markGreeterSyncPending" },
greeterAutoLogin: { def: false, onChange: "scheduleGreeterAutoLoginSync" },
greeterEnableFprint: { def: false, onChange: "scheduleAuthApply" },
greeterEnableU2f: { def: false, onChange: "scheduleAuthApply" },
greeterWallpaperPath: { def: "" },
greeterUse24HourClock: { def: true },
greeterShowSeconds: { def: false },
greeterPadHours12Hour: { def: false },
greeterLockDateFormat: { def: "" },
greeterFontFamily: { def: "" },
greeterWallpaperFillMode: { def: "" },
greeterWallpaperPath: { def: "", onChange: "markGreeterSyncPending" },
greeterUse24HourClock: { def: true, onChange: "markGreeterSyncPending" },
greeterShowSeconds: { def: false, onChange: "markGreeterSyncPending" },
greeterPadHours12Hour: { def: false, onChange: "markGreeterSyncPending" },
greeterLockDateFormat: { def: "", onChange: "markGreeterSyncPending" },
greeterFontFamily: { def: "", onChange: "markGreeterSyncPending" },
greeterWallpaperFillMode: { def: "", onChange: "markGreeterSyncPending" },
greeterSyncPending: { def: false },
greeterSyncBaseline: { def: {} },
mediaSize: { def: 1 },
appLauncherViewMode: { def: "list" },
@@ -453,6 +455,9 @@ var SPEC = {
lockScreenVideoEnabled: { def: false },
lockScreenVideoPath: { def: "" },
lockScreenVideoCycling: { def: false },
lockScreenWallpaperPath: { def: "" },
lockScreenWallpaperFillMode: { def: "" },
lockScreenFontFamily: { def: "" },
hideBrightnessSlider: { def: false },
notificationTimeoutLow: { def: 5000 },
@@ -659,10 +664,11 @@ function getValidKeys() {
function set(root, key, value, saveFn, hooks) {
if (!(key in SPEC)) return;
if (value === undefined || value === null) value = SPEC[key].def;
var oldValue = root[key];
root[key] = value;
var hookName = SPEC[key].onChange;
if (hookName && hooks && hooks[hookName]) {
hooks[hookName](root);
hooks[hookName](root, key, oldValue);
}
saveFn();
}