Files
multi-account-containers/src/js/options.js
T

25 lines
828 B
JavaScript

async function requestPermissions() {
const checkbox = document.querySelector("#bookmarksPermissions");
if (checkbox.checked) {
const granted = await browser.permissions.request({permissions: ["bookmarks"]});
if (!granted) {
checkbox.checked = false;
return;
}
} else {
await browser.permissions.remove({permissions: ["bookmarks"]});
}
browser.runtime.sendMessage({ method: "resetBookmarksContext" });
}
async function restoreOptions() {
const hasPermission = await browser.permissions.contains({permissions: ["bookmarks"]});
if (hasPermission) {
document.querySelector("#bookmarksPermissions").checked = true;
}
}
document.addEventListener("DOMContentLoaded", restoreOptions);
document.querySelector("#bookmarksPermissions").addEventListener( "change", requestPermissions);