Merge "Using the keyguard fading away duration for the scrim" into qt-r1-dev
am: 85224a5834
Change-Id: I11aafc252dc733ef01cafd510b3a602aea803804
This commit is contained in:
@@ -66,6 +66,7 @@ import com.android.systemui.statusbar.phone.StatusBar;
|
|||||||
import com.android.systemui.statusbar.phone.StatusBarKeyguardViewManager;
|
import com.android.systemui.statusbar.phone.StatusBarKeyguardViewManager;
|
||||||
import com.android.systemui.statusbar.phone.UnlockMethodCache;
|
import com.android.systemui.statusbar.phone.UnlockMethodCache;
|
||||||
import com.android.systemui.statusbar.policy.DeviceProvisionedController;
|
import com.android.systemui.statusbar.policy.DeviceProvisionedController;
|
||||||
|
import com.android.systemui.statusbar.policy.KeyguardMonitor;
|
||||||
import com.android.systemui.util.AsyncSensorManager;
|
import com.android.systemui.util.AsyncSensorManager;
|
||||||
import com.android.systemui.util.InjectionInflationController;
|
import com.android.systemui.util.InjectionInflationController;
|
||||||
import com.android.systemui.util.leak.GarbageMonitor;
|
import com.android.systemui.util.leak.GarbageMonitor;
|
||||||
@@ -144,9 +145,9 @@ public class SystemUIFactory {
|
|||||||
LockscreenWallpaper lockscreenWallpaper,
|
LockscreenWallpaper lockscreenWallpaper,
|
||||||
TriConsumer<ScrimState, Float, GradientColors> scrimStateListener,
|
TriConsumer<ScrimState, Float, GradientColors> scrimStateListener,
|
||||||
Consumer<Integer> scrimVisibleListener, DozeParameters dozeParameters,
|
Consumer<Integer> scrimVisibleListener, DozeParameters dozeParameters,
|
||||||
AlarmManager alarmManager) {
|
AlarmManager alarmManager, KeyguardMonitor keyguardMonitor) {
|
||||||
return new ScrimController(scrimBehind, scrimInFront, scrimStateListener,
|
return new ScrimController(scrimBehind, scrimInFront, scrimStateListener,
|
||||||
scrimVisibleListener, dozeParameters, alarmManager);
|
scrimVisibleListener, dozeParameters, alarmManager, keyguardMonitor);
|
||||||
}
|
}
|
||||||
|
|
||||||
public NotificationIconAreaController createNotificationIconAreaController(Context context,
|
public NotificationIconAreaController createNotificationIconAreaController(Context context,
|
||||||
|
|||||||
@@ -296,10 +296,13 @@ public class QSCustomizer extends LinearLayout implements OnMenuItemClickListene
|
|||||||
mY = y - containerLocation[1];
|
mY = y - containerLocation[1];
|
||||||
}
|
}
|
||||||
|
|
||||||
private final Callback mKeyguardCallback = () -> {
|
private final Callback mKeyguardCallback = new Callback() {
|
||||||
if (!isAttachedToWindow()) return;
|
@Override
|
||||||
if (Dependency.get(KeyguardMonitor.class).isShowing() && !mOpening) {
|
public void onKeyguardShowingChanged() {
|
||||||
hide();
|
if (!isAttachedToWindow()) return;
|
||||||
|
if (Dependency.get(KeyguardMonitor.class).isShowing() && !mOpening) {
|
||||||
|
hide();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -47,6 +47,7 @@ import com.android.systemui.R;
|
|||||||
import com.android.systemui.colorextraction.SysuiColorExtractor;
|
import com.android.systemui.colorextraction.SysuiColorExtractor;
|
||||||
import com.android.systemui.statusbar.ScrimView;
|
import com.android.systemui.statusbar.ScrimView;
|
||||||
import com.android.systemui.statusbar.notification.stack.ViewState;
|
import com.android.systemui.statusbar.notification.stack.ViewState;
|
||||||
|
import com.android.systemui.statusbar.policy.KeyguardMonitor;
|
||||||
import com.android.systemui.util.AlarmTimeout;
|
import com.android.systemui.util.AlarmTimeout;
|
||||||
import com.android.systemui.util.wakelock.DelayedWakeLock;
|
import com.android.systemui.util.wakelock.DelayedWakeLock;
|
||||||
import com.android.systemui.util.wakelock.WakeLock;
|
import com.android.systemui.util.wakelock.WakeLock;
|
||||||
@@ -177,7 +178,7 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener, OnCo
|
|||||||
public ScrimController(ScrimView scrimBehind, ScrimView scrimInFront,
|
public ScrimController(ScrimView scrimBehind, ScrimView scrimInFront,
|
||||||
TriConsumer<ScrimState, Float, GradientColors> scrimStateListener,
|
TriConsumer<ScrimState, Float, GradientColors> scrimStateListener,
|
||||||
Consumer<Integer> scrimVisibleListener, DozeParameters dozeParameters,
|
Consumer<Integer> scrimVisibleListener, DozeParameters dozeParameters,
|
||||||
AlarmManager alarmManager) {
|
AlarmManager alarmManager, KeyguardMonitor keyguardMonitor) {
|
||||||
mScrimBehind = scrimBehind;
|
mScrimBehind = scrimBehind;
|
||||||
mScrimInFront = scrimInFront;
|
mScrimInFront = scrimInFront;
|
||||||
mScrimStateListener = scrimStateListener;
|
mScrimStateListener = scrimStateListener;
|
||||||
@@ -197,6 +198,13 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener, OnCo
|
|||||||
// to make sure that text on top of it is legible.
|
// to make sure that text on top of it is legible.
|
||||||
mScrimBehindAlpha = mScrimBehindAlphaResValue;
|
mScrimBehindAlpha = mScrimBehindAlphaResValue;
|
||||||
mDozeParameters = dozeParameters;
|
mDozeParameters = dozeParameters;
|
||||||
|
keyguardMonitor.addCallback(new KeyguardMonitor.Callback() {
|
||||||
|
@Override
|
||||||
|
public void onKeyguardFadingAwayChanged() {
|
||||||
|
setKeyguardFadingAway(keyguardMonitor.isKeyguardFadingAway(),
|
||||||
|
keyguardMonitor.getKeyguardFadingAwayDuration());
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
mColorExtractor = Dependency.get(SysuiColorExtractor.class);
|
mColorExtractor = Dependency.get(SysuiColorExtractor.class);
|
||||||
mColorExtractor.addOnColorsChangedListener(this);
|
mColorExtractor.addOnColorsChangedListener(this);
|
||||||
@@ -948,9 +956,9 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener, OnCo
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setUnlockIsFading(boolean unlockFading) {
|
private void setKeyguardFadingAway(boolean fadingAway, long duration) {
|
||||||
for (ScrimState state : ScrimState.values()) {
|
for (ScrimState state : ScrimState.values()) {
|
||||||
state.setUnlockIsFading(unlockFading);
|
state.setKeyguardFadingAway(fadingAway, duration);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -156,8 +156,8 @@ public enum ScrimState {
|
|||||||
public void prepare(ScrimState previousState) {
|
public void prepare(ScrimState previousState) {
|
||||||
mCurrentBehindAlpha = 0;
|
mCurrentBehindAlpha = 0;
|
||||||
mCurrentInFrontAlpha = 0;
|
mCurrentInFrontAlpha = 0;
|
||||||
mAnimationDuration = mUnlockIsFading
|
mAnimationDuration = mKeyguardFadingAway
|
||||||
? KeyguardBypassController.BYPASS_PANEL_FADE_DURATION
|
? mKeyguardFadingAwayDuration
|
||||||
: StatusBar.FADE_KEYGUARD_DURATION;
|
: StatusBar.FADE_KEYGUARD_DURATION;
|
||||||
mAnimateChange = !mLaunchingAffordanceWithPreview;
|
mAnimateChange = !mLaunchingAffordanceWithPreview;
|
||||||
|
|
||||||
@@ -209,7 +209,8 @@ public enum ScrimState {
|
|||||||
boolean mHasBackdrop;
|
boolean mHasBackdrop;
|
||||||
boolean mLaunchingAffordanceWithPreview;
|
boolean mLaunchingAffordanceWithPreview;
|
||||||
boolean mWakeLockScreenSensorActive;
|
boolean mWakeLockScreenSensorActive;
|
||||||
boolean mUnlockIsFading;
|
boolean mKeyguardFadingAway;
|
||||||
|
long mKeyguardFadingAwayDuration;
|
||||||
|
|
||||||
ScrimState(int index) {
|
ScrimState(int index) {
|
||||||
mIndex = index;
|
mIndex = index;
|
||||||
@@ -298,7 +299,8 @@ public enum ScrimState {
|
|||||||
mWakeLockScreenSensorActive = active;
|
mWakeLockScreenSensorActive = active;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setUnlockIsFading(boolean unlockIsFading) {
|
public void setKeyguardFadingAway(boolean fadingAway, long duration) {
|
||||||
mUnlockIsFading = unlockIsFading;
|
mKeyguardFadingAway = fadingAway;
|
||||||
|
mKeyguardFadingAwayDuration = duration;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -938,7 +938,8 @@ public class StatusBar extends SystemUI implements DemoMode,
|
|||||||
mStatusBarWindow.onScrimVisibilityChanged(scrimsVisible);
|
mStatusBarWindow.onScrimVisibilityChanged(scrimsVisible);
|
||||||
}
|
}
|
||||||
}, DozeParameters.getInstance(mContext),
|
}, DozeParameters.getInstance(mContext),
|
||||||
mContext.getSystemService(AlarmManager.class));
|
mContext.getSystemService(AlarmManager.class),
|
||||||
|
mKeyguardMonitor);
|
||||||
mNotificationPanel.initDependencies(this, mGroupManager, mNotificationShelf,
|
mNotificationPanel.initDependencies(this, mGroupManager, mNotificationShelf,
|
||||||
mHeadsUpManager, mNotificationIconAreaController, mScrimController);
|
mHeadsUpManager, mNotificationIconAreaController, mScrimController);
|
||||||
mDozeScrimController = new DozeScrimController(DozeParameters.getInstance(context));
|
mDozeScrimController = new DozeScrimController(DozeParameters.getInstance(context));
|
||||||
@@ -3864,7 +3865,6 @@ public class StatusBar extends SystemUI implements DemoMode,
|
|||||||
|
|
||||||
public void notifyBiometricAuthModeChanged() {
|
public void notifyBiometricAuthModeChanged() {
|
||||||
updateDozing();
|
updateDozing();
|
||||||
mScrimController.setUnlockIsFading(mBiometricUnlockController.isUnlockFading());
|
|
||||||
updateScrimController();
|
updateScrimController();
|
||||||
mStatusBarWindow.onBiometricAuthModeChanged(mBiometricUnlockController.isWakeAndUnlock(),
|
mStatusBarWindow.onBiometricAuthModeChanged(mBiometricUnlockController.isWakeAndUnlock(),
|
||||||
mBiometricUnlockController.isBiometricUnlock());
|
mBiometricUnlockController.isBiometricUnlock());
|
||||||
|
|||||||
@@ -76,7 +76,7 @@ public interface KeyguardMonitor extends CallbackController<Callback> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
interface Callback {
|
interface Callback {
|
||||||
void onKeyguardShowingChanged();
|
default void onKeyguardShowingChanged() {}
|
||||||
default void onKeyguardFadingAwayChanged() {}
|
default void onKeyguardFadingAwayChanged() {}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -142,10 +142,10 @@ public class KeyguardMonitorImpl extends KeyguardUpdateMonitorCallback
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void notifyKeyguardFadingAway(long delay, long fadeoutDuration, boolean isBypassFading) {
|
public void notifyKeyguardFadingAway(long delay, long fadeoutDuration, boolean isBypassFading) {
|
||||||
setKeyguardFadingAway(true);
|
|
||||||
mKeyguardFadingAwayDelay = delay;
|
mKeyguardFadingAwayDelay = delay;
|
||||||
mKeyguardFadingAwayDuration = fadeoutDuration;
|
mKeyguardFadingAwayDuration = fadeoutDuration;
|
||||||
mBypassFadingAnimation = isBypassFading;
|
mBypassFadingAnimation = isBypassFading;
|
||||||
|
setKeyguardFadingAway(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void setKeyguardFadingAway(boolean keyguardFadingAway) {
|
private void setKeyguardFadingAway(boolean keyguardFadingAway) {
|
||||||
|
|||||||
@@ -47,6 +47,7 @@ import com.android.internal.colorextraction.ColorExtractor.GradientColors;
|
|||||||
import com.android.internal.util.function.TriConsumer;
|
import com.android.internal.util.function.TriConsumer;
|
||||||
import com.android.systemui.SysuiTestCase;
|
import com.android.systemui.SysuiTestCase;
|
||||||
import com.android.systemui.statusbar.ScrimView;
|
import com.android.systemui.statusbar.ScrimView;
|
||||||
|
import com.android.systemui.statusbar.policy.KeyguardMonitor;
|
||||||
import com.android.systemui.util.wakelock.WakeLock;
|
import com.android.systemui.util.wakelock.WakeLock;
|
||||||
import com.android.systemui.utils.os.FakeHandler;
|
import com.android.systemui.utils.os.FakeHandler;
|
||||||
|
|
||||||
@@ -96,7 +97,8 @@ public class ScrimControllerTest extends SysuiTestCase {
|
|||||||
mScrimBehindAlpha = scrimBehindAlpha;
|
mScrimBehindAlpha = scrimBehindAlpha;
|
||||||
mScrimInFrontColor = scrimInFrontColor;
|
mScrimInFrontColor = scrimInFrontColor;
|
||||||
},
|
},
|
||||||
visible -> mScrimVisibility = visible, mDozeParamenters, mAlarmManager);
|
visible -> mScrimVisibility = visible, mDozeParamenters, mAlarmManager,
|
||||||
|
mock(KeyguardMonitor.class));
|
||||||
mScrimController.setHasBackdrop(false);
|
mScrimController.setHasBackdrop(false);
|
||||||
mScrimController.setWallpaperSupportsAmbientMode(false);
|
mScrimController.setWallpaperSupportsAmbientMode(false);
|
||||||
mScrimController.transitionTo(ScrimState.KEYGUARD);
|
mScrimController.transitionTo(ScrimState.KEYGUARD);
|
||||||
@@ -681,9 +683,9 @@ public class ScrimControllerTest extends SysuiTestCase {
|
|||||||
SynchronousScrimController(ScrimView scrimBehind, ScrimView scrimInFront,
|
SynchronousScrimController(ScrimView scrimBehind, ScrimView scrimInFront,
|
||||||
TriConsumer<ScrimState, Float, GradientColors> scrimStateListener,
|
TriConsumer<ScrimState, Float, GradientColors> scrimStateListener,
|
||||||
Consumer<Integer> scrimVisibleListener, DozeParameters dozeParameters,
|
Consumer<Integer> scrimVisibleListener, DozeParameters dozeParameters,
|
||||||
AlarmManager alarmManager) {
|
AlarmManager alarmManager, KeyguardMonitor keyguardMonitor) {
|
||||||
super(scrimBehind, scrimInFront, scrimStateListener, scrimVisibleListener,
|
super(scrimBehind, scrimInFront, scrimStateListener, scrimVisibleListener,
|
||||||
dozeParameters, alarmManager);
|
dozeParameters, alarmManager, keyguardMonitor);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
Reference in New Issue
Block a user