fix: add Reset Everything button + improve reveal mode reliability
Storage issue: Chromium/Brave keeps storage.local data even when an unpacked extension is removed and reloaded. Added "Reset Everything" button in Options → Danger Zone that clears all data (double-confirm to prevent accidents). Reveal mode: Now re-runs revealAllResponses() every 2 seconds while active to catch streamed content and dynamically loaded responses. Adds console logging for reveal toggle state changes to aid debugging. Cleans up interval when reveal mode is turned off. https://claude.ai/code/session_01Dvgwe7XMoSxnWXkih8p1Cw
This commit is contained in:
+10
-2
@@ -740,24 +740,32 @@
|
||||
|
||||
// React to reveal mode toggle
|
||||
let prevRevealMode = settings.revealMode;
|
||||
let revealInterval = null;
|
||||
|
||||
function checkRevealToggle() {
|
||||
if (settings.revealMode && !prevRevealMode) {
|
||||
// Just turned ON — reveal everything existing
|
||||
console.log('[Silent Send] Reveal mode ON');
|
||||
revealAllResponses();
|
||||
// Keep re-revealing periodically to catch new/streamed content
|
||||
revealInterval = setInterval(() => {
|
||||
if (settings.revealMode) revealAllResponses();
|
||||
}, 2000);
|
||||
} else if (!settings.revealMode && prevRevealMode) {
|
||||
// Just turned OFF — restore originals
|
||||
console.log('[Silent Send] Reveal mode OFF');
|
||||
if (revealInterval) { clearInterval(revealInterval); revealInterval = null; }
|
||||
unrevealAllResponses();
|
||||
}
|
||||
prevRevealMode = settings.revealMode;
|
||||
}
|
||||
|
||||
// Hook into config updates to detect reveal toggle
|
||||
const origMessageHandler = window.addEventListener;
|
||||
window.addEventListener('message', (event) => {
|
||||
if (event.source !== window) return;
|
||||
if (event.data?.type === 'ss:config-updated') {
|
||||
// Settings were updated — check if reveal mode changed
|
||||
setTimeout(checkRevealToggle, 50);
|
||||
setTimeout(checkRevealToggle, 100);
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
Reference in New Issue
Block a user