mirror of
https://github.com/noctalia-dev/noctalia-shell.git
synced 2026-05-11 17:08:27 +08:00
settings: when changed externally refresh bar widgets
This commit is contained in:
@@ -36,9 +36,9 @@ Singleton {
|
||||
readonly property string defaultVideosDirectory: Quickshell.env("HOME") + "/Videos"
|
||||
readonly property string defaultWallpapersDirectory: Quickshell.env("HOME") + "/Pictures/Wallpapers"
|
||||
|
||||
// Signal emitted when settings are loaded after startupcale changes
|
||||
signal settingsLoaded
|
||||
signal settingsSaved
|
||||
signal settingsReloaded
|
||||
|
||||
// -----------------------------------------------------
|
||||
// -----------------------------------------------------
|
||||
@@ -121,6 +121,9 @@ Singleton {
|
||||
root.settingsLoaded();
|
||||
|
||||
upgradeSettings();
|
||||
} else {
|
||||
Logger.d("Settings", "Settings reloaded from external file change");
|
||||
root.settingsReloaded();
|
||||
}
|
||||
}
|
||||
onLoadFailed: function (error) {
|
||||
|
||||
@@ -143,6 +143,16 @@ Singleton {
|
||||
Logger.i("BarService", "Service started");
|
||||
}
|
||||
|
||||
// Bump widgetsRevision when settings are reloaded from an external file change
|
||||
// so Bar.qml re-syncs its widget ListModels with the updated widget configuration
|
||||
Connections {
|
||||
target: Settings
|
||||
function onSettingsReloaded() {
|
||||
Logger.d("BarService", "Settings reloaded externally, bumping widgetsRevision");
|
||||
root.widgetsRevision++;
|
||||
}
|
||||
}
|
||||
|
||||
// update bar's hidden state when mode changes
|
||||
Connections {
|
||||
target: Settings.data.bar
|
||||
|
||||
Reference in New Issue
Block a user