fix(theme): Theme aus den wirksamen statt den rohen Einstellungen anwenden
initCalendar baute mit mergeEffective() korrekt die wirksamen Einstellungen zusammen, benutzte danach aber die rohe Server-Antwort zum Anwenden: applyTheme(settings) statt applyTheme(state.settings) Fuer jede Einstellung, deren Sync-Flag aus ist, ist der wirksame Wert laut effectiveValue() der browser-lokale — der wurde damit stillschweigend ignoriert. Die Einstellungstabelle zeigte also einen Wert an, waehrend die Oberflaeche einen anderen benutzte. Derselbe Fehler bei setLang: die Zeile mit dem wirksamen Wert wurde wenige Zeilen spaeter vom rohen Server-Wert ueberschrieben. Die doppelte Zuweisung faellt weg, die richtige bleibt. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
6b7317b4e0
commit
aaecfc435d
@@ -153,9 +153,11 @@ export async function initCalendar() {
|
|||||||
// initial fetchAndRender) so a reload reopens settings instead of stripping it.
|
// initial fetchAndRender) so a reload reopens settings instead of stripping it.
|
||||||
uiSettingsOpen = urlState.settings === true;
|
uiSettingsOpen = urlState.settings === true;
|
||||||
|
|
||||||
setLang(settings.language || 'de');
|
// state.settings, not the raw server response: for any key whose sync flag
|
||||||
applyTheme(settings);
|
// is off the effective value is this browser's local one, and using the raw
|
||||||
applyFavicon(settings.primary_color);
|
// value here silently ignored it (and clobbered the setLang above).
|
||||||
|
applyTheme(state.settings);
|
||||||
|
applyFavicon(state.settings.primary_color);
|
||||||
updateViewButtons();
|
updateViewButtons();
|
||||||
renderCalendarList();
|
renderCalendarList();
|
||||||
renderMiniCal();
|
renderMiniCal();
|
||||||
|
|||||||
@@ -1,2 +1,2 @@
|
|||||||
// Increment APP_VERSION with every code change
|
// Increment APP_VERSION with every code change
|
||||||
export const APP_VERSION = 'v95';
|
export const APP_VERSION = 'v96';
|
||||||
|
|||||||
+1
-1
@@ -7,7 +7,7 @@
|
|||||||
// the entry HTML / version files). New releases take effect on the next
|
// the entry HTML / version files). New releases take effect on the next
|
||||||
// reload, no manual SW unregister required.
|
// reload, no manual SW unregister required.
|
||||||
|
|
||||||
const CACHE_VERSION = 'calendarr-v41';
|
const CACHE_VERSION = 'calendarr-v42';
|
||||||
const OFFLINE_SHELL = ['/', '/index.html'];
|
const OFFLINE_SHELL = ['/', '/index.html'];
|
||||||
|
|
||||||
self.addEventListener('install', event => {
|
self.addEventListener('install', event => {
|
||||||
|
|||||||
Reference in New Issue
Block a user