diff --git a/react-native.js b/react-native.js index 229f09a8230ab24079d471f65d28d36908f0f2ea..5c9a6c2501d8de3c44e138593831f3442b4b9204 100644 --- a/react-native.js +++ b/react-native.js @@ -7256,15 +7256,17 @@ var LegendListInner = typedForwardRef(function LegendListInner2(props, forwarded useWindowScroll: useWindowScrollResolved }; state.refScroller = refScroller; - if (!isFirstLocal && previousAdaptiveRender && !experimental_adaptiveRender) { - resetAdaptiveRender(ctx); - } - if (shouldResetFreshDataLayout) { - resetInitialRenderState(ctx, { - resetInitialScroll: !!initialScrollProp, - resetLayout: true - }); - } + React2.useLayoutEffect(() => { + if (!isFirstLocal && previousAdaptiveRender && !experimental_adaptiveRender) { + resetAdaptiveRender(ctx); + } + if (shouldResetFreshDataLayout) { + resetInitialRenderState(ctx, { + resetInitialScroll: !!initialScrollProp, + resetLayout: true + }); + } + }, [experimental_adaptiveRender, initialScrollProp, isFirstLocal, previousAdaptiveRender, shouldResetFreshDataLayout]); const memoizedLastItemKeys = React2.useMemo(() => { if (!dataProp.length) return []; return Array.from( diff --git a/react-native.mjs b/react-native.mjs index c2e0f3823f524e31e2105a5fbda76be78c926226..dc0c9c6d5b887968c631dd0ba1646fd40ba28c63 100644 --- a/react-native.mjs +++ b/react-native.mjs @@ -7235,15 +7235,17 @@ var LegendListInner = typedForwardRef(function LegendListInner2(props, forwarded useWindowScroll: useWindowScrollResolved }; state.refScroller = refScroller; - if (!isFirstLocal && previousAdaptiveRender && !experimental_adaptiveRender) { - resetAdaptiveRender(ctx); - } - if (shouldResetFreshDataLayout) { - resetInitialRenderState(ctx, { - resetInitialScroll: !!initialScrollProp, - resetLayout: true - }); - } + useLayoutEffect(() => { + if (!isFirstLocal && previousAdaptiveRender && !experimental_adaptiveRender) { + resetAdaptiveRender(ctx); + } + if (shouldResetFreshDataLayout) { + resetInitialRenderState(ctx, { + resetInitialScroll: !!initialScrollProp, + resetLayout: true + }); + } + }, [experimental_adaptiveRender, initialScrollProp, isFirstLocal, previousAdaptiveRender, shouldResetFreshDataLayout]); const memoizedLastItemKeys = useMemo(() => { if (!dataProp.length) return []; return Array.from(