Fix dialog modal close on background click
Does no longer trigger when you click in the scroll bar.
This commit is contained in:
parent
44362b1172
commit
93d279e053
2
js/admin.min.js
vendored
2
js/admin.min.js
vendored
File diff suppressed because one or more lines are too long
3
js/application.min.js
vendored
3
js/application.min.js
vendored
File diff suppressed because one or more lines are too long
10
js/complete.min.js
vendored
10
js/complete.min.js
vendored
File diff suppressed because one or more lines are too long
@ -371,7 +371,16 @@ _$$('.fictioneer-dialog button[formmethod="dialog"][value="cancel"]').forEach(el
|
||||
// Close dialog on click outside
|
||||
_$$('.fictioneer-dialog').forEach(element => {
|
||||
element.addEventListener('mousedown', event => {
|
||||
event.target.tagName.toLowerCase() === 'dialog' && event.target.close();
|
||||
if (event.target === event.currentTarget) {
|
||||
const rect = element.getBoundingClientRect();
|
||||
const outside = event.clientX < rect.left || event.clientX > rect.right ||
|
||||
event.clientY < rect.top || event.clientY > rect.bottom;
|
||||
|
||||
if (outside) {
|
||||
event.preventDefault();
|
||||
event.target.close();
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
|
@ -1607,9 +1607,15 @@ _$$('[data-click-action*="close-dialog-modal"], button[formmethod="dialog"][valu
|
||||
// Close dialog modal on click outside
|
||||
_$$('dialog').forEach(element => {
|
||||
element.addEventListener('mousedown', event => {
|
||||
if (event.target.tagName.toLowerCase() === 'dialog') {
|
||||
event.preventDefault();
|
||||
event.target.close();
|
||||
if (event.target === event.currentTarget) {
|
||||
const rect = element.getBoundingClientRect();
|
||||
const outside = event.clientX < rect.left || event.clientX > rect.right ||
|
||||
event.clientY < rect.top || event.clientY > rect.bottom;
|
||||
|
||||
if (outside) {
|
||||
event.preventDefault();
|
||||
event.target.close();
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
|
Loading…
x
Reference in New Issue
Block a user