Wait with reparenting back until all app animations are done

An activity A that has a shorter animation that is above another
activity B with a longer animation in the same task, the animation
layer would put the B on top of A, but from the hierarchy, A needs
to be on top of B. Thus, we defer reparenting A to the original
hierarchy such that it stays on top of B until B finishes
animating.

Test: Above scenario
Test: AnimatingAppWindowTokenRegistryTest
Fixes: 75246892
Change-Id: I73796376c1cbeb8327262a304911ce2abfbbb0b6
6 files changed