Skip to content

Add inert Java plumbing for the Android pull model (#57580)#57580

Open
bartlomiejbloniarz wants to merge 2 commits into
mainfrom
export-D112309050
Open

Add inert Java plumbing for the Android pull model (#57580)#57580
bartlomiejbloniarz wants to merge 2 commits into
mainfrom
export-D112309050

Conversation

@bartlomiejbloniarz

@bartlomiejbloniarz bartlomiejbloniarz commented Jul 16, 2026

Copy link
Copy Markdown
Contributor

Summary:

Java side of the pull model — dead code until the C++ wiring lands:

  • PullTransactionMountItem: asks C++ (via FabricUIManagerBinding.pullAndExecuteTransaction) to pull the surface's pending transaction and apply it synchronously on the UI thread.
  • FabricUIManager.onTransactionAvailable (JNI entry): enqueues a PullTransactionMountItem.
  • FabricUIManagerBinding.pullAndExecuteTransaction: extern declaration.

One item is enqueued per notification, mirroring iOS; redundant items no-op in C++.

Changelog:

[Android] [Added] - Add inert Java plumbing (PullTransactionMountItem, FabricUIManager.onTransactionAvailable) for the pull model

Reviewed By: rubennorte

Differential Revision: D112309050

@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 Jul 16, 2026
@facebook-github-tools facebook-github-tools Bot added p: Software Mansion Partner: Software Mansion Partner p: Facebook Partner: Facebook labels Jul 16, 2026
@meta-codesync

meta-codesync Bot commented Jul 16, 2026

Copy link
Copy Markdown

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

bartlomiejbloniarz pushed a commit that referenced this pull request Jul 23, 2026
Summary:
Pull Request resolved: #57580

Java side of the pull model — dead code until the C++ wiring lands:
- `PullTransactionMountItem`: asks C++ (via `FabricUIManagerBinding.pullAndExecuteTransaction`) to pull the surface's pending transaction and apply it synchronously on the UI thread.
- `FabricUIManager.onTransactionAvailable` (JNI entry): enqueues a `PullTransactionMountItem`.
- `FabricUIManagerBinding.pullAndExecuteTransaction`: extern declaration.

One item is enqueued per notification, mirroring iOS; redundant items no-op in C++.

## Changelog:
[Android] [Added] - Add inert Java plumbing (`PullTransactionMountItem`, `FabricUIManager.onTransactionAvailable`) for the pull model

Reviewed By: rubennorte

Differential Revision: D112309050
@meta-codesync meta-codesync Bot changed the title Add inert Java plumbing for the Android pull model Add inert Java plumbing for the Android pull model (#57580) Jul 23, 2026
bartlomiejbloniarz pushed a commit that referenced this pull request Jul 23, 2026
Summary:
Pull Request resolved: #57580

Java side of the pull model — dead code until the C++ wiring lands:
- `PullTransactionMountItem`: asks C++ (via `FabricUIManagerBinding.pullAndExecuteTransaction`) to pull the surface's pending transaction and apply it synchronously on the UI thread.
- `FabricUIManager.onTransactionAvailable` (JNI entry): enqueues a `PullTransactionMountItem`.
- `FabricUIManagerBinding.pullAndExecuteTransaction`: extern declaration.

One item is enqueued per notification, mirroring iOS; redundant items no-op in C++.

## Changelog:
[Android] [Added] - Add inert Java plumbing (`PullTransactionMountItem`, `FabricUIManager.onTransactionAvailable`) for the pull model

Reviewed By: rubennorte

Differential Revision: D112309050
Summary:
Adds the `enableMountingCoordinatorPullModelAndroid` experiment flag (default off) that gates the Android pull-model mounting migration. Config entry plus regenerated accessors only — no behavior change.

## Changelog:
[Android] [Added] - Add `enableMountingCoordinatorPullModelAndroid` feature flag

Differential Revision: D112309049
meta-codesync Bot pushed a commit that referenced this pull request Jul 24, 2026
Summary:

Java side of the pull model — dead code until the C++ wiring lands:
- `PullTransactionMountItem`: asks C++ (via `FabricUIManagerBinding.pullAndExecuteTransaction`) to pull the surface's pending transaction and apply it synchronously on the UI thread.
- `FabricUIManager.onTransactionAvailable` (JNI entry): enqueues a `PullTransactionMountItem`.
- `FabricUIManagerBinding.pullAndExecuteTransaction`: extern declaration.

One item is enqueued per notification, mirroring iOS; redundant items no-op in C++.

## Changelog:
[Android] [Added] - Add inert Java plumbing (`PullTransactionMountItem`, `FabricUIManager.onTransactionAvailable`) for the pull model

Reviewed By: rubennorte

Differential Revision: D112309050
@meta-codesync
meta-codesync Bot force-pushed the export-D112309050 branch from f09c4c1 to 48a844c Compare July 24, 2026 12:51
Summary:
Pull Request resolved: #57580

Java side of the pull model — dead code until the C++ wiring lands:
- `PullTransactionMountItem`: asks C++ (via `FabricUIManagerBinding.pullAndExecuteTransaction`) to pull the surface's pending transaction and apply it synchronously on the UI thread.
- `FabricUIManager.onTransactionAvailable` (JNI entry): enqueues a `PullTransactionMountItem`.
- `FabricUIManagerBinding.pullAndExecuteTransaction`: extern declaration.

One item is enqueued per notification, mirroring iOS; redundant items no-op in C++.

## Changelog:
[Android] [Added] - Add inert Java plumbing (`PullTransactionMountItem`, `FabricUIManager.onTransactionAvailable`) for the pull model

Reviewed By: rubennorte

Differential Revision: D112309050
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. meta-exported p: Facebook Partner: Facebook p: Software Mansion Partner: Software Mansion Partner

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant