Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f653dba7 authored by Selim Cinek's avatar Selim Cinek
Browse files

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
parent 1efb240c
Loading
Loading
Loading
Loading
+8 −1
Original line number Diff line number Diff line
@@ -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,