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

Commit 337b3fb2 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Also translate separator when moving shelf icons"

parents 466fb533 0cd882fc
Loading
Loading
Loading
Loading
+0 −4
Original line number Diff line number Diff line
@@ -802,10 +802,6 @@ public class NotificationShelf extends ActivatableNotificationView implements
        updateRelativeOffset();
    }

    public void setDarkOffsetX(int offsetX) {
        mShelfIcons.setDarkOffsetX(offsetX);
    }

    private class ShelfState extends ExpandableViewState {
        private float openedAmount;
        private boolean hasItemsInStableShelf;
+0 −13
Original line number Diff line number Diff line
@@ -120,7 +120,6 @@ public class NotificationIconContainer extends AlphaOptimizedFrameLayout {
    private boolean mDisallowNextAnimation;
    private boolean mAnimationsEnabled = true;
    private ArrayMap<String, ArrayList<StatusBarIcon>> mReplacingIcons;
    private int mDarkOffsetX;
    // Keep track of the last visible icon so collapsed container can report on its location
    private IconState mLastVisibleIconState;

@@ -378,14 +377,6 @@ public class NotificationIconContainer extends AlphaOptimizedFrameLayout {
                iconState.xTranslation = getWidth() - iconState.xTranslation - view.getWidth();
            }
        }

        if (mDark && mDarkOffsetX != 0) {
            for (int i = 0; i < childCount; i++) {
                View view = getChildAt(i);
                IconState iconState = mIconStates.get(view);
                iconState.xTranslation += mDarkOffsetX;
            }
        }
    }

    private float getLayoutEnd() {
@@ -534,10 +525,6 @@ public class NotificationIconContainer extends AlphaOptimizedFrameLayout {
        mAnimationsEnabled = enabled;
    }

    public void setDarkOffsetX(int offsetX) {
        mDarkOffsetX = offsetX;
    }

    public void setReplacingIcons(ArrayMap<String, ArrayList<StatusBarIcon>> replacingIcons) {
        mReplacingIcons = replacingIcons;
    }
+2 −4
Original line number Diff line number Diff line
@@ -47,6 +47,7 @@ import android.view.ViewTreeObserver;
import android.view.WindowInsets;
import android.view.accessibility.AccessibilityEvent;
import android.widget.FrameLayout;

import com.android.internal.logging.MetricsLogger;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.keyguard.KeyguardStatusView;
@@ -67,14 +68,11 @@ import com.android.systemui.statusbar.NotificationData;
import com.android.systemui.statusbar.NotificationShelf;
import com.android.systemui.statusbar.StatusBarState;
import com.android.systemui.statusbar.notification.ActivityLaunchAnimator;
import com.android.systemui.statusbar.notification.NotificationUtils;
import com.android.systemui.statusbar.phone.HeadsUpManagerPhone;
import com.android.systemui.statusbar.policy.KeyguardUserSwitcher;
import com.android.systemui.statusbar.policy.OnHeadsUpChangedListener;
import com.android.systemui.statusbar.stack.NotificationStackScrollLayout;
import com.android.systemui.statusbar.stack.StackStateAnimator;

import java.util.Collection;
import java.util.List;

public class NotificationPanelView extends PanelView implements
@@ -482,7 +480,7 @@ public class NotificationPanelView extends PanelView implements
            mTopPaddingAdjustment = mClockPositionResult.stackScrollerPaddingAdjustment;
        }
        mNotificationStackScroller.setIntrinsicPadding(stackScrollerPadding);
        mNotificationStackScroller.setDarkShelfOffsetX(mClockPositionResult.clockX);
        mNotificationStackScroller.setAntiBurnInOffsetX(mClockPositionResult.clockX);
        mKeyguardBottomArea.setBurnInXOffset(mClockPositionResult.clockX);
        requestScrollerTopPaddingUpdate(animate);
    }
+9 −2
Original line number Diff line number Diff line
@@ -403,6 +403,7 @@ public class NotificationStackScrollLayout extends ViewGroup
    private final int mSeparatorThickness;
    private final Rect mTmpRect = new Rect();
    private int mClockBottom;
    private int mAntiBurnInOffsetX;

    public NotificationStackScrollLayout(Context context) {
        this(context, null);
@@ -3889,9 +3890,14 @@ public class NotificationStackScrollLayout extends ViewGroup
        applyCurrentBackgroundBounds();
        updateWillNotDraw();
        updateContentHeight();
        updateAntiBurnInTranslation();
        notifyHeightChangeListener(mShelf);
    }

    private void updateAntiBurnInTranslation() {
        setTranslationX(mAmbientState.isDark() ? mAntiBurnInOffsetX : 0);
    }

    /**
     * Updates whether or not this Layout will perform its own custom drawing (i.e. whether or
     * not {@link #onDraw(Canvas)} is called). This method should be called whenever the
@@ -4473,8 +4479,9 @@ public class NotificationStackScrollLayout extends ViewGroup
        mHeadsUpGoingAwayAnimationsAllowed = headsUpGoingAwayAnimationsAllowed;
    }

    public void setDarkShelfOffsetX(int shelfOffsetX) {
        mShelf.setDarkOffsetX(shelfOffsetX);
    public void setAntiBurnInOffsetX(int antiBurnInOffsetX) {
        mAntiBurnInOffsetX = antiBurnInOffsetX;
        updateAntiBurnInTranslation();
    }

    public void dump(FileDescriptor fd, PrintWriter pw, String[] args) {
+11 −0
Original line number Diff line number Diff line
@@ -61,4 +61,15 @@ public class NotificationStackScrollLayoutTest extends SysuiTestCase {
        Assert.assertFalse(mStackScroller.isDimmed());
    }

    @Test
    public void testAntiBurnInOffset() {
        final int burnInOffset = 30;
        mStackScroller.setAntiBurnInOffsetX(burnInOffset);
        mStackScroller.setDark(false /* dark */, false /* animated */, null /* touch */);
        Assert.assertEquals(0 /* expected */, mStackScroller.getTranslationX(), 0.01 /* delta */);
        mStackScroller.setDark(true /* dark */, false /* animated */, null /* touch */);
        Assert.assertEquals(burnInOffset /* expected */, mStackScroller.getTranslationX(),
                0.01 /* delta */);
    }

}