diff --git a/packages/react-native-fantom/src/__tests__/Fantom-itest.js b/packages/react-native-fantom/src/__tests__/Fantom-itest.js index a30c058464d..d58ebd15043 100644 --- a/packages/react-native-fantom/src/__tests__/Fantom-itest.js +++ b/packages/react-native-fantom/src/__tests__/Fantom-itest.js @@ -497,12 +497,19 @@ describe('Fantom', () => { const element = ensureInstance(ref.current, ReactNativeElement); Fantom.runOnUIThread(() => { - Fantom.enqueueNativeEvent(element, 'scroll', { - contentOffset: { - x: 0, - y: 1, + Fantom.enqueueNativeEvent( + element, + 'scroll', + { + contentOffset: { + x: 0, + y: 1, + }, }, - }); + { + isUnique: true, + }, + ); Fantom.enqueueNativeEvent( element, 'scroll', diff --git a/packages/react-native/Libraries/Components/ScrollView/__tests__/ScrollView-itest.js b/packages/react-native/Libraries/Components/ScrollView/__tests__/ScrollView-itest.js index fc14bd8e24d..a052de476c5 100644 --- a/packages/react-native/Libraries/Components/ScrollView/__tests__/ScrollView-itest.js +++ b/packages/react-native/Libraries/Components/ScrollView/__tests__/ScrollView-itest.js @@ -83,12 +83,19 @@ describe('onScroll', () => { const element = ensureInstance(scrollViewRef.current, ReactNativeElement); Fantom.runOnUIThread(() => { - Fantom.enqueueNativeEvent(element, 'scroll', { - contentOffset: { - x: 0, - y: 1, + Fantom.enqueueNativeEvent( + element, + 'scroll', + { + contentOffset: { + x: 0, + y: 1, + }, }, - }); + { + isUnique: true, + }, + ); Fantom.enqueueNativeEvent( element, 'scroll', diff --git a/packages/react-native/ReactCommon/react/renderer/core/EventQueue.cpp b/packages/react-native/ReactCommon/react/renderer/core/EventQueue.cpp index 45e650b33df..defac2e416e 100644 --- a/packages/react-native/ReactCommon/react/renderer/core/EventQueue.cpp +++ b/packages/react-native/ReactCommon/react/renderer/core/EventQueue.cpp @@ -35,7 +35,7 @@ void EventQueue::enqueueEvent(RawEvent&& rawEvent) const { for (auto it = eventQueue_.rbegin(); it != eventQueue_.rend(); ++it) { if (it->type == rawEvent.type && - it->eventTarget == rawEvent.eventTarget) { + it->eventTarget == rawEvent.eventTarget && it->isUnique) { repeatedEvent = it; break; } else if (it->eventTarget == rawEvent.eventTarget) { diff --git a/packages/react-native/src/private/renderer/core/__tests__/EventDispatching-itest.js b/packages/react-native/src/private/renderer/core/__tests__/EventDispatching-itest.js index bec84e358fc..bdcaf83bbc0 100644 --- a/packages/react-native/src/private/renderer/core/__tests__/EventDispatching-itest.js +++ b/packages/react-native/src/private/renderer/core/__tests__/EventDispatching-itest.js @@ -483,7 +483,7 @@ describe('Event Dispatching', () => { expect(onPointerMove).toHaveBeenCalledTimes(2); }); - it.skip('are NOT combined with the same type if it is non-unique', () => { + it('are NOT combined with the same type if it is non-unique', () => { const root = Fantom.createRoot(); const ref = React.createRef>();