From ce7f9dd09a85f182a9ea98c3366bed6c2ecbb1b4 Mon Sep 17 00:00:00 2001 From: toasted-nutbread Date: Sat, 30 May 2020 16:24:51 -0400 Subject: Update how assignment of general.enableClipboardPopups works (#583) --- ext/bg/js/settings/clipboard-popups-controller.js | 25 ++++++++--------------- 1 file changed, 8 insertions(+), 17 deletions(-) (limited to 'ext/bg/js/settings') 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); } } -- cgit v1.2.3