Loading res/xml/location_scanning.xml +2 −2 Original line number Diff line number Diff line Loading @@ -17,13 +17,13 @@ <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" android:title="@string/location_scanning_screen_title"> <SwitchPreference <com.android.settingslib.RestrictedSwitchPreference android:title="@string/location_scanning_wifi_always_scanning_title" android:summary="@string/location_scanning_wifi_always_scanning_description" android:defaultValue="true" android:key="wifi_always_scanning" /> <SwitchPreference <com.android.settingslib.RestrictedSwitchPreference android:title="@string/location_scanning_bluetooth_always_scanning_title" android:summary="@string/location_scanning_bluetooth_always_scanning_description" android:defaultValue="true" Loading src/com/android/settings/DefaultRingtonePreference.java +26 −0 Original line number Diff line number Diff line Loading @@ -22,6 +22,9 @@ import android.content.Intent; import android.media.RingtoneManager; import android.net.Uri; import android.util.AttributeSet; import android.util.Log; import androidx.annotation.VisibleForTesting; public class DefaultRingtonePreference extends RingtonePreference { private static final String TAG = "DefaultRingtonePreference"; Loading @@ -43,6 +46,29 @@ public class DefaultRingtonePreference extends RingtonePreference { @Override protected void onSaveRingtone(Uri ringtoneUri) { if (ringtoneUri == null) { setActualDefaultRingtoneUri(ringtoneUri); return; } String mimeType = mUserContext.getContentResolver().getType(ringtoneUri); if (mimeType == null) { Log.e(TAG, "onSaveRingtone for URI:" + ringtoneUri + " ignored: failure to find mimeType (no access from this context?)"); return; } if (!(mimeType.startsWith("audio/") || mimeType.equals("application/ogg"))) { Log.e(TAG, "onSaveRingtone for URI:" + ringtoneUri + " ignored: associated mimeType:" + mimeType + " is not an audio type"); return; } setActualDefaultRingtoneUri(ringtoneUri); } @VisibleForTesting void setActualDefaultRingtoneUri(Uri ringtoneUri) { RingtoneManager.setActualDefaultRingtoneUri(mUserContext, getRingtoneType(), ringtoneUri); } Loading src/com/android/settings/connecteddevice/ConnectedDeviceDashboardFragment.java +13 −4 Original line number Diff line number Diff line Loading @@ -72,6 +72,7 @@ public class ConnectedDeviceDashboardFragment extends DashboardFragment { private static final String SETTINGS_PACKAGE_NAME = "com.android.settings"; private static final String SYSTEMUI_PACKAGE_NAME = "com.android.systemui"; private static final boolean DEBUG = Log.isLoggable(TAG, Log.DEBUG); private static final String SLICE_ACTION = "com.android.settings.SEARCH_RESULT_TRAMPOLINE"; @VisibleForTesting static final String KEY_CONNECTED_DEVICES = "connected_device_list"; Loading Loading @@ -110,8 +111,10 @@ public class ConnectedDeviceDashboardFragment extends DashboardFragment { SettingsUIDeviceConfig.BT_NEAR_BY_SUGGESTION_ENABLED, true); String callingAppPackageName = PasswordUtils.getCallingAppPackageName( getActivity().getActivityToken()); String action = getIntent() != null ? getIntent().getAction() : ""; if (DEBUG) { Log.d(TAG, "onAttach() calling package name is : " + callingAppPackageName); Log.d(TAG, "onAttach() calling package name is : " + callingAppPackageName + ", action : " + action); } use(AvailableMediaDeviceGroupController.class).init(this); use(ConnectedDeviceGroupController.class).init(this); Loading @@ -120,9 +123,15 @@ public class ConnectedDeviceDashboardFragment extends DashboardFragment { use(SlicePreferenceController.class).setSliceUri(nearbyEnabled ? Uri.parse(getString(R.string.config_nearby_devices_slice_uri)) : null); use(DiscoverableFooterPreferenceController.class).setAlwaysDiscoverable( TextUtils.equals(SETTINGS_PACKAGE_NAME, callingAppPackageName) || TextUtils.equals(SYSTEMUI_PACKAGE_NAME, callingAppPackageName)); use(DiscoverableFooterPreferenceController.class) .setAlwaysDiscoverable(isAlwaysDiscoverable(callingAppPackageName, action)); } @VisibleForTesting boolean isAlwaysDiscoverable(String callingAppPackageName, String action) { return TextUtils.equals(SLICE_ACTION, action) ? false : TextUtils.equals(SETTINGS_PACKAGE_NAME, callingAppPackageName) || TextUtils.equals(SYSTEMUI_PACKAGE_NAME, callingAppPackageName); } /** Loading src/com/android/settings/location/BluetoothScanningPreferenceController.java +11 −0 Original line number Diff line number Diff line Loading @@ -14,12 +14,17 @@ package com.android.settings.location; import android.content.Context; import android.os.UserHandle; import android.os.UserManager; import android.provider.Settings; import androidx.preference.Preference; import androidx.preference.SwitchPreference; import com.android.settings.core.PreferenceControllerMixin; import com.android.settingslib.RestrictedLockUtils; import com.android.settingslib.RestrictedLockUtilsInternal; import com.android.settingslib.RestrictedSwitchPreference; import com.android.settingslib.core.AbstractPreferenceController; public class BluetoothScanningPreferenceController extends AbstractPreferenceController Loading @@ -46,6 +51,12 @@ public class BluetoothScanningPreferenceController extends AbstractPreferenceCon ((SwitchPreference) preference).setChecked( Settings.Global.getInt(mContext.getContentResolver(), Settings.Global.BLE_SCAN_ALWAYS_AVAILABLE, 0) == 1); final RestrictedLockUtils.EnforcedAdmin admin = RestrictedLockUtilsInternal.checkIfRestrictionEnforced( mContext, UserManager.DISALLOW_CONFIG_LOCATION, UserHandle.myUserId()); if (admin != null) { ((RestrictedSwitchPreference) preference).setDisabledByAdmin(admin); } } @Override Loading src/com/android/settings/location/WifiScanningPreferenceController.java +11 −0 Original line number Diff line number Diff line Loading @@ -14,12 +14,17 @@ package com.android.settings.location; import android.content.Context; import android.os.UserHandle; import android.os.UserManager; import android.net.wifi.WifiManager; import androidx.preference.Preference; import androidx.preference.SwitchPreference; import com.android.settings.core.PreferenceControllerMixin; import com.android.settingslib.RestrictedLockUtils; import com.android.settingslib.RestrictedLockUtilsInternal; import com.android.settingslib.RestrictedSwitchPreference; import com.android.settingslib.core.AbstractPreferenceController; public class WifiScanningPreferenceController extends AbstractPreferenceController Loading @@ -46,6 +51,12 @@ public class WifiScanningPreferenceController extends AbstractPreferenceControll @Override public void updateState(Preference preference) { ((SwitchPreference) preference).setChecked(mWifiManager.isScanAlwaysAvailable()); final RestrictedLockUtils.EnforcedAdmin admin = RestrictedLockUtilsInternal.checkIfRestrictionEnforced( mContext, UserManager.DISALLOW_CONFIG_LOCATION, UserHandle.myUserId()); if (admin != null) { ((RestrictedSwitchPreference) preference).setDisabledByAdmin(admin); } } @Override Loading Loading
res/xml/location_scanning.xml +2 −2 Original line number Diff line number Diff line Loading @@ -17,13 +17,13 @@ <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" android:title="@string/location_scanning_screen_title"> <SwitchPreference <com.android.settingslib.RestrictedSwitchPreference android:title="@string/location_scanning_wifi_always_scanning_title" android:summary="@string/location_scanning_wifi_always_scanning_description" android:defaultValue="true" android:key="wifi_always_scanning" /> <SwitchPreference <com.android.settingslib.RestrictedSwitchPreference android:title="@string/location_scanning_bluetooth_always_scanning_title" android:summary="@string/location_scanning_bluetooth_always_scanning_description" android:defaultValue="true" Loading
src/com/android/settings/DefaultRingtonePreference.java +26 −0 Original line number Diff line number Diff line Loading @@ -22,6 +22,9 @@ import android.content.Intent; import android.media.RingtoneManager; import android.net.Uri; import android.util.AttributeSet; import android.util.Log; import androidx.annotation.VisibleForTesting; public class DefaultRingtonePreference extends RingtonePreference { private static final String TAG = "DefaultRingtonePreference"; Loading @@ -43,6 +46,29 @@ public class DefaultRingtonePreference extends RingtonePreference { @Override protected void onSaveRingtone(Uri ringtoneUri) { if (ringtoneUri == null) { setActualDefaultRingtoneUri(ringtoneUri); return; } String mimeType = mUserContext.getContentResolver().getType(ringtoneUri); if (mimeType == null) { Log.e(TAG, "onSaveRingtone for URI:" + ringtoneUri + " ignored: failure to find mimeType (no access from this context?)"); return; } if (!(mimeType.startsWith("audio/") || mimeType.equals("application/ogg"))) { Log.e(TAG, "onSaveRingtone for URI:" + ringtoneUri + " ignored: associated mimeType:" + mimeType + " is not an audio type"); return; } setActualDefaultRingtoneUri(ringtoneUri); } @VisibleForTesting void setActualDefaultRingtoneUri(Uri ringtoneUri) { RingtoneManager.setActualDefaultRingtoneUri(mUserContext, getRingtoneType(), ringtoneUri); } Loading
src/com/android/settings/connecteddevice/ConnectedDeviceDashboardFragment.java +13 −4 Original line number Diff line number Diff line Loading @@ -72,6 +72,7 @@ public class ConnectedDeviceDashboardFragment extends DashboardFragment { private static final String SETTINGS_PACKAGE_NAME = "com.android.settings"; private static final String SYSTEMUI_PACKAGE_NAME = "com.android.systemui"; private static final boolean DEBUG = Log.isLoggable(TAG, Log.DEBUG); private static final String SLICE_ACTION = "com.android.settings.SEARCH_RESULT_TRAMPOLINE"; @VisibleForTesting static final String KEY_CONNECTED_DEVICES = "connected_device_list"; Loading Loading @@ -110,8 +111,10 @@ public class ConnectedDeviceDashboardFragment extends DashboardFragment { SettingsUIDeviceConfig.BT_NEAR_BY_SUGGESTION_ENABLED, true); String callingAppPackageName = PasswordUtils.getCallingAppPackageName( getActivity().getActivityToken()); String action = getIntent() != null ? getIntent().getAction() : ""; if (DEBUG) { Log.d(TAG, "onAttach() calling package name is : " + callingAppPackageName); Log.d(TAG, "onAttach() calling package name is : " + callingAppPackageName + ", action : " + action); } use(AvailableMediaDeviceGroupController.class).init(this); use(ConnectedDeviceGroupController.class).init(this); Loading @@ -120,9 +123,15 @@ public class ConnectedDeviceDashboardFragment extends DashboardFragment { use(SlicePreferenceController.class).setSliceUri(nearbyEnabled ? Uri.parse(getString(R.string.config_nearby_devices_slice_uri)) : null); use(DiscoverableFooterPreferenceController.class).setAlwaysDiscoverable( TextUtils.equals(SETTINGS_PACKAGE_NAME, callingAppPackageName) || TextUtils.equals(SYSTEMUI_PACKAGE_NAME, callingAppPackageName)); use(DiscoverableFooterPreferenceController.class) .setAlwaysDiscoverable(isAlwaysDiscoverable(callingAppPackageName, action)); } @VisibleForTesting boolean isAlwaysDiscoverable(String callingAppPackageName, String action) { return TextUtils.equals(SLICE_ACTION, action) ? false : TextUtils.equals(SETTINGS_PACKAGE_NAME, callingAppPackageName) || TextUtils.equals(SYSTEMUI_PACKAGE_NAME, callingAppPackageName); } /** Loading
src/com/android/settings/location/BluetoothScanningPreferenceController.java +11 −0 Original line number Diff line number Diff line Loading @@ -14,12 +14,17 @@ package com.android.settings.location; import android.content.Context; import android.os.UserHandle; import android.os.UserManager; import android.provider.Settings; import androidx.preference.Preference; import androidx.preference.SwitchPreference; import com.android.settings.core.PreferenceControllerMixin; import com.android.settingslib.RestrictedLockUtils; import com.android.settingslib.RestrictedLockUtilsInternal; import com.android.settingslib.RestrictedSwitchPreference; import com.android.settingslib.core.AbstractPreferenceController; public class BluetoothScanningPreferenceController extends AbstractPreferenceController Loading @@ -46,6 +51,12 @@ public class BluetoothScanningPreferenceController extends AbstractPreferenceCon ((SwitchPreference) preference).setChecked( Settings.Global.getInt(mContext.getContentResolver(), Settings.Global.BLE_SCAN_ALWAYS_AVAILABLE, 0) == 1); final RestrictedLockUtils.EnforcedAdmin admin = RestrictedLockUtilsInternal.checkIfRestrictionEnforced( mContext, UserManager.DISALLOW_CONFIG_LOCATION, UserHandle.myUserId()); if (admin != null) { ((RestrictedSwitchPreference) preference).setDisabledByAdmin(admin); } } @Override Loading
src/com/android/settings/location/WifiScanningPreferenceController.java +11 −0 Original line number Diff line number Diff line Loading @@ -14,12 +14,17 @@ package com.android.settings.location; import android.content.Context; import android.os.UserHandle; import android.os.UserManager; import android.net.wifi.WifiManager; import androidx.preference.Preference; import androidx.preference.SwitchPreference; import com.android.settings.core.PreferenceControllerMixin; import com.android.settingslib.RestrictedLockUtils; import com.android.settingslib.RestrictedLockUtilsInternal; import com.android.settingslib.RestrictedSwitchPreference; import com.android.settingslib.core.AbstractPreferenceController; public class WifiScanningPreferenceController extends AbstractPreferenceController Loading @@ -46,6 +51,12 @@ public class WifiScanningPreferenceController extends AbstractPreferenceControll @Override public void updateState(Preference preference) { ((SwitchPreference) preference).setChecked(mWifiManager.isScanAlwaysAvailable()); final RestrictedLockUtils.EnforcedAdmin admin = RestrictedLockUtilsInternal.checkIfRestrictionEnforced( mContext, UserManager.DISALLOW_CONFIG_LOCATION, UserHandle.myUserId()); if (admin != null) { ((RestrictedSwitchPreference) preference).setDisabledByAdmin(admin); } } @Override Loading