1
0
mirror of https://github.com/AvengeMedia/DankMaterialShell.git synced 2026-04-09 23:32:10 -04:00

(frame): Add blur support & cleanup

This commit is contained in:
purian23
2026-03-31 21:25:51 -04:00
parent 9cde1b0b5e
commit cb195fbe90
8 changed files with 232 additions and 78 deletions

View File

@@ -14,7 +14,7 @@ import "settings/SettingsStore.js" as Store
Singleton {
id: root
readonly property int settingsConfigVersion: 10
readonly property int settingsConfigVersion: 11
readonly property bool isGreeterMode: Quickshell.env("DMS_RUN_GREETER") === "1" || Quickshell.env("DMS_RUN_GREETER") === "true"
@@ -209,18 +209,18 @@ Singleton {
onFrameColorChanged: saveSettings()
property real frameOpacity: 1.0
onFrameOpacityChanged: saveSettings()
property bool frameSyncBarColor: true
onFrameSyncBarColorChanged: saveSettings()
property var frameScreenPreferences: ["all"]
onFrameScreenPreferencesChanged: saveSettings()
property real frameBarThickness: 42
onFrameBarThicknessChanged: saveSettings()
property real frameBarSize: 40
onFrameBarSizeChanged: saveSettings()
property bool frameShowOnOverview: false
onFrameShowOnOverviewChanged: saveSettings()
property bool frameBlurEnabled: true
onFrameBlurEnabledChanged: saveSettings()
readonly property color effectiveFrameColor: {
const fc = frameColor;
if (!fc || fc === "default") return Theme.background;
if (!fc || fc === "default") return Theme.surfaceContainer;
if (fc === "primary") return Theme.primary;
if (fc === "surface") return Theme.surface;
return fc;
@@ -2012,7 +2012,7 @@ Singleton {
}
function getActiveBarThicknessForScreen(screen) {
if (frameEnabled) return frameBarThickness;
if (frameEnabled) return frameBarSize;
if (!screen) return frameThickness;
for (var i = 0; i < barConfigs.length; i++) {
var bc = barConfigs[i];

View File

@@ -556,10 +556,10 @@ var SPEC = {
frameRounding: { def: 23 },
frameColor: { def: "" },
frameOpacity: { def: 1.0 },
frameSyncBarColor: { def: true },
frameScreenPreferences: { def: ["all"] },
frameBarThickness: { def: 42 },
frameShowOnOverview: { def: false }
frameBarSize: { def: 40 },
frameShowOnOverview: { def: false },
frameBlurEnabled: { def: true }
};
function getValidKeys() {

View File

@@ -248,39 +248,8 @@ function migrateToVersion(obj, targetVersion) {
settings.configVersion = 6;
}
if (currentVersion < 7) {
console.info("Migrating settings from version", currentVersion, "to version 7");
if (settings.frameEnabled === undefined) settings.frameEnabled = false;
if (settings.frameThickness === undefined) settings.frameThickness = 16;
if (settings.frameRounding === undefined) settings.frameRounding = 23;
if (settings.frameColor === undefined) settings.frameColor = "#2a2a2a";
if (settings.frameOpacity === undefined) settings.frameOpacity = 1.0;
if (settings.frameSyncBarColor === undefined) settings.frameSyncBarColor = true;
if (settings.frameScreenPreferences === undefined) settings.frameScreenPreferences = ["all"];
settings.configVersion = 7;
}
if (currentVersion < 8) {
console.info("Migrating settings from version", currentVersion, "to version 8");
if (settings.frameBarThickness === undefined) settings.frameBarThickness = 42;
settings.configVersion = 8;
}
if (currentVersion < 9) {
console.info("Migrating settings from version", currentVersion, "to version 9");
if (settings.frameShowOnOverview === undefined) settings.frameShowOnOverview = false;
settings.configVersion = 9;
}
// v10 migration — Session 5
if (currentVersion < 10) {
settings.configVersion = 10;
if (currentVersion < 11) {
settings.configVersion = 11;
}
return settings;