aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarek Kotewicz <marek.kotewicz@gmail.com>2014-10-22 22:12:41 +0800
committerMarek Kotewicz <marek.kotewicz@gmail.com>2014-10-22 22:12:41 +0800
commitf7c9c8928eaca89a7bd02d7cc2e53049d7c43fef (patch)
tree31c05ea64b23bca36cf043e9e115b74c5b7e4c90
parentea3048421fb54abd98f610d79294634015d0e58e (diff)
downloadgo-tangerine-f7c9c8928eaca89a7bd02d7cc2e53049d7c43fef.tar
go-tangerine-f7c9c8928eaca89a7bd02d7cc2e53049d7c43fef.tar.gz
go-tangerine-f7c9c8928eaca89a7bd02d7cc2e53049d7c43fef.tar.bz2
go-tangerine-f7c9c8928eaca89a7bd02d7cc2e53049d7c43fef.tar.lz
go-tangerine-f7c9c8928eaca89a7bd02d7cc2e53049d7c43fef.tar.xz
go-tangerine-f7c9c8928eaca89a7bd02d7cc2e53049d7c43fef.tar.zst
go-tangerine-f7c9c8928eaca89a7bd02d7cc2e53049d7c43fef.zip
messageHandler expects object instead of string
-rw-r--r--http.js4
-rw-r--r--main.js3
-rw-r--r--qt.js14
-rw-r--r--websocket.js2
4 files changed, 16 insertions, 7 deletions
diff --git a/http.js b/http.js
index 4f6296d08..ff8335657 100644
--- a/http.js
+++ b/http.js
@@ -16,10 +16,10 @@
function formatJsonRpcMessage(message) {
var object = JSON.parse(message);
- return JSON.stringify({
+ return {
_id: object.id,
data: object.result
- });
+ };
};
HttpProvider.prototype.send = function (payload) {
diff --git a/main.js b/main.js
index bc6163f35..1a5afeb56 100644
--- a/main.js
+++ b/main.js
@@ -489,8 +489,7 @@
}
});
- function messageHandler(ev) {
- var data = JSON.parse(ev)
+ function messageHandler(data) {
if(data._event !== undefined) {
web3.trigger(data._event, data.data);
diff --git a/qt.js b/qt.js
index 39c0a89a9..1b146c30d 100644
--- a/qt.js
+++ b/qt.js
@@ -1,12 +1,22 @@
(function() {
- var QtProvider = function() {};
+ var QtProvider = function() {
+ this.handlers = [];
+
+ var self = this;
+ navigator.qt.onmessage = function (message) {
+ self.handlers.forEach(function (handler) {
+ handler.call(self, JSON.parse(message));
+ });
+ }
+ };
+
QtProvider.prototype.send = function(payload) {
navigator.qt.postData(JSON.stringify(payload));
};
Object.defineProperty(QtProvider.prototype, "onmessage", {
set: function(handler) {
- navigator.qt.onmessage = handler;
+ this.handlers.push(handler);
},
});
diff --git a/websocket.js b/websocket.js
index 297690b33..732a086f2 100644
--- a/websocket.js
+++ b/websocket.js
@@ -11,7 +11,7 @@
var self = this;
this.ws.onmessage = function(event) {
for(var i = 0; i < self.handlers.length; i++) {
- self.handlers[i].call(self, event.data, event)
+ self.handlers[i].call(self, JSON.parse(event.data), event)
}
};