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

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

Merge "[Catalyst] Implement metrics/tags for "Mobile data"" into main

parents ec6db750 916643c8
Loading
Loading
Loading
Loading
+10 −1
Original line number Diff line number Diff line
@@ -17,9 +17,12 @@
package com.android.settings.network

import android.Manifest
import android.app.settings.SettingsEnums.ACTION_MOBILE_DATA
import android.content.Context
import android.telephony.SubscriptionManager
import com.android.settings.PreferenceActionMetricsProvider
import com.android.settings.R
import com.android.settings.contract.KEY_MOBILE_DATA
import com.android.settings.network.telephony.MobileDataRepository
import com.android.settings.network.telephony.SubscriptionRepository
import com.android.settingslib.datastore.KeyValueStore
@@ -38,8 +41,14 @@ class MobileDataPreference :
        R.string.mobile_data_settings_title,
        R.string.mobile_data_settings_summary,
    ),
    PreferenceActionMetricsProvider,
    PreferenceAvailabilityProvider {

    override val preferenceActionMetrics: Int
        get() = ACTION_MOBILE_DATA

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

    override fun isAvailable(context: Context) =
        SubscriptionRepository(context).getSelectableSubscriptionInfoList().any {
            it.simSlotIndex > -1
@@ -59,7 +68,7 @@ class MobileDataPreference :
    override fun getWritePermissions(context: Context) =
        Permissions.allOf(
            // TelephonyManager.setDataEnabledForReason
            Manifest.permission.MODIFY_PHONE_STATE,
            Manifest.permission.MODIFY_PHONE_STATE
        )

    override fun getReadPermit(context: Context, callingPid: Int, callingUid: Int) =