From d0ec467c34d80b9954af28559a7f9e75f4694d73 Mon Sep 17 00:00:00 2001 From: David Baker Date: Tue, 15 May 2018 14:13:56 +0100 Subject: [PATCH] Oops, actually get account data event. Also ignore any account data events that aren;t widgets. --- src/ScalarMessaging.js | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/ScalarMessaging.js b/src/ScalarMessaging.js index a229ecf693..796252fc1b 100644 --- a/src/ScalarMessaging.js +++ b/src/ScalarMessaging.js @@ -293,13 +293,20 @@ function inviteUser(event, roomId, userId) { */ function waitForUserWidget(widgetId) { return new Promise((resolve, reject) => { - if (ev.getContent() && ev.getContent()[widgetId] !== undefined) { + const currentAccountDataEvent = MatrixClientPeg.get().getAccountData('m.widgets'); + if ( + currentAccountDataEvent && + currentAccountDataEvent.getContent() && + currentAccountDataEvent.getContent()[widgetId] !== undefined + ) { resolve(); return; } let timerId; function onAccountData(ev) { + if (ev.getType() != 'm.widgets') return; + if (ev.getContent() && ev.getContent()[widgetId] !== undefined) { MatrixClientPeg.get().removeListener('accountData', onAccountData); clearTimeout(timerId);