From e32efd76af3cac9616eea2defac3809d59d0ba58 Mon Sep 17 00:00:00 2001 From: Robert Snoeberger Date: Mon, 12 Nov 2018 08:38:34 -0500 Subject: [PATCH] Add setDarkAmount method to ClockPlugin interface. setDarmAmount implementations provided by clock plugins should use the dark amount to transition into and out of the doze state on AOD. For example, the size of the clock could shrink in the Y direction when leaving doze to make room for the notification stack scroller. Bug: 119035943 Test: KeyguardClockSwitchTest passes locally. Change-Id: I9968dc2cc5ab8000ff525f3d1d06ffbf73359086 --- .../src/com/android/systemui/plugins/ClockPlugin.java | 6 ++++++ .../src/com/android/keyguard/KeyguardClockSwitch.java | 10 ++++++++++ .../src/com/android/keyguard/KeyguardStatusView.java | 1 + 3 files changed, 17 insertions(+) diff --git a/packages/SystemUI/plugin/src/com/android/systemui/plugins/ClockPlugin.java b/packages/SystemUI/plugin/src/com/android/systemui/plugins/ClockPlugin.java index 887ea59a0b81c..7cb63ea7f1517 100644 --- a/packages/SystemUI/plugin/src/com/android/systemui/plugins/ClockPlugin.java +++ b/packages/SystemUI/plugin/src/com/android/systemui/plugins/ClockPlugin.java @@ -49,4 +49,10 @@ public interface ClockPlugin extends Plugin { * Notifies that time tick alarm from doze service fired. */ default void dozeTimeTick() { } + + /** + * Set the amount (ratio) that the device has transitioned to doze. + * @param darkAmount Amount of transition to doze: 1f for doze and 0f for awake. + */ + default void setDarkAmount(float darkAmount) {} } diff --git a/packages/SystemUI/src/com/android/keyguard/KeyguardClockSwitch.java b/packages/SystemUI/src/com/android/keyguard/KeyguardClockSwitch.java index 8881f8a696076..b439c6c9c186f 100644 --- a/packages/SystemUI/src/com/android/keyguard/KeyguardClockSwitch.java +++ b/packages/SystemUI/src/com/android/keyguard/KeyguardClockSwitch.java @@ -126,6 +126,16 @@ public class KeyguardClockSwitch extends FrameLayout { mClockView.setFormat24Hour(format); } + /** + * Set the amount (ratio) that the device has transitioned to doze. + * @param darkAmount Amount of transition to doze: 1f for doze and 0f for awake. + */ + public void setDarkAmount(float darkAmount) { + if (mClockPlugin != null) { + mClockPlugin.setDarkAmount(darkAmount); + } + } + public Paint getPaint() { return mClockView.getPaint(); } diff --git a/packages/SystemUI/src/com/android/keyguard/KeyguardStatusView.java b/packages/SystemUI/src/com/android/keyguard/KeyguardStatusView.java index f701e229295e0..be795d2b6f2c2 100644 --- a/packages/SystemUI/src/com/android/keyguard/KeyguardStatusView.java +++ b/packages/SystemUI/src/com/android/keyguard/KeyguardStatusView.java @@ -385,6 +385,7 @@ public class KeyguardStatusView extends GridLayout implements return; } mDarkAmount = darkAmount; + mClockView.setDarkAmount(darkAmount); updateDark(); }