Having consistent import order will reduce chance of merge
conflict between internal and external master
Test: rebuild
Change-Id: I0b1a170967ddcce7f388603fd521f6ed1eeba30b
Now we can easily mark a preference nonIndexable in xml instead of
adding key into searchIndexProvider.
Bug: 112608186
Test: robotests
Change-Id: I0ff16d44bb7b6ad148d3d35f09ca0da0163f73f4
When the device is not yet provisioned and settings is launched:
- disable the entry point for changing device lock
- remove the search panel from settings home page
- remove the search menu
Bug: 110034419
Test: make RunSettingsRoboTests
Change-Id: Ieb7eb0e8699229ec0824ccc19d7b958ac44965a2
Fix all Roboletric test cases.
In this CL, some test cases are broken.
So, We ignored these test cases temporarily.
Test: make RunSettingsRoboTests -j56
Bug: 110259478
Change-Id: I1a3075438a614432a2de4f2d96d8abf9a83ce58c
- Make SettingsPreferenceFragment implement Indexable directly
- Add existing fragments that are SettingsPrefFragment but not Indexable
to grandfather list.
- Fix "font size" fragment so it shows up in search properly.
- Remove duplicates for "lock screen display", "Screen saver".
Bug: 70720645
Test: robotests
Change-Id: I44ce0cac0fdf5e882b315861bb4bebc45dbe01e6
Index is already handled by SettingsIntelligenec. No longer needed in
Settings.
Change-Id: Id43fb3100dc2759185744441cff8cb9cd2d2da20
Fixes: 69808376
Test: robotests
When checking language/build fingerprint to skip reindex, language check
was comparing Locale object and String object, so they would never be
equal, so we accidentally reindex every time.
- Switched Objects.equal to TextUtils.equal, this catches the error at
compiler level.
Bug: 80065409
Test: compile/robotest
Change-Id: I2b3c68bb1c2fd876338f42321605567d7e64d64b
Before we index, add a call to clear indexed data before
indexing again. It's an optional call.
Fixes: 80065409
Test: robotests
Change-Id: Iddb0ce02c50d84b51fbf6fc2be0bdc9aa1f5987a
onGetSliceDescendants would return empty results if
the call was made before the database was indexed.
This CL checks the index before building the list.
Change-Id: I2e0f88893138a048dbd529d465d68fa4b1a3dc12
Fixes: 78196823
Test: robotests
The index implementation is optional and left up to the OEM.
Test: Open settings, see content in index
Test: robo tests
Bug: 68378569
Bug: 76102600
Change-Id: Idb8bb1e0cabbbe92e7a852e2eadbdcd8c2ab7d56
This allows Settings to test against the latest framework changes.
Also replaced TestConfig with traditional robolectric.properties.
Bug: 73173204
Bug: 73892008
Test: make -j56 RunSettingsRoboTests
Change-Id: I3135b4fa5f095ba79b282a76f45dd9baa2584bc7
getPreferenceControllers() -> createPreferenceControllers() for the same
reason as in ag/3647936
Bug: 73668763
Test: robotests
Change-Id: I97670a91a2a38d1c844d1b9d37f4222c5e6f45a0
To getPreferenceControllers. "all" is redundant. Then internally, the
old getPreferenceControllers() is renamed to
createPreferenceControllers() to emphasize the controllers are created
from code (versus the ones created from xml).
Bug: 73668763
Test: robotest
Change-Id: Ifec46aefdc2a418031c8e152028b30bdcd396fc7
- If a <preference> tag also defines a controller, we will try to
instantiate it before displaying the UI. The same logic is shared by
BaseSearchIndexProvider so it also drives search suppression.
- If user also defines a list of controllers programatically, the
programatically created ones takes precedence.
Bug: 73668763
Test: WIP
Change-Id: I7aecec270bcd3af261e012ef1f6995d2a523cfa1
This class is currently used by both search and slice, in the future
will be used by DashboardFragment to build controller list. So the scope
of this class is beyond search now.
Test: rerun robotests
Change-Id: If43ebca065aac31ad24f95a94bfe5be784109605
- Moved fragments into wifi sub-package.
- Cleaned up inheritance for WifiCallingSettings
- Attach help and search action menu controller correctly.
Change-Id: I0bc8ab99df5d8c5ea64fb64de5ae70c2c9bd6f31
Fixes: 72958674
Test: robotest
This CL augments the existing data usage display with carrier provided
information about data usage and plans when available from the new
frameworks API.
Test: manual
Test: make RunSettingsRoboTests
Bug: 70950124
Change-Id: Idde1ff786e8c5dbc04e58ffbcc0fd18789682699
This moves SearchIndexableResources to be supplied by FeatureFactory
rather than its own singleton, which in effect allows OEMs to supply their
own, in the case where they have their own classes they want to be
indexed (or, remove certain classes that used to be indexed).
Bug: 72179744
Test: All tests pass.
Change-Id: Ia06b2026df7eca4c53b44a5a589c4aaa0b69d96c
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
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
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
The test case is broken due to NoSuchField error from robolectric. Since
the code its testing is being deprecated, test can be removed to keep
build green.
Test: robotests
Change-Id: I22f8ea58fceeb85940447f70b10add877344ba05
* changes:
move search test package to sdk 26
Update accessibilityserviceresult test to sdk 26
Update IntentSearchViewHolderTest to sdk 26
fix DatabaseIndexingManagerTest hanging in tests