Merge pull request #1641 from dmitrylyzo/fix-event-source-2

Fix event source for inputManager in case of multiple open dialogs
This commit is contained in:
dkanada 2020-07-25 19:15:52 +09:00 committed by GitHub
commit f5e93a18de
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -66,9 +66,12 @@ import appHost from 'apphost';
if (!sourceElement) { if (!sourceElement) {
sourceElement = document.activeElement || window; 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; sourceElement = dlg;
} }
} }