Commit Graph

88 Commits

Author SHA1 Message Date
sayakiitg
9b432d54a6 Revamp SD card UX
Improve the SD card setup flow so that each formatting option is provided in a separate screen with clear description and illustration.Also make sure that guest users do not have any access to formatting options.

Test: Manual testing on Pixel Device
Screenshot1: https://screenshot.googleplex.com/WJwyxFkBtbSfZmN.png
Screenshot2: https://screenshot.googleplex.com/3oBcrrgRsKTxNPC.png

Bug: 201252175
Change-Id: I77df55c40fd99cabcfc6128084be035bb5b19531

Change-Id: I757abc6076fcc8f467d8faed9f090bcdd5774ff3
2022-07-29 10:21:49 +00:00
Arc Wang
241238c6df Merge "Storage Settings crash" into tm-dev 2022-05-12 03:39:58 +00:00
Arc Wang
87212cf504 Storage Settings crash
Storage settings will crash because there is no emulated primary volume found after private internal volume is Ejected.

Below change in Settings impacted Storage dashboard screen behavior as
it Query storage size instead of calculate size of installed APP. Due to
this design change now MediaProvider is queried for file sizes, but due
to unmounting of primary emulated volume it crashes.

We should not show Eject option for private Internal volume.

Author: ramneek.kalra@mediatek.com
Bug: 230689829
Test: atest com.android.settings.deviceinfo.VolumeOptionMenuControllerTest
      manual
      1. Insert sdcard or generate virtual disk using command : adb shell "sm set-virtual-disk true"
      2. Go to Settings -> Storage -> Sdcard/virtual disk -> Format as Internal -> do migrate data
      3. After above process completed, go to Settings-> Storage -> sd card/virtual disk and chose Eject menu option.
      4. Eject page gets open, Click on Eject button.

Change-Id: I98d09f75ee7c2cd5aae10808bd0e0cdf10da7582
2022-05-11 13:57:33 +08:00
Bonian Chen
d2c9581b44 [Settings] Broken test fix - SimStatusDialogControllerTest
Avoid from test broken - SimStatusDialogControllerTest

Bug: 232040460
Test: unit test
Change-Id: Id5cedd92f008df232234a19d9894e6eb8d39959d
2022-05-10 12:20:50 +08:00
Arc Wang
ea4260c0e7 Fix ManageStoragePreferenceController always consume click event
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
2022-04-19 17:35:05 +08:00
Chaohui Wang
6c9da58f4b Clean up unused Sliceable.copy()
Sliceable.isCopyableSlice() is not set to true for any controller, so this function is not used.

Usage is removed in Change: I81474aed994678c42d73cc59e169573880de1378

Bug: 227722942
Test: robotest & manual
Change-Id: I86e23aa8ad43f60b5017ff0a278e20e3f727706c
2022-04-02 19:16:22 +08:00
Shivam Agrawal
c39ddd2624 Ignore PublicVolumeSettingsTest#test_invalidSetupDoesNotCrashSettings
It failed with Resources$NotFoundException and it blocks
WindowManager extensions CTS tests, so ignore it at first.

Bug: b/213322133 b/216630912
Test: atest com.android.settings.deviceinfo.PublicVolumeSettingsTest
Change-Id: I6827344b5316a4e57302bfc2e7ec4cf3674d6990
2022-03-23 12:31:28 -04:00
Arc Wang
61a733ad0f Ignore PrivateVolumeForgetTest#test_invalidSetupDoesNotCrashSettings
It failed with Resources$NotFoundException and it blocks
WindowManager extensions CTS tests, so ignore it at first.

Bug: 216630912
Test: atest com.android.settings.deviceinfo.PrivateVolumeForgetTest
Change-Id: Iec270535a73bcca5879d2792c181d853b4af7250
2022-03-22 02:24:36 +00:00
Junyu Lai
25e26ea7af [MS49] Remove NetworkStats hidden Api usages
This includes:
1. Remove unused INetworkStatsService and NetworkStatsHistory.
2. Replace NetworkTemplate usages with builder.
3. Replace TrafficStats references to DataUnit.
4. Reimplement NetworkTemplate#normalize.

Test: make RunSettingsRoboTests
Bug: 204830222
Change-Id: I8efecda5df403e9ed588daecd169cb3498d213a2
2022-01-26 11:05:57 +00:00
Bonian Chen
d051e65d3c [Settings] Support phone number talkback
Support phone number talkback in about phone UI pages.

Bug: 182923869
Test: local, junit
Change-Id: I159827070a954dee13230ff7cf6de81dbbaa7545
2021-12-07 10:22:24 +00:00
sandeepjs
40ffe69a3e eSIM deprecated API test Refactoring
Test: build
Bug: 159354974
Change-Id: Iedeb90f186ab9f82894e2fecef86d339c8989542
2021-11-15 05:44:54 +00:00
Stanley Wang
9c63c415ea Fix the problem that the SIM status and IMEI after the "Build number".
- Adding the SIM status and IMEI items of SIM2 to the PreferenceScreen
  can not put these items in the correct categories. We have to put
  these items directly into the correct categories.

Bug: 193384705
Test: robotest and see the UI
Change-Id: I2de7ee72fc1315eeef01288b386f8756ca366e33
2021-07-16 19:44:25 +08:00
Arc Wang
e9c5a06eff Set storage volume spinner invsible when only 1 volume am: 1beae1bf91 am: 10e549ac37 am: e6f4c37dca
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/14831304

Change-Id: Iff52b0bf9c89821b190bed8f01f7281bd34ab947
2021-06-04 09:49:16 +00:00
Arc Wang
1beae1bf91 Set storage volume spinner invsible when only 1 volume
Bug: 189390166
Test: atest StorageSelectionPreferenceControllerTest
Change-Id: I93e5fbf50153580ec60c146959d21e61f556c18c
2021-06-04 07:25:30 +00:00
TreeHugger Robot
a84f439bea Merge "Query storage size instead of calculate size of installed APP" into sc-dev am: 0eaf329a43 am: ebf9d33fb9 am: caa0805121
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/14554355

Change-Id: I8387c7f9f18d3aaed0f745eee7616b533f5234b5
2021-05-26 00:59:25 +00: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
c60e8c41a4 Merge "Shows "This device" for default internal storage" into sc-dev am: 8b5913ba18 am: e7e25f12f1 am: 766ddfce34
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/14609996

Change-Id: Ie925d28907b45da43cb43391ddd39c65ef342d00
2021-05-21 07:12:35 +00:00
Arc Wang
07dc4fe79a Shows "This device" for default internal storage
Bug: 188492974
Test: atest StorageEntryTest
Change-Id: I7278ff604f22acafd47cef2f5d613a2bf9f0e371
2021-05-18 16:23:25 +08:00
Arc Wang
fa6e82b879 Implements profile selection tab in Storage Settings
- 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
2021-05-10 15:21:33 +08:00
Yanting Yang
eecd27406c Merge "Add summary back to the homepage" into sc-dev am: c37abc9edb
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/14442216

Change-Id: Ida5e3fec18839e4ba2ce266aa5b4d2424b65ef3a
2021-05-07 09:14:08 +00:00
Yanting Yang
d1312e8e6e Add summary back to the homepage
Also update some summaries with new strings.

Bug: 183586663
Test: robotests & atest & visual

Change-Id: I692be9b34e8867501aaa8c8e40428870b99644f8
2021-05-06 00:27:37 +08:00
Yanting Yang
cd60664cc3 Merge "TopLevelStoragePreferenceControllerTest converted to JUnit" into sc-dev 2021-05-05 07:32:45 +00:00
Jeremy Goldman
8e712c1501 TopLevelStoragePreferenceControllerTest converted to JUnit
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)
2021-05-05 07:31:35 +00:00
TreeHugger Robot
33baa05d95 Merge "Storage Settings Apps category shows image/video/audio APPs" into sc-dev am: 8d1fd73e89
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/14186629

Change-Id: I4cf006558fda517dd7db111ee09e84cf17f7454d
2021-05-03 18:33:47 +00:00
Arc Wang
4cd89bb082 Storage Settings Apps category shows image/video/audio APPs
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
2021-05-03 20:17:58 +08:00
Arc Wang
9d5b4688e2 Merge "Fix com.android.settings.deviceinfo.storage.StorageEntryTest" into sc-dev am: aed1bba60a
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/14029456

Change-Id: I3a382089a60bc5c036d7e5d2fee85ddff03de68f
2021-03-31 12:53:38 +00:00
Arc Wang
a1fb47beb8 Fix com.android.settings.deviceinfo.storage.StorageEntryTest
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
2021-03-31 10:05:09 +08:00
Arc Wang
71ec654fcc Merge "Show "Files" category for public storage in Storage Settings" into sc-dev am: dd2f2f51e0
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/13975110

Change-Id: Iea8ea56dfa32eca83adeb75b5fc98668af017b80
2021-03-30 11:18:15 +00:00
Arc Wang
c626380689 Show "Files" category for public storage in Storage Settings
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
2021-03-30 15:51:49 +08:00
Arc Wang
86940142ad Merge "Only show storage category stats preferences for private volumes" into sc-dev am: e98a5a9932
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/13922070

Change-Id: I260581ae4f06bb976f8a9b2b90a25a3c34687998
2021-03-22 11:41:32 +00:00
Arc Wang
40396d532f Only show storage category stats preferences for private volumes
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
2021-03-22 16:28:59 +08:00
TreeHugger Robot
d7fff5790a Merge changes from topic "revamp storage settings header" into sc-dev
* changes:
  Add option menu in StorageDashboardFragment
  Revamp Storage Settings header part
2021-03-20 16:06:50 +00:00
Arc Wang
5fa38bbba2 Merge changes from topic "revamp storage settings header - master"
* changes:
  Add option menu in StorageDashboardFragment
  Revamp Storage Settings header part
2021-03-20 15:31:21 +00:00
Arc Wang
c22749530b Add option menu in StorageDashboardFragment
Add option menu for each kind of storage

1. Unsupported disk: Format.
2. Missing volume record: Forget.
3. Unmounted storage: Mount.
4. Default internal storage: Migrate.
5. Private volume: Rename / Unmount / Format as portable / Migrate.
6. Publuc volume: Rename / Unmount / Format / Format as internal.

Bug: 174964885
Test: atest VolumeOptionMenuControllerTest
Change-Id: I85fa117ff0a49ec7a53ba36580591c7ce7f5a8dc
Merged-In: I85fa117ff0a49ec7a53ba36580591c7ce7f5a8dc
2021-03-19 18:08:48 +08:00
Arc Wang
d496a737ce Revamp Storage Settings header part
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
2021-03-19 18:08:38 +08:00
Arc Wang
ba79fe6676 Add option menu in StorageDashboardFragment
Add option menu for each kind of storage

1. Unsupported disk: Format.
2. Missing volume record: Forget.
3. Unmounted storage: Mount.
4. Default internal storage: Migrate.
5. Private volume: Rename / Unmount / Format as portable / Migrate.
6. Publuc volume: Rename / Unmount / Format / Format as internal.

Bug: 174964885
Test: atest VolumeOptionMenuControllerTest
Change-Id: I85fa117ff0a49ec7a53ba36580591c7ce7f5a8dc
2021-03-17 20:44:36 +08:00
Arc Wang
89e6d99daf Revamp Storage Settings header part
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
2021-03-17 20:33:37 +08:00
TreeHugger Robot
2bad0d6b35 Merge "[Settings] Use TelephonyManasger.registerTelephonyCallback instead of TelephonyManager.listen" into sc-dev am: c7d3c5f1be
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/13815935

Change-Id: I9685a196017eef12618efd72d31421a5cc27f4e9
2021-03-17 10:44:22 +00:00
Zoey Chen
b8a639f8fd [Settings] Use TelephonyManasger.registerTelephonyCallback instead of TelephonyManager.listen
Bug: 175270951
Test: make and atest
Change-Id: I15e1a199e6a34914db97055bfea9392c5bbdc9c6
2021-03-12 19:27:05 +08:00
Jeremy Goldman
71a33717b8 Merge "SerialNumberPreferenceControllerTest converted to JUnit" 2021-03-09 05:00:08 +00:00
Jeremy Goldman
6e1b791342 Merge "PhoneNumberPreferenceControllerTest converted to JUnit" 2021-03-08 08:08:34 +00:00
Jeremy Goldman
576009adeb Merge "StorageProfileFragmentTest converted to JUnit" 2021-03-05 03:24:17 +00:00
Jeremy Goldman
859fc2bc15 Merge "HardwareRevisionPreferenceControllerTest converted to JUnit." 2021-03-04 01:22:49 +00:00
Jeremy Goldman
7f98211d08 Merge "DeviceModelPreferenceControllerTest converted to JUnit." 2021-03-04 01:22:33 +00:00
Jeremy Goldman
5a36305aae StorageProfileFragmentTest converted to JUnit
Looper and UIThreadTest added.

Test: atest -c StorageProfileFragmentTest
Change-Id: Ib561a0e87a0b5034f7692f2567c8617e7f5f763e
2021-02-25 15:20:12 +08:00
Jeremy Goldman
47e1c78343 Merge "PrivateVolumeOptionMenuControllerTest converted to JUnit" 2021-02-25 05:43:56 +00:00
Jeremy Goldman
3098ea1274 Merge "BrandedAccountPreferenceControllerTest converted to JUnit" 2021-02-25 05:43:29 +00:00
Jeremy Goldman
9ec80bb8b0 Merge "TopLevelStoragePreferenceControllerTest converted to JUnit" 2021-02-25 01:31:20 +00:00
Jeremy Goldman
899eb7282d TopLevelStoragePreferenceControllerTest converted to JUnit
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.

Test: atest -c TopLevelStoragePreferenceControllerTest
Change-Id: Ia22ebac4baec60f72b8516e9e79998cd788266ab
2021-02-24 16:24:19 +08:00
Jeremy Goldman
d2a5331711 PrivateVolumeOptionMenuControllerTest converted to JUnit
ArgumentCaptor used to verify which activity is started by the context.
Additionally, spy of application runtime context used instead of a
robolectric shadowActivity

Test: atest -c PrivateVolumeOptionMenuControllerTest
Change-Id: I5afd83cc09d57150661b22156a2fb06e1f09ea0b
2021-02-24 13:59:13 +08:00