|
|
@ -1,12 +1,22 @@ |
|
|
|
(function() { |
|
|
|
(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) { |
|
|
|
QtProvider.prototype.send = function(payload) { |
|
|
|
navigator.qt.postData(JSON.stringify(payload)); |
|
|
|
navigator.qt.postData(JSON.stringify(payload)); |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
Object.defineProperty(QtProvider.prototype, "onmessage", { |
|
|
|
Object.defineProperty(QtProvider.prototype, "onmessage", { |
|
|
|
set: function(handler) { |
|
|
|
set: function(handler) { |
|
|
|
navigator.qt.onmessage = handler; |
|
|
|
this.handlers.push(handler); |
|
|
|
}, |
|
|
|
}, |
|
|
|
});
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|