Commit Graph

486 Commits

Author SHA1 Message Date
Daniel Nishi
ec89a3f57f Add first pass at a new Storage screen.
This patch begins setting up the structure for the screen.
The functionality for populating the data in the preferences
is coming in a later patch.

Bug: 33199077
Test: Settings Robo Tests
Change-Id: I9ebad9d3896501e31ac715704ca986eceb36877d
2017-01-05 11:54:56 -08:00
TreeHugger Robot
2f97111d8a Merge "Align more prefs for icon space." 2016-12-22 00:29:06 +00:00
Fan Zhang
8f057ca3d4 Use MetricsEvent to log page views for new IA pages.
Bug: 33812754
Test: RunSettingsRoboTests
Change-Id: Ib49daa1078df44f50ecfa351c061d36849708fd7
2016-12-21 12:12:32 -08:00
Fan Zhang
ac81f26e30 Align more prefs for icon space.
Bug: 33775510
Fixes: 33798492
Test: Visual
Test: RunSettingsRoboTests

Change-Id: I9b296e4148be8c1ae537b6418b4f384bbc63a8db
2016-12-21 11:20:24 -08:00
Fan Zhang
8af4c10476 Revert "Align more prefs for icon space."
Bug: 33798492
This reverts commit ded9fc9b07.

Change-Id: I9831858ffda263496617dff29249e243c007fa12
2016-12-21 17:03:00 +00:00
Fan Zhang
ded9fc9b07 Align more prefs for icon space.
- Extend preference_category to support summary text
- Removed work_profile_category, used by account list
- align prefs in storage settings
- Use Preference instead of PrefScreen in xmls
- Use proper footer preference in NightDisplaySettings, BatterySaver,
  DataSaver, AutomaticStorageManage
- Remove WallOfTextPreference

Bug: 33775510
Test: visual
Change-Id: I28156b857ff5acac8746c42384dc03d5997ebd9d
2016-12-20 13:24:31 -08:00
Fan Zhang
ec407ff78c Left align preferences and graphs to leave space for icon.
Bug: 33559277
Test: Visual inspection
Change-Id: Iacf9556826174a03b1cbf8a6f179b63d8686c5f5
2016-12-19 13:41:37 -08:00
Fan Zhang
9b6f181340 Remove no-op handlePerferenceTreeClick from PrefControllers
Bug: 33429853
Test: RunSettingsRoboTests
Change-Id: I5633953e3d7b07f9006e541b96a24a2a769e2686
2016-12-07 15:34:31 -08:00
Fan Zhang
2d0b344736 Add InstrumentFragment for non-PreferenceFragment types.
This allows app fragment use a less heavyweight fragment as super class
if they don't need PreferenceFragment. Using this class as base is
generally easier to set up robolectric tests too.

Bug: 33354536
Test: RunSettingsRoboTests
Change-Id: I91c4d242ea0333c76c8767c03c3f18dee6b6e104
2016-12-05 17:13:33 -08:00
Fan Zhang
2385aa819b Use new API Build.getSerial() to get serial number.
Bug: 32935486
Test: RunSettingsRoboTests
Change-Id: I28b8d27d034b4a6c4ae5f29e8311e84e5c423967
2016-11-16 14:50:19 -08:00
TreeHugger Robot
6e03a325d6 Merge "Always show at least 1% when some space used." 2016-11-16 03:38:01 +00:00
Sudheer Shanka
0175533a4b Merge "Update MountService to StorageManagerService." 2016-11-15 23:34:15 +00:00
Jeff Sharkey
52aa9fb170 Always show at least 1% when some space used.
Don't let the progress value round down to 0, since that would
be misleading.

Test: builds
Bug: 24017703
Change-Id: I6a0268361645da16af67e12bf7f6823d027dd72c
2016-11-15 15:17:31 -07:00
Jeff Sharkey
b7fc7ade40 Refresh Storage UI atomically.
Test: builds
Bug: 29275971
Change-Id: I0f5131631ae12bc57e66545513ad60b7cbcd179b
2016-11-15 14:06:44 -07:00
Sudheer Shanka
ee2d592c72 Update MountService to StorageManagerService.
Bug: 30977067
Test: N/A
Change-Id: I8c5eda7ed068bc7c184d559c0a27c52a74094f1a
2016-11-09 15:47:53 -08:00
Tamas Berghammer
265d3c2a0c Update package names to work with the proto3 compiler
Bug: b/28974522
Change-Id: I5f3adf4946ee4ba1e09e4f40afe83c151405972a
2016-11-08 14:06:17 +00:00
Doris Ling
eb51bde8c9 Add Usb preference to connected devices dashboard.
Add Usb preference and the corresponding controller.

Change-Id: I79e3f20b5c024ece0515f9a6cba1185ba8b8c7be
Fixes: 31800290
Test: make RunSettingsRoboTests
2016-11-04 15:39:18 -07:00
Paul Stewart
31b0da66a6 Merge "Don't display an invalid Wi-Fi MAC address" am: 917b7b863c am: 27c5edb968 am: dab924f04d
am: 09797c330c

Change-Id: I12cc021a1abead960ec28354e9d6e94ea8090c88
2016-10-28 21:20:19 +00:00
Paul Stewart
27c5edb968 Merge "Don't display an invalid Wi-Fi MAC address"
am: 917b7b863c

Change-Id: I61b50ff7a50551e12a218d73bcf95f0c24e64430
2016-10-28 21:04:40 +00:00
Paul Stewart
1aeb383d73 Don't display an invalid Wi-Fi MAC address
Only display the WifiInfo MAC address if it is a valid address.
Otherwise, display "Unavailable".  The underlying WifiInfo class
now has a default value, and a method that can be used to test
whether or not the contained address is valid.  This change uses
this test and avoids having the confusing default address displayed.

Bug: 32478606
Test: Manual: Turn off WiFi and reboot -- make sure "Unavailable"
      is displayed as the Wi-Fi MAC Address as opposed to "02:00:00:00:00:00"

Change-Id: I912804eb65735375e0ca3c4618a6399543f33b57
2016-10-27 13:34:10 -07:00
Fan Zhang
9895344be6 Fix build
Bug: 24107771
Test: compiles
Change-Id: I287cbe05a86de24d0817bd84e7db5b1893ef7d9b
2016-10-26 10:02:48 -07:00
TreeHugger Robot
85edd578e2 Merge "Refactor Build number preference control into a controller." 2016-10-26 16:01:21 +00:00
Fan Zhang
242da31179 Fix logging spam in DashboardFragment.
When updating preferences managed through PreferenceController, the
fragment should skip prefs that are not available.

Bug: 32255863
Test: RunSettingsRoboTests
Change-Id: I2f9b6ddf8c78d40068dc18f07e60672dcba4474a
2016-10-25 17:14:47 -07:00
Fan Zhang
3aa68c8b80 Refactor Build number preference control into a controller.
- Use PreferenceController structure to make things more modular and
  testable
- Add tests
- Confirm password before enabling dev settings.

Bug: 24107771
Test: RunSettingsRoboTests
Change-Id: I791d9452fd461f570e70e7428f00a7258663de4b
2016-10-25 14:45:50 -07:00
Fan Zhang
db1112a221 Add progressive disclsoure
- Add a ProgressiveDisclosureMixin that contains all logic for collapse
  preference list when it's too long
- Refactored PreferenceController's updateState to take a preference
  instead of PreferenceScreen, because with progressive disclosure the
  preference can either be in screen or the mixin. DashboardFragment is
  responsible finding the preference before passing it to controller.

Bug: 32255863
Test: RunSettingsRoboTests

Change-Id: I6713abd61c954ce12732902e5b3ca4d4c0b1563e
2016-10-18 16:57:11 -07:00
Jerry Zhang
5d36a177d9 Refactor setCurrentFunction and setUsbDataUnlocked into one method
This allows us to get rid of an extraneous config switch and
simplify some code.

Test: Manually change usb configuration
Change-Id: Id78da530ff485ecd7a915056832eec1dd8c91954
2016-10-13 17:32:22 -07:00
Fan Zhang
66b573ad5a Add display settings dashboard to new IA.
- Added a activity-alias pointing to displaySettings as top level
  setting item.
- Refactored all preference logic in DisplaySettings into
  PreferenceControllers. During fragment onAttach it installs all
  controllers, and during onResume it updates preference state. Each
  controller listens to its own preference change event.

Bug: 31800242
Test: RunSettingsRoboTests
Change-Id: Ibc9bf200c5acce7c4ae9292340822afee27a3a28
2016-10-10 18:26:29 -07:00
Fan Zhang
fabbfb435e Refactor SummaryLoader to set summary on subsetting pages.
- Make a SummaryConsumer interface. Things that needs latest summary
  should implement this interface (DashboardAdapter for homepage,
  DashboardFragment for subsettings). This also decouples SummaryLoader
  from relying on SettingsDrawerActivity.
- Make DashboardFeatureProvider more generic to load DashboardCategory
  by key.

Bug: 31781480
Test: RunSettingsRoboTests
Change-Id: I9c65456fb433a74c352498251e0ccf65da0be1f0
2016-10-07 14:52:06 -07:00
Fan Zhang
36924659f5 Refactor DashboardFragment.
Merged refreshAllPreferences into DashboardFragment. This hopefully
makes it more modular to manage preference display logic in each
dashboardFragment, and makes it more efficient to monitor category
changes.

Now subclasses needs to implement 2 methods:
- displayResourceTiles(): for 'static' preferences from xml
- getDashboardTiles(): returns a list of dashboard tiles and superclass
  will wire it up to preference screen.

If getDashboardTiles() return null (aka no dashboardCategory available),
the fragment will not attempt to monitor category change. The edge case
is that if a package starts to provide a tile for this category, we will
not be notified. I have not seen this case coming up. If we indeed need
to handle this case, the category listener needs to have a way to
monitor specific category rather than globally.

Bug: 31781480
Test: make RunSettingsRoboTests -j40
Change-Id: Ia9f9541b95816214df0d0bb27e3e41078c36c5ca
2016-10-07 11:55:43 -07:00
Jeff Sharkey
049d2b88f6 Switch to static warning threshold when adopting. am: bd7adb9313
am: da414d0afe

Change-Id: I111c8b3ea63deb6e9797a520f1431d73adc16c99
2016-10-06 21:54:16 +00:00
Philip P. Moltmann
58154e8c27 USB restriction is similar to media restriction am: 13ee50be48
am: a78fced068

Change-Id: Icb1dbfba6cf3e1a5097cc32b33330b8025e6c46d
2016-10-06 20:07:13 +00:00
TreeHugger Robot
0cff709a0d Merge "Add search provider for storage dashboard." 2016-10-05 23:59:24 +00:00
TreeHugger Robot
7b1060022c Merge "Switch to static warning threshold when adopting." 2016-10-05 19:24:33 +00:00
Jeff Sharkey
bd7adb9313 Switch to static warning threshold when adopting.
See rationale and details in inline comment block.

Test: adopt slow and fast SD cards
Bug: 29990216
Change-Id: I927d683db5e43216ee0837290ee4ca23a55a5dbb
2016-10-05 17:58:54 +00:00
Jeff Sharkey
9157360179 Switch to static warning threshold when adopting.
See rationale and details in inline comment block.

Test: adopt slow and fast SD cards
Bug: 29990216
Change-Id: I927d683db5e43216ee0837290ee4ca23a55a5dbb
2016-10-05 11:47:36 -06:00
Fan Zhang
31a285387d Add search provider for storage dashboard.
Bug: 31800690
Test: manual
Change-Id: Icb906bf3b3698c1379e10cf6e346d489675ad940
2016-10-04 17:52:05 -07:00
Fan Zhang
bb6d2608e9 Add storage dashborad page.
Refactor shared dashboard page display logic between storage and
system page.

Bug: 31800690
Test: RunSettingsRoboTests

Change-Id: I7eb86f590b79ab871bdb383fb2f5326790beb193
2016-10-04 14:06:57 -07:00
Fan Zhang
9c1fcf9916 Move system update preference from device_info to system.
In order to move the preference and its logic cleanly, created a
controller object that encapsulates the preference/click handler.

Bug: 31801428
Test: RunSettingsRoboTests
Change-Id: I332384e20fbf0e21d2f3becb531d97b20f7f7ef1
2016-10-03 13:53:45 -07:00
Philip P. Moltmann
13ee50be48 USB restriction is similar to media restriction
Bug: 31472955
Change-Id: I3682ccd102565982c434d70fc0d907b1aa779689
(cherry picked from commit 58e2b50292)
2016-09-30 21:18:14 +00:00
Garfield Tan
dbd039a6de resolve merge conflicts of af840b5 to master
Change-Id: I8a31d08dae71d5cb71ae01c06ead4ebf32f89121
2016-09-29 18:08:25 -07:00
Garfield Tan
af840b584d Launch other info in storage in correct user id. am: 493bf348b9
am: 1ab4f4b816

Change-Id: I93d5222647efd84eb6c1d159c053455fbb382c13
2016-09-29 23:29:21 +00:00
Garfield Tan
493bf348b9 Launch other info in storage in correct user id.
Bug: 31592290
Change-Id: I816668c7ff9d1b443d4b49e17bdcfa39ef335aee
2016-09-29 14:45:50 -07:00
Daniel Nishi
88110e21f6 Merge "Move private volume storage calculations into a shared lib." 2016-09-27 16:45:14 +00:00
Daniel Nishi
fee35492b8 Use a config flag instead of a RO flag for showing Manage Storage. am: c0b33f70ed
am: bfe5afc270

Change-Id: I159cb08e7ef25802562603d4f8e297ffdf8d0f30
2016-09-23 22:34:22 +00:00
Philip P. Moltmann
4b2406f3f3 Merge "USB restriction is similar to media restriction" 2016-09-21 18:14:22 +00:00
TreeHugger Robot
295f5a03bc Merge "Add visibility metrics to dialogs." 2016-09-20 15:55:41 +00:00
Fan Zhang
1e516287bd Add visibility metrics to dialogs.
Bug: 30681529
Test: adb logcat -b events | egrep "(sysui_|notification_)"
Change-Id: I199d2e1b2cb8588a562b46bb8128d8ece24952f0
2016-09-19 17:34:12 -07:00
Daniel Nishi
c0b33f70ed Use a config flag instead of a RO flag for showing Manage Storage.
Bug: 30455784
Test: make SettingsTests; run the instrumentation.
Change-Id: I860192c1c20fcaec2a5cbcdc085ff01dafa7351a
(cherry picked from commit 7f075a3c41)
2016-09-19 20:39:33 +00:00
Daniel Nishi
355390da93 Move private volume storage calculations into a shared lib.
Bug: 30895163
Test: m RunStorageManagerRoboTests
Change-Id: I3e464c8b721373ebc1527eb5411622c69bf587d1
2016-09-19 12:16:21 -07:00
Daniel Nishi
7f075a3c41 Use a config flag instead of a RO flag for showing Manage Storage.
Bug: 30455784
Test: make SettingsTests; run the instrumentation.
Change-Id: I860192c1c20fcaec2a5cbcdc085ff01dafa7351a
2016-09-16 15:56:47 -07:00