Loading libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/BubbleController.java +3 −1 Original line number Original line Diff line number Diff line Loading @@ -385,7 +385,9 @@ public class BubbleController { mMainExecutor.execute(() -> { mMainExecutor.execute(() -> { int expandedId = INVALID_TASK_ID; int expandedId = INVALID_TASK_ID; if (mStackView != null && mStackView.getExpandedBubble() != null if (mStackView != null && mStackView.getExpandedBubble() != null && isStackExpanded() && !mStackView.isExpansionAnimating()) { && isStackExpanded() && !mStackView.isExpansionAnimating() && !mStackView.isSwitchAnimating()) { expandedId = mStackView.getExpandedBubble().getTaskId(); expandedId = mStackView.getExpandedBubble().getTaskId(); } } if (expandedId != INVALID_TASK_ID && expandedId != taskId) { if (expandedId != INVALID_TASK_ID && expandedId != taskId) { Loading libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/BubbleStackView.java +11 −0 Original line number Original line Diff line number Diff line Loading @@ -1607,6 +1607,13 @@ public class BubbleStackView extends FrameLayout return mIsExpansionAnimating; return mIsExpansionAnimating; } } /** * Whether the stack of bubbles is animating a switch between bubbles. */ public boolean isSwitchAnimating() { return mIsBubbleSwitchAnimating; } /** /** * The {@link Bubble} that is expanded, null if one does not exist. * The {@link Bubble} that is expanded, null if one does not exist. */ */ Loading Loading @@ -2467,6 +2474,10 @@ public class BubbleStackView extends FrameLayout private void dismissBubbleIfExists(@Nullable BubbleViewProvider bubble) { private void dismissBubbleIfExists(@Nullable BubbleViewProvider bubble) { if (bubble != null && mBubbleData.hasBubbleInStackWithKey(bubble.getKey())) { if (bubble != null && mBubbleData.hasBubbleInStackWithKey(bubble.getKey())) { if (mIsExpanded && mBubbleData.getBubbles().size() > 1) { // If we have more than 1 bubble we will perform the switch animation mIsBubbleSwitchAnimating = true; } mBubbleData.dismissBubbleWithKey(bubble.getKey(), Bubbles.DISMISS_USER_GESTURE); mBubbleData.dismissBubbleWithKey(bubble.getKey(), Bubbles.DISMISS_USER_GESTURE); } } } } Loading Loading
libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/BubbleController.java +3 −1 Original line number Original line Diff line number Diff line Loading @@ -385,7 +385,9 @@ public class BubbleController { mMainExecutor.execute(() -> { mMainExecutor.execute(() -> { int expandedId = INVALID_TASK_ID; int expandedId = INVALID_TASK_ID; if (mStackView != null && mStackView.getExpandedBubble() != null if (mStackView != null && mStackView.getExpandedBubble() != null && isStackExpanded() && !mStackView.isExpansionAnimating()) { && isStackExpanded() && !mStackView.isExpansionAnimating() && !mStackView.isSwitchAnimating()) { expandedId = mStackView.getExpandedBubble().getTaskId(); expandedId = mStackView.getExpandedBubble().getTaskId(); } } if (expandedId != INVALID_TASK_ID && expandedId != taskId) { if (expandedId != INVALID_TASK_ID && expandedId != taskId) { Loading
libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/BubbleStackView.java +11 −0 Original line number Original line Diff line number Diff line Loading @@ -1607,6 +1607,13 @@ public class BubbleStackView extends FrameLayout return mIsExpansionAnimating; return mIsExpansionAnimating; } } /** * Whether the stack of bubbles is animating a switch between bubbles. */ public boolean isSwitchAnimating() { return mIsBubbleSwitchAnimating; } /** /** * The {@link Bubble} that is expanded, null if one does not exist. * The {@link Bubble} that is expanded, null if one does not exist. */ */ Loading Loading @@ -2467,6 +2474,10 @@ public class BubbleStackView extends FrameLayout private void dismissBubbleIfExists(@Nullable BubbleViewProvider bubble) { private void dismissBubbleIfExists(@Nullable BubbleViewProvider bubble) { if (bubble != null && mBubbleData.hasBubbleInStackWithKey(bubble.getKey())) { if (bubble != null && mBubbleData.hasBubbleInStackWithKey(bubble.getKey())) { if (mIsExpanded && mBubbleData.getBubbles().size() > 1) { // If we have more than 1 bubble we will perform the switch animation mIsBubbleSwitchAnimating = true; } mBubbleData.dismissBubbleWithKey(bubble.getKey(), Bubbles.DISMISS_USER_GESTURE); mBubbleData.dismissBubbleWithKey(bubble.getKey(), Bubbles.DISMISS_USER_GESTURE); } } } } Loading