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 AndroidTextInputProps Detection of Padding #41643

Closed
wants to merge 1 commit into from

Conversation

NickGerleman
Copy link
Contributor

Summary:
Code in AndroidTextInputComponentDescriptor will rewrite Yoga props for padding based on Android theme, if a value isn't supplied. It determines this by adding props in AndroidTextInputProps which reads Yoga RawProps to tell if they were set.

RawProps are keyed using separate prefix/name/suffix, instead of the combined string name of the prop. This means that searching for the name paddingLeft, would be different from reading one with a name of padding and a suffix of Left.

This updates the keying, based on the changes in D51510562.

We should refactor this in the future (D20109605, introducing this code, admitted as much). We already have a phase, for aliased props, where we transform input props into the Yoga style (they don't need to be 1:1). This doesn't depend on RawProps, extra props, or prop mutations.

Changelog:
[Android][Fixed] - Fix AndroidTextInputProps Detection of Padding

Differential Revision: D51566900

@facebook-github-bot facebook-github-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 Nov 25, 2023
@facebook-github-bot
Copy link
Contributor

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

@analysis-bot
Copy link

analysis-bot commented Nov 25, 2023

Platform Engine Arch Size (bytes) Diff
android hermes arm64-v8a 17,679,241 +1
android hermes armeabi-v7a n/a --
android hermes x86 n/a --
android hermes x86_64 n/a --
android jsc arm64-v8a 21,062,273 +6
android jsc armeabi-v7a n/a --
android jsc x86 n/a --
android jsc x86_64 n/a --

Base commit: c464b21
Branch: main

Summary:

Code in `AndroidTextInputComponentDescriptor` will rewrite Yoga props for padding based on Android theme, if a value isn't supplied. It determines this by adding props in `AndroidTextInputProps` which reads Yoga RawProps to tell if they were set.

RawProps are keyed using separate prefix/name/suffix, instead of the combined string name of the prop. This means that searching for the name `paddingLeft`, would be different from reading one with a name of `padding` and a suffix of `Left`.

This updates the keying, based on the changes in D51510562.

We should refactor this in the future (D20109605, introducing this code, admitted as much). We already have a phase, for aliased props, where we transform input props into the Yoga style (they don't need to be 1:1). This doesn't depend on RawProps, extra props, or prop mutations.

Changelog:
[Android][Fixed] - Fix AndroidTextInputProps Detection of Padding

Reviewed By: GijsWeterings

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

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

@facebook-github-bot facebook-github-bot added the Merged This PR has been merged. label Nov 25, 2023
@facebook-github-bot
Copy link
Contributor

This pull request has been merged in 4016bfb.

Othinn pushed a commit to Othinn/react-native that referenced this pull request Jan 9, 2024
Summary:
Pull Request resolved: facebook#41643

Code in `AndroidTextInputComponentDescriptor` will rewrite Yoga props for padding based on Android theme, if a value isn't supplied. It determines this by adding props in `AndroidTextInputProps` which reads Yoga RawProps to tell if they were set.

RawProps are keyed using separate prefix/name/suffix, instead of the combined string name of the prop. This means that searching for the name `paddingLeft`, would be different from reading one with a name of `padding` and a suffix of `Left`.

This updates the keying, based on the changes in D51510562.

We should refactor this in the future (D20109605, introducing this code, admitted as much). We already have a phase, for aliased props, where we transform input props into the Yoga style (they don't need to be 1:1). This doesn't depend on RawProps, extra props, or prop mutations.

Changelog:
[Android][Fixed] - Fix AndroidTextInputProps Detection of Padding

Reviewed By: GijsWeterings

Differential Revision: D51566900

fbshipit-source-id: ca744b23d71382941903da42d86ad3eef7b65de8
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. fb-exported Merged This PR has been merged. p: Facebook Partner: Facebook Partner
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants