diff --git a/change/@fluentui-react-0670c9ba-89d4-45ef-a1a9-e985a92ab991.json b/change/@fluentui-react-0670c9ba-89d4-45ef-a1a9-e985a92ab991.json new file mode 100644 index 0000000000000..7f80055af0217 --- /dev/null +++ b/change/@fluentui-react-0670c9ba-89d4-45ef-a1a9-e985a92ab991.json @@ -0,0 +1,7 @@ +{ + "type": "patch", + "comment": "fix the decision condition in dismissOnTargetWindowBlur to handle the case that clicking inside an iframe.", + "packageName": "@fluentui/react", + "email": "272097277@qq.com", + "dependentChangeType": "patch" +} diff --git a/packages/react/src/components/Callout/CalloutContent.base.tsx b/packages/react/src/components/Callout/CalloutContent.base.tsx index e9d1d2ac206c2..939c33650c8eb 100644 --- a/packages/react/src/components/Callout/CalloutContent.base.tsx +++ b/packages/react/src/components/Callout/CalloutContent.base.tsx @@ -342,7 +342,7 @@ function useDismissHandlers( if ( ((preventDismissOnEvent && !preventDismissOnEvent(ev)) || (!preventDismissOnEvent && !preventDismissOnLostFocus)) && - !targetWindow?.document.hasFocus() && + (!targetWindow?.document.hasFocus() || ev.target === targetRef.current) && ev.relatedTarget === null ) { onDismiss?.(ev);