From 5ab8e5d72212c281a8f1dde6f0a38bbf08aed03e Mon Sep 17 00:00:00 2001 From: Sherry Zhou Date: Fri, 19 May 2023 17:59:16 +0000 Subject: Add transition animation for weather clock in split shade Test: manually on Tablet Bug: 279729045 Change-Id: I546538f3570b849c6738871713fa85563a74a573 --- .../systemui/shared/clocks/DefaultClockController.kt | 4 +++- .../android/systemui/shared/clocks/DefaultClockProvider.kt | 13 ++++++++++--- .../com/android/keyguard/KeyguardStatusViewController.java | 8 +++++--- .../com/android/keyguard/dagger/ClockRegistryModule.java | 6 +++++- 4 files changed, 23 insertions(+), 8 deletions(-) diff --git a/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/DefaultClockController.kt b/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/DefaultClockController.kt index 252c8e343e0e..96f720d1de88 100644 --- a/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/DefaultClockController.kt +++ b/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/DefaultClockController.kt @@ -50,6 +50,7 @@ class DefaultClockController( private val layoutInflater: LayoutInflater, private val resources: Resources, private val settings: ClockSettings?, + private val hasStepClockAnimation: Boolean = false, ) : ClockController { override val smallClock: DefaultClockFaceController override val largeClock: LargeClockFaceController @@ -170,7 +171,8 @@ class DefaultClockController( view: AnimatableClockView, seedColor: Int?, ) : DefaultClockFaceController(view, seedColor) { - override val config = ClockFaceConfig(hasCustomPositionUpdatedAnimation = true) + override val config = + ClockFaceConfig(hasCustomPositionUpdatedAnimation = hasStepClockAnimation) init { animations = LargeClockAnimations(view, 0f, 0f) diff --git a/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/DefaultClockProvider.kt b/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/DefaultClockProvider.kt index 0fd1b492c146..949641a7f75e 100644 --- a/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/DefaultClockProvider.kt +++ b/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/DefaultClockProvider.kt @@ -29,10 +29,11 @@ const val DEFAULT_CLOCK_NAME = "Default Clock" const val DEFAULT_CLOCK_ID = "DEFAULT" /** Provides the default system clock */ -class DefaultClockProvider constructor( +class DefaultClockProvider( val ctx: Context, val layoutInflater: LayoutInflater, - val resources: Resources + val resources: Resources, + val hasStepClockAnimation: Boolean = false ) : ClockProvider { override fun getClocks(): List = listOf(ClockMetadata(DEFAULT_CLOCK_ID, DEFAULT_CLOCK_NAME)) @@ -42,7 +43,13 @@ class DefaultClockProvider constructor( throw IllegalArgumentException("${settings.clockId} is unsupported by $TAG") } - return DefaultClockController(ctx, layoutInflater, resources, settings) + return DefaultClockController( + ctx, + layoutInflater, + resources, + settings, + hasStepClockAnimation, + ) } override fun getClockThumbnail(id: ClockId): Drawable? { diff --git a/packages/SystemUI/src/com/android/keyguard/KeyguardStatusViewController.java b/packages/SystemUI/src/com/android/keyguard/KeyguardStatusViewController.java index 1db0ab65e44f..835cc13bebb1 100644 --- a/packages/SystemUI/src/com/android/keyguard/KeyguardStatusViewController.java +++ b/packages/SystemUI/src/com/android/keyguard/KeyguardStatusViewController.java @@ -46,7 +46,6 @@ import com.android.keyguard.KeyguardClockSwitch.ClockSize; import com.android.keyguard.logging.KeyguardLogger; import com.android.systemui.R; import com.android.systemui.flags.FeatureFlags; -import com.android.systemui.flags.Flags; import com.android.systemui.plugins.ClockController; import com.android.systemui.statusbar.notification.AnimatableProperty; import com.android.systemui.statusbar.notification.PropertyAnimator; @@ -363,7 +362,7 @@ public class KeyguardStatusViewController extends ViewController