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

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

Merge "Wait for scrim animation before showing lock icon" into qt-dev

parents 1add7b84 cdbb1cbf
Loading
Loading
Loading
Loading
+8 −4
Original line number Diff line number Diff line
@@ -44,6 +44,7 @@ import com.android.systemui.R;
import com.android.systemui.dock.DockManager;
import com.android.systemui.plugins.statusbar.StatusBarStateController;
import com.android.systemui.statusbar.KeyguardAffordanceView;
import com.android.systemui.statusbar.phone.ScrimController.ScrimVisibility;
import com.android.systemui.statusbar.policy.AccessibilityController;
import com.android.systemui.statusbar.policy.ConfigurationController;
import com.android.systemui.statusbar.policy.KeyguardMonitor;
@@ -484,10 +485,13 @@ public class LockIcon extends KeyguardAffordanceView implements OnUserInfoChange
    }

    /**
     * Triggered after the unlock animation is over and the user is looking at launcher.
     * Called whenever the scrims become opaque, transparent or semi-transparent.
     */
    public void onKeyguardFadedAway() {
    public void onScrimVisibilityChanged(@ScrimVisibility int scrimsVisible) {
        if (mWakeAndUnlockRunning
                && scrimsVisible == ScrimController.VISIBILITY_FULLY_TRANSPARENT) {
            mWakeAndUnlockRunning = false;
            update();
        }
    }
}
+12 −0
Original line number Diff line number Diff line
@@ -19,6 +19,7 @@ package com.android.systemui.statusbar.phone;
import android.animation.Animator;
import android.animation.AnimatorListenerAdapter;
import android.animation.ValueAnimator;
import android.annotation.IntDef;
import android.app.AlarmManager;
import android.content.Context;
import android.graphics.Color;
@@ -52,6 +53,8 @@ import com.android.systemui.util.wakelock.WakeLock;

import java.io.FileDescriptor;
import java.io.PrintWriter;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.util.function.Consumer;

/**
@@ -84,6 +87,15 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener, OnCo
     * When at least 1 scrim is fully opaque (alpha set to 1.)
     */
    public static final int VISIBILITY_FULLY_OPAQUE = 2;

    @IntDef(prefix = { "VISIBILITY_" }, value = {
            VISIBILITY_FULLY_TRANSPARENT,
            VISIBILITY_SEMI_TRANSPARENT,
            VISIBILITY_FULLY_OPAQUE
    })
    @Retention(RetentionPolicy.SOURCE)
    public @interface ScrimVisibility {}

    /**
     * Default alpha value for most scrims.
     */
+3 −1
Original line number Diff line number Diff line
@@ -538,7 +538,6 @@ public class StatusBar extends SystemUI implements DemoMode,
            }
            if (mKeyguardMonitor.isKeyguardFadingAway()) {
                mStatusBarKeyguardViewManager.onKeyguardFadedAway();
                mStatusBarWindow.onKeyguardFadedAway();
            }
        }

@@ -929,6 +928,9 @@ public class StatusBar extends SystemUI implements DemoMode,
                    if (mStatusBarWindowController != null) {
                        mStatusBarWindowController.setScrimsVisibility(scrimsVisible);
                    }
                    if (mStatusBarWindow != null) {
                        mStatusBarWindow.onScrimVisibilityChanged(scrimsVisible);
                    }
                }, DozeParameters.getInstance(mContext),
                mContext.getSystemService(AlarmManager.class));
        mNotificationPanel.initDependencies(this, mGroupManager, mNotificationShelf,
+10 −9
Original line number Diff line number Diff line
@@ -68,6 +68,7 @@ import com.android.systemui.plugins.statusbar.StatusBarStateController;
import com.android.systemui.statusbar.DragDownHelper;
import com.android.systemui.statusbar.StatusBarState;
import com.android.systemui.statusbar.notification.stack.NotificationStackScrollLayout;
import com.android.systemui.statusbar.phone.ScrimController.ScrimVisibility;
import com.android.systemui.tuner.TunerService;

import java.io.FileDescriptor;
@@ -277,15 +278,6 @@ public class StatusBarWindowView extends FrameLayout {
        }
    }

    /**
     * Called after finished unlocking and the status bar window is already collapsed.
     */
    public void onKeyguardFadedAway() {
        if (mLockIcon != null) {
            mLockIcon.onKeyguardFadedAway();
        }
    }

    public void setStatusBarView(PhoneStatusBarView statusBarView) {
        mStatusBarView = statusBarView;
    }
@@ -509,6 +501,15 @@ public class StatusBarWindowView extends FrameLayout {
        pw.print("  mTouchActive="); pw.println(mTouchActive);
    }

    /**
     * Called whenever the scrims become opaque, transparent or semi-transparent.
     */
    public void onScrimVisibilityChanged(@ScrimVisibility int scrimsVisible) {
        if (mLockIcon != null) {
            mLockIcon.onScrimVisibilityChanged(scrimsVisible);
        }
    }

    public class LayoutParams extends FrameLayout.LayoutParams {

        public boolean ignoreRightInset;