This cl adds the basic structure for battery tip:
1. BaseBatteryTip: Model class to represent the tip and build
preference and dialog
2. SummaryTip: Display a general battery summary(i.e. your battery
is good..)
3. BatteryTipLoader: AsyncLoader to load the battery tips.
4. BatteryTipPreferenceController: preference controller for
preference group to display battery tips
This cl also:
1. Remove the anomaly code in PowerUsageSummary and we will add it
to app restriction in future.
2. Add preference_category_no_title.xml to avoid the extra 32dp
blank at the top.
Bug: 70570352
Test: RunSettingsRoboTests
Change-Id: If91a553888e2eb91d55fb1d0d7bbea69652f144c
This is a follow-up for http://ag/3123412
Test: make ROBOTEST_FILTER=LockAfterTimeoutPreferenceControllerTest RunSettingsRoboTests
Test: make ROBOTEST_FILTER=TimeoutPreferenceControllerTest RunSettingsRoboTests
Bug: 63908311
Change-Id: I27631743d52163f3b6d1589b427ba617e74725a9
The indexing is done by taking the indexable fragments from
search, grabbing their XML via SearchIndexableResources, and
then looking for controllers defined in preferences.
For each controller found, we take the combination of the
fragment providing the XML and the Preference info to create
an indexable row.
Buiding a Slice will be handled in a subsquent CL, but a
prototype can be found here: ag/3324435
Test: robotests
Bug: 67996923
Change-Id: I48668618079bcc3da55ab77b7323ee8e467073af
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
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
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
- 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
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
- move code related to initializing/refreshing the action buttons from
AppInfoDashboardFragment into a new controller.
Bug: 69384089
Test: make RunSettingsRoboTests
Change-Id: I8eb5f42a1b6d3c35f5a9e1356a9e5e31f643d5d3
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
- 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
This cl makes BatteryBroadcastReceiver also listen to update about
battery saver.
Bug: 70530651
Test: RunSettingsRoboTests
Change-Id: I76b2f1b1047aa195ee9d8ff2a8a330cea31039d4
- 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
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
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
Also add default behavior in case carrier config bundle is null.
Bug: 69730732
Test: manual and new unit test
Change-Id: Ia38462a7e1b6f2e27ff45d93beef09465a68ae5c
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
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