diff options
4 files changed, 28 insertions, 7 deletions
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/BubbleExpandedView.java b/libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/BubbleExpandedView.java index 5df7b8a578d6..4f225fff1451 100644 --- a/libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/BubbleExpandedView.java +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/BubbleExpandedView.java @@ -106,6 +106,20 @@ public class BubbleExpandedView extends LinearLayout { } }; + /** {@link FloatProperty} for updating background and pointer alpha */ + public static final FloatProperty<BubbleExpandedView> BACKGROUND_ALPHA = + new FloatProperty<BubbleExpandedView>("backgroundAlpha") { + @Override + public void setValue(BubbleExpandedView expandedView, float value) { + expandedView.setBackgroundAlpha(value); + } + + @Override + public Float get(BubbleExpandedView expandedView) { + return expandedView.getAlpha(); + } + }; + /** {@link FloatProperty} for updating manage button alpha */ public static final FloatProperty<BubbleExpandedView> MANAGE_BUTTON_ALPHA = new FloatProperty<BubbleExpandedView>("manageButtonAlpha") { @@ -603,6 +617,14 @@ public class BubbleExpandedView extends LinearLayout { } /** + * Sets the alpha of the background and the pointer view. + */ + public void setBackgroundAlpha(float alpha) { + mPointerView.setAlpha(alpha); + setAlpha(alpha); + } + + /** * Set translation Y for the expanded view content. * Excludes manage button and pointer. */ diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/BubbleStackView.java b/libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/BubbleStackView.java index 0555df703bb2..492bff99dd2f 100644 --- a/libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/BubbleStackView.java +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/BubbleStackView.java @@ -1080,7 +1080,7 @@ public class BubbleStackView extends FrameLayout if (mExpandedBubble != null && mExpandedBubble.getExpandedView() != null) { float alpha = (float) valueAnimator.getAnimatedValue(); mExpandedBubble.getExpandedView().setContentAlpha(alpha); - mExpandedBubble.getExpandedView().setAlpha(alpha); + mExpandedBubble.getExpandedView().setBackgroundAlpha(alpha); } }); @@ -2216,7 +2216,7 @@ public class BubbleStackView extends FrameLayout if (mExpandedBubble.getExpandedView() != null) { mExpandedBubble.getExpandedView().setContentAlpha(0f); - mExpandedBubble.getExpandedView().setAlpha(0f); + mExpandedBubble.getExpandedView().setBackgroundAlpha(0f); // We'll be starting the alpha animation after a slight delay, so set this flag early // here. diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/animation/ExpandedViewAnimationControllerImpl.java b/libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/animation/ExpandedViewAnimationControllerImpl.java index ca54232c95b5..845dca34b41f 100644 --- a/libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/animation/ExpandedViewAnimationControllerImpl.java +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/animation/ExpandedViewAnimationControllerImpl.java @@ -15,12 +15,11 @@ */ package com.android.wm.shell.bubbles.animation; -import static android.view.View.ALPHA; - import static com.android.wm.shell.bubbles.BubbleDebugConfig.DEBUG_COLLAPSE_ANIMATOR; import static com.android.wm.shell.bubbles.BubbleDebugConfig.DEBUG_EXPANDED_VIEW_DRAGGING; import static com.android.wm.shell.bubbles.BubbleDebugConfig.TAG_BUBBLES; import static com.android.wm.shell.bubbles.BubbleDebugConfig.TAG_WITH_CLASS_NAME; +import static com.android.wm.shell.bubbles.BubbleExpandedView.BACKGROUND_ALPHA; import static com.android.wm.shell.bubbles.BubbleExpandedView.BOTTOM_CLIP_PROPERTY; import static com.android.wm.shell.bubbles.BubbleExpandedView.CONTENT_ALPHA; import static com.android.wm.shell.bubbles.BubbleExpandedView.MANAGE_BUTTON_ALPHA; @@ -314,7 +313,7 @@ public class ExpandedViewAnimationControllerImpl implements ExpandedViewAnimatio mBackToExpandedAnimation.cancel(); } mExpandedView.setContentAlpha(1); - mExpandedView.setAlpha(1); + mExpandedView.setBackgroundAlpha(1); mExpandedView.setManageButtonAlpha(1); setCollapsedAmount(0); mExpandedView.setBottomClip(0); @@ -416,7 +415,7 @@ public class ExpandedViewAnimationControllerImpl implements ExpandedViewAnimatio } private ObjectAnimator createBackgroundAlphaAnimation() { - ObjectAnimator animator = ObjectAnimator.ofFloat(mExpandedView, ALPHA, 0f); + ObjectAnimator animator = ObjectAnimator.ofFloat(mExpandedView, BACKGROUND_ALPHA, 0f); animator.setDuration(BACKGROUND_OPACITY_ANIM_DURATION_MS); animator.setInterpolator(Interpolators.LINEAR); animator.setStartDelay(BACKGROUND_OPACITY_ANIM_DELAY_MS); diff --git a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/bubbles/animation/ExpandedViewAnimationControllerTest.java b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/bubbles/animation/ExpandedViewAnimationControllerTest.java index 21887c03833a..991913afbb90 100644 --- a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/bubbles/animation/ExpandedViewAnimationControllerTest.java +++ b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/bubbles/animation/ExpandedViewAnimationControllerTest.java @@ -156,7 +156,7 @@ public class ExpandedViewAnimationControllerTest extends ShellTestCase { mController.reset(); verify(mMockExpandedView, atLeastOnce()).setAnimating(false); verify(mMockExpandedView).setContentAlpha(1); - verify(mMockExpandedView).setAlpha(1); + verify(mMockExpandedView).setBackgroundAlpha(1); verify(mMockExpandedView).setManageButtonAlpha(1); verify(mMockExpandedView).setManageButtonAlpha(1); verify(mMockExpandedView).setTopClip(0); |