Commit Graph

74 Commits

Author SHA1 Message Date
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
Daniel Nishi
1ec0f84f43 Merge "Don't overly hide the Files preference." into oc-dev am: 0c58fbd345
am: 169fd4693f

Change-Id: I5328da37f430703540cb067256984ebafbe4ff59
2017-05-03 18:09:00 +00:00
Daniel Nishi
0c58fbd345 Merge "Don't overly hide the Files preference." into oc-dev 2017-05-03 17:59:08 +00:00
Daniel Nishi
f7fa542eb6 Don't overly hide the Files preference.
This occurred this because the files preference was initialized during
displayPreference(), but the volume used to initialize it was not being
set until after the displayPreference() call. In this case, the files
preference would hide itself and never come back.

This fixes this by double-checking the Files visibility status whenever
we set the volume.

Change-Id: I0b1a7a9566e9caece39ec58706fbca034ef4c1c2
Fixes: 37790776
Test: Settings robotest
2017-05-02 15:42:55 -07:00
Daniel Nishi
8bcc2e203c Merge "Make the storage free/total sizes consistent." into oc-dev am: b22c11ae28
am: e25371e8bc

Change-Id: I267abe4239c3b6b15a5a9be003f68bcc026c1ea3
2017-05-01 21:55:05 +00:00
Daniel Nishi
b22c11ae28 Merge "Make the storage free/total sizes consistent." into oc-dev 2017-05-01 21:40:23 +00:00
Daniel Nishi
f9a073bb69 Merge "Don't shows Files when storage is adopted." into oc-dev am: 980155fb30
am: 23f6fcf90a

Change-Id: I8449865c72091f6a6752bebc17d14848e17e2776
2017-04-26 17:06:32 +00:00
Daniel Nishi
a16837769c Make the storage free/total sizes consistent.
We were using a different calculation in the top level view compared to
within the Storage settings. Technically, both are correct (one of them
is aware that we're considering cache as free, one does not). This patch
aligns us on the cache as free strategy.

Change-Id: I9ac26683a4d2a30b77a1da534aa2ddd3d4da6657
Fixes: 37175551
Test: Settings robotest
2017-04-26 09:58:58 -07:00
Daniel Nishi
1f079fbae4 Don't shows Files when storage is adopted.
One regression from the previous storage view is that the
Files category should not show at all when the storage is adopted.

Fixes: 36786953
Test: Settings robotest

Change-Id: Ice365fabc3bfa66f4c5526ac78bbbfc5e15b7b35
2017-04-24 17:24:51 -07:00
Daniel Nishi
ca32f1d354 Merge "Add EXTRA_FROM_STORAGE to photos gallery intent." into oc-dev am: bad8171d05
am: f3c3cd97ba

Change-Id: I41a99ae57dbd5abd1309f643831aa9d20e62836a
2017-04-21 17:25:35 +00:00
Daniel Nishi
9e107c5682 Add EXTRA_FROM_STORAGE to photos gallery intent.
Change-Id: I050149f558df0de83e7139354ac54176d7ced162
Fixes: 36991234
Test: Settings robotest
2017-04-20 14:46:28 -07:00
Daniel Nishi
9c9c2b5871 Merge "Change how we calculate system size." into oc-dev am: 0b75d39312
am: aebda427d8

Change-Id: I7a0efbf7745fe52d9dbefe94ead07be603b6f96e
2017-04-20 00:58:05 +00:00
Daniel Nishi
0cd1f73b21 Change how we calculate system size.
As per storage discussions, the best way to calculate storage for the
System is to just take all known data and subtract it from the used
bytes. There is more to the system than just the /system partition and,
even if we ignore the partitions and use the underlying block device
method of calculating it, we run into the problem of it not adding up to
the actual device size.

Change-Id: I6e1f775ea3f3b8b2cc78d734623934651e2fb7b4
Fixes: 37166310
Test: Robotests
2017-04-19 11:42:34 -07:00
Jeff Sharkey
5d9ccedc59 Merge "Follow storage API polishing." into oc-dev am: e398a84199
am: 4ecbc32b48

Change-Id: Ie47474e46fa6ebfffdddad04ab8c99b332c4f8cc
2017-04-17 23:58:17 +00:00
Jeff Sharkey
b80f1ddaf0 Follow storage API polishing.
Test: cts-tradefed run commandAndExit cts-dev -m CtsAppSecurityHostTestCases -t android.appsecurity.cts.StorageHostTest
Bug: 37325923, 35812899, 35806020
Change-Id: I4965b7391018354157f0683a643a14c5e9cd338d
2017-04-17 14:29:15 -06:00
Daniel Nishi
95261b9239 Fix storage settings crash.
It may crash if opened during the uninstall of an app. By catching
the exception which may occur, we can just skip the uninstalled app
and avoid crashing.

Change-Id: I1b96b0697f4041be356260d6c675593affc1cb69
Merged-In: If556db7b5a299ba53a29baefbbe9709ba6d12190
Fixes: 36793223
Fixes: 36793372
Test: Settings unit test
2017-04-13 13:21:26 -07:00
Daniel Nishi
c365a8735c Merge "Add a movies & tv apps category to storage settings." into oc-dev 2017-04-13 18:39:58 +00:00
Daniel Nishi
25b62b1126 Merge "Don't crash in SecondaryUserController." into oc-dev am: aa3685fe14
am: 129eb1773a

Change-Id: Iae6c55f2e6f26dc6b147d70c070109398c528636
2017-04-12 19:23:12 +00:00
Daniel Nishi
06470b68e0 Don't crash in SecondaryUserController.
If icons were fetched before displayPreference() is called, it can
cause a NPE. This adds a null check to ensure that it never
attempts to set an icon without both the icon and preference being
non-null.

Change-Id: Ib4269428e64545c9e255f7e3292fb6c046c1f307
Fixes: 37248158
Test: Settings Robotest
2017-04-12 09:33:32 -07:00
Daniel Nishi
89bec9c941 Fix storage settings crash.
It may crash if opened during the uninstall of an app. By catching
the exception which may occur, we can just skip the uninstalled app
and avoid crashing.

Change-Id: If556db7b5a299ba53a29baefbbe9709ba6d12190
Fixes: 36793223
Fixes: 36793372
Test: Settings unit test
2017-04-10 16:06:16 -07:00
Daniel Nishi
84aba27da4 Merge "Add user icon to the other user preferences." into oc-dev am: b1c336de5f
am: f4af2774ee

Change-Id: I1ff26ce55a3b1ade531745e091e5c6e2de243593
2017-04-10 17:37:54 +00:00
Daniel Nishi
fe33c58a18 Add user icon to the other user preferences.
This icon is loaded in the background to avoid doing IO on
the main thread. Once we know there are more users and also
have the icon loaded, we add the category to the view.

Fixes: 36252572
Test: Robotest

Change-Id: Ib50287bb7ed323f22fbe407b56be1bf2fe98f121
2017-04-07 14:57:07 -07:00
Daniel Nishi
f588f7678d Add a movies & tv apps category to storage settings.
Change-Id: I055e93d2a151195b90a5fd64f4fddebbbcffef59
Merged-In: Idfabe83739272b19cbef4b13a82339170f8f97b3
Fixes: 36223441
Test: Settings Robotest
2017-04-06 13:36:12 -07:00
Daniel Nishi
c2157ab443 Add a movies & tv apps category to storage settings.
Change-Id: Idfabe83739272b19cbef4b13a82339170f8f97b3
Fixes: 36223441
Test: Settings Robotest
2017-03-28 17:18:15 -07:00
Daniel Nishi
16e9247d21 Merge "Badge the icons for profile storage screen." 2017-03-27 22:20:09 +00:00
Daniel Nishi
aaebe26678 Merge "Add icons to the main static storage setting prefs." 2017-03-23 22:16:19 +00:00
Daniel Nishi
3414a6904b Badge the icons for profile storage screen.
Fixes: 36224168
Test: Settings Robotest
Change-Id: I27f0540aaa639b1248347ad41c8f1b711fe65fe7
2017-03-23 13:36:20 -07:00
Daniel Nishi
49118e7e01 Add icons to the main static storage setting prefs.
The dynamic user icons require more than just XML changes to
successfully fetch the badged user icons and are coming in a future
patch.

Bug: 35801039
Test: Manual -- this is purely XML and comment changes.
Change-Id: Id493c0335037a5c6e4f8b4734700611bfc0da7f1
2017-03-23 10:34:06 -07:00
Daniel Nishi
fda5d5a6a8 Update the system info dialog.
The string is updated as well as where the dialog shows up.

Change-Id: If1a3b17dca04fe81f52dbdc2353db34ce7adc49a
Fixes: 34857117
Test: Robotest
2017-03-22 16:12:55 -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
Daniel Nishi
47b07cc9c1 Merge changes from topic 'storage-o-strings'
* changes:
  Use total size and not free in Storage summary.
  Add new strings.
2017-03-17 22:03:48 +00:00
Daniel Nishi
f1050cb7c7 Use total size and not free in Storage summary.
Fixes: 36223330
Test: Settings Robotest
Change-Id: I4406dc673961db0f91ae37da3abd0e1541517c7d
2017-03-15 16:51:21 -07:00
Daniel Nishi
02b269be4b Merge "Category breakdown size should match total size." 2017-03-15 20:30:10 +00:00
Daniel Nishi
8325e80fdb Merge "Count legacy games as games in Storage view." 2017-03-14 00:11:59 +00:00
Daniel Nishi
fd82752694 Count legacy games as games in Storage view.
The old Games flag was being ignored for categorization.
This caused the very few games which used the flag to be
miscategorized as "Other apps."

Change-Id: Ib8650d1c43579bc1698576c09c884e5a7bc4626d
Fixes: 36109122
Test: Settings robotest
2017-03-13 13:20:30 -07:00
Daniel Nishi
092e3c0b3c Don't show owner as a secondary user.
Change-Id: I0a67eb176528a0f95595107b12c6ecc679a1041f
Fixes: 36138657
Test: Robotest
2017-03-13 12:27:22 -07:00
Daniel Nishi
325d38043f Category breakdown size should match total size.
The system apps' base size was not being properly attributed
to the system. This was causing the storage to go totally
unattributed (and causing roughly a 1GB gap in sizes.) On my
test device, the sizes now sum properly.

Change-Id: Ibc13015e40f854090a7a3ec09eef4c5c52918e0f
Fixes: 35144717
Test: Settings robo
2017-03-10 15:15:42 -08:00
Daniel Nishi
abd92e0519 Update the Manage Storage preference.
Now, it is a master switch preference which can toggle the
automatic management on/off. This also removes the old
UI in the storage summary at the top.

Bug: 33199077
Test: SettingsRoboTests

Change-Id: I709fd2ca0687f760a5d97ad6bebe477b427b0464
2017-03-08 10:18:43 -08:00
Daniel Nishi
41f36cdae8 Merge "Use the screen context when adding preferences." 2017-03-07 22:55:06 +00:00