Calculate the correct surface layers for finishTransaction

We normally prevent assignLayers from touching surface z-order
during transition animations. However, this causes a problem
when multiple transitions happen in quick succession (eg. during
CTS tests) because final surface z-order may not be updated.

To fix this, allow assignLayers to set layers into the
finishTransaction. This is applied by shell and is expected
to represent the "z-order at the end of animation", so we
obviously should allow it to get the fully calculated layers.

Bug: 237545923
Test: atest PinnedStackTests
Change-Id: Ifb8c339fcd9fce7d3457dae806b6d3b186ea5d5c
3 files changed