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

Commit cc218995 authored by Treehugger Robot's avatar Treehugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Query for 24Hour format using current user id" into main

parents fa67e3a6 f2a0714e
Loading
Loading
Loading
Loading
+11 −5
Original line number Original line Diff line number Diff line
@@ -35,6 +35,7 @@ import android.view.ViewTreeObserver.OnGlobalLayoutListener
import androidx.annotation.VisibleForTesting
import androidx.annotation.VisibleForTesting
import androidx.lifecycle.Lifecycle
import androidx.lifecycle.Lifecycle
import androidx.lifecycle.repeatOnLifecycle
import androidx.lifecycle.repeatOnLifecycle
import com.android.app.tracing.coroutines.launchTraced as launch
import com.android.systemui.broadcast.BroadcastDispatcher
import com.android.systemui.broadcast.BroadcastDispatcher
import com.android.systemui.customization.R
import com.android.systemui.customization.R
import com.android.systemui.dagger.qualifiers.Background
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
import com.android.systemui.plugins.clocks.ZenData.ZenMode
import com.android.systemui.plugins.clocks.ZenData.ZenMode
import com.android.systemui.res.R as SysuiR
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.shared.regionsampling.RegionSampler
import com.android.systemui.statusbar.policy.BatteryController
import com.android.systemui.statusbar.policy.BatteryController
import com.android.systemui.statusbar.policy.BatteryController.BatteryStateChangeCallback
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.filter
import kotlinx.coroutines.flow.map
import kotlinx.coroutines.flow.map
import kotlinx.coroutines.flow.merge
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
 * 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 featureFlags: FeatureFlagsClassic,
    private val zenModeController: ZenModeController,
    private val zenModeController: ZenModeController,
    private val zenModeInteractor: ZenModeInteractor,
    private val zenModeInteractor: ZenModeInteractor,
    private val userTracker: UserTracker,
) {
) {
    var loggers =
    var loggers =
        listOf(
        listOf(
@@ -120,6 +122,10 @@ constructor(
            connectClock(value)
            connectClock(value)
        }
        }


    private fun is24HourFormat(userId: Int? = null): Boolean {
        return DateFormat.is24HourFormat(context, userId ?: userTracker.userId)
    }

    private fun disconnectClock(clock: ClockController?) {
    private fun disconnectClock(clock: ClockController?) {
        if (clock == null) {
        if (clock == null) {
            return
            return
@@ -186,7 +192,7 @@ constructor(
                var pastVisibility: Int? = null
                var pastVisibility: Int? = null


                override fun onViewAttachedToWindow(view: View) {
                override fun onViewAttachedToWindow(view: View) {
                    clock.events.onTimeFormatChanged(DateFormat.is24HourFormat(context))
                    clock.events.onTimeFormatChanged(is24HourFormat())
                    // Match the asing for view.parent's layout classes.
                    // Match the asing for view.parent's layout classes.
                    smallClockFrame =
                    smallClockFrame =
                        (view.parent as ViewGroup)?.also { frame ->
                        (view.parent as ViewGroup)?.also { frame ->
@@ -218,7 +224,7 @@ constructor(
        largeClockOnAttachStateChangeListener =
        largeClockOnAttachStateChangeListener =
            object : OnAttachStateChangeListener {
            object : OnAttachStateChangeListener {
                override fun onViewAttachedToWindow(p0: View) {
                override fun onViewAttachedToWindow(p0: View) {
                    clock.events.onTimeFormatChanged(DateFormat.is24HourFormat(context))
                    clock.events.onTimeFormatChanged(is24HourFormat())
                }
                }


                override fun onViewDetachedFromWindow(p0: View) {}
                override fun onViewDetachedFromWindow(p0: View) {}
@@ -358,7 +364,7 @@ constructor(
            }
            }


            override fun onTimeFormatChanged(timeFormat: String?) {
            override fun onTimeFormatChanged(timeFormat: String?) {
                clock?.run { events.onTimeFormatChanged(DateFormat.is24HourFormat(context)) }
                clock?.run { events.onTimeFormatChanged(is24HourFormat()) }
            }
            }


            override fun onTimeZoneChanged(timeZone: TimeZone) {
            override fun onTimeZoneChanged(timeZone: TimeZone) {
@@ -366,7 +372,7 @@ constructor(
            }
            }


            override fun onUserSwitchComplete(userId: Int) {
            override fun onUserSwitchComplete(userId: Int) {
                clock?.run { events.onTimeFormatChanged(DateFormat.is24HourFormat(context)) }
                clock?.run { events.onTimeFormatChanged(is24HourFormat(userId)) }
                zenModeCallback.onNextAlarmChanged()
                zenModeCallback.onNextAlarmChanged()
            }
            }


+4 −0
Original line number Original line Diff line number Diff line
@@ -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
import com.android.systemui.plugins.clocks.ZenData.ZenMode
import com.android.systemui.plugins.clocks.ZenData.ZenMode
import com.android.systemui.res.R
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.BatteryController
import com.android.systemui.statusbar.policy.ConfigurationController
import com.android.systemui.statusbar.policy.ConfigurationController
import com.android.systemui.statusbar.policy.ZenModeController
import com.android.systemui.statusbar.policy.ZenModeController
@@ -128,6 +129,7 @@ class ClockEventControllerTest : SysuiTestCase() {
    @Mock private lateinit var largeClockEvents: ClockFaceEvents
    @Mock private lateinit var largeClockEvents: ClockFaceEvents
    @Mock private lateinit var parentView: View
    @Mock private lateinit var parentView: View
    @Mock private lateinit var keyguardTransitionInteractor: KeyguardTransitionInteractor
    @Mock private lateinit var keyguardTransitionInteractor: KeyguardTransitionInteractor
    @Mock private lateinit var userTracker: UserTracker


    @Mock private lateinit var zenModeController: ZenModeController
    @Mock private lateinit var zenModeController: ZenModeController
    private var zenModeControllerCallback: ZenModeController.Callback? = null
    private var zenModeControllerCallback: ZenModeController.Callback? = null
@@ -153,6 +155,7 @@ class ClockEventControllerTest : SysuiTestCase() {
            .thenReturn(ClockFaceConfig(tickRate = ClockTickRate.PER_MINUTE))
            .thenReturn(ClockFaceConfig(tickRate = ClockTickRate.PER_MINUTE))
        whenever(smallClockController.theme).thenReturn(ThemeConfig(true, null))
        whenever(smallClockController.theme).thenReturn(ThemeConfig(true, null))
        whenever(largeClockController.theme).thenReturn(ThemeConfig(true, null))
        whenever(largeClockController.theme).thenReturn(ThemeConfig(true, null))
        whenever(userTracker.userId).thenReturn(1)


        zenModeRepository.addMode(MANUAL_DND_INACTIVE)
        zenModeRepository.addMode(MANUAL_DND_INACTIVE)


@@ -177,6 +180,7 @@ class ClockEventControllerTest : SysuiTestCase() {
                withDeps.featureFlags,
                withDeps.featureFlags,
                zenModeController,
                zenModeController,
                kosmos.zenModeInteractor,
                kosmos.zenModeInteractor,
                userTracker,
            )
            )
        underTest.clock = clock
        underTest.clock = clock