From 2485a07426034d1aaea2071d61871e489a288d66 Mon Sep 17 00:00:00 2001 From: Jason Chiu Date: Thu, 26 Dec 2024 10:51:51 +0800 Subject: [PATCH] [Catalyst] Implement get{Read,Write}Permissions for Bluetooth NO_IFTTT=Catalyst only Fix: 385271230 Flag: com.android.settings.flags.catalyst_bluetooth_switchbar_screen Test: devtool Change-Id: I697a088d13fa019158c89835adb95759f7d30da7 --- .../settings/connecteddevice/BluetoothPreference.kt | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/com/android/settings/connecteddevice/BluetoothPreference.kt b/src/com/android/settings/connecteddevice/BluetoothPreference.kt index 93b2f20a7a4..4d4853efbc5 100644 --- a/src/com/android/settings/connecteddevice/BluetoothPreference.kt +++ b/src/com/android/settings/connecteddevice/BluetoothPreference.kt @@ -16,6 +16,7 @@ package com.android.settings.connecteddevice +import android.Manifest import android.annotation.SuppressLint import android.bluetooth.BluetoothAdapter import android.content.BroadcastReceiver @@ -35,6 +36,7 @@ import com.android.settingslib.WirelessUtils import com.android.settingslib.datastore.AbstractKeyedDataObservable import com.android.settingslib.datastore.DataChangeReason import com.android.settingslib.datastore.KeyValueStore +import com.android.settingslib.datastore.Permissions import com.android.settingslib.metadata.PreferenceMetadata import com.android.settingslib.metadata.ReadWritePermit import com.android.settingslib.metadata.SensitivityLevel @@ -52,6 +54,11 @@ class BluetoothPreference(private val bluetoothDataStore: BluetoothDataStore) : override val restrictionKeys: Array get() = arrayOf(UserManager.DISALLOW_BLUETOOTH, UserManager.DISALLOW_CONFIG_BLUETOOTH) + override fun getReadPermissions(context: Context) = Permissions.EMPTY + + override fun getWritePermissions(context: Context) = + Permissions.allOf(Manifest.permission.BLUETOOTH_CONNECT) + override fun getReadPermit(context: Context, callingPid: Int, callingUid: Int) = ReadWritePermit.ALLOW