Commit Graph

56 Commits

Author SHA1 Message Date
Chris Wren
ef94267afd import new view enums into MetricsLogger
Bug: 21114836
Change-Id: I9a6e00ab8d85726ca6505a28ca7a52aef5aa1e1a
2015-07-10 17:19:58 -04:00
Jason Monk
cbbc69b823 Add action for search results including the count
Bug: 20293458
Change-Id: I9d3f04fb74c0e978e69e17898b703e270298fcbc
2015-06-23 14:36:08 -04:00
Jason Monk
15dcebe1e7 Help fallbacks and intent work
- Handle a backup URI, so that if the specified URI is not available,
   another can be used.
 - Add some data to help intents when they are intent URIs
 - Fill in the context with a classname when it isn't present

Bug: 15475009
Change-Id: I7050fa61121901929e650b20bd7a0ae21e8ba207
2015-05-28 09:50:45 -04:00
Jason Monk
47d16e9bf6 Tint dashboard items coming from external tiles
So they can match the Settings theme.

Bug: 20449897
Change-Id: I33ad0d78dad6fbc9dae35552246a559b6508deaf
2015-04-23 12:41:40 -04:00
Jason Monk
dbcfa01835 Merge "Fix crash in settings from incorrect parcelization" 2015-04-15 21:23:41 +00:00
Jason Monk
5dec877fb0 Fix crash in settings from incorrect parcelization
Bug: 20159614
Change-Id: Id7bf48f2337c8764a37b5f6ff836fbae4019c747
2015-04-15 17:21:32 -04:00
Jason Monk
23acc2bb8a Allow help to be defined to intent uri
Allow help uris to be either an intent uri or as uri (as they were
before). Also add a default help uri, and specific helps for several
screens.

Bug: 15475009
Change-Id: Iff982892973f01d32ff61ea88d4844e9a7153500
2015-04-14 15:43:20 -04:00
Chris Wren
8a963babe2 log visibility of views
Depends-On: I5b1dccb5d103ece3112acf38889bae16273b092f
Change-Id: I116aed2bb805f723a5bf2ec9eb94257de0b4a7b5
2015-03-27 13:39:07 -04:00
Jason Monk
2ebc8a0169 Allow system apps to add to settings dashboard
Allow system apps to add a tile to the top level of settings that
links to an activity through adding a filter for a specific action.
Determine the info for the tile based off manifest info for the
activity. Also allow the same for managed profiles, but show a dialog
in between to select which profile.

The category in which the item is to be placed must be in meta-data.
The icon and title can be specified through meta-data as well or
if unspecified the activity's label and icon will be used.

Also added an optional <external-tiles> tag to the dashboard
category xml, this allows Settings to put external tiles
in the middle of some categories (Personal does this).

Bug: 19443117
Change-Id: Idc9938d1549d181103a3030a8784b527215a8399
2015-03-25 11:11:36 -04:00
John Spurlock
9a23adf69d Settings: Remove all unused imports.
Change-Id: Iebfa52cb849d69974c94902b0b020893cf5618a3
2015-03-18 15:51:15 -04:00
Fabrice Di Meglio
fe144d7b72 Fix bug #17526111 Keyboard should dismiss when Settings search query is submitted
- dismiss keyboard when the query is submitted by returning the correct value to
onQueryTextSubmit()

Change-Id: I3da0606ea7c5e65c860784a867a54ad30589b3a7
2014-11-06 17:36:28 -08:00
Fabrice Di Meglio
c9ad22c38b More code cleaning for the Home intent filters
- remove the Intent.CATEGORY_HOME as it is not useful and
cannot be used into an Intent filter

Change-Id: I516188ea1c662c3277c64194c229a2e1c03a4e6a
2014-07-23 19:32:57 -07:00
Fabrice Di Meglio
7f5c5e8bb8 Code cleaning
- remove those non usefull Intent.CATEGORY_LAUNCHER

Change-Id: Ib6e5f4a5265633da85423307fac26a104814f05f
2014-07-23 19:03:33 -07:00
Fabrice Di Meglio
b0a464fd2c Fix how Home Activities are refreshed
- remove that HomePackageReceiver from the AndroidManifest
that could force Settings to run
- use a HomePackageReceiver into HomeSettings and DashboardSummary
- fix also the BatteryInfoReceiver for refreshing the Dashboard

Change-Id: Id3891529fc176e7e4c450f2ce723f8ac2af66c58
2014-07-23 18:20:53 -07:00
Alexandra Gherghina
cfc7f9d960 Remove old accounts tile, replaced by a separate screen
Bug: 15815948
Bug: 15819268
Change-Id: I3b6978cff346c73cca1d6a2c209ffe4c71808244
2014-07-14 10:02:14 +01:00
Fabrice Di Meglio
e0284653b7 Update Search Suggestions and Results Panel
- fix overdraw use as less backgrounds as possible
- make it look like the Dashboard with padding left and right

See bug: #15384992 Setting Dashboard - padding updates

Change-Id: I30ff33e51bc3c73e888d45f0ce6e16784eb6721c
2014-07-01 11:00:14 -07:00
Fabrice Di Meglio
f24859cdb7 Fix bug #15827043 - Stability: CursorIndexOutOfBoundsException in Settings: Index -1 requested, with a size of 38
- ahhhh Monkeys, do not allow to have position < 0

Similar fix than the one done for:

mSuggestionsListView.setOnItemClickListener(...) in I3a8ded4c1471a1589134826539c9db1b551f49dd

Change-Id: I6ef266852e2c2ab5d0d0f6b4faf358b22d12bf6b
2014-06-23 16:33:39 -07:00
Fabrice Di Meglio
47a25e7640 Update Dashboard layout again
- follow UX spec
- update also the Search Panels (suggestions / results) to
follow the same specs

See bug: #15384992 Setting Dashboard - padding updates

Change-Id: I3d27a3b3d9779644f8ea123990a0c7bed8d4ba74
2014-06-23 13:23:47 -07:00
Fabrice Di Meglio
a8b4dcc827 Fix bug #15611108 Stability: CursorIndexOutOfBoundsException in Settings: Index -1 requested, with a size of 1
- do not allow to have position < 0

A use case was generated by the Monkeys where they were capable to click on the Header.

Change-Id: I3a8ded4c1471a1589134826539c9db1b551f49dd
2014-06-13 21:04:59 +00:00
Fabrice Di Meglio
04cde98538 Tune Recents Search and Search Results
- add the capability to scroll recents and results with their
header (old request from UX)

See bug: #12910134 Implement Search into the Settings App

Change-Id: If3c4a23b928b189803f2ef8e13a61746c2790b4b
2014-06-09 17:07:04 -07:00
Fabrice Di Meglio
a9e77993d1 Fix bug #14499324 Label of the "Language & input " page doesn't get updated
...as per the newly selected language

- use also title resource id when possible

Change-Id: Ibeb95d605cd79910c18f4529b749645c9ed0fc17
2014-06-09 13:01:39 -07:00
Fabrice Di Meglio
132652c557 Do not show the Preference summary in Search results
- as the summary was sometimes showing "Unknown" or even not the
real Preference value (we dont have right now the capability to
know the current value of a Preference), so it is better to be
safe than sorry.

Change-Id: I009c31fc41ad35a630f4b34aa0ef998932f65263
2014-06-05 19:15:02 -07:00
Fabrice Di Meglio
302f75d6e6 Tune Search Results layout
- make the summary view as GONE when its text is empty

See bug: #12910134 Implement Search into the Settings App

Change-Id: Iafd680706b937137eaa30692e1c57a77cb5d7fc8
2014-06-03 15:29:08 -07:00
Fabrice Di Meglio
9c3c57f7ae DO NOT MERGE: Fix bug #15161058 Stability: ISE in Settings:Fragment DashboardSummary{588de71} not attached to Activity
- prevent rebuilding the UI until the fragment got attached

Change-Id: I6d5fcbce2581f3fc9900f1ca4fc8178ee959061e
(cherry picked from commit 53d76860a5)
2014-05-27 21:01:29 +00:00
Fabrice Di Meglio
42c4b0abe5 DO NOT MERGE: Optimize Dashboard loading
- prevent loading categories twice
- add some logging to see the time taken for building the Dashboard titles

Change-Id: I31724c0e66fe3b453a87f12476f58db84c73423f
(cherry picked from commit b644f29313)
2014-05-27 20:58:43 +00:00
Fabrice Di Meglio
7e4855e8f6 Update Search recents behavior
- per UX request
- Search recents show now by defaults with the recent searches
when the SearchView is empty
- when we press on a Serach recent, we are showing the Search results
and the recents are disappearing
- when keying text in the SearchView, we hide the recents and start
showing the results
- we still save the Search query when hitting on a result

Change-Id: I6c2be21660a30f6973dea27d4852b2068a05963d
2014-05-23 16:09:53 -07:00
Fabrice Di Meglio
5f995727cc Fix bug #15080198 Enabling developer options requires restart of settings to enter
- fix Dashboard categories refresh issue

Change-Id: I5bb7fc4a1410df8f5c2d2d13f7625a1ccc8893c3
2014-05-19 19:51:31 -07:00
Fabrice Di Meglio
3f6d2e422b Update Search results layout
See bug: #13140648 Settings needs to support the new Quantum Paper theme

Change-Id: If3174fee563ef204eb939576e4c7ef4d986735e3
2014-05-19 16:55:26 -07:00
Fabrice Di Meglio
a8072fa6e0 Fix bug 14990524 Add account does not refresh the list of accounts in the Dashboard
- unregister the OnAccountsUpdateListener in Fragment.onDestroy() instead of
in Fragment.onStop()

Change-Id: I07c92f85bb6efb34771d93158f00b60d93f4c90b
2014-05-15 19:32:39 -07:00
Fabrice Di Meglio
f40852046b First batch of new Quantum Theme assets
- needed for Quantum Theme support

Change-Id: I90e8fdbb86a3cc5d5c209d4d345f6d423b2a1d5d
2014-05-14 18:04:53 -07:00
Fabrice Di Meglio
e9326d2761 Code cleaning: remove all remaining references to the old Header class
- goodbye Header(s) !

Change-Id: Ied27f1f01dbed9c51cc74d28800d9ca7cab47d5a
2014-05-13 12:49:14 -07:00
Fabrice Di Meglio
8c3b0ce712 Fix bug #14323469 Settings crash on selecting keyword from recent searches
... after changing orientation

- set the SearchView for the SearchResultsFragment when the SearchView is
instantiated in the onCreateOptionsMenu(Menu)

- take care of the correct showing of the Recent Searched (suggestions)

Change-Id: Idfa17436d4a2436e0947ce1e1692355def3821a3
2014-05-12 19:35:38 -07:00
Fabrice Di Meglio
075a2963e8 Fix bug #14399525 settings crash on opening login error notification
- check if the account istener has been previously added or not

Change-Id: Icfd111a406507ac520a396e44710a9d882f2ae4d
2014-05-09 18:36:34 -07:00
Fabrice Di Meglio
39490546d3 Add touch feedback and focus on Dashboard tiles
- use a touch-feedback background
- declare DashboardTileView as focusable

Change-Id: I67ae19cd20374e531660232034528c995f595900
2014-05-09 18:18:05 -07:00
Amith Yamasani
dbf094128c Merge "Add a CREATOR in DashboardCategory to support Parcelable" 2014-05-01 17:29:48 +00:00
Amith Yamasani
603b8b6356 Add a CREATOR in DashboardCategory to support Parcelable
Bug: 14410901
Change-Id: I52f85e8d4254caf1a3d0c26bf1805580f78fba99
2014-05-01 10:28:20 -07:00
Amith Yamasani
f5b3f3b445 Fix crash when adding account
Remove the listener in onStop(), to be symmetrical with onStart().

Bug: 14393261
Change-Id: I5d4f0ca38d5ef52b97715b8f3791ff2a400c68e2
2014-04-30 10:38:56 -07:00
Fabrice Di Meglio
769630c895 Settings new dashboard - part 2
Introduce the new Dashboard (a grid like presentation of
Settings top categories) per UX specification.

- the Dashboard is composed of "categories" and in each of them
you have "tiles"
- implement a new layout for showing top categories
(DashboardContainerView). This layout basically acts like a
grid
- depending on the device configuration make the grid with 1
column in portrait / 2 colums in landscape (phones) OR 2 columns
in portrait and 3 in landscape (tablets)
- take care of Accounts adding and removing (as it changes the
number of tiles to show)

Also remove all the old code related to Headers

Change-Id: Ie29944132c1b4c3f7b073d5a7d4453b8f5ec19a7
2014-04-25 17:24:18 -07:00
Fabrice Di Meglio
63bbb8e4fe Settings new dashboard - part 1
- make the Settings dashboard definition be hierarchical (non flat) and use
categories and tiles
- code cleaning: remove mHeaderIndexMap

Change-Id: I16581a736ac5c8388a182d83159161fe3bb04f4b
2014-04-24 10:04:36 -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
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
f2dee29d66 Remove non needed code for HeaderAdapter
- before, we were showing a Swich for WiFi and Bluetooth entries
in the Headers. As this is no more the case, remove the code
that is no more usefull.

- as a side effect, we are also removing the call to update the
Search Index that was running when the Settings app was resuming
or pausing.

Change-Id: I26b40df5c7a664d196a249840638d89909b6bc24
2014-04-21 10:52:34 -07:00
Fabrice Di Meglio
a32707664f Search - add "live" search results
- now it is possible to have Search results directly when
you are typing (and not only when you press on the Search button
in the IME)
- implement onQueryTextChange(...)
- take care about re-runnin the saved query when the app is resumed

Change-Id: I021c8a9a95b50dce69ab6dace81eecb2fb188f18
2014-04-16 16:54:56 -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
71a2ef3e7c Update UI for Search results
- put the icon on the left
- just use the "summaryOn" ellipsized instead of the list
of values

Change-Id: I7250ff5b7c882b873cfe6bb0ec550a8eaf052d16
2014-04-14 19:44:31 -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
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
Fabrice Di Meglio
9593782d15 Add indexing for Notifications preferences
- also add indexing of CheckBoxPreferences
- also some code cleaning

Change-Id: I2943caaec3d64fb2a6be85168454fc76fe572afe
2014-04-01 13:21:01 -07:00
Fabrice Di Meglio
d25314d330 Settings - update for new UI (no more Drawer)
- follow the UX spec by no more using a Drawer
- the Dashboard is now a Fragment that contains the list of Headers
- the search results are also put into a Fragment that is replacing
the initial one (Dashboard or other) when expanding the SearchView
- use a SearchView for query input
- when tapping on a Header or a Search Result, re-launch Settings as
an Activity so that we are benefiting from the Activity stack for
UP affordance and BACK button
- manage UP affordance to show it only when needed
- move some Actions to the Menu in the ActionBar for allowing space
to the Search action and removing some clutter
- fix an issue with the Index and WiFiEnabler and their cached Context
that was not updated when there was a Configuration change
- simplify the SettingsActivity code by extracting some inner classes

Change-Id: I50b5f77bb44a7fade1886114dbbc820609a5e63d
2014-03-28 15:51:29 -07:00
Fabrice Di Meglio
fa7dc240e9 Add external Preferences indexing
- define SettingsSearchIndexablesProvider as an internal
SearchIndexablesProvider
- protect access thru using android.permission.READ_SEARCH_INDEXABLES
- update WallpaperTypeSettings and WifiSettings for taking care of
the new model
- update the Dashboard for taking care about external Icons for the
search result
- update sqlite model/version for taking care about Intents
(enable launching external applications for showing the settings)

Change-Id: I2e38599327e6480f1754f52666becce0884cee9d
2014-03-19 14:56:09 -07:00