Fix issue with inconsistent stage visibility
- Prior to ag/29842477, the stage coordinator visibility was inaccurately tracked (ie. when PIP is expanded over a split pair, the visibility state remained true), which resulted in the divider visibility being wrong as well and inadvertently, the visible state resulted in split participating in some transition flows like DefaultMixedTransition.createRecentsMixedTransition() which did end up correctly updating the split state following the next swipe up. However, after the above change, split was no longer participating in those flows, but nothing was also changed to run the logic following the stage visibilty changes, which normally calls setReparentLeafTaskIfRelaunch() to ensure that hidden split tasks can be launched into fullscreen if either task in the pair is relaunched. This CL instead tweaks ag/29842477 to update the listener visibility whenever the root task info changes, to ensure that we don't inadvertently report visiblity changes when going from split pair -> split pair (which can generate multiple leaf child task visibility changes. This also allows us to mostly revert ag/30237116 since that inconsistency is resolved. Fixes: 380016062 Flag: EXEMPT bugfix Test: go/split-smoke-test Test: Verified that both b/289753648 and b/358065655 remain fixed Change-Id: Ie4d8513838308f5330588fc3fe905f0661bbeab3
Loading