diff --git a/src/_locales/en/messages.json b/src/_locales/en/messages.json index 1228822a8c..0adf252307 100644 --- a/src/_locales/en/messages.json +++ b/src/_locales/en/messages.json @@ -892,25 +892,19 @@ "message": "This is currently an experimental feature. Use at your own risk." }, "defaultAutoFillOnPageLoad": { - "message": "Default auto-fill on page load setting" - }, - "globalAutoFillOnPageLoadAlways": { - "message": "Always auto-fill" - }, - "globalAutoFillOnPageLoadNever": { - "message": "Never auto-fill" + "message": "Default login setting" }, "itemAutoFillOnPageLoad": { - "message": "Auto-fill On Page Load (if enabled)" + "message": "Auto-fill On Page Load (if enabled in Options)" }, - "itemAutoFillOnPageLoadUseGlobal": { + "autoFillOnPageLoadUseDefault": { "message": "Use default setting" }, - "itemAutoFillOnPageLoadAlways": { - "message": "Always auto-fill this login" + "autoFillOnPageLoadYes": { + "message": "Auto-fill" }, - "itemAutoFillOnPageLoadNever": { - "message": "Never auto-fill this login" + "autoFillOnPageLoadNo": { + "message": "Do not auto-fill" }, "commandOpenPopup": { "message": "Open vault popup" diff --git a/src/content/autofiller.ts b/src/content/autofiller.ts index 2a1af3c8d2..5e73c4a5c5 100644 --- a/src/content/autofiller.ts +++ b/src/content/autofiller.ts @@ -3,8 +3,12 @@ document.addEventListener('DOMContentLoaded', event => { let filledThisHref = false; let delayFillTimeout: number; - setInterval(() => doFillIfNeeded(), 500); - + const enabledKey = 'enableAutoFillOnPageLoad'; + chrome.storage.local.get(enabledKey, (obj: any) => { + if (obj != null && obj[enabledKey] === true) { + setInterval(() => doFillIfNeeded(), 500); + } + }); chrome.runtime.onMessage.addListener((msg: any, sender: any, sendResponse: Function) => { if (msg.command === 'fillForm' && pageHref === msg.url) { filledThisHref = true; diff --git a/src/popup/settings/options.component.html b/src/popup/settings/options.component.html index e41bcb607f..13b7c6d2d7 100644 --- a/src/popup/settings/options.component.html +++ b/src/popup/settings/options.component.html @@ -25,7 +25,7 @@
diff --git a/src/popup/settings/options.component.ts b/src/popup/settings/options.component.ts index 5dbc9c3d6e..7222c20b9e 100644 --- a/src/popup/settings/options.component.ts +++ b/src/popup/settings/options.component.ts @@ -67,14 +67,17 @@ export class OptionsComponent implements OnInit { { name: i18nService.t('fiveMinutes'), value: 300 }, ]; this.autoFillOnPageLoadOptions = [ - { name: i18nService.t('globalAutoFillOnPageLoadAlways'), value: true }, - { name: i18nService.t('globalAutoFillOnPageLoadNever'), value: false }, + { name: i18nService.t('autoFillOnPageLoadYes'), value: true }, + { name: i18nService.t('autoFillOnPageLoadNo'), value: false }, ] } async ngOnInit() { this.enableAutoFillOnPageLoad = await this.storageService.get( ConstantsService.enableAutoFillOnPageLoadKey); + + this.autoFillOnPageLoadDefault = await this.storageService.get( + ConstantsService.autoFillOnPageLoadDefaultKey) ?? false; this.disableAddLoginNotification = await this.storageService.get( ConstantsService.disableAddLoginNotificationKey); @@ -129,6 +132,10 @@ export class OptionsComponent implements OnInit { this.callAnalytics('Auto-fill Page Load', this.enableAutoFillOnPageLoad); } + async updateAutoFillOnPageLoadDefault() { + await this.storageService.save(ConstantsService.autoFillOnPageLoadDefaultKey, this.autoFillOnPageLoadDefault); + } + async updateDisableFavicon() { await this.storageService.save(ConstantsService.disableFaviconKey, this.disableFavicon); await this.stateService.save(ConstantsService.disableFaviconKey, this.disableFavicon);