[Catalyst] Support restriction for Sound settings
NO_IFTTT=Catalyst only Bug: 377600992 Flag: com.android.settings.flags.catalyst_sound_screen Test: testdpc Change-Id: I2d768155f450f415c2279bbff69f94e8934b4383
This commit is contained in:
@@ -18,18 +18,16 @@ package com.android.settings.notification
|
||||
|
||||
import android.content.Context
|
||||
import android.media.AudioManager.STREAM_MUSIC
|
||||
import android.os.UserHandle
|
||||
import android.os.UserManager
|
||||
import androidx.preference.Preference
|
||||
import com.android.settings.PreferenceRestrictionMixin
|
||||
import com.android.settings.R
|
||||
import com.android.settingslib.RestrictedLockUtilsInternal
|
||||
import com.android.settingslib.datastore.KeyValueStore
|
||||
import com.android.settingslib.datastore.NoOpKeyedObservable
|
||||
import com.android.settingslib.metadata.PersistentPreference
|
||||
import com.android.settingslib.metadata.PreferenceAvailabilityProvider
|
||||
import com.android.settingslib.metadata.PreferenceIconProvider
|
||||
import com.android.settingslib.metadata.PreferenceMetadata
|
||||
import com.android.settingslib.metadata.PreferenceRestrictionProvider
|
||||
import com.android.settingslib.metadata.RangeValue
|
||||
import com.android.settingslib.metadata.ReadWritePermit
|
||||
import com.android.settingslib.preference.PreferenceBinding
|
||||
@@ -42,7 +40,7 @@ open class MediaVolumePreference :
|
||||
RangeValue,
|
||||
PreferenceAvailabilityProvider,
|
||||
PreferenceIconProvider,
|
||||
PreferenceRestrictionProvider {
|
||||
PreferenceRestrictionMixin {
|
||||
override val key: String
|
||||
get() = KEY
|
||||
|
||||
@@ -58,17 +56,10 @@ open class MediaVolumePreference :
|
||||
override fun isAvailable(context: Context) =
|
||||
context.resources.getBoolean(R.bool.config_show_media_volume)
|
||||
|
||||
override fun isRestricted(context: Context) =
|
||||
RestrictedLockUtilsInternal.hasBaseUserRestriction(
|
||||
context,
|
||||
UserManager.DISALLOW_ADJUST_VOLUME,
|
||||
UserHandle.myUserId(),
|
||||
) ||
|
||||
RestrictedLockUtilsInternal.checkIfRestrictionEnforced(
|
||||
context,
|
||||
UserManager.DISALLOW_ADJUST_VOLUME,
|
||||
UserHandle.myUserId(),
|
||||
) != null
|
||||
override fun isEnabled(context: Context) = super<PreferenceRestrictionMixin>.isEnabled(context)
|
||||
|
||||
override val restrictionKey: String
|
||||
get() = UserManager.DISALLOW_ADJUST_VOLUME
|
||||
|
||||
override fun storage(context: Context): KeyValueStore {
|
||||
val helper = createAudioHelper(context)
|
||||
@@ -107,9 +98,9 @@ open class MediaVolumePreference :
|
||||
|
||||
open fun createAudioHelper(context: Context) = AudioHelper(context)
|
||||
|
||||
fun updateContentDescription(preference: VolumeSeekBarPreference) {
|
||||
private fun updateContentDescription(preference: VolumeSeekBarPreference) {
|
||||
when {
|
||||
preference.isMuted() ->
|
||||
preference.isMuted ->
|
||||
preference.updateContentDescription(
|
||||
preference.context.getString(
|
||||
R.string.volume_content_description_silent_mode,
|
||||
|
Reference in New Issue
Block a user