react-native icon indicating copy to clipboard operation
react-native copied to clipboard

Add percentages for border-radius props

Open jorge-cab opened this issue 1 year ago • 2 comments

Summary: Why? Previously we didn't support using percentages like:

style={{
  width=100,
  height=100,
  borderRadius='100%',
}}

These percentages refer to the corresponding dimension of the border box.

What?

  • Added LengthPercentage class and LengthPercentageType enum. To track when we are dealing with percentage vs points
  • Now radius properties start as Dynamic which then get transformed into LengthPercentage.
  • Modified certain function parameters so we can consider height and width when resolving BorderRadius values

With this we conditionally calculate the corresponding point (dp) value for a given percentage (considering size). Ex:

result = {raw_percentage_value} / 100 * (max(height, width))

We know the maximum border radius for our current implementation is half the dp of the shorter side of our view, hence why we consider half our maximum view side as equivalent to 100%.

Note: We still don't support vertical/horizontal border radii

Changelog:

[Android][Added] - Added support for using percentages when defining border radius related properties.

Differential Revision: D56943825

jorge-cab avatar May 03 '24 22:05 jorge-cab

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

facebook-github-bot avatar May 03 '24 22:05 facebook-github-bot

Platform Engine Arch Size (bytes) Diff
android hermes arm64-v8a 19,511,392 -7
android hermes armeabi-v7a n/a --
android hermes x86 n/a --
android hermes x86_64 n/a --
android jsc arm64-v8a 22,883,950 -3
android jsc armeabi-v7a n/a --
android jsc x86 n/a --
android jsc x86_64 n/a --

Base commit: 1d2221ab4ed0a9d669c95dc6a7a82c841f72422c Branch: main

analysis-bot avatar May 03 '24 22:05 analysis-bot

This pull request has been merged in facebook/react-native@181ed33ab0ae3a67c5bcb73de315fb6d5e697388.

facebook-github-bot avatar May 09 '24 18:05 facebook-github-bot

This pull request was successfully merged by @jorge-cab in 181ed33ab0ae3a67c5bcb73de315fb6d5e697388.

When will my fix make it into a release? | How to file a pick request?

github-actions[bot] avatar May 09 '24 18:05 github-actions[bot]