Skip to content

Commit c1db41f

Browse files
alfonsocj-cbfacebook-github-bot
authored andcommitted
Fixed - Text with adjustsFontSizeToFit changes the text layout infinitely (#33135)
Summary: Fixes the infinite loop explained in the issue #33129 by reverting commit 5902152. PR #31538. `onCollectExtraUpdates` is part of the node update cycle. By marking the node as updated `markUpdated()` in `onCollectExtraUpdates` we are restarting the update infinitely. Unfortunately, reverting this PR also reintroduces the original issue #30717 which IMO is minor compared to the infinite loop. ## Changelog <!-- Help reviewers and the release process by writing your own changelog entry. For an example, see: https://github.com/facebook/react-native/wiki/Changelog --> [Android] [Fixed] - Text with adjustsFontSizeToFit changes the text layout infinitely Pull Request resolved: #33135 Test Plan: I added a console.log to the Text `onTextLayout` in [packages/rn-tester/js/examples/Text/TextAdjustsDynamicLayoutExample.js ](https://github.com/facebook/react-native/blob/main/packages/rn-tester/js/examples/Text/TextAdjustsDynamicLayoutExample.js) to see if the infinite loop is gone. ![image](https://user-images.githubusercontent.com/3791120/154523914-e6aa7cf5-7a1c-488f-a392-898f4c85a833.png) ![Screen Shot 2022-02-17 at 11 20 31 AM](https://user-images.githubusercontent.com/3791120/154524274-880c3bed-d2c6-456b-8947-42e75793c424.jpg) ``` Reviewed By: ShikaSD Differential Revision: D34310218 Pulled By: lunaleaps fbshipit-source-id: 0d40f49d15c562ec25983145897bd95dc182f897
1 parent c56754a commit c1db41f

File tree

1 file changed

+0
-5
lines changed

1 file changed

+0
-5
lines changed

ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextShadowNode.java

-5
Original file line numberDiff line numberDiff line change
@@ -343,11 +343,6 @@ public void onCollectExtraUpdates(UIViewOperationQueue uiViewOperationQueue) {
343343
mJustificationMode);
344344
uiViewOperationQueue.enqueueUpdateExtraData(getReactTag(), reactTextUpdate);
345345
}
346-
347-
if (mAdjustsFontSizeToFit) {
348-
// Nodes with `adjustsFontSizeToFit` enabled need to be remeasured on every relayout.
349-
markUpdated();
350-
}
351346
}
352347

353348
@ReactProp(name = "onTextLayout")

0 commit comments

Comments
 (0)