Skip to content

Commit

Permalink
Fix bug can't save when exit popup
Browse files Browse the repository at this point in the history
  • Loading branch information
dthung1602 committed May 15, 2022
1 parent e079dba commit b8b037e
Showing 1 changed file with 15 additions and 8 deletions.
23 changes: 15 additions & 8 deletions popup/popup.js
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,14 @@ function deserializeDomains(domains) {
return domains.join("\n");
}

function debounce(func, time) {
let timeoutHandler;
return function (...args) {
clearTimeout(timeoutHandler);
timeoutHandler = setTimeout(() => func(...args), time);
}
}

// Load value from storage to UI
async function loadSettings() {
// TODO add ban domain settings
Expand Down Expand Up @@ -88,18 +96,17 @@ const selectAction = (event) => {
document.getElementById("action").addEventListener("change", selectAction);

// Save options
const saveOptions = (event) => {
const saveOptions = debounce((event) => {
const cleanSpamText = document.getElementById("text").value;
const cleanSpamImage = document.getElementById("image").value;
const clearSpamInterval = parseInt(document.getElementById("check-interval").value);
const banDomains = serializeDomains(document.getElementById("ban-domain").value);
console.log({clearSpamInterval, banDomains});
browser.storage.local.set({ cleanSpamText, cleanSpamImage, clearSpamInterval, banDomains }).catch(console.error);
}
document.getElementById("image").addEventListener("change", saveOptions);
document.getElementById("text").addEventListener("change", saveOptions);
document.getElementById("check-interval").addEventListener("change", saveOptions);
document.getElementById("ban-domain").addEventListener("change", saveOptions);
}, 100);
document.getElementById("image").addEventListener("input", saveOptions);
document.getElementById("text").addEventListener("input", saveOptions);
document.getElementById("check-interval").addEventListener("input", saveOptions);
document.getElementById("ban-domain").addEventListener("input", saveOptions);

// Advance
const showAdvance = () => {
Expand All @@ -108,7 +115,7 @@ const showAdvance = () => {
}
document.getElementById("advance-btn").addEventListener("click", showAdvance);

// Advance
// Basic
const showBasic = () => {
document.getElementById("advance").classList.add("hidden");
document.getElementById("basic").classList.remove("hidden");
Expand Down

0 comments on commit b8b037e

Please sign in to comment.