mirror of
https://github.com/ranaldsgift/KefinTweaks.git
synced 2026-11-05 15:52:47 +01:00
Ensure changes in User > Home are properly reflected when navigating back to home screen
This commit is contained in:
@@ -2334,6 +2334,7 @@
|
||||
const success = await saveEditorDisplayPreferences(displayPrefs);
|
||||
if (success) {
|
||||
LOG('User preferences saved successfully');
|
||||
window.homeScreen3?.notifyUserHomePreferencesChanged?.('userHomePrefsSaved');
|
||||
} else {
|
||||
ERR('Failed to save user preferences');
|
||||
}
|
||||
@@ -2583,6 +2584,7 @@
|
||||
displayPrefs.CustomPrefs.kefinHomeScreen = '[]';
|
||||
const ok = await saveEditorDisplayPreferences(displayPrefs);
|
||||
if (ok) {
|
||||
window.homeScreen3?.notifyUserHomePreferencesChanged?.('userHomePrefsRestoreDefaults');
|
||||
window.ModalSystem.close(modalId);
|
||||
await renderUserHomeSectionsEditor(container);
|
||||
if (window.KefinTweaksToaster && window.KefinTweaksToaster.toast) {
|
||||
|
||||
@@ -648,6 +648,13 @@
|
||||
// keep homeScreenConfigResult until a newer resolve replaces it (stale-ok for chrome/paint)
|
||||
}
|
||||
|
||||
/** After User > Home prefs save/restore: drop cached filtered sections so next home rebuild re-reads prefs. */
|
||||
function notifyUserHomePreferencesChanged(reason) {
|
||||
invalidateHomeScreenConfig(reason || 'userHomePreferencesChanged');
|
||||
sectionCache.renderedSections = [];
|
||||
sectionCache.fragmentCache = null;
|
||||
}
|
||||
|
||||
function ensureHomeScreenConfig() {
|
||||
if (homeScreenConfigPromise) return homeScreenConfigPromise;
|
||||
if (homeScreenConfigResult && homeScreenConfigResultGeneration === homeScreenConfigGeneration) {
|
||||
@@ -2978,6 +2985,7 @@
|
||||
init: () => enqueueHomeViewJob({ type: 'home', hash: window.location.hash || '' }),
|
||||
refreshHomeSections,
|
||||
refreshHomeSectionById,
|
||||
notifyUserHomePreferencesChanged,
|
||||
resolveDiscoverySection: buildDiscoverySectionInstance,
|
||||
sectionHelper: () => window.sectionHelper,
|
||||
getActiveHomeCategory: () => homeChromeActiveCategory || 'none',
|
||||
|
||||
Reference in New Issue
Block a user