Commit Graph

23 Commits

Author SHA1 Message Date
Arc Wang
51b3e7a093 Storage Settings hides categories when loading
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
2021-06-04 11:50:12 +08:00
Arc Wang
8fde6ca821 Shows trash category in Storage Settings
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
2021-05-27 17:50:11 +08:00
Arc Wang
044c91cc70 Query storage size instead of calculate size of installed APP
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
2021-05-25 23:44:21 +08:00
Arc Wang
2b00ecdda9 Storage category UX changes in Storage Settings
- 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
2021-03-25 20:27:50 +08:00
Fan Zhang
23f8d59d02 Sort imports
Having consistent import order will reduce chance of merge
conflict between internal and external master

Test: rebuild
Change-Id: I0b1a170967ddcce7f388603fd521f6ed1eeba30b
2018-08-28 22:13:15 +00:00
Fan Zhang
c7162cd24d Reorder and clean up imports.
Test: rebuild
Change-Id: I178485c84ae7146f991fd77b6d7504b029942a68
2018-06-18 15:45:09 -07:00
Aurimas Liutikas
e0069d332d Migrate Settings to androidx.
Test: make Settings
Bug: 76692459
Change-Id: I941dea40562170649bf056e675cc32e5163c0e39
2018-04-20 12:52:29 -07:00
Victor Chang
75325675de Revert "Don't use framework strings for formatting file sizes"
This reverts commit ded99003c4.

- Add java import in order to build successfully
- Fix RunSettingsRoboTests

Test: adb shell am instrument -w -e class
com.android.settings.utils.FileSizeFormatterTest
com.android.settings.tests.unit/android.support.test.runner.AndroidJUnitRunner
Test: make -j RunSettingsRoboTests
Bug: 70005649
Bug: 36994779
Change-Id: I1c0ff48c749e9fbb82fd670c27243bd3922ed373
2018-01-03 14:33:24 +00:00
Roozbeh Pournader
ded99003c4 Don't use framework strings for formatting file sizes
Modify various formatters to avoid using framework strings for
formatting file sizes.

Also update README instructions for running unit tests.

Bug: 36994779
Test: adb shell am instrument -w -e class com.android.settings.utils.FileSizeFormatterTest com.android.settings.tests.unit/android.support.test.runner.AndroidJUnitRunner
Test: make -j RunSettingsRoboTests
Change-Id: I4035f26d29408b64389892a4a2379b4823f8ac96
2017-07-12 15:58:21 -07:00
Daniel Nishi
4afc3f2951 Don't accordion the progress bar out.
This stops an animation from triggering on the storage settings screen
when entering it. Because we don't load the screen until data has
loaded, we run no risk of showing an uninitialized progress bar. Thus,
we can just always show the progress bar.

Change-Id: I31814a12b9c39a33fa0fbbc4826eb4138cf09a74
Fixes: 62549522
Test: Manual
2017-06-20 13:56:04 -07:00
Daniel Nishi
63a11c56de Always use GB as the unit in Storage Settings.
Bug: 36901322
Test: Settings unit tests

Change-Id: I08c711db6a271522942a01d1adf3e8e5223010f7
2017-04-25 15:23:49 -07:00
Daniel Nishi
cf0e659a6c Re-add the progress bar for storage preferences.
This re-adds the progress bar and unifies the
StorageItemPreference and its alternate.

Change-Id: Iefc12b4b554306c706c83be232175dd2b84227b7
Fixes: 36223433
Test: Settings robotest
2017-03-20 11:42:46 -07:00
Dan Sandler
89d5659643 Show "0" instead of "0 B" in storage settings.
Two benefits:
  - "0 B" might be a little confusing for sighted users
  - "zero bee" is definitely confusing for TalkBack users

Nonzero storage items will still read as "640 KB" which
should be enough for anyone.

Change-Id: I5c89f7c6382ca14fb91d7d1dd145977f855618ae
Fixes: 27973778
2016-06-21 00:33:16 -04:00
Jeff Sharkey
d36e574cfa Avoid division by zero in storage.
Bug: 26387833
Change-Id: I144475d4b82d91dcfd2271cd775e43d595914cef
2016-02-18 15:43:54 -07:00
Jason Monk
39b467482d Depend on support lib preferences
Bug: 24576551
Change-Id: Ic6190bacd3f7582c9bbc8de972da4612bd92421e
2015-10-13 10:12:20 -04:00
Zoltan Szatmary-Ban
df57fa52ab resolved conflicts for merge of 8eade69d to master
Change-Id: Id2a2269b506c2ffa06dcfd3a02b32eced5e7632b
2015-07-08 16:05:49 +01:00
Zoltan Szatmary-Ban
6a00f6cf0b Making Settings > Storage multiprofile aware
Also fixing the order of preferences there.

Bug: 22223456
Bug: 22117317
Change-Id: I9261fe46bfce518fd1ce3d0faef07cffe6869e34
2015-07-07 20:33:30 +01:00
Daichi Hirono
c22816362c Show bar graphs for internal storage items (Apps, images, video etc.).
BUG=21898434

Change-Id: I8285088c7bef82bbd63fa38d6a95180079acd195
2015-07-02 17:54:29 +09:00
Jeff Sharkey
2597625fd9 More storage UI updates.
Storage volumes now have headers with larger fonts and progress bars
to show used versus free space.  Updated Memory to use new formatting
template, and Data Usage to use consistent display logic.

Allocate a unique color for each private volume, and yell when a
volume is running low on space.  Update private volume details to
launch into MediaStore-backed storage backends in a management mode,
and only show detailed items when hosting emulated storage.  Show
details dialog about "Other" and user storage items.

Shortcut into single private volume when it's the only device.  Add
real eject icon.

Bug: 21756698, 20275574, 21326612
Change-Id: If3ecd1d912d3e709c09d3e4da24f368e04dd3f9d
2015-06-15 21:44:21 -07:00
Jeff Sharkey
42833b2ff4 Checkpoint of new storage UI.
Top-level storage UI now shows list of all devices, both internal
and adopted/private volumes, and public/shared volumes.

When viewing a private volume, show traditional clustering of data
types, including summary of other users.  For adopted volumes, any
actions are tucked away in a menu, since they're not primary.  Misc
files browsing is now provided by DocumentsUI.

Teach StorageMeasurement about new private volumes, including
handling emulated volumes stacked above them.  When measuring, only
consider apps actually hosted on the current volume UUID.

When viewing a public volume, we default to launching into file
management mode, and offer a simple eject button at the top-level
view.  File management mode is offered by new DocumentsUI browse
intent, and a Settings link there redirects back to us for actual
operations like ejecting/formatting.  When unmounted, we launch
into our action view.

Actions like ejecting/formatting just show simple toasts for now.

Bug: 19993667
Change-Id: Ie990ef3c01fb3717aaf8c79bfc53aac7edefdcf7
2015-04-12 22:02:32 -07:00
Alan Viverette
55eaa96fe4 Clean up usage of theme colors, deprecated Resources.getColor* methods
Change-Id: I34e11e0773c9f8e00e3eab422781094e19a16d3d
2015-03-18 18:10:52 -07:00
Jeff Sharkey
da13ec0cb4 Iteration on multi-user Storage UI.
Now that DefaultContainerService has visibility of external storage
for all users, we can measure internal storage in a single pass.
Internal storage measurement now iterates across all known users,
counting both apps and emulated storage usage.

Create MeasurementDetails object with documentation about what is
counted under various device configurations.  Generalize to measure
each Environment.DIRECTORY separately, so it can be combined as
needed.  General cleanup of how measurements are passed to UI.

Bug: 7003520
Change-Id: Ib89c185296a0c9debdc20beeaa98584d803a84e8
2012-09-13 01:13:48 -07:00
Jeff Sharkey
90c8b20ccf Surface storage usage of other users.
Bring up separate StorageMeasurement sessions bound to other users
on device, and surface their total usage as teal colors.  Exclude
app code size when measuring secondary users.  Shift preferences to
using keys instead of fragile index ordering.

Bug: 7003520
Change-Id: I214d0b223e53955df71104502596743f049f2027
2012-08-30 15:24:53 -07:00