diff --git a/pkg/extension/src/scripts/content/toast.js b/pkg/extension/src/scripts/content/toast.js index 964038915..443bb6941 100644 --- a/pkg/extension/src/scripts/content/toast.js +++ b/pkg/extension/src/scripts/content/toast.js @@ -246,6 +246,7 @@ case 'success': // Auto hide if everything went well and the user // has not initiated any interaction. + hideToastTimeout = setTimeout(function () { console.log('hiding: ', currentToastEl, doNotHide) if (!doNotHide) { @@ -253,6 +254,12 @@ currentToastEl = undefined } }, 2500) + getStorageItem('disableAutoDismiss').then((disable) => { + console.log('got disableAutoDismiss', disable) + if (disable) { + cancelAutoDismiss() + } + }) statusBox.innerHTML = systemIcons.success break case 'failure': diff --git a/pkg/extension/src/scripts/options.js b/pkg/extension/src/scripts/options.js index 9eee230ba..e2a14efaa 100644 --- a/pkg/extension/src/scripts/options.js +++ b/pkg/extension/src/scripts/options.js @@ -34,6 +34,21 @@ function clearAPIKey() { }) } +function autoDismissChanged(event) { + const value = document.getElementById('disable-auto-dismiss').checked + console.log( + ' value: ', + value, + document.getElementById('disable-auto-dismiss') + ) + + setStorage({ + disableAutoDismiss: value ? 'true' : null, + }).then(() => { + console.log('disableAutoDismiss updated', value) + }) +} + ;(() => { document .getElementById('save-api-key-btn') @@ -44,4 +59,15 @@ function clearAPIKey() { document .getElementById('clear-api-key-btn') .addEventListener('click', clearAPIKey) + + getStorageItem('disableAutoDismiss').then((value) => { + console.log('disableAutoDismiss updated', value) + document.getElementById('disable-auto-dismiss').checked = value + ? true + : false + }) + + document + .getElementById('disable-auto-dismiss') + .addEventListener('change', autoDismissChanged) })() diff --git a/pkg/extension/src/views/options.html b/pkg/extension/src/views/options.html index 0b344e583..538989d73 100644 --- a/pkg/extension/src/views/options.html +++ b/pkg/extension/src/views/options.html @@ -3,12 +3,7 @@ API Key Storage - +
@@ -35,6 +30,14 @@ + +

 

+ +

Settings

+ + + +