Skip to content

fix: hold platform-routed CSS transition values in the updates registry#9809

Closed
MatiPl01 wants to merge 1 commit into
@wisniewskij/pseudoselectors-priority-over-rerender2from
@matipl01/hold-platform-transition-values
Closed

fix: hold platform-routed CSS transition values in the updates registry#9809
MatiPl01 wants to merge 1 commit into
@wisniewskij/pseudoselectors-priority-over-rerender2from
@matipl01/hold-platform-transition-values

Conversation

@MatiPl01

@MatiPl01 MatiPl01 commented Jul 1, 2026

Copy link
Copy Markdown
Member

Stacked on #9775.

On iOS, CSS properties routed to Core Animation recorded nothing in the updates registry, so the commit hook had nothing to re-apply over React's committed base value - once the native animation finished, the rendered value reclaimed the layer and a held :active value snapped back to the render color.

This records each platform-routed transition's target in the registry (both run overloads) so the commit hook keeps it applied over React's base. Uniform for all Core Animation transitions, no .mm change, no-op on Android.

Verified on the iOS simulator: the :active box holds across render commits with no flicker, ordinary transitions animate unchanged, and release resumes the render loop cleanly.

@MatiPl01 MatiPl01 self-assigned this Jul 1, 2026
@MatiPl01 MatiPl01 requested a review from wisniewskij July 1, 2026 12:06
@MatiPl01

MatiPl01 commented Jul 1, 2026

Copy link
Copy Markdown
Member Author

Closing in favor of making the platform (Core Animation) transition persistent for pseudo selectors, which animates quick press/release correctly (partial animation + ease back) instead of applying the settled value instantly. New PR to follow.

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.

1 participant