From ed56f0733eff838d315b7e2c851431f32b730198 Mon Sep 17 00:00:00 2001 From: antelle Date: Sun, 18 Apr 2021 21:02:43 +0200 Subject: [PATCH] added an option to focus KeeWeb when the file is locked --- app/scripts/const/default-app-settings.js | 1 + app/scripts/locales/base.json | 1 + app/scripts/views/settings/settings-browser-view.js | 11 +++++++++-- app/templates/settings/settings-browser.hbs | 7 +++++++ 4 files changed, 18 insertions(+), 2 deletions(-) diff --git a/app/scripts/const/default-app-settings.js b/app/scripts/const/default-app-settings.js index cc7e9a5c..23d3a873 100644 --- a/app/scripts/const/default-app-settings.js +++ b/app/scripts/const/default-app-settings.js @@ -47,6 +47,7 @@ const DefaultAppSettings = { deviceOwnerAuthTimeoutMinutes: 0, // how often master password is required with Touch ID disableOfflineStorage: false, // don't cache loaded files in offline storage shortLivedStorageToken: false, // short-lived sessions in cloud storage providers + extensionFocusIfLocked: true, // focus KeeWeb if a browser extension tries to connect while KeeWeb is locked yubiKeyShowIcon: true, // show an icon to open OTP codes from YubiKey yubiKeyAutoOpen: false, // auto-load one-time codes when there are open files diff --git a/app/scripts/locales/base.json b/app/scripts/locales/base.json index 1d7fa7a2..1cd9d75f 100644 --- a/app/scripts/locales/base.json +++ b/app/scripts/locales/base.json @@ -647,6 +647,7 @@ "setBrowserIntroWeb": "Install our browser extension to auto-fill passwords from KeeWeb on different pages. The browser extension will connect to a KeeWeb tab in your browser to fetch passwords. Click here to download the extension:", "setBrowserNotEnabled": "Browser integration is not enabled, extensions won't be able to connect to KeeWeb. Use the checkboxes below to enable it:", "setBrowserEnablePerBrowser": "Enable browser integration using the checkboxes below:", + "setBrowserFocusIfLocked": "Open KeeWeb is a browser extension tries to connect while the file is locked", "setDevicesTitle": "Devices", "setDevicesEnableUsb": "Enable interaction with USB devices", diff --git a/app/scripts/views/settings/settings-browser-view.js b/app/scripts/views/settings/settings-browser-view.js index 1bfc62bd..0cf585d7 100644 --- a/app/scripts/views/settings/settings-browser-view.js +++ b/app/scripts/views/settings/settings-browser-view.js @@ -8,13 +8,15 @@ class SettingsBrowserView extends View { template = template; events = { - 'change .check-enable-for-browser': 'changeEnableForBrowser' + 'change .check-enable-for-browser': 'changeEnableForBrowser', + 'change .settings__browser-focus-if-locked': 'changeFocusIfLocked' }; render() { const data = { desktop: Features.isDesktop, - icon: Features.browserIcon + icon: Features.browserIcon, + focusIfLocked: AppSettingsModel.extensionFocusIfLocked }; if (Features.isDesktop) { data.settingsPerBrowser = this.getSettingsPerBrowser(); @@ -55,6 +57,11 @@ class SettingsBrowserView extends View { this.render(); } + + changeFocusIfLocked(e) { + AppSettingsModel.extensionFocusIfLocked = e.target.checked; + this.render(); + } } export { SettingsBrowserView }; diff --git a/app/templates/settings/settings-browser.hbs b/app/templates/settings/settings-browser.hbs index 2651bf13..3cb9c918 100644 --- a/app/templates/settings/settings-browser.hbs +++ b/app/templates/settings/settings-browser.hbs @@ -61,4 +61,11 @@ KeeWeb Connect {{res 'for'}} {{extensionBrowserFamily}} {{/if}} + +
+ + +