diff --git a/packages/react-dom/src/client/ReactDOMEventHandle.js b/packages/react-dom/src/client/ReactDOMEventHandle.js index 24d6b73e95..9312c19bb3 100644 --- a/packages/react-dom/src/client/ReactDOMEventHandle.js +++ b/packages/react-dom/src/client/ReactDOMEventHandle.js @@ -22,7 +22,7 @@ import { getEventListenerMap, getFiberFromScopeInstance, } from './ReactDOMComponentTree'; -import {ELEMENT_NODE, COMMENT_NODE} from '../shared/HTMLNodeType'; +import {ELEMENT_NODE} from '../shared/HTMLNodeType'; import { listenToNativeEvent, addEventTypeToDispatchConfig, @@ -90,7 +90,7 @@ function registerEventOnNearestTargetContainer( ): void { // If it is, find the nearest root or portal and make it // our event handle target container. - let targetContainer = getNearestRootOrPortalContainer(targetFiber); + const targetContainer = getNearestRootOrPortalContainer(targetFiber); if (targetContainer === null) { invariant( false, @@ -98,9 +98,6 @@ function registerEventOnNearestTargetContainer( 'that did not have a corresponding root. This is likely a bug in React.', ); } - if (targetContainer.nodeType === COMMENT_NODE) { - targetContainer = ((targetContainer.parentNode: any): Element); - } const listenerMap = getEventListenerMap(targetContainer); listenToNativeEvent( topLevelType, diff --git a/packages/react-dom/src/events/__tests__/DOMModernPluginEventSystem-test.internal.js b/packages/react-dom/src/events/__tests__/DOMModernPluginEventSystem-test.internal.js index db46c30c40..2ebdfa03de 100644 --- a/packages/react-dom/src/events/__tests__/DOMModernPluginEventSystem-test.internal.js +++ b/packages/react-dom/src/events/__tests__/DOMModernPluginEventSystem-test.internal.js @@ -3009,82 +3009,6 @@ describe('DOMModernPluginEventSystem', () => { expect(onClick).toHaveBeenCalledTimes(1); }); - - // @gate experimental - it('handle propagation of click events between disjointed comment roots', () => { - const buttonRef = React.createRef(); - const divRef = React.createRef(); - const log = []; - const setClick = ReactDOM.unstable_createEventHandle('click'); - const setClickCapture = ReactDOM.unstable_createEventHandle( - 'click', - {capture: true}, - ); - const onClick = jest.fn(e => - log.push(['bubble', e.currentTarget]), - ); - const onClickCapture = jest.fn(e => - log.push(['capture', e.currentTarget]), - ); - - function Child() { - React.useEffect(() => { - const click1 = setClick(divRef.current, onClick); - const click2 = setClickCapture( - divRef.current, - onClickCapture, - ); - return () => { - click1(); - click2(); - }; - }); - - return