Make sure non reported leaf task visible
For example:
TaskR (organized)
> TaskL (not organized) [invisible] -> no one sets surface visible
> TF (organized) -> containsChangeFor returns true
> Activity
The leaf TaskL is not organized, so TaskL is not reported.
That is from Transition#tryPromote which removes TaskL from targets
because its parent TaskR can represent it.
The original loop for non-reported-container stops at TF because it is
organized and exists in the targets (containsChangeFor returns true),
so the loop breaks at the first iteration and misses to set visibility
to the leaf task. To fix the case, make the loop check all animatable
parents until it reaches display area (because there should not be
non-organized invisible DisplayArea).
It was no problem because Task#prepareSurface still updates surface
visibility. But since that is deprecated, the existing problem reveals.
Bug: 416396262
Flag: EXEMPT bugfix
Test: Turn off screen at minus one page and unlock device.
The home leaf task should be visible.
Change-Id: I0f9394f6554622e4ae1bfc8d5f21498de5bb3255
Loading
Please register or sign in to comment