Commit Graph

58 Commits

Author SHA1 Message Date
Adrian Roos
8ab0954a24 Follow up to "A better brightness"
Original change I122e1218dd0072c979a59bdafd3e0b6f4eec99ab was missing
search provider logic adjustments and length limits on the added strings.

Bug: 15313133
Change-Id: I8910dd60111c87f5494db7bac76a351e89c1a99b
2014-06-03 00:00:11 +02:00
Fabrice Di Meglio
23c6666a88 Add Indexing and Search for ChooseLockGenericFragment - DO NOT MERGE
Manual report of 0897f975c1

 - clean some imports
- add key and title to security_settings_picker.xml
- add ChooseLockGenericFragment in SearchIndexableResources

Change-Id: I3ab77677f3d926b0a3eb9be5d77ee23b568856aa
2014-05-30 17:59:00 -07:00
Fabrice Di Meglio
b2385ea462 Fix bug #15335840 "Safety information" search suggestion shown though
..."Safety information" setting is not available in settings app

- implement a SearchIndexProvider for DeviceInfoSettings and
remove some Preference indexing depending on the device state
and configuration
- remove old non used Preferences
- some code cleaning

Change-Id: I3b2c9dc7cb9f1137b553fed9330aeea4020bd2f8
2014-05-30 15:35:06 -07:00
Fabrice Di Meglio
eed44c9d5f Fix bug #15342475 Settings search ranking improvement
- introduce the "base rank" concept. All SearchIndexablesProvider
will have a base rank and the Settings one will get a "0" base rank.
- use a map whose key is the authority name for the provider to get
and store the base rank
- if a base rank is not defined, use the current max defined one and
increment it to define the new one.

Then we will compute the real rank this way:

rank = (providerRank > 0) ? baseRank + providerRank : baseRank

Change-Id: Ifa82bfcdfc07f25c4a5f304f47550686f7d4c13d
2014-05-30 14:05:32 -07:00
John Spurlock
4e4cdeffdb Settings: Remove sound settings.
- Move the remaining conditional preferences into
  the combined Sound & Notifications screen.
- Refactor the "Other sounds" sub-settings screen to
  provide a home for the new preferences.
- Migrate docking sounds, conditional on config.
- Migrate docking media, conditional on config.
- Migrate emergency tones, conditional on CDMA.
- Move all boilerplate preference <-> setting plumbing into
  a separate helper.
- Since some preferences in Other sounds are now conditional,
  create a special indexer for searching.
- Remove SoundSettings (and xml), create aliases in the manifest
  to avoid breaking shortcuts.

Bug:15279526
Change-Id: I5ae3ecda2f899b1948f7908bd217a799326c2c56
2014-05-28 16:37:43 -04:00
John Spurlock
57c713d1d9 Settings: Hide phone-related settings on tablets.
Bug:15002393
Bug:15091008
Change-Id: I8238b7990572f46e1530a800897ab2d39a189055
2014-05-27 14:39:02 -04:00
Fabrice Di Meglio
a218d0ed73 Sixth batch of new Quantum Theme assets - DO NOT MERGE
- needed for Quantum Theme support

See bug #13140648 Settings needs to support the new Quantum Paper theme

Change-Id: Iaec517aa448b1590bcb355ac8694b2e4e0c90292
(cherry picked from commit 5847373448)
2014-05-23 19:31:21 +00:00
Fabrice Di Meglio
b58b28e13e Fix bug #14494292 Settings>Search>Recent searches keep on populating the same keyword if it is searched again
- do the right thing: remove the previous search queries from the Database if needed
so that there will be no dupe

Change-Id: I707eb518ea7c2a64b1407c62ff164e249fe03fa9
2014-05-20 16:31:52 -07:00
John Spurlock
ac1c42f5dc Clean up search metadata for notification pages.
Remove custom providers for screens added purely via xml.
Add data keys for those that remain.

Change-Id: I28172a1937e40e853f929f3332e3640e63b65141
2014-05-19 15:24:34 -04:00
John Spurlock
81bef1d745 VolumeZen: Sound & Notifications settings.
- Add sound settings under the newly combined Sound & Notifications
  top-level settings page.
- New slider preferences for setting audio stream volumes.
- Migrate checkbox prefs to switch prefs.
- New settings subpage for touch sounds.
- New settings subpage for "Showing notifications"
- New setting pref for displaying intercepted notifications in zen mode.
- New tri-state lockscreen notifications pref.
- Add priority + sensitivity options to app notification dialog.
- Remove badges on app notifications row, migrate to subtitle text.
- Migrate strings to common spot in strings.xml
- Remove heads up setting.
- Remove tweaks category (unused).
- Clean up notification settings, separate out into a code section per option.
- Clean up _settings.xml files, prefix each pref with option name.
- Add appropriate indexing data to each settings page.

Depends on f/b change Ic30aa575ae07650cee62c8c1d83b6bc69395cf0d

Change-Id: If700385a7d0057f6c4c4bcf6e648dcf88b8ebff2
2014-05-18 15:37:09 -04:00
Fabrice Di Meglio
0869526b81 Fix bug #14903618 Developer Options - string changes needed to the Bug report checkbox
- string update as follow:

LABEL

Current string:
- "Power menu bug reports"

Change to:
- "Bug report shortcut"

SECONDARY TEXT

Current string:
- "Include option in power menu for taking a bug report"

Change to:
- "Show a button in Quick Settings for taking a bug report"

Change-Id: Ibc716e1ae0bc3d553601908efd81babd66051d8b
2014-05-14 18:51:03 -07:00
Fabrice Di Meglio
55638cb6c6 Fix NPE when going into WiFi Settings
- this was occuring when updating the Index for remembered WiFi networks

Change-Id: Ifc8f843499e09150685a8dd9bfb705459f28c067
2014-05-09 20:07:13 -07:00
Fabrice Di Meglio
34483748df Fix bug #14324070 Settings search does not include any of wifi sub-settings
- add AdvancedWifiSettings to the Index
- bump the database version to force a re-indexing at the first start

Change-Id: I45aacfe6e0bb38a1209ea8dd2c4ccf0f1b90a526
2014-05-09 19:08:44 -07:00
Svetoslav
149c1361f1 DynamicIndexableContentMonito should respect lacking software features.
We have software features that are optional and developers should check if
these feature are available before use their APIs which are nop if the feature
is not present. DynamicIndexableContentMonito is observing changes in print
services and IMEs but printing and IMEs are optional features. Now we are
checking before tracking these features.

bug:14653371

Change-Id: I3003c645e637aa7d7118c80b4453a54b8ac8bf9a
2014-05-08 14:45:46 -07:00
Fabrice Di Meglio
d297a58402 Add saved Search queries feature
- update SearchResultsSummary fragment to have two lists:
one for Search suggestions (saved queries) and one for
Search results
- a tap on a saved query will launch that Search query
- show the list of saved queries when tapping on the SearchView
- do some fancy hidding / unhidding of the saved queries list
and results list

Change-Id: If15055ab78b0ec5eef4e543173dc7b866bd08e27
2014-04-23 10:35:10 -07:00
Fabrice Di Meglio
891bbfdbb7 Merge "Save Search queries" 2014-04-22 01:38:47 +00:00
Fabrice Di Meglio
ab791fccf9 Save Search queries
- update database model for adding a table for saving a query
and its timestamp
- update database version
- save the query when the User tap on a Search result
- remove old queries (no more than 5 are saved)

Change-Id: I4ddff0ad660944c7fd53be64ac95397850dc60d0
2014-04-21 18:35:30 -07:00
Fabrice Di Meglio
4bedf88f3d Merge "Fix missing summary for CheckBoxPreference" 2014-04-21 23:41:13 +00:00
Fabrice Di Meglio
b7390ba585 Fix missing summary for CheckBoxPreference
- "summaryOn" and "summaryOff" were parsed but we were missing
also "summary"

Repro case: search for "adt" (from Developer options)

Change-Id: Ifa829ec6c6f86cb426432f716c2d28df8550f9ea
2014-04-21 16:40:48 -07:00
Fabrice Di Meglio
2ce2fd2085 Merge "Fix bug #14228591 NPE in settings app when it is launched by UiAutomator" 2014-04-21 22:35:06 +00:00
Fabrice Di Meglio
6d7bb92b38 Fix bug #14228591 NPE in settings app when it is launched by UiAutomator
- test for null references

Change-Id: Iff6efc92cc16ada9f6e8f057ba9c23a241e62000
2014-04-21 15:32:28 -07:00
Fabrice Di Meglio
62a3ab41dc Merge "Enable Search result highlight for Accessibility and IME settings" 2014-04-21 20:29:12 +00:00
Fabrice Di Meglio
bb26141ddf Enable Search result highlight for Accessibility and IME settings
- add missing keys
- update Database version to force re-indexing (because the keys
were missing)

Change-Id: I7533d86b0f9d79d838e5c16d4bc51b7b09dffae5
2014-04-21 13:27:23 -07:00
John Spurlock
4a35051565 App-level notification configuration settings page.
New sub-page off of notification settings to ban/unban
apps and navigate to an app's notification configuration
activity (if configured).

Centralized all notification settings artifacts under a new
settings subpackage.

Bug: 13935172
Change-Id: I53b75c02f0091900734d17dc9217035d0df9b466
2014-04-21 12:19:14 -04:00
Fabrice Di Meglio
f2a5226c1e Improve Preference highlighting
- use PreferenceFragment.onBindPreferences() to launch  highlighting
- improve SettingsPreferenceFragment code for highlighting: now we can
find the View to highlight thru its Tag if there is no ListAdapter available
- add HighlightingFragment for highlighting a View from its tag/key. This
is dealing with cases when the content is custom and not relying on
SettingsPreferenceFragment (like DataUsageSummary)

Also:

- improve DataUsageSummary so that onResume() is not recreating the
Tabs all the time
- add missing "android:keys" on some Security Settings preference files

Change-Id: Ib1dd8238fe2fb57c151d584c0810a0e0a5ad97c4
2014-04-18 13:42:46 -07:00
Fabrice Di Meglio
8f5c65fd01 Search results - just show the first item of ListPreference entries
- need to increment the database model version to force re-indexing
- change entries separator from SPACE to PIPE
- just show the first entries value in the Search results

Change-Id: I747218ff3528c3231c0209f8870c12f65e036070
2014-04-15 14:09:25 -07:00
Fabrice Di Meglio
7a6bfd132c Update DynamicIndexableContentMonitor
- use factory for creating Intents
- add missing case in handlePackageUnavailable() for IMEs
- move DynamicIndexableContentMonitor to the "search" package

Change-Id: I8d74b28fb9183827db50c6de4b4543b4ff21acc0
2014-04-15 13:31:38 -07:00
Svetoslav
990159abaa Adding search for dynamic accessibility settings.
The language and input settings are highly dynamic and this change adds search
support for that. This category depends on installed IMEs, input devices, user
dictionary configuration, etc. We not only compute the right preferences to be
indexed but also track related system state in the settings app to rebuild the
index if needed.

bug:14066763

Change-Id: Ia89d9e35bd79abf8d74614691aedf4ca9b11b6f2
2014-04-14 17:31:23 -07:00
Fabrice Di Meglio
09e13da6a7 Some code cleaning
- use MatrixCursor var as in the other cases

Change-Id: Iba1163a851e62de9a0dd6e7c1c5d28f06452bdba
2014-04-14 17:01:02 -07:00
Fabrice Di Meglio
490099b135 Allow partial Index rebuilding thru updateFromClassNameResource(...)
- add a new boolean parameter to ask for Index rebuilding:
passing "true" will delete first all the data corresponding to the
"className" and then apply the update.

Change-Id: Ifc42fc560a14f5470b466cf6982915d9207fa3c7
2014-04-14 13:31:14 -07:00
Fabrice Di Meglio
724b702a86 Search - add support for deleting all preferences for a class name
- modify SQL delete query for passing any column in the DELETE statement
- modify deleteIndexableData(...) for passing a SearchIndexableData

Change-Id: I4c58e38422e67b1d464b0e51201520ce8717a14d
2014-04-14 11:24:16 -07:00
Fabrice Di Meglio
df278aa959 Update SettingsSearchIndexablesProvider for supporting queryNonIndexableKeys(...)
- add the new requested method "queryNonIndexableKeys" from the contract

Change-Id: I72be47851a7e19e3f14960f4e2b60c3e952f1fac
2014-04-14 10:54:58 -07:00
Fabrice Di Meglio
210bb8694a Merge "Search - add indexing of SecuritySettings" 2014-04-12 00:54:55 +00:00
Fabrice Di Meglio
d1d2f02224 Search - add indexing of SecuritySettings
- implement a SearchIndexProvider for providing the data to index
- some code refactoring to extract some helper methods

Change-Id: Ia8818c17d1bead7306b528d242cdc24c863c17eb
2014-04-11 17:53:41 -07:00
Svetoslav
c0a51758bd Merge "Adding search for dynamic print settings." 2014-04-12 00:36:46 +00:00
Svetoslav
d78d44d32a Adding search for dynamic print settings.
The print service list is dynamically constructed, therefore we need
a local provider that will emit print service data to be indexed.

bug:13929163

Change-Id: I51d5ae40c00edc6be7b212dc8aa08fd7ebfbf349
2014-04-11 17:22:57 -07:00
Svetoslav
c9d4c6aef4 Merge "Adding search for dynamic accessibility settings." 2014-04-12 00:19:27 +00:00
Svetoslav
b4b30828e9 Adding search for dynamic accessibility settings.
The accessibility service list is dynamically constructed, therefore we
need a local provider that will emit accessibility service data to be
indexed.

bug:13928519

Change-Id: Idd29cd1698f36b54fabf013dfa36029412bbb8a9
2014-04-11 17:15:34 -07:00
Svetoslav
caa0b54cbc Fallback to the default values when indexing from local resource.
If we are indexing from a local resource and the indexable resource does
not provide icon or class name or rank we fall back to the defaults.

Change-Id: Ibbed8b2a92e28799c26f5f80b3f058737535739d
2014-04-11 16:06:41 -07:00
Fabrice Di Meglio
45f754e506 Add Indexable.SearchIndexProvider.getNonIndexableKeys(Context)
- getNonIndexableKeys(Context) allow a SearchIndexProvider to tell which data
he does not want to index by providing a list of the data keys
- use this new API for SoundSettings and removing KEY_EMERGENCY_TONE related
settings if the device is not CDMA
- add a BaseSearchIndexProvider for code simplification

Change-Id: I23633ace1d7e390ee05fac0a5458a33e04e72d8d
2014-04-11 11:16:33 -07:00
Fabrice Di Meglio
a9d37050cb Some code refactoring
- use SearchIndexableResources.NO_DATA_RES_ID
- extract code for getting a SearchIndexProvider

Change-Id: I3d31cc58f70b9b0abfa6684d9d20b19534ec5e45
2014-04-10 17:58:27 -07:00
Fabrice Di Meglio
758c3ff8e9 Fix bug #13962001 Search - need to finish indexing "Data usage" Settings
- index missing strings

Change-Id: I015452b58bf7dc576bce8fee03b55b38c0094097
2014-04-10 14:45:18 -07:00
Fabrice Di Meglio
981efd1778 Code cleaning for the SettingsSearchIndexablesProvider
- use the real constants SearchIndexablesContract.COLUMN_INDEX_XML_RES_XXX
for the colum names

Change-Id: I820ce9d3b048345365639fe049aedccaf3f203d8
2014-04-09 19:33:47 -07:00
Fabrice Di Meglio
b1648e6c54 Fix bug3 13933442 Search - for security reasons only index data...
...from wellknown SearchIndexablesProvider

Check if the SearchIndexablesProvider is:

- having the correct android.permission.READ_SEARCH_INDEXABLES
read/write permissions
- a privileged one (like Settings App, Phone App)

Change-Id: I5fd1fef46716cca0e439196e24b607ff5506495c
2014-04-09 16:24:10 -07:00
Fabrice Di Meglio
b914322590 Code cleaning for Search Remote Provider queries
- use colums indices that are now defined into SearchIndexablesContract
- ... and at the same time fix an issue with some wrong column indices
that were used

Change-Id: If72ddc7d7171329ca533cb2763431902099769b9
2014-04-09 13:30:50 -07:00
Fabrice Di Meglio
7d39310c8d Fix bug #13928293 Search - remove "switchTextOn" / "switchTextOff" from indexing
- remove all related code
- update the Index database schema and its version

Change-Id: Iaa5219b77efe5db3a404708663fdf82f10d043d3
2014-04-09 12:09:42 -07:00
Fabrice Di Meglio
3b22695670 Fix issue about at which time Bluetooth devices name are indexed
- remembered devices name were only indexed when BT was turned on/off
- allow the same when they are paired
- remove device name from the Index if it is un-paired

Change-Id: I1206a591b0132789c3b003e52c7ffac630e80758
2014-04-08 17:49:01 -07:00
Fabrice Di Meglio
c1457323d2 Add support for saving and using the Preference's key value
- modify the SQlite data model
- update Index code for managing the key value
- pass the key when launching a Fragment or and Activity
- implement a small animation for highlighting the Preference
from a Search result

Change-Id: I617643a4e5e3b752ece8f45ce7d5429037e479da
2014-04-08 13:08:44 -07:00
Fabrice Di Meglio
dd41dfc483 Add indexing for SwitchPreferences
- now support the SwitchPreferences and save the "switchOn" and "switchOff"
attributes
- update Index database schema (and increment its version)
- fix an issue with some previous schema not rebuilt

Change-Id: I9cd48c666525f19474ef9bd5746d61b589058063
2014-04-02 19:37:39 -07:00
Fabrice Di Meglio
a41707200b Add indexing for ListPreferences
- now support ListPreferences and save the "entries" attribute
- update Index database schema (and increment its version)
- do some clever stuff when showing Search results: if there is
a "$s" or "%s" in the summary (replacement strings), just use
the entries instead

Change-Id: If36595c3816706b6349faff7d3c2e725d3ea33f4
2014-04-02 19:05:45 -07:00