Page MenuHomePhabricator

D5315.id17484.diff
No OneTemporary

D5315.id17484.diff

diff --git a/web/modals/modal.react.js b/web/modals/modal.react.js
--- a/web/modals/modal.react.js
+++ b/web/modals/modal.react.js
@@ -31,10 +31,15 @@
withCloseButton = true,
} = props;
const overlayRef = React.useRef();
+ const isBackgroundClick = React.useRef(null);
- const onBackgroundClick = React.useCallback(
+ const onBackgroundMouseDown = React.useCallback(event => {
+ isBackgroundClick.current = event.target === overlayRef.current;
+ }, []);
+
+ const onBackgroundMouseUp = React.useCallback(
event => {
- if (event.target === overlayRef.current) {
+ if (event.target === overlayRef.current && isBackgroundClick.current) {
onClose();
}
},
@@ -87,7 +92,8 @@
<div
className={css.modalOverlay}
ref={overlayRef}
- onClick={onBackgroundClick}
+ onMouseDown={onBackgroundMouseDown}
+ onMouseUp={onBackgroundMouseUp}
tabIndex={0}
onKeyDown={onKeyDown}
>

File Metadata

Mime Type
text/plain
Expires
Thu, Sep 19, 8:15 AM (2 h, 11 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
2136095
Default Alt Text
D5315.id17484.diff (970 B)

Event Timeline