Fix refresh by waiting for document ready rather than a timeout (#4355)
This commit is contained in:
+12
-6
@@ -661,22 +661,28 @@ const createChat = async (
|
|||||||
(function() {
|
(function() {
|
||||||
function setConfig() {
|
function setConfig() {
|
||||||
try {
|
try {
|
||||||
if (window.localStorage) {
|
if (document.readyState === 'complete' && window.localStorage) {
|
||||||
localStorage.setItem('gooseConfig', '${configStr}');
|
localStorage.setItem('gooseConfig', '${configStr}');
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
console.warn('localStorage access failed:', e);
|
console.warn('[Renderer] localStorage access failed:', e);
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!setConfig()) {
|
// If document is already complete, try immediately
|
||||||
setTimeout(() => {
|
if (document.readyState === 'complete') {
|
||||||
|
if (!setConfig()) {
|
||||||
|
console.error('[Renderer] Failed to set localStorage config despite document being ready');
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
// Wait for document to be fully ready
|
||||||
|
document.addEventListener('DOMContentLoaded', () => {
|
||||||
if (!setConfig()) {
|
if (!setConfig()) {
|
||||||
console.error('Failed to set localStorage after retry - continuing without localStorage config');
|
console.error('[Renderer] Failed to set localStorage config after DOMContentLoaded');
|
||||||
}
|
}
|
||||||
}, 100);
|
});
|
||||||
}
|
}
|
||||||
})();
|
})();
|
||||||
`
|
`
|
||||||
|
|||||||
Reference in New Issue
Block a user