mirror of
https://github.com/toeverything/AFFiNE.git
synced 2026-08-10 13:38:49 +08:00
fix(core): remove modal default overlay onclick (#8035)
fix AF-1300 overlay click is already handled in `handlePointerDownOutSide`. adding onclick to overlay will cause issues on closing nested menus.
This commit is contained in:
@@ -9,7 +9,7 @@ import * as Dialog from '@radix-ui/react-dialog';
|
|||||||
import * as VisuallyHidden from '@radix-ui/react-visually-hidden';
|
import * as VisuallyHidden from '@radix-ui/react-visually-hidden';
|
||||||
import { assignInlineVars } from '@vanilla-extract/dynamic';
|
import { assignInlineVars } from '@vanilla-extract/dynamic';
|
||||||
import clsx from 'clsx';
|
import clsx from 'clsx';
|
||||||
import type { CSSProperties, MouseEvent } from 'react';
|
import type { CSSProperties } from 'react';
|
||||||
import { forwardRef, useCallback, useEffect, useState } from 'react';
|
import { forwardRef, useCallback, useEffect, useState } from 'react';
|
||||||
|
|
||||||
import { isMobile } from '../../utils/env';
|
import { isMobile } from '../../utils/env';
|
||||||
@@ -135,7 +135,6 @@ export const ModalInner = forwardRef<HTMLDivElement, ModalProps>(
|
|||||||
overlayOptions: {
|
overlayOptions: {
|
||||||
className: overlayClassName,
|
className: overlayClassName,
|
||||||
style: overlayStyle,
|
style: overlayStyle,
|
||||||
onClick: onOverlayClick,
|
|
||||||
...otherOverlayOptions
|
...otherOverlayOptions
|
||||||
} = {},
|
} = {},
|
||||||
closeButtonOptions,
|
closeButtonOptions,
|
||||||
@@ -185,18 +184,6 @@ export const ModalInner = forwardRef<HTMLDivElement, ModalProps>(
|
|||||||
[onEscapeKeyDown, persistent]
|
[onEscapeKeyDown, persistent]
|
||||||
);
|
);
|
||||||
|
|
||||||
const handleOverlayClick = useCallback(
|
|
||||||
(e: MouseEvent<HTMLDivElement>) => {
|
|
||||||
onOverlayClick?.(e);
|
|
||||||
if (persistent) {
|
|
||||||
e.preventDefault();
|
|
||||||
} else {
|
|
||||||
onOpenChange?.(false);
|
|
||||||
}
|
|
||||||
},
|
|
||||||
[onOpenChange, onOverlayClick, persistent]
|
|
||||||
);
|
|
||||||
|
|
||||||
if (!container) {
|
if (!container) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -219,7 +206,6 @@ export const ModalInner = forwardRef<HTMLDivElement, ModalProps>(
|
|||||||
style={{
|
style={{
|
||||||
...overlayStyle,
|
...overlayStyle,
|
||||||
}}
|
}}
|
||||||
onClick={handleOverlayClick}
|
|
||||||
{...otherOverlayOptions}
|
{...otherOverlayOptions}
|
||||||
/>
|
/>
|
||||||
<div
|
<div
|
||||||
|
|||||||
Reference in New Issue
Block a user