From a3d53f9008c64dfb1223e9315c80b1b0db563bad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Hanno=20J=2E=20G=C3=B6decke?= Date: Mon, 26 Jun 2023 18:44:04 +0200 Subject: [PATCH 1/4] Add workaround fix for #35350 See also: https://github.com/facebook/react-native/pull/37913#issuecomment-1602240775 --- packages/virtualized-lists/Lists/VirtualizedList.js | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/packages/virtualized-lists/Lists/VirtualizedList.js b/packages/virtualized-lists/Lists/VirtualizedList.js index 0c078e085957c3..3449d8d5a318f7 100644 --- a/packages/virtualized-lists/Lists/VirtualizedList.js +++ b/packages/virtualized-lists/Lists/VirtualizedList.js @@ -14,6 +14,7 @@ import type { LayoutEvent, ScrollEvent, } from 'react-native/Libraries/Types/CoreEventTypes'; +import Platform from 'react-native/Libraries/Utilities/Platform'; import type {ViewToken} from './ViewabilityHelper'; import type { Item, @@ -1136,6 +1137,8 @@ class VirtualizedList extends StateSafePureComponent { style: inversionStyle ? [inversionStyle, this.props.style] : this.props.style, + internalAndroidApplyInvertedFix: + Platform.OS === 'android' && this.props.inverted, maintainVisibleContentPosition: this.props.maintainVisibleContentPosition != null ? { @@ -1968,9 +1971,10 @@ class VirtualizedList extends StateSafePureComponent { } const styles = StyleSheet.create({ - verticallyInverted: { - transform: [{scaleY: -1}], - }, + verticallyInverted: + Platform.OS === 'android' + ? {transform: [{scale: -1}]} + : {transform: [{scaleY: -1}]}, horizontallyInverted: { transform: [{scaleX: -1}], }, From 1998abf75299a3ec7ff0b1be3728c0b287e17e00 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Hanno=20J=2E=20G=C3=B6decke?= Date: Fri, 14 Jul 2023 12:25:14 +0200 Subject: [PATCH 2/4] use correct prop name --- packages/virtualized-lists/Lists/VirtualizedList.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/virtualized-lists/Lists/VirtualizedList.js b/packages/virtualized-lists/Lists/VirtualizedList.js index 3449d8d5a318f7..fa2de5a0ec0f2e 100644 --- a/packages/virtualized-lists/Lists/VirtualizedList.js +++ b/packages/virtualized-lists/Lists/VirtualizedList.js @@ -1137,7 +1137,7 @@ class VirtualizedList extends StateSafePureComponent { style: inversionStyle ? [inversionStyle, this.props.style] : this.props.style, - internalAndroidApplyInvertedFix: + isInvertedVirtualizedList: Platform.OS === 'android' && this.props.inverted, maintainVisibleContentPosition: this.props.maintainVisibleContentPosition != null From 589592a0c038929e797951e4b0fe56326716fd9c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Hanno=20J=2E=20G=C3=B6decke?= Date: Thu, 20 Jul 2023 12:42:15 +0200 Subject: [PATCH 3/4] cleanup imports --- packages/virtualized-lists/Lists/VirtualizedList.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/virtualized-lists/Lists/VirtualizedList.js b/packages/virtualized-lists/Lists/VirtualizedList.js index fa2de5a0ec0f2e..c0625f16813fb6 100644 --- a/packages/virtualized-lists/Lists/VirtualizedList.js +++ b/packages/virtualized-lists/Lists/VirtualizedList.js @@ -14,7 +14,6 @@ import type { LayoutEvent, ScrollEvent, } from 'react-native/Libraries/Types/CoreEventTypes'; -import Platform from 'react-native/Libraries/Utilities/Platform'; import type {ViewToken} from './ViewabilityHelper'; import type { Item, @@ -32,6 +31,7 @@ import { StyleSheet, findNodeHandle, } from 'react-native'; +import Platform from 'react-native/Libraries/Utilities/Platform'; import Batchinator from '../Interaction/Batchinator'; import clamp from '../Utilities/clamp'; import infoLog from '../Utilities/infoLog'; From f9f2df27a514566016354c6867d8b6a58334359c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Hanno=20J=2E=20G=C3=B6decke?= Date: Thu, 20 Jul 2023 12:43:37 +0200 Subject: [PATCH 4/4] Always forward isInvertedVirtualizedList --- packages/virtualized-lists/Lists/VirtualizedList.js | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/packages/virtualized-lists/Lists/VirtualizedList.js b/packages/virtualized-lists/Lists/VirtualizedList.js index c0625f16813fb6..c28bbb50968021 100644 --- a/packages/virtualized-lists/Lists/VirtualizedList.js +++ b/packages/virtualized-lists/Lists/VirtualizedList.js @@ -1137,8 +1137,7 @@ class VirtualizedList extends StateSafePureComponent { style: inversionStyle ? [inversionStyle, this.props.style] : this.props.style, - isInvertedVirtualizedList: - Platform.OS === 'android' && this.props.inverted, + isInvertedVirtualizedList: this.props.inverted, maintainVisibleContentPosition: this.props.maintainVisibleContentPosition != null ? {