Skip to content

Fix flex-growing content sizing in <ScrollView> (#57601)#57601

Closed
sammy-SC wants to merge 1 commit into
react:mainfrom
sammy-SC:export-D112353599
Closed

Fix flex-growing content sizing in <ScrollView> (#57601)#57601
sammy-SC wants to merge 1 commit into
react:mainfrom
sammy-SC:export-D112353599

Conversation

@sammy-SC

@sammy-SC sammy-SC commented Jul 19, 2026

Copy link
Copy Markdown
Contributor

Summary:
X-link: react/yoga#1997

Preserve available height for flex-growing subtrees nested inside scroll content. Apply optimized flex-basis measurement only when a conservative proof shows that the subtree is height-independent and connected to the nearest scroll ancestor through column-stretch layout edges.

Keep authored flex-basis, overflow, padding, absolute-positioning, wrapping, percentage-owner, and box-sizing semantics intact across layout and measurement passes. Gate boxSizing cache invalidation with the same Yoga feature so disabling it preserves legacy caching behavior.

Add Fantom coverage for native boxSizing updates and for rerendering after both flexBasis and intrinsic height change. Verify the expected behavior across both fixYogaFlexBasisFitContentInMainAxis states.

Changelog: [internal]

Reviewed By: rubennorte

Differential Revision: D112353599

@meta-codesync

meta-codesync Bot commented Jul 19, 2026

Copy link
Copy Markdown

@sammy-SC has exported this pull request. If you are a Meta employee, you can view the originating Diff in D112353599.

@meta-cla meta-cla Bot added the CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. label Jul 19, 2026
@sammy-SC
sammy-SC force-pushed the export-D112353599 branch from 2462efd to 4245c1c Compare July 22, 2026 11:59
sammy-SC added a commit to sammy-SC/yoga that referenced this pull request Jul 22, 2026
Summary:
X-link: react/react-native#57601

Preserve available height for flex-growing subtrees nested inside scroll content. Apply optimized flex-basis measurement only when a conservative proof shows that the subtree is height-independent and connected to the nearest scroll ancestor through column-stretch layout edges.

Keep authored flex-basis, overflow, padding, absolute-positioning, wrapping, percentage-owner, and box-sizing semantics intact across layout and measurement passes. Gate `boxSizing` cache invalidation with the same Yoga feature so disabling it preserves legacy caching behavior.

Add Fantom coverage for native `boxSizing` updates and for rerendering after both `flexBasis` and intrinsic height change. Verify the expected behavior across both `fixYogaFlexBasisFitContentInMainAxis` states.

Changelog: [internal]

Reviewed By: rubennorte

Differential Revision: D112353599
sammy-SC added a commit to sammy-SC/yoga that referenced this pull request Jul 22, 2026
Summary:

X-link: react/react-native#57601

Preserve available height for flex-growing subtrees nested inside scroll content. Apply optimized flex-basis measurement only when a conservative proof shows that the subtree is height-independent and connected to the nearest scroll ancestor through column-stretch layout edges.

Keep authored flex-basis, overflow, padding, absolute-positioning, wrapping, percentage-owner, and box-sizing semantics intact across layout and measurement passes. Gate `boxSizing` cache invalidation with the same Yoga feature so disabling it preserves legacy caching behavior.

Add Fantom coverage for native `boxSizing` updates and for rerendering after both `flexBasis` and intrinsic height change. Verify the expected behavior across both `fixYogaFlexBasisFitContentInMainAxis` states.

Changelog: [internal]

Reviewed By: rubennorte

Differential Revision: D112353599
@meta-codesync meta-codesync Bot changed the title Fix flex-growing content sizing in <ScrollView> Fix flex-growing content sizing in <ScrollView> (#57601) Jul 22, 2026
sammy-SC added a commit to sammy-SC/react-native that referenced this pull request Jul 22, 2026
Summary:
X-link: react/yoga#1997


Preserve available height for flex-growing subtrees nested inside scroll content. Apply optimized flex-basis measurement only when a conservative proof shows that the subtree is height-independent and connected to the nearest scroll ancestor through column-stretch layout edges.

Keep authored flex-basis, overflow, padding, absolute-positioning, wrapping, percentage-owner, and box-sizing semantics intact across layout and measurement passes. Gate `boxSizing` cache invalidation with the same Yoga feature so disabling it preserves legacy caching behavior.

Add Fantom coverage for native `boxSizing` updates and for rerendering after both `flexBasis` and intrinsic height change. Verify the expected behavior across both `fixYogaFlexBasisFitContentInMainAxis` states.

Changelog: [internal]

Reviewed By: rubennorte

Differential Revision: D112353599
@sammy-SC
sammy-SC force-pushed the export-D112353599 branch from 4245c1c to bebb753 Compare July 22, 2026 15:24
sammy-SC added a commit to sammy-SC/react-native that referenced this pull request Jul 22, 2026
Summary:
X-link: react/yoga#1997


Preserve available height for flex-growing subtrees nested inside scroll content. Apply optimized flex-basis measurement only when a conservative proof shows that the subtree is height-independent and connected to the nearest scroll ancestor through column-stretch layout edges.

Keep authored flex-basis, overflow, padding, absolute-positioning, wrapping, percentage-owner, and box-sizing semantics intact across layout and measurement passes. Gate `boxSizing` cache invalidation with the same Yoga feature so disabling it preserves legacy caching behavior.

Add Fantom coverage for native `boxSizing` updates and for rerendering after both `flexBasis` and intrinsic height change. Verify the expected behavior across both `fixYogaFlexBasisFitContentInMainAxis` states.

Changelog: [internal]

Reviewed By: rubennorte

Differential Revision: D112353599
@sammy-SC
sammy-SC force-pushed the export-D112353599 branch from bebb753 to 5828e2d Compare July 22, 2026 15:38
sammy-SC added a commit to sammy-SC/yoga that referenced this pull request Jul 22, 2026
Summary:

X-link: react/react-native#57601

Preserve available height for flex-growing subtrees nested inside scroll content. Apply optimized flex-basis measurement only when a conservative proof shows that the subtree is height-independent and connected to the nearest scroll ancestor through column-stretch layout edges.

Keep authored flex-basis, overflow, padding, absolute-positioning, wrapping, percentage-owner, and box-sizing semantics intact across layout and measurement passes. Gate `boxSizing` cache invalidation with the same Yoga feature so disabling it preserves legacy caching behavior.

Add Fantom coverage for native `boxSizing` updates and for rerendering after both `flexBasis` and intrinsic height change. Verify the expected behavior across both `fixYogaFlexBasisFitContentInMainAxis` states.

Changelog: [internal]

Reviewed By: rubennorte

Differential Revision: D112353599
Summary:
X-link: react/yoga#1997


Preserve available height for flex-growing subtrees nested inside scroll content. Apply optimized flex-basis measurement only when a conservative proof shows that the subtree is height-independent and connected to the nearest scroll ancestor through column-stretch layout edges.

Keep authored flex-basis, overflow, padding, absolute-positioning, wrapping, percentage-owner, and box-sizing semantics intact across layout and measurement passes. Gate `boxSizing` cache invalidation with the same Yoga feature so disabling it preserves legacy caching behavior.

Add Fantom coverage for native `boxSizing` updates and for rerendering after both `flexBasis` and intrinsic height change. Verify the expected behavior across both `fixYogaFlexBasisFitContentInMainAxis` states.

Changelog: [internal]

Reviewed By: rubennorte

Differential Revision: D112353599
sammy-SC added a commit to sammy-SC/yoga that referenced this pull request Jul 22, 2026
Summary:

X-link: react/react-native#57601

Preserve available height for flex-growing subtrees nested inside scroll content. Apply optimized flex-basis measurement only when a conservative proof shows that the subtree is height-independent and connected to the nearest scroll ancestor through column-stretch layout edges.

Keep authored flex-basis, overflow, padding, absolute-positioning, wrapping, percentage-owner, and box-sizing semantics intact across layout and measurement passes. Gate `boxSizing` cache invalidation with the same Yoga feature so disabling it preserves legacy caching behavior.

Add Fantom coverage for native `boxSizing` updates and for rerendering after both `flexBasis` and intrinsic height change. Verify the expected behavior across both `fixYogaFlexBasisFitContentInMainAxis` states.

Changelog: [internal]

Reviewed By: rubennorte

Differential Revision: D112353599
@sammy-SC
sammy-SC force-pushed the export-D112353599 branch from 5828e2d to 1dfefdd Compare July 22, 2026 18:54
@meta-codesync meta-codesync Bot closed this in 5421c5e Jul 22, 2026
@meta-codesync meta-codesync Bot added the Merged This PR has been merged. label Jul 22, 2026
@meta-codesync

meta-codesync Bot commented Jul 22, 2026

Copy link
Copy Markdown

This pull request has been merged in 5421c5e.

meta-codesync Bot pushed a commit to react/yoga that referenced this pull request Jul 22, 2026
Summary:
Pull Request resolved: #1997

X-link: react/react-native#57601

Preserve available height for flex-growing subtrees nested inside scroll content. Apply optimized flex-basis measurement only when a conservative proof shows that the subtree is height-independent and connected to the nearest scroll ancestor through column-stretch layout edges.

Keep authored flex-basis, overflow, padding, absolute-positioning, wrapping, percentage-owner, and box-sizing semantics intact across layout and measurement passes. Gate `boxSizing` cache invalidation with the same Yoga feature so disabling it preserves legacy caching behavior.

Add Fantom coverage for native `boxSizing` updates and for rerendering after both `flexBasis` and intrinsic height change. Verify the expected behavior across both `fixYogaFlexBasisFitContentInMainAxis` states.

Changelog: [internal]

Reviewed By: rubennorte

Differential Revision: D112353599

fbshipit-source-id: e6ed62e4733a5e6c60bff2a83d16da3e8336b119
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. Merged This PR has been merged. meta-exported p: Facebook Partner: Facebook Partner

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant