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

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

Merge "[Catalyst] Implement metrics/tags for "Wi-Fi Calling"" into main

parents 3c79d2d2 dcc13e91
Loading
Loading
Loading
Loading
+12 −1
Original line number Diff line number Diff line
@@ -19,12 +19,15 @@ package com.android.settings.wifi.calling
import android.Manifest.permission.MODIFY_PHONE_STATE
import android.Manifest.permission.READ_PRECISE_PHONE_STATE
import android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE
import android.app.settings.SettingsEnums.ACTION_WIFI_CALLING
import android.content.Context
import android.telephony.SubscriptionManager
import android.telephony.TelephonyManager
import android.telephony.ims.ImsMmTelManager
import android.util.Log
import com.android.settings.PreferenceActionMetricsProvider
import com.android.settings.R
import com.android.settings.contract.KEY_WIFI_CALLING
import com.android.settings.network.ims.WifiCallingQueryImsState
import com.android.settings.network.telephony.wificalling.WifiCallingRepository
import com.android.settings.widget.SettingsMainSwitchPreference
@@ -47,7 +50,10 @@ import kotlinx.coroutines.runBlocking
 * TODO(b/372732219): apply metadata to UI
 */
class WifiCallingMainSwitchPreference(private val subId: Int) :
    BooleanValuePreference, BooleanValuePreferenceBinding, PreferenceAvailabilityProvider {
    BooleanValuePreference,
    BooleanValuePreferenceBinding,
    PreferenceActionMetricsProvider,
    PreferenceAvailabilityProvider {

    override val key: String
        get() = KEY
@@ -55,6 +61,11 @@ class WifiCallingMainSwitchPreference(private val subId: Int) :
    override val title: Int
        get() = R.string.wifi_calling_main_switch_title

    override val preferenceActionMetrics: Int
        get() = ACTION_WIFI_CALLING

    override fun tags(context: Context) = arrayOf(KEY_WIFI_CALLING)

    override fun isEnabled(context: Context) =
        context.isCallStateIdle(subId) &&
            WifiCallingQueryImsState(context, subId).isAllowUserControl