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

Commit 295b5234 authored by 0's avatar 0 Committed by Shawn Lee
Browse files

[flexiglass] Add onClick handling to ShadeCarrierGroup

Bug: 325530645
Test: verified ShadeCarrierGroup click launches network settings
Flag: ACONFIG com.android.systemui.scene_container DEVELOPMENT
Change-Id: I14dbccfe7766f6b422d51cd157ed3e6dfdbb01f5
parent f702583d
Loading
Loading
Loading
Loading
+10 −9
Original line number Diff line number Diff line
@@ -416,6 +416,7 @@ private fun ShadeCarrierGroup(
                                    StatusBarLocation.SHADE_CARRIER_GROUP
                                ) as ShadeCarrierGroupMobileIconViewModel),
                        )
                        .also { it.setOnClickListener { viewModel.onShadeCarrierGroupClicked() } }
                },
            )
        }
+14 −0
Original line number Diff line number Diff line
@@ -2,6 +2,7 @@ package com.android.systemui.shade.ui.viewmodel

import android.content.Intent
import android.provider.AlarmClock
import android.provider.Settings
import android.telephony.SubscriptionManager.PROFILE_CLASS_UNSET
import androidx.test.ext.junit.runners.AndroidJUnit4
import androidx.test.filters.SmallTest
@@ -63,6 +64,19 @@ class ShadeHeaderViewModelTest : SysuiTestCase() {
                )
        }

    @Test
    fun onShadeCarrierGroupClicked_launchesNetworkSettings() =
        testScope.runTest {
            val activityStarter = kosmos.activityStarter
            underTest.onShadeCarrierGroupClicked()

            verify(activityStarter)
                .postStartActivityDismissingKeyguard(
                    argThat(IntentMatcherAction(Settings.ACTION_WIRELESS_SETTINGS)),
                    anyInt(),
                )
        }

    companion object {
        private val SUB_1 =
            SubscriptionModel(
+11 −0
Original line number Diff line number Diff line
@@ -22,9 +22,11 @@ import android.content.IntentFilter
import android.icu.text.DateFormat
import android.icu.text.DisplayContext
import android.os.UserHandle
import android.provider.Settings
import com.android.systemui.broadcast.BroadcastDispatcher
import com.android.systemui.dagger.SysUISingleton
import com.android.systemui.dagger.qualifiers.Application
import com.android.systemui.plugins.ActivityStarter
import com.android.systemui.privacy.OngoingPrivacyChip
import com.android.systemui.privacy.PrivacyItem
import com.android.systemui.res.R
@@ -54,6 +56,7 @@ class ShadeHeaderViewModel
constructor(
    @Application private val applicationScope: CoroutineScope,
    context: Context,
    private val activityStarter: ActivityStarter,
    shadeInteractor: ShadeInteractor,
    mobileIconsInteractor: MobileIconsInteractor,
    val mobileIconsViewModel: MobileIconsViewModel,
@@ -136,6 +139,14 @@ constructor(
        clockInteractor.launchClockActivity()
    }

    /** Notifies that the shadeCarrierGroup was clicked. */
    fun onShadeCarrierGroupClicked() {
        activityStarter.postStartActivityDismissingKeyguard(
            Intent(Settings.ACTION_WIRELESS_SETTINGS),
            0
        )
    }

    private fun updateDateTexts(invalidateFormats: Boolean) {
        if (invalidateFormats) {
            longerDateFormat.value = getFormatFromPattern(longerPattern)
+2 −0
Original line number Diff line number Diff line
@@ -20,6 +20,7 @@ import android.content.applicationContext
import com.android.systemui.broadcast.broadcastDispatcher
import com.android.systemui.kosmos.Kosmos
import com.android.systemui.kosmos.applicationCoroutineScope
import com.android.systemui.plugins.activityStarter
import com.android.systemui.shade.domain.interactor.privacyChipInteractor
import com.android.systemui.shade.domain.interactor.shadeHeaderClockInteractor
import com.android.systemui.shade.domain.interactor.shadeInteractor
@@ -31,6 +32,7 @@ val Kosmos.shadeHeaderViewModel: ShadeHeaderViewModel by
        ShadeHeaderViewModel(
            applicationScope = applicationCoroutineScope,
            context = applicationContext,
            activityStarter = activityStarter,
            shadeInteractor = shadeInteractor,
            mobileIconsInteractor = mobileIconsInteractor,
            mobileIconsViewModel = mobileIconsViewModel,