diff --git a/RNTester/js/components/TextInlineView.js b/RNTester/js/components/TextInlineView.js
index e5fcc68aae..a15762131b 100644
--- a/RNTester/js/components/TextInlineView.js
+++ b/RNTester/js/components/TextInlineView.js
@@ -25,6 +25,21 @@ function Basic(): React.Node {
);
}
+function NestedTexts(): React.Node {
+ return (
+
+ This is the first row
+
+
+ This is a nested text
+
+ with a Red View
+
+
+
+ );
+}
+
function ClippedByText(): React.Node {
return (
@@ -200,6 +215,7 @@ class ChangeInnerViewSize extends React.Component<*, ChangeSizeState> {
module.exports = {
Basic,
+ NestedTexts,
ClippedByText,
ChangeImageSize,
ChangeViewSize,
diff --git a/RNTester/js/examples/Text/TextExample.android.js b/RNTester/js/examples/Text/TextExample.android.js
index 72813a71cd..f9631821f9 100644
--- a/RNTester/js/examples/Text/TextExample.android.js
+++ b/RNTester/js/examples/Text/TextExample.android.js
@@ -664,6 +664,9 @@ class TextExample extends React.Component<{...}> {
+
+
+
diff --git a/ReactCommon/fabric/mounting/Differentiator.cpp b/ReactCommon/fabric/mounting/Differentiator.cpp
index 0e93586411..e1ac64cbf3 100644
--- a/ReactCommon/fabric/mounting/Differentiator.cpp
+++ b/ReactCommon/fabric/mounting/Differentiator.cpp
@@ -189,7 +189,9 @@ static void sliceChildShadowNodeViewPairsRecursively(
for (auto const &sharedChildShadowNode : shadowNode.getChildren()) {
auto &childShadowNode = *sharedChildShadowNode;
auto shadowView = ShadowView(childShadowNode);
+ auto origin = layoutOffset;
if (shadowView.layoutMetrics != EmptyLayoutMetrics) {
+ origin += shadowView.layoutMetrics.frame.origin;
shadowView.layoutMetrics.frame.origin += layoutOffset;
}
@@ -203,7 +205,7 @@ static void sliceChildShadowNodeViewPairsRecursively(
}
sliceChildShadowNodeViewPairsRecursively(
- pairList, shadowView.layoutMetrics.frame.origin, childShadowNode);
+ pairList, origin, childShadowNode);
}
}
}