From f292053b49aa7f48b54e327f77e3ab70dc434bd5 Mon Sep 17 00:00:00 2001 From: Dmitry Lyzo Date: Sat, 25 Jul 2020 00:29:43 +0300 Subject: [PATCH] Fix event source for inputManager in case of multiple open dialogs --- 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 915324cfc0..43fa150750 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; } }