Should check if 'Documents & other' is visible
when mVolume is updated.
Bug: 230215783
Test: manual visual
Settings -> Storage
Change-Id: Ife36b71bee66ff16802e352785824e10c17dceb8
ManageStoragePreferenceController should only consume click
event when its preference key matches the key of the clicked
preference.
Bug: 228970667
Test: atest ManageStoragePreferenceControllerTest
Change-Id: Ia6c62cf457fc4cadc27dc160dbd9b04ec3392d68
- Get badged icon from target app.
- Add card_preference layout file to align icon & text
with other Preference.
Bug: 192555970
Test: manual visual
Change-Id: Id98d05e8871032ad61627783b8e47bfee1363448
To prevent from the flicker happening, the size info for secondary users
will be cached.
Bug: 220259287
Test: manual test
1) Create secondary user
2) Finish setup flow
3) Install any types of apps and try to change the storage size
4) Navigate to Settings > Storage
5) Observe the storage size and progress bar, they should have animation
when storage size info updated.
Change-Id: Iff706b20446603f08334a0b782dd505ca78bdab2
To prevent the flicker happening, the animation is being applied to both
progress bar and storage size info in the storage item.
Bug: 222421324
Test: manual test
1) Install memory fill
2) Increase storage size using memory fill
3) Navigate to Settings > Storage
3) Check the progress bar and size info has animation when updating
Change-Id: I4583358697afd416bc20cafac3ff89361397b6b9
Use Build.VERSION.RELEASE_OR_PREVIEW_DISPLAY which will show a user
friendly version name for preview releases, and the release version
for final releases.
Bug: 221950960
Test: manual
Change-Id: I3a7e6a3c996d52614b89888afd35da8cff458b43
- Use SharedPreference to cache the size info
- Improve the flicker problem on Documents & other preference
- The jobs are destroied on onPause to prevent the jobs being
restarting when back to Storage page
- Enable progress bar animation for each storage item
Bug: 191117970
Test: manual test
1) The loading spinner will be shown when entering Storage page
at first time.
2) Back to Settings homepage and switch back to Storage page, the
loading spinner shouldn't be shown.
3) Click each preference in the Storage page and switch between these
pages, the size info should be updated if something removed and the
order of preference shouldn't be changed.
Change-Id: I75533742a025dc61116207285a894ee728d0af68
Merged-In: I75533742a025dc61116207285a894ee728d0af68
(cherry picked from commit 77775a66f2)
To make InputMethodPreference support 2 target
reference, CL[1] move the PrimarySwitchPreference
into SettingsLib.
Change all PrimarySwitchPreference reference to
Settingslib one and remove the original one.
[1]: Idea3935d95b8d22b00ca89313e9eb3e979e4aa74
Bug: 197705032
Test: Presubmit
Change-Id: I95d111522344bb7cbdd380382e48fe60a5ebc9a2
From Android S, Storage Settings queries file sizes
from MediaProvider, it's not necessary to count size
data from getExternalStorageStats when calculating
size data.
Bug: 185542752
Test: make RunSettingsRoboTests ROBOTEST_FILTER=testMeasurementCompletedUpdatesPreferences
manual
1. Connect device to PC via USB File transfer.
2. Copy large files from PC to device.
3. Observe size information in Storage Settings.
Change-Id: I43cbec764e97f5003a4ec981717c9f213a21b614
Java integer max is 2,147,483,647, it's about 2GB.
Use getLong to get size from provider instead of getInt.
Bug: 190721008
Test: manual visual
Copy video files more than 2,147,483,647 bytes
and observe Videos size information.
Change-Id: Ic804db43554fdd580627faebecfe30d9ad2a9120
To hide sorting animation.
- Storage Settings always loads cache and updates UI, then
loads storage size and updates UI.
Remove the chche design because storage category preferences
will hide during loading, it no meaning to load from cache
and update UI.
- Hides loading circle before storage category preferences
become visible, it prevents flickers.
- Remove Calculating... summary of StorageItemPreference.
- Private storage category preferences and secondary user
preference become visible at
StorageItemPreferenceController#onLoadFinished.
Bug: 188731179
Bug: 185547228
Bug: 188615591
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
Change-Id: I3ebef5829ef4f806add07f58fa02520804768be5
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
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
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
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
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
- The generic class can be used for multiple controllers
Bug: 174022082
Test:
- atest -c AirplaneSafeNetworksPreferenceControllerTest
- make RunSettingsRoboTests
ROBOTEST_FILTER=AllInOneTetherPreferenceControllerTest
- make RunSettingsRoboTests
ROBOTEST_FILTER=AutomaticStorageManagementSwitchPreferenceControllerTest
- make RunSettingsRoboTests
ROBOTEST_FILTER=WifiPrimarySwitchPreferenceControllerTest
Change-Id: I7d50ae3e6228005eb6dfb0a6c1a2f870c41330f2
Replace WiFi related terms which contain Master wording.
Goal: Create a fixit for Android Platform to reduce the use of non-inclusive language for all code.
Bug: 161425297
Test: make RunSettingsRoboTests -j or
make RunSettingsRoboTests ROBOTEST_FILTER=DashboardFragmentTest
make RunSettingsRoboTests ROBOTEST_FILTER=WirelessDebuggingPreferenceControllerTest
make RunSettingsRoboTests ROBOTEST_FILTER=AutomaticStorageManagementSwitchPreferenceControllerTest
make RunSettingsRoboTests ROBOTEST_FILTER=AllInOneTetherPreferenceControllerTest
make RunSettingsRoboTests ROBOTEST_FILTER=TopLevelNetworkEntryPreferenceControllerTest
make RunSettingsRoboTests ROBOTEST_FILTER=PrimarySwitchPreferenceTest
make RunSettingsRoboTests ROBOTEST_FILTER=WifiPrimarySwitchPreferenceControllerTest
make RunSettingsRoboTests ROBOTEST_FILTER=WifiTetherPreferenceControllerTest
Change-Id: I9395c50e092e124016609f88f7c8151554a0d874
- Pass wrong user id in view holder
Fixes: 149028747
Test: 1. Add new user, and change th new user
2. Take a camera shot under the new user
3. go to Settings -> Storage -> photo & video -> Image
4. Should open file brower
Change-Id: I0af532748ec19f62897911b1bb6ece9b21b844c3