Skip to content

Flush created animated nodes before handling events (#57656) - #57656

Closed
sbuggay wants to merge 1 commit into
react:mainfrom
sbuggay:export-D111257551
Closed

Flush created animated nodes before handling events (#57656)#57656
sbuggay wants to merge 1 commit into
react:mainfrom
sbuggay:export-D111257551

Conversation

@sbuggay

@sbuggaysbuggay commented Jul 23, 2026

Copy link
Copy Markdown
Contributor

Summary:

Changelog: [Internal]

View event handlers can run synchronously before NativeAnimated nodes created on the async path have been flushed into the active graph. Flush pending async-created nodes on the render thread before evaluating a view event, so focus-driven animations can resolve their value nodes on the first native focus event instead of needing another runloop/event.

There was a very frequent problem in airwave-tvos where a view would not receive it's NVE focus event on the commit it was created, this solves that problem without having to naively re-emit the focus event.

Differential Revision: D111257551

@meta-clameta-claBot 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 Jul 23, 2026
@meta-codesync

Copy link
Copy Markdown

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

sbuggay added a commit to sbuggay/react-native that referenced this pull request Jul 23, 2026
Summary:
Pull Request resolved: react#57656
Changelog: [Internal]
View event handlers can run synchronously before NativeAnimated nodes created on the async path have been flushed into the active graph. Flush pending async-created nodes on the render thread before evaluating a view event, so focus-driven animations can resolve their value nodes on the first native focus event instead of needing another runloop/event.
There was a very frequent problem in airwave-tvos where a view would not receive it's NVE focus event on the commit it was created, this solves that problem without having to naively re-emit the focus event.
Differential Revision: D111257551
@meta-codesyncmeta-codesyncBot changed the title Flush created animated nodes before handling eventsFlush created animated nodes before handling events (#57656)Jul 23, 2026
sbuggay added a commit to sbuggay/react-native that referenced this pull request Jul 23, 2026
Summary:
Changelog: [Internal]
View event handlers can run synchronously before NativeAnimated nodes created on the async path have been flushed into the active graph. Flush pending async-created nodes on the render thread before evaluating a view event, so focus-driven animations can resolve their value nodes on the first native focus event instead of needing another runloop/event.
There was a very frequent problem in airwave-tvos where a view would not receive it's NVE focus event on the commit it was created, this solves that problem without having to naively re-emit the focus event.
Differential Revision: D111257551
sbuggay added a commit to sbuggay/react-native that referenced this pull request Jul 23, 2026
Summary:
Changelog: [Internal]
View event handlers can run synchronously before NativeAnimated nodes created on the async path have been flushed into the active graph. Flush pending async-created nodes on the render thread before evaluating a view event, so focus-driven animations can resolve their value nodes on the first native focus event instead of needing another runloop/event.
There was a very frequent problem in airwave-tvos where a view would not receive it's NVE focus event on the commit it was created, this solves that problem without having to naively re-emit the focus event.
Differential Revision: D111257551
Summary:
Changelog: [Internal]
View event handlers can run synchronously before NativeAnimated nodes created on the async path have been flushed into the active graph. Flush pending async-created nodes on the render thread before evaluating a view event, so focus-driven animations can resolve their value nodes on the first native focus event instead of needing another runloop/event.
There was a very frequent problem in airwave-tvos where a view would not receive it's NVE focus event on the commit it was created, this solves that problem without having to naively re-emit the focus event.
Differential Revision: D111257551
@meta-codesyncmeta-codesyncBot added the Merged This PR has been merged. label Jul 24, 2026
@meta-codesync

Copy link
Copy Markdown

This pull request has been merged in 2b992a0.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CLA SignedThis label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed.MergedThis PR has been merged.meta-exportedp: FacebookPartner: FacebookPartner

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@sbuggay