aboutsummaryrefslogtreecommitdiff
path: root/ext/bg/js/settings
diff options
context:
space:
mode:
Diffstat (limited to 'ext/bg/js/settings')
-rw-r--r--ext/bg/js/settings/clipboard-popups-controller.js25
1 files changed, 8 insertions, 17 deletions
diff --git a/ext/bg/js/settings/clipboard-popups-controller.js b/ext/bg/js/settings/clipboard-popups-controller.js
index 77fae305..294663f9 100644
--- a/ext/bg/js/settings/clipboard-popups-controller.js
+++ b/ext/bg/js/settings/clipboard-popups-controller.js
@@ -36,25 +36,16 @@ class ClipboardPopupsController {
}
async _onEnableClipboardPopupsChanged(e) {
- const enableClipboardPopups = e.target.checked;
- const options = await this._settingsController.getOptionsMutable();
-
- if (enableClipboardPopups) {
- options.general.enableClipboardPopups = await new Promise((resolve) => {
- chrome.permissions.request(
- {permissions: ['clipboardRead']},
- (granted) => {
- if (!granted) {
- this._checkbox.checked = false;
- }
- resolve(granted);
- }
- );
+ const checkbox = e.currentTarget;
+ let value = checkbox.checked;
+
+ if (value) {
+ value = await new Promise((resolve) => {
+ chrome.permissions.request({permissions: ['clipboardRead']}, resolve);
});
- } else {
- options.general.enableClipboardPopups = false;
+ checkbox.checked = value;
}
- await this._settingsController.save();
+ await this._settingsController.setProfileSetting('general.enableClipboardPopups', value);
}
}