fix(w-engine): sync palette when restoring wallpaper on startup

The startup restore relaunched linux-wallpaperengine for the last
selected wallpaper but never re-applied the still that Noctalia derives
its palette from, so colors after login came from whatever wallpaper the
shell restored on its own. Every other path that puts a wallpaper up
pairs launch() with syncPalette(); this one now does too.

Switching wallpapers away and back was the only way to correct it, since
that runs apply().
This commit is contained in:
jacob-sabella
2026-08-04 17:48:42 -05:00
parent f0134c2938
commit e677f954c5
+5 -1
View File
@@ -791,13 +791,17 @@ publishStatus()
noctalia.runAsync(
"pkill linux-wallpaper 2>/dev/null; sleep 1; pkill -KILL linux-wallpaper 2>/dev/null; true",
function()
-- Bring back whatever was playing before the reload, cycle included.
-- Bring back whatever was playing before the reload, cycle included. The
-- palette is re-synced alongside the process: the shell restores its own
-- wallpaper on login, which drops the still we set for the live scene and
-- leaves the colors from whatever it picked instead.
for _, output in ipairs(noctalia.outputs()) do
local name = output.name
local id = data.current[name]
if type(id) == "string" and id ~= "" then
elapsed[name] = 0
launch(name, id)
syncPalette(name, id)
end
end
publishStatus()