This change remove unnecessary UI dpdate of
StorageItemPreferenceController.
- For StorageItemPreferenceController:
Remove UI update at #displayPreference since onLoadFinished will update.
Don't update order at #setVolume since onLoadFinished will update.
- StorageDashboardFragment & StorageCategoryFragment update
StorageItemPreferenceController only when both StorageInfo
and StorageResult are loaded.
Bug: 185547228
Test: atest com.android.settings.deviceinfo
atest com.android.settings.deviceinfo.storage
make RunSettingsRoboTests -j ROBOTEST_FILTER=com.android.settings.deviceinfo
make RunSettingsRoboTests -j ROBOTEST_FILTER=com.android.settings.deviceinfo.storage
manual visual
Click each file category to count files size is the same as
displayed in Storage Settings.
manual visual
Change-Id: Id449003827a3e340e7a90f706152100b5568f834
If there is APP which supports VIEW_TRASH intent,
use it to show trash files. Otherwise popup a dialog
to guide users to empty trash files.
Bug: 189109564
Test: manual visual
Observe size information are the same as files in Files APP.
Observe if empty trash button empty trash files.
Observe if Trash category update summary and order after emptying
trash files.
Change-Id: Ia3c46dcb1b4fadcdfb865f7dd315c27f8f98cb2c
At configuration change, both StorageCategoryFragment and
ProfileSelectStorageFragment are re-created and there is
a different callback sequence than normal case.
This change save/restore mSelectedStorageEntry in instance
state bundle to fix the NPE.
Bug: 189108700
Test: manual
Install work profile and rotate Storage Settings.
Change-Id: I39d7ef7ced22188ee66216d57518198d63671e0e
From android S, Storage Settings show files of images/videos/audios
category instead of installed APP of each category. So it's
necessary to change the way to calculate size information.
This change also
- StorageItemPreference shows changing storage size units instead
of fixed GB. It helps UX for categories of only small size files.
- Query media provider for size of Documents and others.
- Query media provider for size of Trash.
Bug: 170918505
Bug: 177892478
Bug: 179871408
Bug: 184379946
Bug: 186077224
Bug: 187128447
Test: atest com.android.settings.deviceinfo
atest com.android.settings.deviceinfo.storage
make RunSettingsRoboTests -j ROBOTEST_FILTER=com.android.settings.deviceinfo
make RunSettingsRoboTests -j ROBOTEST_FILTER=com.android.settings.deviceinfo.storage
manual visual
Click each file category to count files size is the same as
displayed in Storage Settings.
Change-Id: I37c7b3a4b5860323cb55581b23a90f583f4af216
In this change, Storage Settings main UI is composed by 3 fragments.
StorageDashboardFragment only shows when there is only personal profile for
current user.
ProfileSelectStorageFragment (controls preferences above profile tab) and
StorageDashboardNoHeaderFragment (controls preferences below profile tab)
only show when current user has installed work profile.
Bug: 174964885
Test: atest com.android.settings.deviceinfo
atest com.android.settings.deviceinfo.storage
make RunSettingsRoboTests -j ROBOTEST_FILTER=com.android.settings.deviceinfo
make RunSettingsRoboTests -j ROBOTEST_FILTER=com.android.settings.deviceinfo.storage
Change-Id: I50dea2fbcae39a1488e648f3ca615f54840e19d5
Only updates progress bar summary for a selected StorageEntry.
(Ignore updateState callback from DashboardFragment)
Bug: 187145219
Test: manual visual
Change-Id: I4a760ae6a0921c99348c0fce54251b2667bf29ae
- StorageDashboardFragment and StorageItemPreferenceController works only
for one profile per instance.
- StorageAsyncLoader loads for all users(profiles) and regards each user independent.
- SecondaryUserController will not load personal profile user in work profile tab.
- Cleanup some unused profile related files.
Bug: 174964885
Test: atest com.android.settings.deviceinfo
atest com.android.settings.deviceinfo.storage
make RunSettingsRoboTests -j ROBOTEST_FILTER=com.android.settings.deviceinfo
make RunSettingsRoboTests -j ROBOTEST_FILTER=com.android.settings.deviceinfo.storage
Change-Id: I8361c29bc240c519c7261b19522c41439479c1c2
Merged-In: I8361c29bc240c519c7261b19522c41439479c1c2
Adding them results in duplicate classes and causes conflict for the R
classes and resource loading.
Meanwhile, correctly removing the SettingsLibSettingsSpinner resulted
in the test failing to find the getSelectedItem() method which is
unused inside Settings app. This is an inherent issue when unit
testing an optimized (and shrunk) app, and since there's no other way
for the test to get the current selected item, this change simply
changes the Settings code to invoke getSelectedItem() as well. This
has exactly the same effect because SettingsSpinnerPreference updates
its mPosition right before calling the OnItemSelectedListener in its
implementation.
Bug: 183340630
Bug: 177638625
Bug: 183342958
Test: atest SettingsSliderPreferenceControllerTest
Test: atest PrivateVolumeForgetTest
Change-Id: Ia26ca923369b41291614fb9bd50dfbd2aac2f0fa
Bug: 187801712
Test: manual
Click the spinner when there is only default volume.
Click the spinner when there is USB drive connected.
Change-Id: Ifbd26c96f467757ffcfef750bd80533834123f82
Helper function composed to return thread future, to guarantee
concurrent function finishes before test condition is checked.
Additionally a @VisibleForTesting helper function is used rather than
robolectric reflection helpers to set a class variable.
Fixes: 187249674
Test: atest -c TopLevelStoragePreferenceControllerTest
Change-Id: Ia22ebac4baec60f72b8516e9e79998cd788266ab
Merged-In: Ia22ebac4baec60f72b8516e9e79998cd788266ab
(cherry picked from commit 899eb7282d)
There is AOSP built in file browser for image/video/audio
file category, this change cleanup APP based category
for image/video/audio.
Bug: 183078080
Test: atest com.android.settings.deviceinfo
atest com.android.settings.deviceinfo.storage
make RunSettingsRoboTests -j ROBOTEST_FILTER=com.android.settings.deviceinfo
make RunSettingsRoboTests -j ROBOTEST_FILTER=com.android.settings.deviceinfo.storage
Change-Id: I925fc9296b8c2df5bd793668f66a12beb7744469
There is AOSP built in file browser for image/video/audio
file category, all APPs except games should be included in
Apps category.
- Shows image/video/audio APPs in APPs category.
- Count Image/Video/Audio APPs storage size to Apps storage size.
- Remove APP size & cache size for Images/Videos/Audios category.
Bug: 170918505
Test: atest StorageAsyncLoaderTest.java
Change-Id: I07e0a3a66a13f36b9e0cbde289d8ba90df4ae295
Since some pages were styling the action bar programmatically before, the
color of collapsing toolbar will be overridden. Removing them will fix
the problem with inconsist color. This change also fixed some pages with
inconsist theme.
Bug: 185444608
Test: visual verified
1) Settings -> Battery / Storage
2) Scrolling the collapsing toolbar and make it collapsed
3) Observe and see if the color of toolbar is different from the one of
status bar
Change-Id: I5e792747ea3f4deb05428ea5afe6a64f29f9da89
Request focus for the EditText.
Bug: 184710864
Test: manual
At Storage Settings, select USB drive -> option menu
-> Rename. Observe if soft keyboard pops up.
Change-Id: Ia73829ee505c94a255306bd817d01b6bc1b80e26
StorageEntry#isStub() is unused and not built in apk.
Remove the method to fix test fail.
Bug: 184045592
Test: atest com.android.settings.deviceinfo.storage
Change-Id: I89d73c45111918c2ff01174d6fbb47f8c59f6968
Users can click this preference to see public storage files
in external file browsers.
Bug: 170918505
Test: make RunSettingsRoboTests ROBOTEST_FILTER=StorageItemPreferenceControllerTest
manual
Select private storage and public storage and observe UI
Change-Id: If3f0d59b2ebf941d70e81e60c4c2015b80e7cf33
- Change category types.
- Use Intent.ACTION_VIEW to show content of each category.
- Sort order of each category by storage size.
Bug: 170918505
Test: make RunSettingsRoboTests ROBOTEST_FILTER=StorageItemPreferenceTest
make RunSettingsRoboTests ROBOTEST_FILTER=StorageItemPreferenceControllerTest
manual
Click each category in Storage Settings.
Change-Id: Ib7beb1779a0fcbfd7b8ec52446707b105fcebff5
Add getSystemService(Class<T>) to align the capability with framework
part.
This is a back port from aosp/1639943, aosp/1645152 and aosp/1648047
Bug: 179640862
Test: local
Change-Id: I035db55a71f94000ca35f8d71f03c19208423c73
Hide it because there is no framework API to get storage
category stats of public volumes.
Bug: 174964885
Test: manual
Observe storage settings UI of a USB flash drive.
Change-Id: I7272cd18c186793f86548a87b5cb88bb957ff8d5
1. Add new object StorageEntry to encapsulate VolumeInfo and
unsupported DiskInfo and missing VolumeRecord.
2. Replaces StorageSummaryDonutPreference with UsageProgressBarPreference.
3. Add storage select spinner.
4. Add a "Free up storage" preference to replace "Manage storage" button.
Bug: 174964885
Test: atest com.android.settings.deviceinfo.storage
atest com.android.settings.deviceinfo
manual
Insert an USB drive, select the drive in StorageDashboardFragment
and observe UI.
Change-Id: I83877f76869414de4fb2788b6b18fe507aa5cfcf
Merged-In: I83877f76869414de4fb2788b6b18fe507aa5cfcf
NetworkTypeController set OVERRIDE_NETWORK_TYPE_NR_ADVANCED when
device connect NR and frequency is mmWave.
Bug: 179443240
Bug: 179453836
Test: atest frameworks/opt/telephony/src/java/com/android/internal/telephony/NetworkTypeController.java
atest packages/apps/Settings/tests/unit/src/com/android/settings/deviceinfo/simstatus/SimStatusDialogControllerTest.java
Change-Id: Ib95f6a012c0f725335f46e17b8414005a76ad5c9
Merged-In: Ib95f6a012c0f725335f46e17b8414005a76ad5c9
When initialized SimStatusDialogController, also create TelephonyManager
with sub id.
Bug: 174171839
Test: Manual test passed, see b/174171839#25
Test: make RunSettingsRoboTests ROBOTEST_FILTER=SimStatusDialogControllerTest passed
Change-Id: I6bd6975e39c75884252b9d0bcd9d5548dbdfe6d5
Merged-In: I6bd6975e39c75884252b9d0bcd9d5548dbdfe6d5
When initialized SimStatusDialogController, also create TelephonyManager
with sub id.
Bug: 174171839
Test: Manual test passed, see b/174171839#25
Change-Id: I6bd6975e39c75884252b9d0bcd9d5548dbdfe6d5