From 2d57d002ae9daae3c450734bc7992ba0bfc1cc05 Mon Sep 17 00:00:00 2001 From: Edgar Wang Date: Tue, 15 Aug 2023 19:48:13 +0800 Subject: [PATCH 1/3] Update the API usage to get total size of devices StorageStatsManager fixed in StorageStatsService#getTotalBytes So that we should change back to call the API. Bug: 295358118 Bug: 288103116 Test: verified manually Change-Id: I3dcc9698403612f961cf0de41925dcbcb43e260b --- src/com/android/settings/Utils.java | 11 ----------- .../settings/deviceinfo/StorageCategoryFragment.java | 4 +--- .../settings/deviceinfo/StorageDashboardFragment.java | 4 +--- .../TopLevelStoragePreferenceController.java | 4 +--- .../StorageUsageProgressBarPreferenceController.java | 5 +---- 5 files changed, 4 insertions(+), 24 deletions(-) diff --git a/src/com/android/settings/Utils.java b/src/com/android/settings/Utils.java index dda5b24b310..910ab81031a 100644 --- a/src/com/android/settings/Utils.java +++ b/src/com/android/settings/Utils.java @@ -66,7 +66,6 @@ import android.os.BatteryManager; import android.os.Binder; import android.os.Build; import android.os.Bundle; -import android.os.Environment; import android.os.IBinder; import android.os.INetworkManagementService; import android.os.RemoteException; @@ -1354,14 +1353,4 @@ public final class Utils extends com.android.settingslib.Utils { return dreamsSupported && (!dreamsOnlyEnabledForDockUser || canCurrentUserDream(context)); } - /** - * Get private total size directly. - * Referred from StorageManager - */ - public static long getPrimaryStorageSize() { - // TODO(b/288103116): remove this method once support by StorageManager. - return Environment.getDataDirectory().getTotalSpace() - + Environment.getRootDirectory().getTotalSpace(); - } - } diff --git a/src/com/android/settings/deviceinfo/StorageCategoryFragment.java b/src/com/android/settings/deviceinfo/StorageCategoryFragment.java index d1d4cbe7f50..52f453d46a9 100644 --- a/src/com/android/settings/deviceinfo/StorageCategoryFragment.java +++ b/src/com/android/settings/deviceinfo/StorageCategoryFragment.java @@ -211,9 +211,7 @@ public class StorageCategoryFragment extends DashboardFragment setLoading(false /* loading */, false /* animate */); - // TODO(b/288103116): replace with new API to get TotalBytes before rounding - // once support by StorageManager. - final long privateUsedBytes = Utils.getPrimaryStorageSize() - mStorageInfo.freeBytes; + final long privateUsedBytes = mStorageInfo.totalBytes - mStorageInfo.freeBytes; mPreferenceController.setVolume(mSelectedStorageEntry.getVolumeInfo()); mPreferenceController.setUsedSize(privateUsedBytes); mPreferenceController.setTotalSize(mStorageInfo.totalBytes); diff --git a/src/com/android/settings/deviceinfo/StorageDashboardFragment.java b/src/com/android/settings/deviceinfo/StorageDashboardFragment.java index 4138057a90c..f31f2be0049 100644 --- a/src/com/android/settings/deviceinfo/StorageDashboardFragment.java +++ b/src/com/android/settings/deviceinfo/StorageDashboardFragment.java @@ -387,9 +387,7 @@ public class StorageDashboardFragment extends DashboardFragment setLoading(false /* loading */, false /* animate */); - // TODO(b/288103116): replace with new API to get TotalBytes before rounding - // once support by StorageManager. - final long privateUsedBytes = Utils.getPrimaryStorageSize() - mStorageInfo.freeBytes; + final long privateUsedBytes = mStorageInfo.totalBytes - mStorageInfo.freeBytes; mPreferenceController.setVolume(mSelectedStorageEntry.getVolumeInfo()); mPreferenceController.setUsedSize(privateUsedBytes); mPreferenceController.setTotalSize(mStorageInfo.totalBytes); diff --git a/src/com/android/settings/deviceinfo/TopLevelStoragePreferenceController.java b/src/com/android/settings/deviceinfo/TopLevelStoragePreferenceController.java index 43dc9dd0d15..ccae7e92ab1 100644 --- a/src/com/android/settings/deviceinfo/TopLevelStoragePreferenceController.java +++ b/src/com/android/settings/deviceinfo/TopLevelStoragePreferenceController.java @@ -75,9 +75,7 @@ public class TopLevelStoragePreferenceController extends BasePreferenceControlle final PrivateStorageInfo info = PrivateStorageInfo.getPrivateStorageInfo( getStorageManagerVolumeProvider()); - // TODO(b/288103116): replace with new API to get TotalBytes before rounding - // once support by StorageManager. - long usedBytes = Utils.getPrimaryStorageSize() - info.freeBytes; + long usedBytes = info.totalBytes - info.freeBytes; storageCacheHelper.cacheUsedSize(usedBytes); ThreadUtils.postOnMainThread(() -> { preference.setSummary( diff --git a/src/com/android/settings/deviceinfo/storage/StorageUsageProgressBarPreferenceController.java b/src/com/android/settings/deviceinfo/storage/StorageUsageProgressBarPreferenceController.java index 23559d4db00..be2a64abf58 100644 --- a/src/com/android/settings/deviceinfo/storage/StorageUsageProgressBarPreferenceController.java +++ b/src/com/android/settings/deviceinfo/storage/StorageUsageProgressBarPreferenceController.java @@ -26,7 +26,6 @@ import androidx.preference.Preference; import androidx.preference.PreferenceScreen; import com.android.settings.R; -import com.android.settings.Utils; import com.android.settings.core.BasePreferenceController; import com.android.settingslib.utils.ThreadUtils; import com.android.settingslib.widget.UsageProgressBarPreference; @@ -93,9 +92,7 @@ public class StorageUsageProgressBarPreferenceController extends BasePreferenceC if (mStorageEntry.isPrivate()) { // StorageStatsManager can only query private storages. mTotalBytes = mStorageStatsManager.getTotalBytes(mStorageEntry.getFsUuid()); - // TODO(b/288103116): replace with new API to get TotalBytes before rounding - // once support by StorageManager. - mUsedBytes = Utils.getPrimaryStorageSize() + mUsedBytes = mTotalBytes - mStorageStatsManager.getFreeBytes(mStorageEntry.getFsUuid()); } else { final File rootFile = mStorageEntry.getPath(); From e23520d520ffed962751c96464f7727ea1afa549 Mon Sep 17 00:00:00 2001 From: Holly Sun Date: Wed, 16 Aug 2023 21:38:51 +0000 Subject: [PATCH 2/3] Update Gesture navigation page to support search. Make function public to be reused in SettingsGoogle. Add feature flag. Bug: 294858168 Test: manual Change-Id: I3c3ba6144303f21ae4f6da3a64e0208ab23a7382 --- src/com/android/settings/core/FeatureFlags.java | 2 ++ .../gestures/SystemNavigationPreferenceController.java | 3 ++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/com/android/settings/core/FeatureFlags.java b/src/com/android/settings/core/FeatureFlags.java index 1a97ca99116..fb552d7704d 100644 --- a/src/com/android/settings/core/FeatureFlags.java +++ b/src/com/android/settings/core/FeatureFlags.java @@ -30,4 +30,6 @@ public class FeatureFlags { public static final String CONTEXTUAL_HOME = "settings_contextual_home"; public static final String SETTINGS_SEARCH_ALWAYS_EXPAND = "settings_search_always_expand"; + public static final String PRESS_HOLD_NAV_HANDLE_TO_SEARCH = + "settings_press_hold_nav_handle_to_search"; } diff --git a/src/com/android/settings/gestures/SystemNavigationPreferenceController.java b/src/com/android/settings/gestures/SystemNavigationPreferenceController.java index ab83a9d5f05..ccdb2577ca2 100644 --- a/src/com/android/settings/gestures/SystemNavigationPreferenceController.java +++ b/src/com/android/settings/gestures/SystemNavigationPreferenceController.java @@ -52,7 +52,8 @@ public class SystemNavigationPreferenceController extends BasePreferenceControll } } - static boolean isGestureAvailable(Context context) { + /** Returns {@code true} if gesture is available. */ + public static boolean isGestureAvailable(Context context) { // Skip if the swipe up settings are not available if (!context.getResources().getBoolean( com.android.internal.R.bool.config_swipe_up_gesture_setting_available)) { From 320fc882e9ac332f5758588e0e30c711be5a6a95 Mon Sep 17 00:00:00 2001 From: Vlad Popa Date: Tue, 22 Aug 2023 16:17:29 -0700 Subject: [PATCH 3/3] Add hearing aid as a BT audio type Test: manual Bug: 287011781 Change-Id: I33786c5f3a055de3652aac79e839549f13d26843 --- res/values/strings.xml | 8 +++++--- .../BluetoothDetailsAudioDeviceTypeController.java | 3 +++ 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/res/values/strings.xml b/res/values/strings.xml index 468f3fa79ec..ad23aaf8a54 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -12008,12 +12008,14 @@ Audio Device Type - + Unknown - - Speaker + Speaker + Headphones + + Hearing Aid Car Kit diff --git a/src/com/android/settings/bluetooth/BluetoothDetailsAudioDeviceTypeController.java b/src/com/android/settings/bluetooth/BluetoothDetailsAudioDeviceTypeController.java index ba5f465005e..fe0d14182cc 100644 --- a/src/com/android/settings/bluetooth/BluetoothDetailsAudioDeviceTypeController.java +++ b/src/com/android/settings/bluetooth/BluetoothDetailsAudioDeviceTypeController.java @@ -19,6 +19,7 @@ package com.android.settings.bluetooth; import static android.bluetooth.BluetoothDevice.DEVICE_TYPE_LE; import static android.media.AudioManager.AUDIO_DEVICE_CATEGORY_CARKIT; import static android.media.AudioManager.AUDIO_DEVICE_CATEGORY_HEADPHONES; +import static android.media.AudioManager.AUDIO_DEVICE_CATEGORY_HEARING_AID; import static android.media.AudioManager.AUDIO_DEVICE_CATEGORY_OTHER; import static android.media.AudioManager.AUDIO_DEVICE_CATEGORY_SPEAKER; import static android.media.AudioManager.AUDIO_DEVICE_CATEGORY_UNKNOWN; @@ -149,6 +150,7 @@ public class BluetoothDetailsAudioDeviceTypeController extends BluetoothDetailsC mContext.getString(R.string.bluetooth_details_audio_device_type_speaker), mContext.getString(R.string.bluetooth_details_audio_device_type_headphones), mContext.getString(R.string.bluetooth_details_audio_device_type_carkit), + mContext.getString(R.string.bluetooth_details_audio_device_type_hearing_aid), mContext.getString(R.string.bluetooth_details_audio_device_type_other), }); mAudioDeviceTypePreference.setEntryValues(new CharSequence[]{ @@ -156,6 +158,7 @@ public class BluetoothDetailsAudioDeviceTypeController extends BluetoothDetailsC Integer.toString(AUDIO_DEVICE_CATEGORY_SPEAKER), Integer.toString(AUDIO_DEVICE_CATEGORY_HEADPHONES), Integer.toString(AUDIO_DEVICE_CATEGORY_CARKIT), + Integer.toString(AUDIO_DEVICE_CATEGORY_HEARING_AID), Integer.toString(AUDIO_DEVICE_CATEGORY_OTHER), });