Fix an issue where tasks moving to front would collapse the stack.
ag/18759417 introduced a new call to onTaskMovedToFront which impacted
some bubbles behavior, basically while switching bubbles the
"background" app now appears to move to the front for a moment which
causes bubbles to be collapsed. The fix is to flip the flag for
bubbles switching a bit sooner than we already do.
Test: manual - have some bubbles, visit each of them once (i.e. have
the activity launched), then visit them all again
=> verify all the bubbles can be visited both times and
the stack doesn't collapse.
Bug: 235781358
Change-Id: Id0674cafd92d5aeb802a0da77a679996e7041b74
This commit is contained in:
@@ -2220,11 +2220,10 @@ public class BubbleStackView extends FrameLayout
|
||||
private void animateSwitchBubbles() {
|
||||
// If we're no longer expanded, this is meaningless.
|
||||
if (!mIsExpanded) {
|
||||
mIsBubbleSwitchAnimating = false;
|
||||
return;
|
||||
}
|
||||
|
||||
mIsBubbleSwitchAnimating = true;
|
||||
|
||||
// The surface contains a screenshot of the animating out bubble, so we just need to animate
|
||||
// it out (and then release the GraphicBuffer).
|
||||
PhysicsAnimator.getInstance(mAnimatingOutSurfaceContainer).cancel();
|
||||
@@ -2838,6 +2837,7 @@ public class BubbleStackView extends FrameLayout
|
||||
}, 0);
|
||||
|
||||
if (!mIsExpansionAnimating) {
|
||||
mIsBubbleSwitchAnimating = true;
|
||||
mSurfaceSynchronizer.syncSurfaceAndRun(() -> {
|
||||
post(this::animateSwitchBubbles);
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user