summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Hawkwood Glazier <jglazier@google.com> 2024-11-07 21:31:26 +0000
committer Hawkwood Glazier <jglazier@google.com> 2024-11-08 04:08:19 +0000
commitf2a0714eafefa87c8f2be03ceabdb174c082dfe2 (patch)
tree45f70281f983b9abe2ea7ba70fd494b146d3fa8e
parent5d4b0eca7c4637901e0b2ba874eb005b7f1ba7a7 (diff)
Query for 24Hour format using current user id
Bug: 373793480 Test: Manually checked interactions Flag: EXEMPT Minor Bug fix Change-Id: I52a8e62d0f0fda28e52986d1453e781bfc2849e3
-rw-r--r--packages/SystemUI/src/com/android/keyguard/ClockEventController.kt16
-rw-r--r--packages/SystemUI/tests/src/com/android/keyguard/ClockEventControllerTest.kt4
2 files changed, 15 insertions, 5 deletions
diff --git a/packages/SystemUI/src/com/android/keyguard/ClockEventController.kt b/packages/SystemUI/src/com/android/keyguard/ClockEventController.kt
index 24d619119983..df9f7053c3f3 100644
--- a/packages/SystemUI/src/com/android/keyguard/ClockEventController.kt
+++ b/packages/SystemUI/src/com/android/keyguard/ClockEventController.kt
@@ -35,6 +35,7 @@ import android.view.ViewTreeObserver.OnGlobalLayoutListener
import androidx.annotation.VisibleForTesting
import androidx.lifecycle.Lifecycle
import androidx.lifecycle.repeatOnLifecycle
+import com.android.app.tracing.coroutines.launchTraced as launch
import com.android.systemui.broadcast.BroadcastDispatcher
import com.android.systemui.customization.R
import com.android.systemui.dagger.qualifiers.Background
@@ -62,6 +63,7 @@ import com.android.systemui.plugins.clocks.WeatherData
import com.android.systemui.plugins.clocks.ZenData
import com.android.systemui.plugins.clocks.ZenData.ZenMode
import com.android.systemui.res.R as SysuiR
+import com.android.systemui.settings.UserTracker
import com.android.systemui.shared.regionsampling.RegionSampler
import com.android.systemui.statusbar.policy.BatteryController
import com.android.systemui.statusbar.policy.BatteryController.BatteryStateChangeCallback
@@ -80,7 +82,6 @@ import kotlinx.coroutines.flow.combine
import kotlinx.coroutines.flow.filter
import kotlinx.coroutines.flow.map
import kotlinx.coroutines.flow.merge
-import com.android.app.tracing.coroutines.launchTraced as launch
/**
* Controller for a Clock provided by the registry and used on the keyguard. Instantiated by
@@ -103,6 +104,7 @@ constructor(
private val featureFlags: FeatureFlagsClassic,
private val zenModeController: ZenModeController,
private val zenModeInteractor: ZenModeInteractor,
+ private val userTracker: UserTracker,
) {
var loggers =
listOf(
@@ -120,6 +122,10 @@ constructor(
connectClock(value)
}
+ private fun is24HourFormat(userId: Int? = null): Boolean {
+ return DateFormat.is24HourFormat(context, userId ?: userTracker.userId)
+ }
+
private fun disconnectClock(clock: ClockController?) {
if (clock == null) {
return
@@ -186,7 +192,7 @@ constructor(
var pastVisibility: Int? = null
override fun onViewAttachedToWindow(view: View) {
- clock.events.onTimeFormatChanged(DateFormat.is24HourFormat(context))
+ clock.events.onTimeFormatChanged(is24HourFormat())
// Match the asing for view.parent's layout classes.
smallClockFrame =
(view.parent as ViewGroup)?.also { frame ->
@@ -218,7 +224,7 @@ constructor(
largeClockOnAttachStateChangeListener =
object : OnAttachStateChangeListener {
override fun onViewAttachedToWindow(p0: View) {
- clock.events.onTimeFormatChanged(DateFormat.is24HourFormat(context))
+ clock.events.onTimeFormatChanged(is24HourFormat())
}
override fun onViewDetachedFromWindow(p0: View) {}
@@ -358,7 +364,7 @@ constructor(
}
override fun onTimeFormatChanged(timeFormat: String?) {
- clock?.run { events.onTimeFormatChanged(DateFormat.is24HourFormat(context)) }
+ clock?.run { events.onTimeFormatChanged(is24HourFormat()) }
}
override fun onTimeZoneChanged(timeZone: TimeZone) {
@@ -366,7 +372,7 @@ constructor(
}
override fun onUserSwitchComplete(userId: Int) {
- clock?.run { events.onTimeFormatChanged(DateFormat.is24HourFormat(context)) }
+ clock?.run { events.onTimeFormatChanged(is24HourFormat(userId)) }
zenModeCallback.onNextAlarmChanged()
}
diff --git a/packages/SystemUI/tests/src/com/android/keyguard/ClockEventControllerTest.kt b/packages/SystemUI/tests/src/com/android/keyguard/ClockEventControllerTest.kt
index 2b167e4c5da4..65b62737b692 100644
--- a/packages/SystemUI/tests/src/com/android/keyguard/ClockEventControllerTest.kt
+++ b/packages/SystemUI/tests/src/com/android/keyguard/ClockEventControllerTest.kt
@@ -56,6 +56,7 @@ import com.android.systemui.plugins.clocks.ThemeConfig
import com.android.systemui.plugins.clocks.ZenData
import com.android.systemui.plugins.clocks.ZenData.ZenMode
import com.android.systemui.res.R
+import com.android.systemui.settings.UserTracker
import com.android.systemui.statusbar.policy.BatteryController
import com.android.systemui.statusbar.policy.ConfigurationController
import com.android.systemui.statusbar.policy.ZenModeController
@@ -128,6 +129,7 @@ class ClockEventControllerTest : SysuiTestCase() {
@Mock private lateinit var largeClockEvents: ClockFaceEvents
@Mock private lateinit var parentView: View
@Mock private lateinit var keyguardTransitionInteractor: KeyguardTransitionInteractor
+ @Mock private lateinit var userTracker: UserTracker
@Mock private lateinit var zenModeController: ZenModeController
private var zenModeControllerCallback: ZenModeController.Callback? = null
@@ -153,6 +155,7 @@ class ClockEventControllerTest : SysuiTestCase() {
.thenReturn(ClockFaceConfig(tickRate = ClockTickRate.PER_MINUTE))
whenever(smallClockController.theme).thenReturn(ThemeConfig(true, null))
whenever(largeClockController.theme).thenReturn(ThemeConfig(true, null))
+ whenever(userTracker.userId).thenReturn(1)
zenModeRepository.addMode(MANUAL_DND_INACTIVE)
@@ -177,6 +180,7 @@ class ClockEventControllerTest : SysuiTestCase() {
withDeps.featureFlags,
zenModeController,
kosmos.zenModeInteractor,
+ userTracker,
)
underTest.clock = clock