From 16185ffa76746fbb7b245911e80c68632b71bab6 Mon Sep 17 00:00:00 2001 From: Kyle Spearrin Date: Wed, 6 Mar 2019 20:28:49 -0500 Subject: [PATCH] Revert "make clipboardRead optional permission" This reverts commit a797f18b78e45b536d257052198432bc585deec6. --- src/browser/browserApi.ts | 28 ------------------------- src/manifest.json | 4 +--- src/popup/settings/options.component.ts | 24 ++++----------------- 3 files changed, 5 insertions(+), 51 deletions(-) diff --git a/src/browser/browserApi.ts b/src/browser/browserApi.ts index a7255e0ef0..d1cd121522 100644 --- a/src/browser/browserApi.ts +++ b/src/browser/browserApi.ts @@ -295,32 +295,4 @@ export class BrowserApi { return chrome.runtime.reload(); } } - - static hasPermission(permissionName: string): Promise { - return new Promise((resolve) => { - if (BrowserApi.isSafariApi) { - resolve(true); - } else { - chrome.permissions.contains({ - permissions: [permissionName], - }, (granted: boolean) => { - resolve(granted); - }); - } - }); - } - - static requestPermission(permissionName: string): Promise { - return new Promise((resolve) => { - if (BrowserApi.isSafariApi) { - resolve(true); - } else { - chrome.permissions.request({ - permissions: [permissionName], - }, (granted: boolean) => { - resolve(granted); - }); - } - }); - } } diff --git a/src/manifest.json b/src/manifest.json index e4e6e89ab4..3e58fd4357 100644 --- a/src/manifest.json +++ b/src/manifest.json @@ -71,6 +71,7 @@ "contextMenus", "storage", "unlimitedStorage", + "clipboardRead", "clipboardWrite", "idle", "http://*/*", @@ -78,9 +79,6 @@ "webRequest", "webRequestBlocking" ], - "optional_permissions": [ - "clipboardRead" - ], "content_security_policy": "script-src 'self' 'unsafe-eval'; object-src 'self'", "commands": { "autofill_login": { diff --git a/src/popup/settings/options.component.ts b/src/popup/settings/options.component.ts index 81cba9f086..072d04bc35 100644 --- a/src/popup/settings/options.component.ts +++ b/src/popup/settings/options.component.ts @@ -16,8 +16,6 @@ import { TotpService } from 'jslib/abstractions/totp.service'; import { ConstantsService } from 'jslib/services/constants.service'; -import { BrowserApi } from '../../browser/browserApi'; - @Component({ selector: 'app-options', templateUrl: 'options.component.html', @@ -37,7 +35,6 @@ export class OptionsComponent implements OnInit { themeOptions: any[]; defaultUriMatch = UriMatchType.Domain; uriMatchOptions: any[]; - clearClipboardOriginalValue: number; clearClipboard: number; clearClipboardOptions: any[]; @@ -97,7 +94,6 @@ export class OptionsComponent implements OnInit { this.defaultUriMatch = defaultUriMatch == null ? UriMatchType.Domain : defaultUriMatch; this.clearClipboard = await this.storageService.get(ConstantsService.clearClipboardKey); - this.clearClipboardOriginalValue = this.clearClipboard; } async updateAddLoginNotification() { @@ -159,22 +155,10 @@ export class OptionsComponent implements OnInit { } async saveClearClipboard() { - if (!this.showClearClipboard) { - return; - } - let hasClipboardPermission = await BrowserApi.hasPermission('clipboardRead'); - if (!hasClipboardPermission) { - hasClipboardPermission = await BrowserApi.requestPermission('clipboardRead'); - } - if (hasClipboardPermission) { - this.clearClipboardOriginalValue = this.clearClipboard; - await this.storageService.save(ConstantsService.clearClipboardKey, this.clearClipboard); - this.analytics.eventTrack.next({ - action: 'Set Clear Clipboard ' + (this.clearClipboard == null ? 'Disabled' : this.clearClipboard), - }); - } else { - this.clearClipboard = this.clearClipboardOriginalValue; - } + await this.storageService.save(ConstantsService.clearClipboardKey, this.clearClipboard); + this.analytics.eventTrack.next({ + action: 'Set Clear Clipboard ' + (this.clearClipboard == null ? 'Disabled' : this.clearClipboard), + }); } private callAnalytics(name: string, enabled: boolean) {