From 37cde45d12cd707007e19fea898630f4609dfdb5 Mon Sep 17 00:00:00 2001 From: dkanada Date: Sat, 25 Jul 2020 19:15:52 +0900 Subject: [PATCH] Merge pull request #1641 from dmitrylyzo/fix-event-source-2 Fix event source for inputManager in case of multiple open dialogs (cherry picked from commit f5e93a18de950ef80087542df27302b4b3c1f3c8) Signed-off-by: Joshua M. Boniface --- src/scripts/inputManager.js | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/scripts/inputManager.js b/src/scripts/inputManager.js index a157a25ea9..b918328130 100644 --- a/src/scripts/inputManager.js +++ b/src/scripts/inputManager.js @@ -66,9 +66,12 @@ import appHost from 'apphost'; if (!sourceElement) { sourceElement = document.activeElement || window; - const dlg = document.querySelector('.dialogContainer .dialog.opened'); + const dialogs = document.querySelectorAll('.dialogContainer .dialog.opened'); - if (dlg && (!sourceElement || !dlg.contains(sourceElement))) { + // Suppose the top open dialog is active + const dlg = dialogs.length ? dialogs[dialogs.length - 1] : null; + + if (dlg && !dlg.contains(sourceElement)) { sourceElement = dlg; } }