Skip to content

chore: Prepare platform-routed CSS transitions for more properties#9654

Merged
MatiPl01 merged 5 commits into
mainfrom
@matipl01/css-platform-transition-values
Jun 17, 2026
Merged

chore: Prepare platform-routed CSS transitions for more properties#9654
MatiPl01 merged 5 commits into
mainfrom
@matipl01/css-platform-transition-values

Conversation

@MatiPl01

@MatiPl01 MatiPl01 commented Jun 11, 2026

Copy link
Copy Markdown
Member

Summary

Routes CSS transition properties to Core Animation behind IOS_CSS_CORE_ANIMATION, starting with opacity.

  • CSSPlatformTransitionProxy is a stateless shared router: per property it picks the platform or the C++ loop and forwards the raw JS value to the platform, never holding a platform value type.
  • The platform side is injected as hooks (canRoute / apply / remove), so shared C++ stays platform-agnostic and Android can implement the same contract later.
  • iOS implements them in REACSSPlatformProps (routing predicate, value parsing, CA conversions, timing) and REACSSPlatformTransitions (the CALayer applier).

With the flag off there is no behavior change.

Test plan

  • example-ios-build-check green
  • opacity transitions verified running on Core Animation in the simulator
  • -fsyntax-only, clang-tidy and clang-format clean

@MatiPl01 MatiPl01 self-assigned this Jun 11, 2026
@MatiPl01
MatiPl01 force-pushed the @matipl01/css-platform-transition-values branch from d5ab0f4 to 3b6d0b2 Compare June 12, 2026 00:00
@MatiPl01
MatiPl01 changed the base branch from main to @matipl01/css-transitions-cleanup June 12, 2026 00:00
@MatiPl01
MatiPl01 force-pushed the @matipl01/css-platform-transition-values branch 15 times, most recently from cd29926 to e1ae440 Compare June 16, 2026 12:49
Base automatically changed from @matipl01/css-transitions-cleanup to main June 16, 2026 12:54
@MatiPl01
MatiPl01 force-pushed the @matipl01/css-platform-transition-values branch 3 times, most recently from e5e233b to 37afeff Compare June 17, 2026 07:29
@MatiPl01
MatiPl01 requested a review from wisniewskij June 17, 2026 07:31
@MatiPl01
MatiPl01 force-pushed the @matipl01/css-platform-transition-values branch from 37afeff to 175116e Compare June 17, 2026 07:42
@MatiPl01
MatiPl01 force-pushed the @matipl01/css-platform-transition-values branch from 175116e to 6a9a52c Compare June 17, 2026 08:16
@MatiPl01
MatiPl01 added this pull request to the merge queue Jun 17, 2026
Merged via the queue into main with commit bfbece4 Jun 17, 2026
11 of 12 checks passed
@MatiPl01
MatiPl01 deleted the @matipl01/css-platform-transition-values branch June 17, 2026 15:31
pull Bot pushed a commit to esinanturan/react-native-reanimated that referenced this pull request Jun 17, 2026
…9685)

Stacked on software-mansion#9654.

Adds `shadowColor`, `shadowOpacity`, `shadowRadius` and `shadowOffset`
to the CSS transition properties run on Core Animation, reusing the same
value-agnostic apply as opacity.

Verified in the simulator: all four interpolate smoothly on Core
Animation.
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