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

Commit 06c19ea0 authored by Jorim Jaggi's avatar Jorim Jaggi
Browse files

Remove the scrimming of notifications

Not really needed anymore and adds a lot of overdraw. Let's get rid
of it.

Bug: 17287256
Bug: 17346296
Change-Id: I319596f7059b6ed0d3d7a578d3c786921001f4b5
parent 038839e9
Loading
Loading
Loading
Loading
+0 −5
Original line number Original line Diff line number Diff line
@@ -64,9 +64,4 @@
            />
            />
    </LinearLayout>
    </LinearLayout>


    <com.android.systemui.statusbar.NotificationScrimView
        android:id="@+id/scrim_view"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />

</com.android.systemui.statusbar.NotificationOverflowContainer>
</com.android.systemui.statusbar.NotificationOverflowContainer>
+0 −5
Original line number Original line Diff line number Diff line
@@ -59,9 +59,4 @@
        android:layout_height="match_parent"
        android:layout_height="match_parent"
        />
        />


    <com.android.systemui.statusbar.NotificationScrimView
        android:id="@+id/scrim_view"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />

</com.android.systemui.statusbar.ExpandableNotificationRow>
</com.android.systemui.statusbar.ExpandableNotificationRow>
+0 −10
Original line number Original line Diff line number Diff line
@@ -121,7 +121,6 @@ public abstract class ActivatableNotificationView extends ExpandableOutlineView


    private NotificationBackgroundView mBackgroundNormal;
    private NotificationBackgroundView mBackgroundNormal;
    private NotificationBackgroundView mBackgroundDimmed;
    private NotificationBackgroundView mBackgroundDimmed;
    private NotificationScrimView mScrimView;
    private ObjectAnimator mBackgroundAnimator;
    private ObjectAnimator mBackgroundAnimator;
    private RectF mAppearAnimationRect = new RectF();
    private RectF mAppearAnimationRect = new RectF();
    private PorterDuffColorFilter mAppearAnimationFilter;
    private PorterDuffColorFilter mAppearAnimationFilter;
@@ -173,8 +172,6 @@ public abstract class ActivatableNotificationView extends ExpandableOutlineView
        mBackgroundDimmed.setCustomBackground(R.drawable.notification_material_bg_dim);
        mBackgroundDimmed.setCustomBackground(R.drawable.notification_material_bg_dim);
        updateBackground();
        updateBackground();
        updateBackgroundTint();
        updateBackgroundTint();
        mScrimView = (NotificationScrimView) findViewById(R.id.scrim_view);
        setScrimAmount(0);
    }
    }


    private final Runnable mTapTimeoutRunnable = new Runnable() {
    private final Runnable mTapTimeoutRunnable = new Runnable() {
@@ -465,7 +462,6 @@ public abstract class ActivatableNotificationView extends ExpandableOutlineView
        setPivotY(actualHeight / 2);
        setPivotY(actualHeight / 2);
        mBackgroundNormal.setActualHeight(actualHeight);
        mBackgroundNormal.setActualHeight(actualHeight);
        mBackgroundDimmed.setActualHeight(actualHeight);
        mBackgroundDimmed.setActualHeight(actualHeight);
        mScrimView.setActualHeight(actualHeight);
    }
    }


    @Override
    @Override
@@ -473,7 +469,6 @@ public abstract class ActivatableNotificationView extends ExpandableOutlineView
        super.setClipTopAmount(clipTopAmount);
        super.setClipTopAmount(clipTopAmount);
        mBackgroundNormal.setClipTopAmount(clipTopAmount);
        mBackgroundNormal.setClipTopAmount(clipTopAmount);
        mBackgroundDimmed.setClipTopAmount(clipTopAmount);
        mBackgroundDimmed.setClipTopAmount(clipTopAmount);
        mScrimView.setClipTopAmount(clipTopAmount);
    }
    }


    @Override
    @Override
@@ -496,11 +491,6 @@ public abstract class ActivatableNotificationView extends ExpandableOutlineView
        }
        }
    }
    }


    @Override
    public void setScrimAmount(float scrimAmount) {
        mScrimView.setAlpha(scrimAmount);
    }

    private void startAppearAnimation(boolean isAppearing, float translationDirection, long delay,
    private void startAppearAnimation(boolean isAppearing, float translationDirection, long delay,
            long duration, final Runnable onFinishedRunnable) {
            long duration, final Runnable onFinishedRunnable) {
        if (mAppearAnimator != null) {
        if (mAppearAnimator != null) {
+0 −2
Original line number Original line Diff line number Diff line
@@ -255,8 +255,6 @@ public abstract class ExpandableView extends FrameLayout {


    public abstract void performAddAnimation(long delay, long duration);
    public abstract void performAddAnimation(long delay, long duration);


    public abstract void setScrimAmount(float scrimAmount);

    public void setBelowSpeedBump(boolean below) {
    public void setBelowSpeedBump(boolean below) {
    }
    }


+0 −79
Original line number Original line Diff line number Diff line
/*
 * Copyright (C) 2014 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License
 */

package com.android.systemui.statusbar;

import android.content.Context;
import android.graphics.Canvas;
import android.graphics.PorterDuff;
import android.graphics.drawable.Drawable;
import android.util.AttributeSet;
import android.view.View;

import com.android.keyguard.R;

/**
 * A view that can be used for both the dimmed and normal background of an notification.
 */
public class NotificationScrimView extends View {

    private Drawable mBackground;
    private int mClipTopAmount;
    private int mActualHeight;

    public NotificationScrimView(Context context, AttributeSet attrs) {
        super(context, attrs);
        mBackground = getResources().getDrawable(R.drawable.notification_scrim);
    }

    @Override
    protected void onDraw(Canvas canvas) {
        draw(canvas, mBackground);
    }

    private void draw(Canvas canvas, Drawable drawable) {
        if (drawable != null) {
            drawable.setBounds(0, mClipTopAmount, getWidth(), mActualHeight);
            drawable.draw(canvas);
        }
    }

    @Override
    protected boolean verifyDrawable(Drawable who) {
        return super.verifyDrawable(who) || who == mBackground;
    }

    public void setActualHeight(int actualHeight) {
        mActualHeight = actualHeight;
        invalidate();
    }

    public int getActualHeight() {
        return mActualHeight;
    }

    public void setClipTopAmount(int clipTopAmount) {
        mClipTopAmount = clipTopAmount;
        invalidate();
    }

    @Override
    public boolean hasOverlappingRendering() {

        // Prevents this view from creating a layer when alpha is animating.
        return false;
    }
}
Loading