Add scaffolding for batched animated prop updates delegate chain (#56771) - #56771
Closed
bartlomiejbloniarz wants to merge 1 commit into
Closed
bartlomiejbloniarz wants to merge 1 commit into
bartlomiejbloniarz wants to merge 1 commit into
Conversation
|
@bartlomiejbloniarz has exported this pull request. If you are a Meta employee, you can view the originating Diff in D104672455. |
) Summary: Pull Request resolved: #56771 Introduces the cross-platform delegate chain for batched animated property updates without any platform implementation: - Adds `schedulerShouldSynchronouslyUpdateAnimatedPropsOnUIThread` to `SchedulerDelegate` and forwards from `Scheduler`. - Adds `uiManagerShouldSynchronouslyUpdateAnimatedPropsOnUIThread` to `UIManagerDelegate` and `synchronouslyUpdateAnimatedPropsOnUIThread` to `UIManager`. - Adds no-op stubs in iOS (`RCTScheduler.mm`), macOS (`RCTScheduler.mm`), Windows (`FabricUIManagerModule`) and CxxPlatform (`SchedulerDelegateImpl`). No behavioural impact; Android implementation lands in a follow-up. Changelog: [Internal] Differential Revision: D104672455
bartlomiejbloniarz
force-pushed
the
export-D104672455
branch
from
May 11, 2026 16:09
9f6fea4 to
39ee496
Compare
Collaborator
|
This pull request was successfully merged by Bartlomiej Bloniarz in 39ee496 When will my fix make it into a release? | How to file a pick request? |
This was referenced Sep 30, 2026
meta-codesync Bot
pushed a commit
that referenced
this pull request
Oct 2, 2026
Summary: Pull Request resolved: #58773 The animation backend hands its synchronous updates to the platform one view at a time. This adds `UIManager::synchronouslyUpdateAnimatedProps` and a matching `SchedulerDelegate` call that receive a whole frame's updates at once, continuing #56771. The backend uses it when `optimizedAnimatedPropUpdates` is on. The default `SchedulerDelegate` implementation forwards to the existing per-view update, so platforms that don't override it are unaffected. `UIManagerDelegate` gains a required method, implemented by `Scheduler`. ## Changelog: [General] [Added] - Add a batched scheduler delegate call for animated prop updates behind `optimizedAnimatedPropUpdates` Differential Revision: D122570617
meta-codesync Bot
pushed a commit
that referenced
this pull request
Oct 2, 2026
Summary: Pull Request resolved: #58773 The animation backend hands its synchronous updates to the platform one view at a time. This adds `UIManager::synchronouslyUpdateAnimatedProps` and a matching `SchedulerDelegate` call that receive a whole frame's updates at once, continuing #56771. The backend uses it when `optimizedAnimatedPropUpdates` is on. The default `SchedulerDelegate` implementation forwards to the existing per-view update, so platforms that don't override it are unaffected. `UIManagerDelegate` gains a required method, implemented by `Scheduler`. ## Changelog: [General] [Added] - Add a batched scheduler delegate call for animated prop updates behind `optimizedAnimatedPropUpdates` Differential Revision: D122570617
meta-codesync Bot
pushed a commit
that referenced
this pull request
Oct 2, 2026
Summary: Pull Request resolved: #58773 The animation backend hands its synchronous updates to the platform one view at a time. This adds `UIManager::synchronouslyUpdateAnimatedProps` and a matching `SchedulerDelegate` call that receive a whole frame's updates at once, continuing #56771. The backend uses it when `optimizedAnimatedPropUpdates` is on, and that flag's description now only promises what is implemented. The default `SchedulerDelegate` implementation forwards to the existing per-view update, so platforms that don't override it are unaffected. `UIManagerDelegate` gains a required method, implemented by `Scheduler`. ## Changelog: [Internal] Differential Revision: D122570617
meta-codesync Bot
pushed a commit
that referenced
this pull request
Oct 2, 2026
Summary: Pull Request resolved: #58773 The animation backend hands its synchronous updates to the platform one view at a time. This adds `UIManager::synchronouslyUpdateAnimatedProps` and a matching `SchedulerDelegate` call that receive a whole frame's updates at once, continuing #56771. The backend uses it when `optimizedAnimatedPropUpdates` is on, and that flag's description now only promises what is implemented. The default `SchedulerDelegate` implementation forwards to the existing per-view update, so platforms that don't override it are unaffected. `UIManagerDelegate` gains a required method, implemented by `Scheduler`. ## Changelog: [Internal] Differential Revision: D122570617
meta-codesync Bot
pushed a commit
that referenced
this pull request
Oct 2, 2026
Summary: Pull Request resolved: #58773 The animation backend hands its synchronous updates to the platform one view at a time. This adds `UIManager::synchronouslyUpdateAnimatedProps` and a matching `SchedulerDelegate` call that receive a whole frame's updates at once, continuing #56771. The backend uses it when `optimizedAnimatedPropUpdates` is on, and that flag's description now only promises what is implemented. The default `SchedulerDelegate` implementation forwards to the existing per-view update, so platforms that don't override it are unaffected. `UIManagerDelegate` gains a required method, implemented by `Scheduler`. ## Changelog: [Internal] Differential Revision: D122570617
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary:
Introduces the cross-platform delegate chain for batched animated property updates without any platform implementation:
schedulerShouldSynchronouslyUpdateAnimatedPropsOnUIThreadtoSchedulerDelegateand forwards fromScheduler.uiManagerShouldSynchronouslyUpdateAnimatedPropsOnUIThreadtoUIManagerDelegateandsynchronouslyUpdateAnimatedPropsOnUIThreadtoUIManager.RCTScheduler.mm), macOS (RCTScheduler.mm), Windows (FabricUIManagerModule) and CxxPlatform (SchedulerDelegateImpl).No behavioural impact; Android implementation lands in a follow-up.
Changelog:
[Internal]
Differential Revision: D104672455