Loading packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/AmbientState.java +4 −0 Original line number Diff line number Diff line Loading @@ -426,6 +426,10 @@ public class AmbientState { return mDarkAmount == 1; } public boolean isDarkAtAll() { return mDarkAmount != 0; } public void setDarkTopPadding(int darkTopPadding) { mDarkTopPadding = darkTopPadding; } Loading packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayout.java +9 −4 Original line number Diff line number Diff line Loading @@ -25,7 +25,6 @@ import android.animation.ObjectAnimator; import android.animation.PropertyValuesHolder; import android.animation.TimeAnimator; import android.animation.ValueAnimator; import android.animation.ValueAnimator.AnimatorUpdateListener; import android.annotation.Nullable; import android.app.WallpaperManager; import android.content.Context; Loading @@ -40,7 +39,6 @@ import android.graphics.PorterDuff; import android.graphics.PorterDuffXfermode; import android.graphics.Rect; import android.os.Bundle; import android.os.Handler; import android.os.ServiceManager; import android.provider.Settings; import android.service.notification.StatusBarNotification; Loading Loading @@ -82,7 +80,6 @@ import com.android.systemui.ExpandHelper; import com.android.systemui.Interpolators; import com.android.systemui.R; import com.android.systemui.SwipeHelper; import com.android.systemui.SwipeHelper.Callback; import com.android.systemui.classifier.FalsingManager; import com.android.systemui.colorextraction.SysuiColorExtractor; import com.android.systemui.plugins.statusbar.NotificationMenuRowPlugin; Loading Loading @@ -3734,12 +3731,14 @@ public class NotificationStackScrollLayout extends ViewGroup return y < getHeight() - getEmptyBottomMargin(); } @VisibleForTesting @ShadeViewRefactor(RefactorComponent.INPUT) private void setIsBeingDragged(boolean isDragged) { void setIsBeingDragged(boolean isDragged) { mIsBeingDragged = isDragged; if (isDragged) { requestDisallowInterceptTouchEvent(true); cancelLongPress(); resetExposedMenuView(true /* animate */, true /* force */); } } Loading Loading @@ -3869,6 +3868,7 @@ public class NotificationStackScrollLayout extends ViewGroup public void onPanelTrackingStarted() { mPanelTracking = true; mAmbientState.setPanelTracking(true); resetExposedMenuView(true /* animate */, true /* force */); } @ShadeViewRefactor(RefactorComponent.STATE_RESOLVER) Loading Loading @@ -4271,8 +4271,10 @@ public class NotificationStackScrollLayout extends ViewGroup mLinearDarkAmount = linearDarkAmount; mInterpolatedDarkAmount = interpolatedDarkAmount; boolean wasFullyDark = mAmbientState.isFullyDark(); boolean wasDarkAtAll = mAmbientState.isDarkAtAll(); mAmbientState.setDarkAmount(interpolatedDarkAmount); boolean nowFullyDark = mAmbientState.isFullyDark(); boolean nowDarkAtAll = mAmbientState.isDarkAtAll(); if (nowFullyDark != wasFullyDark) { updateContentHeight(); DozeParameters dozeParameters = DozeParameters.getInstance(mContext); Loading @@ -4283,6 +4285,9 @@ public class NotificationStackScrollLayout extends ViewGroup mIconAreaController.setFullyDark(nowFullyDark); } } if (!wasDarkAtAll && nowDarkAtAll) { resetExposedMenuView(true /* animate */, true /* animate */); } updateAlgorithmHeightAndPadding(); updateBackgroundDimming(); updatePanelTranslation(); Loading packages/SystemUI/tests/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayoutTest.java +33 −0 Original line number Diff line number Diff line Loading @@ -15,6 +15,8 @@ package com.android.systemui.statusbar.notification.stack; import static junit.framework.Assert.assertEquals; import static junit.framework.Assert.assertNotNull; import static junit.framework.Assert.assertNull; import static org.mockito.ArgumentMatchers.any; import static org.mockito.ArgumentMatchers.anyBoolean; import static org.mockito.ArgumentMatchers.anyInt; Loading @@ -36,6 +38,7 @@ import android.service.dreams.IDreamManager; import android.support.test.annotation.UiThreadTest; import android.support.test.filters.SmallTest; import android.support.test.runner.AndroidJUnit4; import android.view.View; import com.android.systemui.ExpandHelper; import com.android.systemui.R; Loading Loading @@ -314,6 +317,36 @@ public class NotificationStackScrollLayoutTest extends SysuiTestCase { verify(mStackScroller).setEmptyShadeView(any()); } @Test @UiThreadTest public void testSetIsBeingDraggedResetsExposedMenu() { NotificationSwipeHelper swipeActionHelper = (NotificationSwipeHelper) mStackScroller.getSwipeActionHelper(); swipeActionHelper.setExposedMenuView(new View(mContext)); mStackScroller.setIsBeingDragged(true); assertNull(swipeActionHelper.getExposedMenuView()); } @Test @UiThreadTest public void testPanelTrackingStartResetsExposedMenu() { NotificationSwipeHelper swipeActionHelper = (NotificationSwipeHelper) mStackScroller.getSwipeActionHelper(); swipeActionHelper.setExposedMenuView(new View(mContext)); mStackScroller.onPanelTrackingStarted(); assertNull(swipeActionHelper.getExposedMenuView()); } @Test @UiThreadTest public void testDarkModeResetsExposedMenu() { NotificationSwipeHelper swipeActionHelper = (NotificationSwipeHelper) mStackScroller.getSwipeActionHelper(); swipeActionHelper.setExposedMenuView(new View(mContext)); mStackScroller.setDarkAmount(0.1f, 0.1f); assertNull(swipeActionHelper.getExposedMenuView()); } private void setBarStateForTest(int state) { ArgumentCaptor<StatusBarStateController.StateListener> captor = ArgumentCaptor.forClass(StatusBarStateController.StateListener.class); Loading Loading
packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/AmbientState.java +4 −0 Original line number Diff line number Diff line Loading @@ -426,6 +426,10 @@ public class AmbientState { return mDarkAmount == 1; } public boolean isDarkAtAll() { return mDarkAmount != 0; } public void setDarkTopPadding(int darkTopPadding) { mDarkTopPadding = darkTopPadding; } Loading
packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayout.java +9 −4 Original line number Diff line number Diff line Loading @@ -25,7 +25,6 @@ import android.animation.ObjectAnimator; import android.animation.PropertyValuesHolder; import android.animation.TimeAnimator; import android.animation.ValueAnimator; import android.animation.ValueAnimator.AnimatorUpdateListener; import android.annotation.Nullable; import android.app.WallpaperManager; import android.content.Context; Loading @@ -40,7 +39,6 @@ import android.graphics.PorterDuff; import android.graphics.PorterDuffXfermode; import android.graphics.Rect; import android.os.Bundle; import android.os.Handler; import android.os.ServiceManager; import android.provider.Settings; import android.service.notification.StatusBarNotification; Loading Loading @@ -82,7 +80,6 @@ import com.android.systemui.ExpandHelper; import com.android.systemui.Interpolators; import com.android.systemui.R; import com.android.systemui.SwipeHelper; import com.android.systemui.SwipeHelper.Callback; import com.android.systemui.classifier.FalsingManager; import com.android.systemui.colorextraction.SysuiColorExtractor; import com.android.systemui.plugins.statusbar.NotificationMenuRowPlugin; Loading Loading @@ -3734,12 +3731,14 @@ public class NotificationStackScrollLayout extends ViewGroup return y < getHeight() - getEmptyBottomMargin(); } @VisibleForTesting @ShadeViewRefactor(RefactorComponent.INPUT) private void setIsBeingDragged(boolean isDragged) { void setIsBeingDragged(boolean isDragged) { mIsBeingDragged = isDragged; if (isDragged) { requestDisallowInterceptTouchEvent(true); cancelLongPress(); resetExposedMenuView(true /* animate */, true /* force */); } } Loading Loading @@ -3869,6 +3868,7 @@ public class NotificationStackScrollLayout extends ViewGroup public void onPanelTrackingStarted() { mPanelTracking = true; mAmbientState.setPanelTracking(true); resetExposedMenuView(true /* animate */, true /* force */); } @ShadeViewRefactor(RefactorComponent.STATE_RESOLVER) Loading Loading @@ -4271,8 +4271,10 @@ public class NotificationStackScrollLayout extends ViewGroup mLinearDarkAmount = linearDarkAmount; mInterpolatedDarkAmount = interpolatedDarkAmount; boolean wasFullyDark = mAmbientState.isFullyDark(); boolean wasDarkAtAll = mAmbientState.isDarkAtAll(); mAmbientState.setDarkAmount(interpolatedDarkAmount); boolean nowFullyDark = mAmbientState.isFullyDark(); boolean nowDarkAtAll = mAmbientState.isDarkAtAll(); if (nowFullyDark != wasFullyDark) { updateContentHeight(); DozeParameters dozeParameters = DozeParameters.getInstance(mContext); Loading @@ -4283,6 +4285,9 @@ public class NotificationStackScrollLayout extends ViewGroup mIconAreaController.setFullyDark(nowFullyDark); } } if (!wasDarkAtAll && nowDarkAtAll) { resetExposedMenuView(true /* animate */, true /* animate */); } updateAlgorithmHeightAndPadding(); updateBackgroundDimming(); updatePanelTranslation(); Loading
packages/SystemUI/tests/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayoutTest.java +33 −0 Original line number Diff line number Diff line Loading @@ -15,6 +15,8 @@ package com.android.systemui.statusbar.notification.stack; import static junit.framework.Assert.assertEquals; import static junit.framework.Assert.assertNotNull; import static junit.framework.Assert.assertNull; import static org.mockito.ArgumentMatchers.any; import static org.mockito.ArgumentMatchers.anyBoolean; import static org.mockito.ArgumentMatchers.anyInt; Loading @@ -36,6 +38,7 @@ import android.service.dreams.IDreamManager; import android.support.test.annotation.UiThreadTest; import android.support.test.filters.SmallTest; import android.support.test.runner.AndroidJUnit4; import android.view.View; import com.android.systemui.ExpandHelper; import com.android.systemui.R; Loading Loading @@ -314,6 +317,36 @@ public class NotificationStackScrollLayoutTest extends SysuiTestCase { verify(mStackScroller).setEmptyShadeView(any()); } @Test @UiThreadTest public void testSetIsBeingDraggedResetsExposedMenu() { NotificationSwipeHelper swipeActionHelper = (NotificationSwipeHelper) mStackScroller.getSwipeActionHelper(); swipeActionHelper.setExposedMenuView(new View(mContext)); mStackScroller.setIsBeingDragged(true); assertNull(swipeActionHelper.getExposedMenuView()); } @Test @UiThreadTest public void testPanelTrackingStartResetsExposedMenu() { NotificationSwipeHelper swipeActionHelper = (NotificationSwipeHelper) mStackScroller.getSwipeActionHelper(); swipeActionHelper.setExposedMenuView(new View(mContext)); mStackScroller.onPanelTrackingStarted(); assertNull(swipeActionHelper.getExposedMenuView()); } @Test @UiThreadTest public void testDarkModeResetsExposedMenu() { NotificationSwipeHelper swipeActionHelper = (NotificationSwipeHelper) mStackScroller.getSwipeActionHelper(); swipeActionHelper.setExposedMenuView(new View(mContext)); mStackScroller.setDarkAmount(0.1f, 0.1f); assertNull(swipeActionHelper.getExposedMenuView()); } private void setBarStateForTest(int state) { ArgumentCaptor<StatusBarStateController.StateListener> captor = ArgumentCaptor.forClass(StatusBarStateController.StateListener.class); Loading