aboutsummaryrefslogtreecommitdiffstats
path: root/app/scripts/contentscript.js
diff options
context:
space:
mode:
authorkumavis <aaron@kumavis.me>2015-12-19 14:05:16 +0800
committerkumavis <aaron@kumavis.me>2015-12-19 14:05:16 +0800
commit72a747165dda417aa7968e44b404eb90707202a2 (patch)
tree0fd4c52727815665b8851ca80b2b8d9dc462b19a /app/scripts/contentscript.js
parentcc935a1ebaa73d855056d143ef548ca982a5f8e8 (diff)
downloadtangerine-wallet-browser-72a747165dda417aa7968e44b404eb90707202a2.tar
tangerine-wallet-browser-72a747165dda417aa7968e44b404eb90707202a2.tar.gz
tangerine-wallet-browser-72a747165dda417aa7968e44b404eb90707202a2.tar.bz2
tangerine-wallet-browser-72a747165dda417aa7968e44b404eb90707202a2.tar.lz
tangerine-wallet-browser-72a747165dda417aa7968e44b404eb90707202a2.tar.xz
tangerine-wallet-browser-72a747165dda417aa7968e44b404eb90707202a2.tar.zst
tangerine-wallet-browser-72a747165dda417aa7968e44b404eb90707202a2.zip
migrate to ProviderEngine zero-client
Diffstat (limited to 'app/scripts/contentscript.js')
-rw-r--r--app/scripts/contentscript.js28
1 files changed, 13 insertions, 15 deletions
diff --git a/app/scripts/contentscript.js b/app/scripts/contentscript.js
index 7a180d9a9..cce5c1274 100644
--- a/app/scripts/contentscript.js
+++ b/app/scripts/contentscript.js
@@ -1,6 +1,7 @@
-const allowedMessageTarget = 'metamask'
-const allowedMessageType = 'addUnsignedTx'
+const LocalMessageDuplexStream = require('./lib/local-message-stream.js')
+const PortStream = require('./lib/port-stream.js')
+console.log('content script!')
// inject in-page script
var scriptTag = document.createElement('script')
@@ -9,17 +10,14 @@ scriptTag.onload = function() { this.parentNode.removeChild(this) }
var container = document.head || document.documentElement
container.appendChild(scriptTag)
-// setup connection with background
-var metamaskPlugin = chrome.runtime.connect({name: 'metamask'})
+// setup communication to page and plugin
+var pageStream = new LocalMessageDuplexStream({
+ name: 'contentscript',
+ target: 'inpage',
+})
+var pluginPort = chrome.runtime.connect({name: 'metamask'})
+var pluginStream = new PortStream(pluginPort)
-// forward messages from inpage to background
-window.addEventListener('message', receiveMessage, false);
-function receiveMessage(event){
- var msg = event.data
- // validate message type
- if (typeof msg !== 'object') return
- if (msg.to !== allowedMessageTarget) return
- if (msg.type !== allowedMessageType) return
- // forward message
- metamaskPlugin.postMessage(msg)
-} \ No newline at end of file
+// forward communication across
+pageStream.pipe(pluginStream)
+pluginStream.pipe(pageStream) \ No newline at end of file