30 lines
1.0 KiB
JavaScript
30 lines
1.0 KiB
JavaScript
const { ipcRenderer } = require('electron');
|
|
|
|
const clearBtn = document.getElementById('clear-data-btn');
|
|
const statusDiv = document.getElementById('status');
|
|
const statusText = document.getElementById('status-text');
|
|
|
|
function showStatus(message) {
|
|
statusText.textContent = message;
|
|
statusDiv.classList.remove('hidden'); // Ensure the hidden class is removed
|
|
setTimeout(() => {
|
|
statusDiv.classList.add('hidden'); // Add the hidden class back after 2 seconds
|
|
}, 2000);
|
|
}
|
|
|
|
clearBtn.onclick = async () => {
|
|
statusDiv.classList.remove('hidden'); // Show spinner immediately
|
|
statusText.textContent = 'Clearing all browser data...'; // Update text while clearing
|
|
|
|
try {
|
|
// Invoke the main process to clear cookies, local storage, and cache
|
|
const ok = await ipcRenderer.invoke('clear-browser-data');
|
|
showStatus(ok
|
|
? 'All browser data and bookmarks cleared!'
|
|
: 'Failed to clear browser data.');
|
|
} catch (error) {
|
|
console.error('Error clearing browser data:', error);
|
|
showStatus('An error occurred while clearing data.');
|
|
}
|
|
};
|