Skip to content
Commit 9956d89c authored by Andrii Kulian's avatar Andrii Kulian
Browse files

Use post-execution state for lifecycle callback sequences

onActivityResult callback should always be executed before onResume.
If an activity is in the process of starting or creation, it can be
executed after onStart. If an activity was already resumed, then we
should pause it first, execute onActivityResult, then resume again.
So there are two valid pre-execute states - onStart and onPause.

For cases like the one described above this CL uses post-execution
state to identify valid pre-execute states and will try to use the
one that is closer to the current activity state during execution.

It also moves activity result and new intent callbacks into the same
transaction as the resumed state request, so that all changes can be
handled appropriately on the client side.

Bug: 72547861
Bug: 73348613
Test: TransactionExecutorTests
Test: ActivityLifecycleTests
Change-Id: I0af457d305c73a640040b8b7aee46dbbdfa6038f
parent ddd4ca1e
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment