From b85943b6881bc032cdf4e1d76eae5ae5ab18e184 Mon Sep 17 00:00:00 2001 From: Scott Nonnenberg Date: Mon, 4 Nov 2019 11:58:22 -0800 Subject: [PATCH] Ensure that loading screen progress includes all message types --- js/background.js | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/js/background.js b/js/background.js index eebb8951c..3599d9507 100644 --- a/js/background.js +++ b/js/background.js @@ -862,7 +862,18 @@ function addQueuedEventListener(name, handler) { messageReceiver.addEventListener(name, (...args) => - eventHandlerQueue.add(() => handler(...args)) + eventHandlerQueue.add(async () => { + try { + await handler(...args); + } finally { + // message/sent: Message.handleDataMessage has its own queue and will trigger + // this event itself when complete. + // error: Error processing (below) also has its own queue and self-trigger. + if (name !== 'message' && name !== 'sent' && name !== 'error') { + Whisper.events.trigger('incrementProgress'); + } + } + }) ); } @@ -1753,6 +1764,8 @@ conversation.trigger('newmessage', model); conversation.notify(model); + Whisper.events.trigger('incrementProgress'); + if (ev.confirm) { ev.confirm(); }