Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix bug where we used border box for size of containing block in a certain case #1486

Closed
wants to merge 6 commits into from

Conversation

joevilches
Copy link
Contributor

Summary:
X-link: facebook/react-native#41688

Somehow missed this case. We never want to measure the CB as that gets border box but we want padding box

Reviewed By: NickGerleman

Differential Revision: D51376309

@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D51376309

joevilches pushed a commit to joevilches/react-native that referenced this pull request Dec 4, 2023
…rtain case (facebook#41688)

Summary:
X-link: facebook/yoga#1486


Somehow missed this case. We never want to measure the CB as that gets border box but we want padding box

Reviewed By: NickGerleman

Differential Revision: D51376309
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D51376309

joevilches added a commit to joevilches/yoga that referenced this pull request Dec 4, 2023
…rtain case (facebook#1486)

Summary:
Pull Request resolved: facebook#1486

X-link: facebook/react-native#41688

Somehow missed this case. We never want to measure the CB as that gets border box but we want padding box

Reviewed By: NickGerleman

Differential Revision: D51376309

fbshipit-source-id: c2f03bc24ec5e6669d9f2a193565f4f0cd9f7d9c
joevilches pushed a commit to joevilches/react-native that referenced this pull request Dec 4, 2023
…rtain case (facebook#41688)

Summary:
X-link: facebook/yoga#1486


Somehow missed this case. We never want to measure the CB as that gets border box but we want padding box

Reviewed By: NickGerleman

Differential Revision: D51376309
joevilches pushed a commit to joevilches/react-native that referenced this pull request Dec 4, 2023
…rtain case (facebook#41688)

Summary:
X-link: facebook/yoga#1486


Somehow missed this case. We never want to measure the CB as that gets border box but we want padding box

Reviewed By: NickGerleman

Differential Revision: D51376309
joevilches pushed a commit to joevilches/react-native that referenced this pull request Dec 4, 2023
…rtain case (facebook#41688)

Summary:
X-link: facebook/yoga#1486


Somehow missed this case. We never want to measure the CB as that gets border box but we want padding box

Reviewed By: NickGerleman

Differential Revision: D51376309
joevilches pushed a commit to joevilches/react-native that referenced this pull request Dec 5, 2023
…rtain case (facebook#41688)

Summary:
X-link: facebook/yoga#1486


Somehow missed this case. We never want to measure the CB as that gets border box but we want padding box

Reviewed By: NickGerleman

Differential Revision: D51376309
joevilches pushed a commit to joevilches/react-native that referenced this pull request Dec 5, 2023
…rtain case (facebook#41688)

Summary:
X-link: facebook/yoga#1486


Somehow missed this case. We never want to measure the CB as that gets border box but we want padding box

Reviewed By: NickGerleman

Differential Revision: D51376309
joevilches pushed a commit to joevilches/react-native that referenced this pull request Dec 5, 2023
…rtain case (facebook#41688)

Summary:
X-link: facebook/yoga#1486


Somehow missed this case. We never want to measure the CB as that gets border box but we want padding box

Reviewed By: NickGerleman

Differential Revision: D51376309
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D51376309

joevilches added a commit to joevilches/yoga that referenced this pull request Dec 5, 2023
…rtain case (facebook#1486)

Summary:
Pull Request resolved: facebook#1486

X-link: facebook/react-native#41688

Somehow missed this case. We never want to measure the CB as that gets border box but we want padding box

Reviewed By: NickGerleman

Differential Revision: D51376309

fbshipit-source-id: 7da931b52fef0c778804222829e5e753bff9d482
joevilches pushed a commit to joevilches/react-native that referenced this pull request Dec 5, 2023
…rtain case (facebook#41688)

Summary:
X-link: facebook/yoga#1486


Somehow missed this case. We never want to measure the CB as that gets border box but we want padding box

Reviewed By: NickGerleman

Differential Revision: D51376309
joevilches pushed a commit to joevilches/react-native that referenced this pull request Dec 5, 2023
…rtain case (facebook#41688)

Summary:
X-link: facebook/yoga#1486


Somehow missed this case. We never want to measure the CB as that gets border box but we want padding box

Reviewed By: NickGerleman

Differential Revision: D51376309
joevilches pushed a commit to joevilches/react-native that referenced this pull request Dec 5, 2023
…rtain case (facebook#41688)

Summary:
X-link: facebook/yoga#1486


Somehow missed this case. We never want to measure the CB as that gets border box but we want padding box

Reviewed By: NickGerleman

Differential Revision: D51376309
joevilches pushed a commit to joevilches/react-native that referenced this pull request Dec 5, 2023
…rtain case (facebook#41688)

Summary:
X-link: facebook/yoga#1486


Somehow missed this case. We never want to measure the CB as that gets border box but we want padding box

Reviewed By: NickGerleman

Differential Revision: D51376309
joevilches pushed a commit to joevilches/react-native that referenced this pull request Dec 6, 2023
…rtain case (facebook#41688)

Summary:
X-link: facebook/yoga#1486


Somehow missed this case. We never want to measure the CB as that gets border box but we want padding box

Reviewed By: NickGerleman

Differential Revision: D51376309
joevilches pushed a commit to joevilches/react-native that referenced this pull request Dec 6, 2023
…rtain case (facebook#41688)

Summary:
X-link: facebook/yoga#1486


Somehow missed this case. We never want to measure the CB as that gets border box but we want padding box

Reviewed By: NickGerleman

Differential Revision: D51376309
joevilches pushed a commit to joevilches/react-native that referenced this pull request Dec 6, 2023
…rtain case (facebook#41688)

Summary:
X-link: facebook/yoga#1486


Somehow missed this case. We never want to measure the CB as that gets border box but we want padding box

Reviewed By: NickGerleman

Differential Revision: D51376309
joevilches pushed a commit to joevilches/react-native that referenced this pull request Dec 6, 2023
…rtain case (facebook#41688)

Summary:
X-link: facebook/yoga#1486


Somehow missed this case. We never want to measure the CB as that gets border box but we want padding box

Reviewed By: NickGerleman

Differential Revision: D51376309
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D51376309

joevilches added a commit to joevilches/yoga that referenced this pull request Dec 6, 2023
…rtain case (facebook#1486)

Summary:
Pull Request resolved: facebook#1486

X-link: facebook/react-native#41688

Somehow missed this case. We never want to measure the CB as that gets border box but we want padding box

Reviewed By: NickGerleman

Differential Revision: D51376309

fbshipit-source-id: 6dbf5e04342a54d18cb6b97c7248e7dce641eb01
joevilches pushed a commit to joevilches/react-native that referenced this pull request Dec 6, 2023
…rtain case (facebook#41688)

Summary:
X-link: facebook/yoga#1486


Somehow missed this case. We never want to measure the CB as that gets border box but we want padding box

Reviewed By: NickGerleman

Differential Revision: D51376309
joevilches pushed a commit to joevilches/react-native that referenced this pull request Dec 6, 2023
…rtain case (facebook#41688)

Summary:
X-link: facebook/yoga#1486


Somehow missed this case. We never want to measure the CB as that gets border box but we want padding box

Reviewed By: NickGerleman

Differential Revision: D51376309
joevilches pushed a commit to joevilches/react-native that referenced this pull request Dec 6, 2023
…rtain case (facebook#41688)

Summary:
X-link: facebook/yoga#1486


Somehow missed this case. We never want to measure the CB as that gets border box but we want padding box

Reviewed By: NickGerleman

Differential Revision: D51376309
joevilches pushed a commit to joevilches/react-native that referenced this pull request Dec 7, 2023
…rtain case (facebook#41688)

Summary:
X-link: facebook/yoga#1486


Somehow missed this case. We never want to measure the CB as that gets border box but we want padding box

Reviewed By: NickGerleman

Differential Revision: D51376309
joevilches pushed a commit to joevilches/react-native that referenced this pull request Dec 7, 2023
…rtain case (facebook#41688)

Summary:
X-link: facebook/yoga#1486


Somehow missed this case. We never want to measure the CB as that gets border box but we want padding box

Reviewed By: NickGerleman

Differential Revision: D51376309
joevilches pushed a commit to joevilches/react-native that referenced this pull request Dec 7, 2023
…rtain case (facebook#41688)

Summary:
X-link: facebook/yoga#1486


Somehow missed this case. We never want to measure the CB as that gets border box but we want padding box

Reviewed By: NickGerleman

Differential Revision: D51376309
joevilches pushed a commit to joevilches/react-native that referenced this pull request Dec 7, 2023
…rtain case (facebook#41688)

Summary:
X-link: facebook/yoga#1486


Somehow missed this case. We never want to measure the CB as that gets border box but we want padding box

Reviewed By: NickGerleman

Differential Revision: D51376309
joevilches pushed a commit to joevilches/react-native that referenced this pull request Dec 7, 2023
…rtain case (facebook#41688)

Summary:
X-link: facebook/yoga#1486


Somehow missed this case. We never want to measure the CB as that gets border box but we want padding box

Reviewed By: NickGerleman

Differential Revision: D51376309
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D51376309

joevilches added a commit to joevilches/yoga that referenced this pull request Dec 7, 2023
…rtain case (facebook#1486)

Summary:
Pull Request resolved: facebook#1486

X-link: facebook/react-native#41688

Somehow missed this case. We never want to measure the CB as that gets border box but we want padding box

Reviewed By: NickGerleman

Differential Revision: D51376309

fbshipit-source-id: 2f933044befa2eff548593e605d818e8a8753607
joevilches pushed a commit to joevilches/react-native that referenced this pull request Dec 7, 2023
…rtain case (facebook#41688)

Summary:
X-link: facebook/yoga#1486


Somehow missed this case. We never want to measure the CB as that gets border box but we want padding box

Reviewed By: NickGerleman

Differential Revision: D51376309
joevilches pushed a commit to joevilches/react-native that referenced this pull request Dec 7, 2023
…rtain case (facebook#41688)

Summary:
X-link: facebook/yoga#1486


Somehow missed this case. We never want to measure the CB as that gets border box but we want padding box

Reviewed By: NickGerleman

Differential Revision: D51376309
joevilches pushed a commit to joevilches/react-native that referenced this pull request Dec 7, 2023
…rtain case (facebook#41688)

Summary:
X-link: facebook/yoga#1486


Somehow missed this case. We never want to measure the CB as that gets border box but we want padding box

Reviewed By: NickGerleman

Differential Revision: D51376309
joevilches pushed a commit to joevilches/react-native that referenced this pull request Dec 7, 2023
…rtain case (facebook#41688)

Summary:
X-link: facebook/yoga#1486


Somehow missed this case. We never want to measure the CB as that gets border box but we want padding box

Reviewed By: NickGerleman

Differential Revision: D51376309
joevilches pushed a commit to joevilches/react-native that referenced this pull request Dec 7, 2023
…rtain case (facebook#41688)

Summary:
X-link: facebook/yoga#1486


Somehow missed this case. We never want to measure the CB as that gets border box but we want padding box

Reviewed By: NickGerleman

Differential Revision: D51376309
joevilches pushed a commit to joevilches/react-native that referenced this pull request Dec 7, 2023
…rtain case (facebook#41688)

Summary:
X-link: facebook/yoga#1486


Somehow missed this case. We never want to measure the CB as that gets border box but we want padding box

Reviewed By: NickGerleman

Differential Revision: D51376309
joevilches pushed a commit to joevilches/react-native that referenced this pull request Dec 7, 2023
…rtain case (facebook#41688)

Summary:
X-link: facebook/yoga#1486


Somehow missed this case. We never want to measure the CB as that gets border box but we want padding box

Reviewed By: NickGerleman

Differential Revision: D51376309
Joe Vilches and others added 6 commits December 7, 2023 14:44
…ng absolute node's position

Summary:
Absolute nodes can be laid out by themselves and do not have to care about what is happening to their siblings. Because of this we can make `positionAbsoluteChild` the sole place where we handle this logic. Right now that is scattered around algorithm with many `if (child is absolute)` cases everywhere. This makes implementing position static a lot harder since we are relying on the CB to do all this work, not the parent.

With this change the only time we set position for an absolute node and it matter (i.e. not overwritten) is in `positionAbsoluteChild`

Reviewed By: NickGerleman

Differential Revision: D51290723

fbshipit-source-id: 3638f29dfdd5cd4af0786e5c95fa9a954f245973
Summary:
Pull Request resolved: facebook#1482

X-link: facebook/react-native#41685

This is the final step (that I know of) to get the core features of static working. Here we turn on all of the tests and pass down the correct owner size for the call to `calculateLayoutInternal` that is in `layoutAbsoluteChild`

Differential Revision: https://www.internalfb.com/diff/D51293606?entry_point=27

fbshipit-source-id: cb3174fe68a652732323881f619fb4e91ae7eb4e
…ox (facebook#1485)

Summary:
Pull Request resolved: facebook#1485

X-link: facebook/react-native#41686

The size of the containing block is the size of the padding box of the containing node for absolute nodes. We were looking at  `containingNode->getLayout().measuredDimension(Dimension::Width)` which is the border box. So we need to subtract the border from this.

Added a test that was failing before this change as well

Differential Revision: https://www.internalfb.com/diff/D51330526?entry_point=27

fbshipit-source-id: 12927c4b028776012ebdbcf84c1299aa2a74e7cb
Differential Revision: https://www.internalfb.com/diff/D51333812?entry_point=27

fbshipit-source-id: 732af0220db2da64d5f38a8d2068f9b3b735f910
Summary: Tsia. Added test and accounted for parent padding

Differential Revision: https://www.internalfb.com/diff/D51374086?entry_point=27

fbshipit-source-id: 6428947c970259f7f6bd77d4d79c537d5ed48923
…rtain case (facebook#1486)

Summary:
Pull Request resolved: facebook#1486

X-link: facebook/react-native#41688

Somehow missed this case. We never want to measure the CB as that gets border box but we want padding box

Reviewed By: NickGerleman

Differential Revision: D51376309

fbshipit-source-id: ee70bd57e076a3b01240cff552d50830c3c5c21e
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D51376309

facebook-github-bot pushed a commit to facebook/litho that referenced this pull request Dec 8, 2023
…rtain case

Summary:
X-link: facebook/yoga#1486

X-link: facebook/react-native#41688

Somehow missed this case. We never want to measure the CB as that gets border box but we want padding box

Reviewed By: NickGerleman

Differential Revision: D51376309

fbshipit-source-id: 2b5119c421ef92fadb28a70254cb7fe02aeb8c28
facebook-github-bot pushed a commit to facebook/react-native that referenced this pull request Dec 8, 2023
…rtain case (#41688)

Summary:
X-link: facebook/yoga#1486

Pull Request resolved: #41688

Somehow missed this case. We never want to measure the CB as that gets border box but we want padding box

Reviewed By: NickGerleman

Differential Revision: D51376309

fbshipit-source-id: 2b5119c421ef92fadb28a70254cb7fe02aeb8c28
@facebook-github-bot
Copy link
Contributor

This pull request has been merged in f8d048b.

Othinn pushed a commit to Othinn/react-native that referenced this pull request Jan 9, 2024
…rtain case (facebook#41688)

Summary:
X-link: facebook/yoga#1486

Pull Request resolved: facebook#41688

Somehow missed this case. We never want to measure the CB as that gets border box but we want padding box

Reviewed By: NickGerleman

Differential Revision: D51376309

fbshipit-source-id: 2b5119c421ef92fadb28a70254cb7fe02aeb8c28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants