Merge pull request #1 from adbenitez/master

set unique selfAddr per device/window and use that data in the exampl…
master
bjoern 2022-01-01 18:34:08 +01:00 committed by GitHub
commit 3d70e6f05b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 22 additions and 12 deletions

View File

@ -5,7 +5,7 @@ window.deltachat = (() => {
var updateListener = () => {};
return {
selfAddr: () => "foo@bar.dex",
selfAddr: () => window.xdcSelfAddr || "device0@local.host",
setUpdateListener: (cb) => (window.xdcUpdateListener = cb),
getAllUpdates: () => {
return JSON.parse(
@ -47,16 +47,26 @@ function addPeer() {
var xdcChild = window.open(window.location);
var xdcRoot = getXdcRoot();
xdcChild.xdcRoot = xdcRoot;
xdcChild.xdcSelfAddr = "device" + xdcRoot.allXdcWindows.length + "@local.host";
xdcRoot.allXdcWindows.push(xdcChild);
}
function alterBody() {
var div = document.createElement('div');
div.innerHTML =
'<div style="' + styleControlPanel + '">' +
'<a href="javascript:addPeer();" style="' + styleMenuLink + '">Add Peer</a>' +
'<div>';
document.getElementsByTagName('body')[0].append(div.firstChild);
function alterApp() {
var title = document.getElementsByTagName('title')[0];
if (typeof title == 'undefined') {
title = document.createElement('title');
document.getElementsByTagName('head')[0].append(title);
}
title.innerText = window.deltachat.selfAddr();
if (getXdcRoot() == window) {
var div = document.createElement('div');
div.innerHTML =
'<div style="' + styleControlPanel + '">' +
'<a href="javascript:addPeer();" style="' + styleMenuLink + '">Add Peer</a>' +
'<div>';
document.getElementsByTagName('body')[0].append(div.firstChild);
}
}
window.addEventListener("load", alterBody);
window.addEventListener("load", alterApp);

View File

@ -12,15 +12,15 @@
function sendMsg() {
msg = document.getElementById("input").value;
window.deltachat.sendUpdate('someone typed "'+msg+'"', msg);
window.deltachat.sendUpdate('someone typed "'+msg+'"', {"addr": window.deltachat.selfAddr(), "msg": msg});
}
function receiveUpdate(update) {
document.getElementById('output').innerHTML += update.payload + "<br>";
document.getElementById('output').innerHTML += "<strong>&lt;" + update.payload.addr + "&gt;</strong> " + update.payload.msg + "<br>";
}
window.deltachat.setUpdateListener(receiveUpdate);
</script>
</body>
</html>
</html>