Closed Bug 1340301 Opened 6 years ago Closed 1 year ago
Bridge Child for Android GPU process needs to be callable from UI thread .
Bug 1340301 - Ensure APZ functions are called from correct threads on Android with GPU process. r?botond
48 bytes, text/x-phabricator-request
|Details | Review|
Currently, the APZCTreeManagerChild is created and invoked on the main thread. This works for non-android platforms because the controller thread and the main thread are the same. However, on android, the controller thread is the UI thread. Invoking the APZCTreeManagerChild from the UI thread on android will cause our IPC stack to assert. Rather than using the built in IPDL constructors, the creation of APZCTreeManager[Child|Parent] will need to use Endpoints so that the APZCTreeManagerChild may be initialized on the UI thread on Android.
Priority: -- → P5
With the changes in bug 1441324 APZCTreeManager can be left as-is. Instead you'll want to move the PAPZInputBridge to be created as a new top-level protocol (rather than being a subprotocol of PGPU) with the child side on the Java UI thread in the UI process, and the parent side on the main thread in the GPU process.
Summary: APZCTreeManagerChild for Android GPU process needs to be callable from UI thread. → APZInputBridgeChild for Android GPU process needs to be callable from UI thread.
Pushed by firstname.lastname@example.org: https://hg.mozilla.org/integration/autoland/rev/e8a106468e6c Ensure APZ functions are called from correct threads on Android with GPU process. r=botond
Component: General → Sandboxing
You need to log in before you can comment on or make changes to this bug.