Commit Graph

3566 Commits

Author SHA1 Message Date
TreeHugger Robot
6d8b89a739 Merge "Add preference controller for app header view." 2017-12-18 20:46:53 +00:00
Tony Mantler
35d37784d0 Merge "Move PowerWhitelistBackend to SettingsLib" 2017-12-18 19:45:53 +00:00
Alexandru-Andrei Rotaru
aeb3e4473b Check password blacklist when setting credential
If the password is valid by all other checks, see if it is present on
the blacklist and disallow it if it is.

Test: set a password blacklist, try and set a blacklisted password and
see an explanation, set a non-blacklisted password successfully.
Test: make ROBOTEST_FILTER=ChooseLockPasswordTest RunSettingsRoboTests

Bug: 63578054
Fix: 65659151
Change-Id: Id155b824ad4b5839c23b6f5fd3fdfdcfc78c3df1
2017-12-18 13:34:21 +00:00
rongrong.x.gao
b573e23b48 Launch new Home app when selecting Home app in Settings
Launches the newly selected Home app when it has been selected in
Default Home app settings. This CL makes the change take effect
immediately, instead of when the Home button is pressed.

Bug: 70697830
Test: make RunSettingsRoboTests
Test: Manual - Change default home app in Settings
Change-Id: If7e2956bc6f8ddba0a7e8da48a0d38e3936c57e9
2017-12-16 12:44:01 +09:00
Tony Mantler
bf25160090 Move PowerWhitelistBackend to SettingsLib
Bug: 70716754
Test: RunSettingsRoboTests
Change-Id: I897ce3469bb2d72a0cbe96b16b8de1a565ba4e64
2017-12-15 12:58:34 -08:00
jackqdyulei
5ef1f502f0 Turn on the new connected device page by default
Bug: 69926683
Test: RunSettingsRoboTests
Change-Id: Ice589b825226e92eace5f5fa6b58499a13e36ef8
2017-12-15 11:08:24 -08:00
Pavel Grafov
444989ad35 Merge "Respect DISALLOW_UNIFIED_PASSWORD in Settings." 2017-12-15 13:47:48 +00:00
Ben Lin
e4ca92af6b Introduce config_show_wallpaper_attribution.
This introduces a boolean flag in which when set to true, Wallpaper
Attribution will be shown in the Legal page. When set to false, it
will be hidden. Wallpaper has always been removed from search results,
so that has not changed.

Bug: 62378616
Test: make RunSettingsRoboTests ROBOTEST_FILTER=LegalSettings passes.
Change-Id: Ia6f3e7d1ef471eecf79f1b46616fa4ba27d35748
2017-12-14 14:38:30 -08:00
Doris Ling
e712aed3d7 Add preference controller for app header view.
- move code related to initializing/refreshing the app header from
AppInfoDashboardFragment into a new controller.
- this is the last preference logic in AppInfoDashboardFragment. With
this change, the conversion into dashboad fragment will be considered
as complete.
- remaining work for the bug will be enable the feature flag and remove
the obsolete InstalledAppDetails.

Bug: 69384089
Test: make RunSettingsRoboTests
Change-Id: I14056bf291278b2b36f9502177c84edd6a899d0f
2017-12-14 14:23:41 -08:00
TreeHugger Robot
91ffc73152 Merge "Hide Location Mode from search results if it's not available." 2017-12-14 18:08:44 +00:00
TreeHugger Robot
c87e5a3609 Merge "Add developer option control for GNSS duty cycling." 2017-12-14 15:49:17 +00:00
TreeHugger Robot
7498b79569 Merge "Add preference controller for app action buttons." 2017-12-14 02:07:39 +00:00
gomo
e17c9406f0 Add developer option control for GNSS duty cycling.
Duty Cycling control is one of the Android-P features. In Android-P the
feature will be controlled via a Developer Options button with no
public API. This CL adds the button and connect it to be read via the
GnssLocationProivder to control the feature. Also Roboelectric test
added.

Bug: 64009176
Test: Tested on Android-P build and works as expected. Also Robolectric test added.
Change-Id: Icc0d259719cf9034caf2c78c790b914ab4292597
2017-12-13 17:29:23 -08:00
Ben Lin
d11d08658f Hide Location Mode from search results if it's not available.
Test: make RunSettingsRoboTests ROBOTEST_FILTER=LocationModeTest all
passes.
Bug: 70283459
Change-Id: Id99d4a8f694b6f223ee8ead9701569840e333a9e
2017-12-13 16:03:27 -08:00
TreeHugger Robot
17006451fb Merge "Add Slices Data object and DB Contract" 2017-12-13 23:01:36 +00:00
TreeHugger Robot
d6d292554c Merge "Simplify DND Behavior secondary text" 2017-12-13 22:59:43 +00:00
Doris Ling
70aaa94bb2 Add preference controller for app action buttons.
- move code related to initializing/refreshing the action buttons from
AppInfoDashboardFragment into a new controller.

Bug: 69384089
Test: make RunSettingsRoboTests
Change-Id: I8eb5f42a1b6d3c35f5a9e1356a9e5e31f643d5d3
2017-12-13 14:44:38 -08:00
TreeHugger Robot
aceacf5d43 Merge "Move AppInfoDashboardFragment into appinfo package." 2017-12-13 21:22:36 +00:00
Beverly
69294a5d5c Simplify DND Behavior secondary text
Bug: 63077372
Change-Id: I0ac305ff429de27a65667441703b938305d8a03f
Fixes: 70627215
Test: make ROBOTEST_FILTER=ZenModeSettingsTest RunSettingsRoboTests -j40
2017-12-13 15:23:03 -05:00
James Lemieux
d9d4fda9fe Merge "Adopt robolectric 3.5.1" 2017-12-13 19:31:37 +00:00
Matthew Fritze
7fddfebf6c Add Slices Data object and DB Contract
Add in a Data object used to represent one row
in a new SQLite database used for building Slices.

The database has the following schema:
- Key
- Title
- Subtitle
- Screentitle
- Icon
- Fragment
- Controller

The key is the preference key.
Title, subtitle and Icon are for UI info.
Screentitle and fragment are for the intent.
Controller is used to get dynamic ui info (like summary),
and to take actions on the slice (like a toggle).

The actual indexing and a Slice will be handled in a subsquent CL,
but a prototype can be found here: ag/3324435

Test: robotests
Bug: 67996923
Change-Id: Id91deb58a3ab89ce1dab5a3f34cdb9ade6263aa8
2017-12-13 10:59:47 -08:00
Jordan Liu
567493a35c Merge "Add signal strength customization" 2017-12-13 18:20:08 +00:00
TreeHugger Robot
8412f70f6c Merge "Fix crashes related to ExternalSourcesDetails." 2017-12-13 07:02:07 +00:00
TreeHugger Robot
10a1602421 Merge "Add power save action to BatteryBroadcastReceiver" 2017-12-13 02:54:59 +00:00
James Lemieux
9453999e6f Adopt robolectric 3.5.1
Bug: 70581603
Test: make RunSettingsRoboTests
Change-Id: I21dba3381ae62ee12de1ce29bea473b3d0f069c0
2017-12-12 17:31:47 -08:00
Lei Yu
15b8b27646 Merge changes Ie1f934b4,Ic3b045a6
* changes:
  Create BluetoothSwitchPreference
  Add ConnectedUsbDeviceUpdater
2017-12-13 01:06:14 +00:00
Doris Ling
a0006d93bd Move AppInfoDashboardFragment into appinfo package.
- update all references to AppInfoDashboardFragment
- removed PackageUtil inner class and change the corresponding function
to be a simple method.

Bug: 69384089
Test: make RunSettingsRoboTests
Change-Id: Ief067e25a303ef16db20b2ca1d8840cb06eff5f9
2017-12-12 16:58:17 -08:00
TreeHugger Robot
fb72d22784 Merge "Add controllers for iinstant app related preferences." 2017-12-13 00:56:56 +00:00
jackqdyulei
5393991573 Add power save action to BatteryBroadcastReceiver
This cl makes BatteryBroadcastReceiver also listen to update about
battery saver.

Bug: 70530651
Test: RunSettingsRoboTests
Change-Id: I76b2f1b1047aa195ee9d8ff2a8a330cea31039d4
2017-12-12 16:56:22 -08:00
TreeHugger Robot
84e8c795b1 Merge "Add PrefController in XML support" 2017-12-13 00:02:35 +00:00
Doris Ling
e29587e334 Fix crashes related to ExternalSourcesDetails.
- ExternalSourcesSettingsTest crashes due to the package moved of
ExternalSourcesDetails. Corresponding xml has been updated in previous
CLs. So, reverting the suppress tag for the test class.
- ExternalSourcesDetails can be launched directly with
MANAGE_UNKNOWN_APP_SOURCES intent, and client can pass in invalid
package while launching ExternalSourcesDetails. Need to check whether
the app info is invalid before we try to launch the fragment.
- also fix test failure for not founding the app list as list object
type and id had been changed.

Change-Id: Id7787ca889f770e10d7a8e9fbf8dc79c9d6e884d
Fixes: 70383636
Test: make RunSettingsRoboTests, make SettingsUnitTests
2017-12-12 22:21:20 +00:00
Matthew Fritze
7d2b4f5fc7 Add PrefController in XML support
Add the ability to define a Preference Controller
in xml using the 'controller' tag.

This is useful for two reasons:
- It allows the controllers to be instantiated via
reflection for Slices and Dashboard fragment
- Removes the requirement that controllers be defined manually
in Fragments

In order to be instantiable, they must have a unified construction
following either:

  ClassName(Context)
  ClassName(Context, String)

Also added a robotest that verifies that all controllers defined
in XML follow the constructor schema, and extend
BasePreferenceController.

Test: robotests
Bug: 67996923
Change-Id: I304b35dc666daebecf0c9e286696f3f2a510704a
2017-12-12 14:21:12 -08:00
Doris Ling
6e447d69bc Add controllers for iinstant app related preferences.
For AppInfoDashboardFragment:
- add app installer preference into the preference screen
instead of creating it dynamically.
- add controller for the App Installer, Instant App buttons, and instant
app domains preferences.

Bug: 69384089
Test: make RunSettingsRoboTests
Change-Id: I8d362cacb78077c173130018c33c4d00abfe9843
2017-12-12 12:32:19 -08:00
Jordan Liu
3040fde446 Add signal strength customization
Also add default behavior in case carrier config bundle is null.

Bug: 69730732
Test: manual and new unit test
Change-Id: Ia38462a7e1b6f2e27ff45d93beef09465a68ae5c
2017-12-12 11:51:32 -08:00
Pavel Grafov
924e0e2154 Respect DISALLOW_UNIFIED_PASSWORD in Settings.
Bug: 63909482
Test: make ROBOTEST_FILTER=SecuritySettingsTest RunSettingsRoboTests
Test: make cts-verifier
Change-Id: Ia89501d5d5339c1340bee36a9bfb8ef72c4ee9b1
2017-12-12 18:20:20 +00:00
Lei Yu
30ba48c540 Merge "Add device name preference in pairing page" 2017-12-12 18:05:34 +00:00
jackqdyulei
be555e2dad Add device name preference in pairing page
Also refactor the preference controller
1. Extend from BasePreferenceController.
2. pass in the preference key. Then it could be reused in different
places with different key.

Bug: 69333961
Test: Screenshot | RunSettingsRoboTests
Change-Id: I773ca022baa326481045c1659565c9a21111200a
2017-12-11 15:52:57 -08:00
TreeHugger Robot
65b18ae67e Merge "Delete about phone v1 code" 2017-12-11 22:51:42 +00:00
jackqdyulei
d055937664 Create BluetoothSwitchPreference
In the new design, bluetooth preference is not MasterSwitchPreference
any more. This cl creates BluetoothSwitchPreference while reuse the
BluetoothEnabler.

Future cl will remove the BluetoothMasterSwitchPreference when P
feature is finalized.

Bug: 69333961
Test: RunSettingsRoboTests
Change-Id: Ie1f934b4e93a6758a1b0cf83bb5098585a635c2a
2017-12-11 13:05:01 -08:00
TreeHugger Robot
834ce49dd9 Merge "Fix assertion in VisibilityPreferenceControllerTest." 2017-12-11 19:19:33 +00:00
jeffreyhuang
7ef47a9c5d Delete about phone v1 code
Bug: 36458278
Test: make RunSettingsRoboTests -j40
Change-Id: Ib8f420a86caa1da0165aa5c161eb584a009ed2b9
2017-12-11 10:57:37 -08:00
TreeHugger Robot
d3d1cf75cb Merge "Fix VisibilityPreferenceControllerTest." 2017-12-11 18:45:33 +00:00
TreeHugger Robot
bbdeafe58b Merge "Remove Slice getter from BasePreferenceController" 2017-12-11 17:40:05 +00:00
Tobias Thierer
9d01fe6823 Fix assertion in VisibilityPreferenceControllerTest.
The test was asserting that VISIBILIY_NO_OVERRIDE (an int)
is not contained in a List<String> (*), which is (trivially)
true but doesn't test what the test intends to test.

(*) or a List<CharSequence>, which is similarly wrong /
  meaningless, prior to the base CL http://ag/3345932

VisibilityPreferenceController uses Integer.toString() to
construct corresponding String values, so the test should
be checking for that String value. For consistency with
  testUpdateState_noGlobalRestriction()
this CL uses the equivalent (and slightly shorter)
String.valueOf(int) instead of Integer.toString().

Test: EXPERIMENTAL_USE_OPENJDK9=1.8 make RunSettingsRoboTests \
   ROBOTEST_FILTER=VisibilityPreferenceControllerTest

Change-Id: I48644729d3e0f29d7ffcc981aeef650f2b1426ef
2017-12-11 17:36:40 +00:00
Tobias Thierer
8f68856823 Fix VisibilityPreferenceControllerTest.
The test was expecting an ArgumentCaptor for RestrictedDropDownPreference
(extends ListPreference).setEntryValues(CharSequence[]) to be passed an
array of Strings, when actually it should have expected an array of
CharSequences.

This CL fixes the test to use CharSequence. Since CharSequence.equals()
is not guaranteed to be in terms of value equality of the characters,
a private static helper method:

  List<String> toStringList(CharSequence[] charSequences) { ... }

is used.

Bug: 70504129
Test: EXPERIMENTAL_USE_OPENJDK9=1.8 make -j30 showcommands dist \
  RunSettingsRoboTests RunSettingsRoboTests-jacoco \
  RunSettingsLibRoboTests RunSettingsLibRoboTests-jacoco \
  RunSettingsGoogleRoboTests RunSettingsGoogleRoboTests-jacoco \
  RunSuwRoboTests RunSuwRoboTests-jacoco \
  RunTurboRoboTests \
  RunStorageManagerRoboTests \
  RunTvSettingsRoboTests RunTvSettingsRoboTests-jacoco

Change-Id: I347b03e6cb01715cd1c7f50b5f36567e5f375ad7
2017-12-11 17:03:35 +00:00
jackqdyulei
988199e202 Add ConnectedUsbDeviceUpdater
The usb updater listens to usb update and notify
ConnectedDeviceGroupController to add/remove
preference.

This cl:
1. Add ConntectedusbDeviceUpdater
2. Extract the UsbConnectionBroadcastReceiver since it would be
used both in controller and updater.
3. Add tests

Bug: 69333961
Test: RunSettingsRoboTests

Change-Id: Ic3b045a6faa4eba57d9b0c089ea1656141cc0220
2017-12-08 13:42:37 -08:00
jackqdyulei
8f73968308 Add feature flag to control battery app list.
If feature flag is on, then display the app list. Otherwise disable
it.

Bug: 70234293
Test: RunSettingsRoboTests
Change-Id: I1663f925abf95e0e4c1a46d98ca165303a76e979
2017-12-08 13:02:13 -08:00
jackqdyulei
1240549591 Move AppListGroup to PreferenceController
Move the app list in battery settings to PreferenceController. So that
we can:
1. Clean the code in PowerUsageSummary
2. Make it easy to add/move the app list to other place in furture.

This cl:
1. Move and make it invisible since in P we don't show app list in
battery main page.
2. Move related test to BatteryAppListPreferenceControllerTest

Bug: 70234293
Test: RunSettingsRoboTests
Change-Id: Ice7a42394916ff5e71305bfe22f5c35868d87fc7
2017-12-08 10:21:54 -08:00
Matthew Fritze
f527684183 Remove Slice getter from BasePreferenceController
After working through a prototype here: (ag/3324435)
it is clear that we don't need the controller to
provider the slice. We will build an index that
will contain sufficent UI information, and a reference
to the controller.

At Slice Bind time, we can get the curret value from the
controller, and the UI information from the Index.

Bug: 67996923
Test: robotests
Change-Id: Id43a51bcd73051bc719cd5829907583e0edf23b2
2017-12-08 10:09:57 -08:00
TreeHugger Robot
256f6fb607 Merge "Update feature flag dashboard UI to display all features" 2017-12-08 05:50:54 +00:00