Commit Graph

112 Commits

Author SHA1 Message Date
Fan Zhang
7db118e367 Mass clean up: don't cast class when not needed.
Bug: none
Test: rebuild
Change-Id: Ie3f58a3d5ae99ade28a33dcac80c18de90d4d5b2
2019-02-14 12:26:09 -08:00
Fan Zhang
31b210017b Migrate all MetricsProto enums to SettingsEnums
Bug: 122855168
Test: rebuild
Change-Id: I962d9a71179f86b7cae9dc5e9a00e0aa1557dc76
2019-01-17 14:55:42 -08:00
Mill Chen
0432a46627 Add storage slice in Contextual Settings Homepage
- Add storage card that implements CustomSliceable in Contextual
Settings Homepage.
- Add test case for storage slice.

Bug: 117074909, 115971399
Test: visual, robotest, SliceBrowser
Change-Id: Idc7d47ba934c2556c124220545ecc73fb2beb7e2
2018-10-09 15:20:29 +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
tmfang
27c84de325 Settings Fragment Migration (Build pass app)
This patch focused on fixing compile errors and some runtime errors.

Test: We can't test it now. But we will have an integration test later.
Bug: 110259478
Change-Id: I16c471ddcd0fa1460c665b7f74d86fcace5ee67b
2018-07-11 18:24:51 -07:00
tmfang
99cc23d0da Settings Fragment Migration (Change imports)
This commit *only* changes imports and optimize imports.
We don't do anything else.

This patch can't compile pass and run test case.
We will update other patches to fix these problem.

Change list.

1. import android.app.Fragment; ->
   import androidx.fragment.app.Fragment;
2. import android.app.DialogFragment; ->
   import androidx.fragment.app.DialogFragment;
3. import android.app.ListFragment; ->
   import androidx.fragment.app.ListFragment;
4. import android.app.LoaderManager; ->
   import androidx.loader.app.LoaderManager;
5. import android.content.AsyncTaskLoader; ->
   import androidx.loader.content.AsyncTaskLoader;
6. import android.content.Loader; ->
   import androidx.loader.content.Loader;
7. import android.app.FragmentTransaction; ->
   import androidx.fragment.app.FragmentTransaction;
8. import android.app.FragmentManager; ->
   import androidx.fragment.app.FragmentManager;
9. import android.app.LoaderManager.LoaderCallbacks; ->
    import androidx.loader.app.LoaderManager.LoaderCallbacks;

Bug: 110259478
Test: Can't test it.
Change-Id: I0a3f98fff34a3494a839c3c42aeabcec3df2c8b3
2018-07-11 18:23:51 -07:00
Fan Zhang
c7162cd24d Reorder and clean up imports.
Test: rebuild
Change-Id: I178485c84ae7146f991fd77b6d7504b029942a68
2018-06-18 15:45:09 -07:00
lumark
9e25726593 Fix back stack didn't perserved when Files Activity launched by Setting storage then back case.
Due to FilesActivity set "android:documentLaunchMode="intoExisting", it will create
new task when launched from Storage Setting page.

When select FilesActivity task from recents & press back key, it will not back
to settings page.

Using startActivityForResult to set task as source task can fix task separated case.

Change-Id: I26362928261a1a9c0e485a486be493423d1fcf61
Fixes: 33117269
Test: Manual
Test: atest StorageItemPreferenceControllerTest
2018-06-12 11:21:45 +08:00
HJ ChangLiao
ee06ef54ca Convert Smart Storage to BasePrefController
Convert Smart Storage (Storage manager) controller:
AutomaticStorageManagementSwitchPreferenceController
to BasePreferenceController for slices

Change-Id: Ieb22cb97cd46a43557dfbdd2c959e87842890fc6
Fixes: 74916013
Test: make RunSettingsRoboTests
2018-05-11 12:25:06 +08:00
hjchangliao
e86eec0c07 Rename SubSettingLauncher.setTitle, add java doc
For make this method usage more clear,
setTitle(charSequence) rename as setTitleText,
add java doc: it is only for user generated string
setTitle(int) rename as setTitleRes.

Change-Id: I972cb6a8ff90873dfdc25c23f6dc3d68103c8e4e
Fixes: 78347436
Test: make RunSettingsRoboTests
2018-05-09 10:00:05 +08:00
Tony Huang
e0b3323bde Merge "Update StorageSummaryDonutPreference content" into pi-dev am: 070238df13
am: 3ba6c42ab0

Change-Id: Ibb80c748317948ab1b5b62f606c06375ee0c1cc9
2018-04-26 20:09:01 -07:00
Tony Huang
494a848545 Update StorageSummaryDonutPreference content
- Set its view as unclickable
- Add content discription on DountView

Fixes: 78172416
Fixes: 78170302
Test: manual open talkback to check voice content
Change-Id: Ic40f88fb27344822bbb14cf62a79d8e030ee16ac
2018-04-25 10:55:51 +08:00
HJ ChangLiao
5693be2863 Replace PackageManagerWrapper with PackageManager
Replace all SettingsLib/PackageManagerWrapper in Settings,
by PackageManager,
Remove ShadowPackageManagerWrapper.

Bug: 62067063
Test: make RunSettingsRoboTests
Change-Id: I6d1af55c13d80c1907b98b21e0207cc903cd9b1f
2018-04-24 15:12:31 +08:00
Aurimas Liutikas
e0069d332d Migrate Settings to androidx.
Test: make Settings
Bug: 76692459
Change-Id: I941dea40562170649bf056e675cc32e5163c0e39
2018-04-20 12:52:29 -07:00
Jason Chang
c44097d345 [SettingsLib] Update Utils APIs usage
Update Utils.getColorAttr and similar methods in Utils to return a ColorStateList instead of a color

Bug: 74872054
Test: Force to display different color items then manually test
Change-Id: If002f9a578558e6254220c36ef556e8378d4522a
2018-04-10 21:09:39 +08:00
Fan Zhang
947a673f74 Remove more wrappers
- WallpaperManagerWrapper
- UserManagerWrapper

Bug: 76167422
Test: robotests
Change-Id: I3ca866089082e01f1e9d7a4554387962f45a5437
2018-04-02 16:51:40 -07:00
Fan Zhang
1f6d24a991 Get rid of direct usage of Utils.onBuildStartFragmentIntent
Change-Id: I87eb97d6da4cd4f99be5bcdb1e3e245eb1c7bd1c
Fixes: 73250851
Test: robotests
2018-02-20 09:42:31 -08:00
Daniel Nishi
da4fa80717 Centralize the automatic storage manager on check.
Bug: 70893105
Test: Existing tests pass.
Change-Id: I83fa0e1033eb530a02eca230d0dd79495cbcbc9d
2018-02-14 11:13:55 -08:00
Fan Zhang
f11c885766 Pre-fixup for nav up button
- Remove SettingsDrawerActivity.EXTRA_SHOW_MENU and force up nav button
  to always show. The button doesn't do anything yet. It just finishes
  current activity.
- Remove dead code about suggestions

Change-Id: I61fa9fefbaa9bced841a05969544b1c824c564ce
Bug: 72337421
Test: rebuild
2018-02-07 10:27:18 -08:00
Leif Hendrik Wilden
28dee1f086 Migrate to use instrumentation classes from settingslib.
Test: Compiles. Manually tested.
Change-Id: I70a6e76cc8440547746ecc008c32bd06a7de8161
2018-01-24 12:30:39 -08:00
Leif Wilden
cab0ee611d Revert "Migrate to use instrumentation classes from settingslib."
This reverts commit 1546cca529.

Reason for revert: Broke fingerprint setup flow. b/72267201

Change-Id: I8321265ae64732c526325882ddea51080decddf5
2018-01-22 20:57:36 +00:00
Leif Hendrik Wilden
1546cca529 Migrate to use instrumentation classes from settingslib.
Test: Compiles. Manually tested.
Change-Id: Ie5515bb0fe3e621fc7723a9b04ba23e4bfa9c401
2018-01-18 11:13:24 -08:00
Jaekyun Seok
47f6e54895 Move codes generating html file from xml files to SettingsLib (1/2)
LicenseHtmlGeneratorFromXml, LicenseHtmlLoader and indirecly AsyncLoader
shoud be commonly used by Settings and TvSettings.

So this CL will move them to SettingsLib.

Test: building succeeded and tested on sailfish.
  make ROBOTEST_FILTER=SettingsLicenseActivityTest RunSettingsRoboTests

Change-Id: I12e9169b1d3d313a6c5da0d575a6526327268381
2017-12-07 06:41:30 +09:00
Fan Zhang
a8cac7a409 Move ManageApplications to sub package and remove dead code
Bug: 64804294
Test: rerun test
Change-Id: I23cbd8da9b65f52470030ba3b9b676ece2bada11
2017-10-12 13:48:54 -07:00
Daniel Nishi
24968fa3c1 Merge "Fix work profile storage bugs." into oc-mr1-dev am: 67f0299a25
am: 08fe250704

Change-Id: I8c69cf593d2159c62bbea04d3b85bf65dd944448
2017-09-15 14:19:17 +00:00
Doris Ling
dee1a22c45 Consolidate all wrappers used for testing.
- Add the wrapper package and move all wrappers to the wrapper package.
- Get rid of some wrapper interface/impl implementation and have a
wrapper class directly.

Bug: 65634579
Test: make RunSettingsRoboTests
Change-Id: Ic757d8f7bacfa7a034c7e692205bc1dc4b0e1de1
2017-09-14 18:24:49 -07:00
Daniel Nishi
59982c6954 Fix work profile storage bugs.
This makes apps and files in the work profile show up only for the work profile.
It turns out the primary profile's user id was getting piped down to the
special files views and it was showing the primary profile's file sizes
instead of the work ones.

Change-Id: If9c175f24920513c624c522d838bcdbe925566d1
Fixes: 65559258, 65558758, 65559934
Test: Settings robotest and 34768986
2017-09-14 11:05:34 -07:00
TreeHugger Robot
6361c9d851 Merge "Turn in the work profile's badge." into oc-mr1-dev 2017-09-06 23:20:40 +00:00
Daniel Nishi
9e6d39e71a Turn in the work profile's badge.
The badge is no longer part of the preferred work profile UX. By
removing the code which badges the preferences for the individual
storage items, we can avoid placing the no longer needed tiny badges.

Change-Id: I6fd2ec28d3cf55e3a95b877f4c7b9b51c94e12d8
Fixes: 64475406
Test: Manual
2017-09-06 10:11:48 -07:00
Daniel Nishi
fb302de0d6 Cache storage values for fast loading.
If the user moves away from the storage fragment and returns, this
allows us to use cached data from the previous calculation. If the data
is > 1 minute old, we consider it stale. Otherwise, we can bypass the
loading screen.

Fixes: 37923463
Test: Settings Robotest

Change-Id: I7650d4d742852f8d447878c077b9190bc0a0bb22
2017-09-05 14:46:14 -07:00
Daniel Nishi
9be0ce09c9 Make photos/videos storage preference normal.
We had special behavior for it in the past, but this defines new
behavior that is much closer to what the other storage preferences do.
A photo app filter is used and a photos/video files preference exists on
it which intents over to the gallery app.

Fixes: 64147318
Test: Settings robotests

Change-Id: I47284515fe2dfcc924ae61a44bc47051e9f5fda6
2017-09-01 17:51:56 -07:00
Daniel Nishi
83ceab82e4 Show work profile apps only on app list.
For the work profile drilldown, we used to show all apps when the user
drilled down into the categories. This makes it so that the drill down
only shows the work apps when that deep.

Change-Id: I492cd3e9b9b923b87b68645a871dcfb2b91b4f95
Fixes: 62963093
Test: Settings robotest
2017-09-01 13:08:48 -07:00
Daniel Nishi
1568c56de9 Tint the work icon.
Bug: 64475406
Test: Manual
Change-Id: Ibe817a9c099439db91aca1a858e5cf5562fa6a4a
2017-08-29 13:55:06 -07:00
Rajeev Kumar
2156b26b2e Hide automatic storage manager preference.
This preference should not be displayed to lower RAM device. Files
Go app will would provide this feature for low RAM devices.
Bug: 63333197
Test: visual

Change-Id: I48464884cf20acc632748e66f8183c276996828c
2017-07-17 17:46:54 -07:00
Daniel Nishi
6dd03f6d8e Merge "Expand ASM activation warning." into oc-dr1-dev am: 64acb2906c
am: 4961451a4e

Change-Id: I992843e238acc4720c1fd5ade1cb4a66936ecb9c
2017-07-11 20:00:20 +00:00
Daniel Nishi
8f345d7fd6 Expand ASM activation warning.
If the device had ASM enabled by default but still opted to disable ASM
for policy reasons, we need to start warning the user.

Change-Id: I6a296e95d00413308de3ddc565b42c5f605087e9
Fixes: 62105682
Test: Settings robotest
2017-07-11 09:51:14 -07:00
Daniel Nishi
842bcf5081 Merge "Unify storage calculations." into oc-dr1-dev am: 947cb367db
am: a223ee4890

Change-Id: I4a4dbe87c52a2c53abd2489143d9183c72d2c4cf
2017-07-06 17:27:05 +00:00
Daniel Nishi
5d272ce4ff Unify storage calculations.
Due to one calculation using longs and the other using doubles, there
were situations where the percentage was off-by-one between the two
places.

By changing both places to now use doubles to calculate percentages, the
numbers should be unified.

Change-Id: I4f4ed19326562e198273adc60a1593c7d1a6b6a7
Fixes: 37923610
Test: Manual
2017-07-05 10:10:15 -07:00
Tony Mantler
1d583e125f Make PreferenceController a mixin
Bug: 62912136
Test: Existing tests in BaseSearchIndexProviderTest
Change-Id: Ieda359806c09a019840b2005446c7ec8b61fdb00
2017-06-26 10:58:36 -07:00
Daniel Nishi
5837a9b98b Count cache in storage categories.
am: b22b85b593

Change-Id: I85b6ce492c34f67215dcb8539e7b88b02a9ef2fa
2017-06-23 04:19:19 +00:00
Daniel Nishi
b22b85b593 Count cache in storage categories.
This makes the System size more consistent because cache is not
attributed to the system (when the cache is under quota).

Change-Id: I680e70daf5e98b9a205023a218dfd1dcc8ee8334
Fixes: 62623731
Test: Settings Unit Test
2017-06-22 19:08:48 -07:00
Daniel Nishi
2de5ab35f8 Merge "Add more sane multi-profile app attribution." into oc-dev
am: 4743423a82

Change-Id: I59630cf77da700cd5a159e11ac6f9818f1303199
2017-06-19 17:55:28 +00:00
Daniel Nishi
b088010d12 Add more sane multi-profile app attribution.
Due to issues w.r.t. attribution across multiple users, we originally
duplicated the previous implementation which zeroed out the sizes. This,
however, caused system bloat due to the change in how we calculate the
system size.

By attributing apps which do not exist in the primary profile to the
first user that shows up with it installed, we can avoid accidentally
attributing it to the system size.

Bug: 62623731
Test: Settings unittest & Settings robotest
Change-Id: I9514c9ecef62ea6270723f62e6bf27c69b75f180
2017-06-15 17:25:10 -07:00
Jeff Sharkey
7c236a0c7e Merge commit '47eec246a9293616cb74d2c354be85201ec4e19e' into mergeit
Change-Id: I988ae328e0e9bb99b086490cf2ef48ca19779d13
2017-05-31 09:05:30 -06:00
Jeff Sharkey
77fe8c1e9e Consistent "low storage" behavior.
Fix several bugs related to storage accounting.  Since getDataBytes()
already includes cached data, we need to subtract it to avoid blaming
apps for it.

We also need to blame app code on someone, so we blame it on the
current user.  StorageStatsManager was fixed awhile back to only
return the app code size on the requested storage volume, so we can
remove the system app checks.

Subtract "appBytes" from external storage accounting, since it's
already been blamed elsewhere against specific apps.

Pass along storage results from all users on the device, and subtract
them all when estimating size of "system" data.  To avoid embarrassing
estimation bugs, make sure that "system" data is at least 1GB.

Bug: 38008706
Test: cts-tradefed run commandAndExit cts-dev -m CtsJobSchedulerTestCases -t android.jobscheduler.cts.StorageConstraintTest
Test: cts-tradefed run commandAndExit cts-dev -m CtsAppSecurityHostTestCases -t android.appsecurity.cts.StorageHostTest
Change-Id: Ide1e6d0690e5ad4e751c87891f63ba1036434619
2017-05-30 23:51:06 -06:00
Juan Lang
777ed2535a Depend on SettingsLib's version of lifecycle and FooterMixin.
The implementations have been imported into SettingsLib. Setting's copy
can now be removed, which this change also does.

Test: Manually check battery status, which uses FooterMixin, looks OK.
make RunSettingsLibRobotTests && make RunSettingsRoboTests
     && make RunSettingsGoogleRoboTests
Change-Id: I6539605fdad80d156ff5ff249e68df4a1c412067
2017-05-12 11:10:46 -07:00
Daniel Nishi
2c00b770eb Merge "Add the badged icon for Movies & TV." into oc-dev am: 9a5bac7d5a
am: a3349519d5

Change-Id: I0024eee4c96f8193d3a8eb94b6199d344c5c6f5d
2017-05-11 00:52:07 +00:00
Daniel Nishi
24077d899f Add the badged icon for Movies & TV.
The work profile was missing the icon.

Change-Id: I005cc2baecfe86479156e19e0c4ec4b586336cff
Fixes: 38132211
Test: Settings robotest
2017-05-08 14:13:13 -07:00
Daniel Nishi
708ee39aa7 Merge "Fix Settings crash in Storage settings." into oc-dev am: 816956d249
am: bc628dfdd9

Change-Id: I47b9bd56c6a7bb6f2a640ae067623a4f5395d455
2017-05-08 16:53:21 +00:00
Daniel Nishi
8381755263 Fix Settings crash in Storage settings.
If you tap aggressively before the fragment has fully initialized, it
was possible to NPE. This null-checks to avoid this.

Change-Id: I3488245d230cf1e16b23e34614c8e6b43ea14ff1
Fixes: 37945253
Test: Robotest
2017-05-04 14:12:45 -07:00