diff options
author | bitpshr <mail@bitpshr.net> | 2018-10-11 02:52:26 +0800 |
---|---|---|
committer | Dan Finlay <542863+danfinlay@users.noreply.github.com> | 2018-11-06 07:07:09 +0800 |
commit | 226601a956594d00817cdb1fa5214242aae7936c (patch) | |
tree | ca3b8a64b685599ef8ef26d4bf3396170949d122 /app/scripts/contentscript.js | |
parent | bfcb73ad533b7c2acea012a586c2a391811faf03 (diff) | |
download | tangerine-wallet-browser-226601a956594d00817cdb1fa5214242aae7936c.tar.gz tangerine-wallet-browser-226601a956594d00817cdb1fa5214242aae7936c.tar.zst tangerine-wallet-browser-226601a956594d00817cdb1fa5214242aae7936c.zip |
EIP-1102: add user privacy option
Diffstat (limited to 'app/scripts/contentscript.js')
-rw-r--r-- | app/scripts/contentscript.js | 27 |
1 files changed, 8 insertions, 19 deletions
diff --git a/app/scripts/contentscript.js b/app/scripts/contentscript.js index b1c1e9a0d..29fa3f5c7 100644 --- a/app/scripts/contentscript.js +++ b/app/scripts/contentscript.js @@ -24,7 +24,7 @@ if (shouldInjectWeb3()) { injectScript(inpageBundle) setupStreams() listenForProviderRequest() - checkForcedInjection() + checkPrivacyMode() } /** @@ -125,9 +125,9 @@ function listenForProviderRequest () { origin: source.location.hostname, }) break - case 'ETHEREUM_PROVIDER_STATUS': + case 'ETHEREUM_QUERY_STATUS': extension.runtime.sendMessage({ - action: 'provider-status-request', + action: 'init-status-request', origin: source.location.hostname, }) break @@ -144,14 +144,7 @@ function listenForProviderRequest () { case 'reject-provider-request': injectScript(`window.dispatchEvent(new CustomEvent('ethereumprovider', { detail: { error: 'User rejected provider access' }}))`) break - case 'force-injection': - extension.storage.local.get(['forcedOrigins'], ({ forcedOrigins = [] }) => { - extension.storage.local.set({ forcedOrigins: [ ...forcedOrigins, window.location.hostname ] }, () => { - injectScript(`window.location.reload()`) - }) - }) - break - case 'provider-status': + case 'answer-status-request': injectScript(`window.dispatchEvent(new CustomEvent('ethereumproviderstatus', { detail: { isEnabled: ${isEnabled}}}))`) break } @@ -159,15 +152,11 @@ function listenForProviderRequest () { } /** - * Checks the current origin to see if it exists in the extension's locally-stored list - * off user-whitelisted dapp origins. If it is, this origin will be marked as approved, - * meaning the publicConfig stream will be enabled. This is only meant to ease the transition - * to 1102 and will be removed in the future. + * Checks if MetaMask is currently operating in "privacy mode", meaning + * dapps must call ethereum.enable in order to access user accounts */ -function checkForcedInjection () { - extension.storage.local.get(['forcedOrigins'], ({ forcedOrigins = [] }) => { - originApproved = forcedOrigins.indexOf(window.location.hostname) > -1 - }) +function checkPrivacyMode () { + extension.runtime.sendMessage({ action: 'init-privacy-request' }) } /** |