Skip to content

Add animatedDeferStartOfTimingAnimations feature flag#57004

Open
zeyap wants to merge 3 commits into
facebook:mainfrom
zeyap:export-D106825629
Open

Add animatedDeferStartOfTimingAnimations feature flag#57004
zeyap wants to merge 3 commits into
facebook:mainfrom
zeyap:export-D106825629

Conversation

@zeyap
Copy link
Copy Markdown
Contributor

@zeyap zeyap commented May 29, 2026

Summary:
Add the animatedDeferStartOfTimingAnimations JS feature flag (default off). On its own this is a no-op; it gates deferring the start of native-driven timing animations to the first rendered frame, implemented in the following diffs. Includes the regenerated ReactNativeFeatureFlags.js.

Changelog:

[Internal] [Changed] - Add animatedDeferStartOfTimingAnimations feature flag

Differential Revision: D106825629

zeyap added 3 commits May 29, 2026 10:21
Summary:

## Changelog:

[Internal] [Changed] - Revisit timing to capture old/new nodes

Previously, when `applyViewTransitionName` is called from react reconciler, if there is active viewtransition, we decide it's applying to new node. This was incorrect because `applyViewTransitionName(old)` for next transition can be called when the previous transition is still ongoing. In fact `applyViewTransitionName(old)` is guaranteed to be called before mutationCallback in a transition while `applyViewTransitionName(new)` is inside mutationCallback. So that is a better criteria to separate old and new cases. Given mutationCallback is synchronous on JS thread we can just use a boolean flag to tell the timing.

Given this interleaved situation, when we clean up resources (for new/old nodes) of a transition at its end, we should also avoid removing those for a pending transition. Introducing transitionId for this case.

Reviewed By: Abbondanzo

Differential Revision: D105214322
Summary:

## Changelog:

[Internal] [Changed] - Add trace markers in ViewTransitionModule

Reviewed By: rubennorte

Differential Revision: D105214325
Summary:
Add the `animatedDeferStartOfTimingAnimations` JS feature flag (default off). On its own this is a no-op; it gates deferring the start of native-driven timing animations to the first rendered frame, implemented in the following diffs. Includes the regenerated `ReactNativeFeatureFlags.js`.

## Changelog:

[Internal] [Changed] - Add animatedDeferStartOfTimingAnimations feature flag

Differential Revision: D106825629
@meta-cla meta-cla 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 May 29, 2026
@meta-codesync
Copy link
Copy Markdown

meta-codesync Bot commented May 29, 2026

@zeyap has exported this pull request. If you are a Meta employee, you can view the originating Diff in D106825629.

zeyap added a commit to zeyap/react-native that referenced this pull request May 29, 2026
Summary:

Add the `animatedDeferStartOfTimingAnimations` JS feature flag (default off). On its own this is a no-op; it gates deferring the start of native-driven timing animations to the first rendered frame, implemented in the following diffs. Includes the regenerated `ReactNativeFeatureFlags.js`.

## Changelog:

[Internal] [Changed] - Add animatedDeferStartOfTimingAnimations feature flag

Differential Revision: D106825629
zeyap added a commit to zeyap/react-native that referenced this pull request May 29, 2026
Summary:

Add the `animatedDeferStartOfTimingAnimations` JS feature flag (default off). On its own this is a no-op; it gates deferring the start of native-driven timing animations to the first rendered frame, implemented in the following diffs. Includes the regenerated `ReactNativeFeatureFlags.js`.

## Changelog:

[Internal] [Changed] - Add animatedDeferStartOfTimingAnimations feature flag

Differential Revision: D106825629
zeyap added a commit to zeyap/react-native that referenced this pull request May 29, 2026
Summary:

Add the `animatedDeferStartOfTimingAnimations` JS feature flag (default off). On its own this is a no-op; it gates deferring the start of native-driven timing animations to the first rendered frame, implemented in the following diffs. Includes the regenerated `ReactNativeFeatureFlags.js`.

## Changelog:

[Internal] [Changed] - Add animatedDeferStartOfTimingAnimations feature flag

Differential Revision: D106825629
zeyap added a commit to zeyap/react-native that referenced this pull request May 29, 2026
Summary:

Add the `animatedDeferStartOfTimingAnimations` JS feature flag (default off). On its own this is a no-op; it gates deferring the start of native-driven timing animations to the first rendered frame, implemented in the following diffs. Includes the regenerated `ReactNativeFeatureFlags.js`.

## Changelog:

[Internal] [Changed] - Add animatedDeferStartOfTimingAnimations feature flag

Differential Revision: D106825629
zeyap added a commit to zeyap/react-native that referenced this pull request May 29, 2026
Summary:

Add the `animatedDeferStartOfTimingAnimations` JS feature flag (default off). On its own this is a no-op; it gates deferring the start of native-driven timing animations to the first rendered frame, implemented in the following diffs. Includes the regenerated `ReactNativeFeatureFlags.js`.

## Changelog:

[Internal] [Changed] - Add animatedDeferStartOfTimingAnimations feature flag

Differential Revision: D106825629
zeyap added a commit to zeyap/react-native that referenced this pull request May 29, 2026
Summary:

Add the `animatedDeferStartOfTimingAnimations` JS feature flag (default off). On its own this is a no-op; it gates deferring the start of native-driven timing animations to the first rendered frame, implemented in the following diffs. Includes the regenerated `ReactNativeFeatureFlags.js`.

## Changelog:

[Internal] [Changed] - Add animatedDeferStartOfTimingAnimations feature flag

Differential Revision: D106825629
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 meta-exported p: Facebook Partner: Facebook Partner

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant