From f77422ba083f64113dfe350703cde4397e876111 Mon Sep 17 00:00:00 2001 From: Bartol Karuza Date: Fri, 16 Jun 2017 16:33:53 +0200 Subject: [PATCH 1/4] add perspective 1000 to invert transforms --- Libraries/Lists/VirtualizedList.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Libraries/Lists/VirtualizedList.js b/Libraries/Lists/VirtualizedList.js index 9009b58c1729e1..8cd155d7fd9e7f 100644 --- a/Libraries/Lists/VirtualizedList.js +++ b/Libraries/Lists/VirtualizedList.js @@ -1202,10 +1202,10 @@ class CellRenderer extends React.Component { const styles = StyleSheet.create({ verticallyInverted: { - transform: [{scaleY: -1}], + transform: [{scaleY: -1}, {perspective: 1000}], }, horizontallyInverted: { - transform: [{scaleX: -1}], + transform: [{scaleX: -1}, {perspective: 1000}], }, }); From 958537f10fb1215cc0a51ac47e9eca4434bf6f41 Mon Sep 17 00:00:00 2001 From: Bartol Karuza Date: Fri, 16 Jun 2017 17:40:28 +0200 Subject: [PATCH 2/4] only apply perspective fix on Android --- Libraries/Lists/VirtualizedList.js | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/Libraries/Lists/VirtualizedList.js b/Libraries/Lists/VirtualizedList.js index 8cd155d7fd9e7f..0dda6df259e9e5 100644 --- a/Libraries/Lists/VirtualizedList.js +++ b/Libraries/Lists/VirtualizedList.js @@ -1200,12 +1200,20 @@ class CellRenderer extends React.Component { } } +const verticalTransform = [{scaleY: -1}]; +const horizontalTransform = [{scaleX: -1}]; + +if(Platform.OS === 'android') { + verticalTransform.push({perspective: 1}); + horizontalTransform.push({perspective: 1}); +} + const styles = StyleSheet.create({ verticallyInverted: { - transform: [{scaleY: -1}, {perspective: 1000}], + transform: verticalTransform, }, horizontallyInverted: { - transform: [{scaleX: -1}, {perspective: 1000}], + transform: horizontalTransform, }, }); From b592970e7084f5c2c876ec1bcadfe1663abf8546 Mon Sep 17 00:00:00 2001 From: Bartol Karuza Date: Fri, 16 Jun 2017 17:58:25 +0200 Subject: [PATCH 3/4] added missing import --- Libraries/Lists/VirtualizedList.js | 1 + 1 file changed, 1 insertion(+) diff --git a/Libraries/Lists/VirtualizedList.js b/Libraries/Lists/VirtualizedList.js index 0dda6df259e9e5..3d0d122f49e90a 100644 --- a/Libraries/Lists/VirtualizedList.js +++ b/Libraries/Lists/VirtualizedList.js @@ -22,6 +22,7 @@ const ScrollView = require('ScrollView'); const StyleSheet = require('StyleSheet'); const View = require('View'); const ViewabilityHelper = require('ViewabilityHelper'); +const Platform = require('Platform'); const flattenStyle = require('flattenStyle'); const infoLog = require('infoLog'); From e448b5f5ad3a6b6540db023c8ce13eba7f00af98 Mon Sep 17 00:00:00 2001 From: Bartol Karuza Date: Fri, 16 Jun 2017 17:59:18 +0200 Subject: [PATCH 4/4] fix eslint --- Libraries/Lists/VirtualizedList.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Libraries/Lists/VirtualizedList.js b/Libraries/Lists/VirtualizedList.js index 3d0d122f49e90a..11853eebe9b415 100644 --- a/Libraries/Lists/VirtualizedList.js +++ b/Libraries/Lists/VirtualizedList.js @@ -1204,7 +1204,7 @@ class CellRenderer extends React.Component { const verticalTransform = [{scaleY: -1}]; const horizontalTransform = [{scaleX: -1}]; -if(Platform.OS === 'android') { +if (Platform.OS === 'android') { verticalTransform.push({perspective: 1}); horizontalTransform.push({perspective: 1}); }