Defer creation of input sink surface until sync completes
Currently with shell transition, isVisible() is true once visible
is requested for launching activity. Then the input sink surface
will be created when previous activity completes pause. But because
the launching activity is in transition and the transaction is sync
transaction, its surface operation is also deferred until the
remote applies the sync transaction. In other words, the creation
is too early and leads to lock contention such as blocking preparing
starting window.
With the sync state check, the timing of creating input sink surface
will be similar as legacy transition, which is after the transition
is ready, i.e. sync finished. That timing is usually less sensitive
(contention) to transition latency.
Bug: 260059642
Test: atest ActivityRecordInputSinkTests
Test: Transition latency of OpenAppMicrobenchmark
Change-Id: Id9719510c74296392e988abf8d48fe3af78026d3
1 file changed