diff options
author | Selim Cinek <cinek@google.com> | 2014-05-24 16:47:06 +0200 |
---|---|---|
committer | Selim Cinek <cinek@google.com> | 2014-05-24 16:47:06 +0200 |
commit | f653dba7cb672b5ebfc8403e54e74095a89d56fb (patch) | |
tree | d7813eed0976235505e882747f87356ac7245586 /packages/SystemUI/src | |
parent | 1efb240c1a0aeca9492cf8891794712adfdb1fa7 (diff) | |
download | frameworks_base-f653dba7cb672b5ebfc8403e54e74095a89d56fb.zip frameworks_base-f653dba7cb672b5ebfc8403e54e74095a89d56fb.tar.gz frameworks_base-f653dba7cb672b5ebfc8403e54e74095a89d56fb.tar.bz2 |
Notifications where clipped incorrectly in the unlocked shade.
Previously the notification clipping did not account for the corners
of their rounded rects.
Bug: 15188616
Change-Id: If8ee1ceda0a5a43b4ab9e754804279834f93baa4
Diffstat (limited to 'packages/SystemUI/src')
-rw-r--r-- | packages/SystemUI/src/com/android/systemui/statusbar/stack/StackScrollState.java | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/stack/StackScrollState.java b/packages/SystemUI/src/com/android/systemui/statusbar/stack/StackScrollState.java index ae2acab..44e10be 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/stack/StackScrollState.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/stack/StackScrollState.java @@ -37,12 +37,15 @@ public class StackScrollState { private static final String CHILD_NOT_FOUND_TAG = "StackScrollStateNoSuchChild"; private final ViewGroup mHostView; + private final int mRoundedRectCornerRadius; private Map<ExpandableView, ViewState> mStateMap; private final Rect mClipRect = new Rect(); public StackScrollState(ViewGroup hostView) { mHostView = hostView; mStateMap = new HashMap<ExpandableView, ViewState>(); + mRoundedRectCornerRadius = mHostView.getResources().getDimensionPixelSize( + com.android.internal.R.dimen.notification_quantum_rounded_rect_radius); } public ViewGroup getHostView() { @@ -155,11 +158,15 @@ public class StackScrollState { // apply clipping and shadow float newNotificationEnd = newYTranslation + newHeight; + // In the unlocked shade we have to clip a little bit higher because of the rounded + // corners of the notifications. + float clippingCorrection = state.dimmed ? 0 : mRoundedRectCornerRadius; + // When the previous notification is swiped, we don't clip the content to the // bottom of it. float clipHeight = previousNotificationIsSwiped ? newHeight - : newNotificationEnd - (previousNotificationEnd); + : newNotificationEnd - (previousNotificationEnd - clippingCorrection); updateChildClippingAndBackground(child, newHeight, clipHeight, |