Commit Graph

34 Commits

Author SHA1 Message Date
Fan Zhang
2d0b344736 Add InstrumentFragment for non-PreferenceFragment types.
This allows app fragment use a less heavyweight fragment as super class
if they don't need PreferenceFragment. Using this class as base is
generally easier to set up robolectric tests too.

Bug: 33354536
Test: RunSettingsRoboTests
Change-Id: I91c4d242ea0333c76c8767c03c3f18dee6b6e104
2016-12-05 17:13:33 -08:00
Tamas Berghammer
265d3c2a0c Update package names to work with the proto3 compiler
Bug: b/28974522
Change-Id: I5f3adf4946ee4ba1e09e4f40afe83c151405972a
2016-11-08 14:06:17 +00:00
Juan Flores
4efb05a92b Merge "Fix crash while searching in Settings" am: 176c0c5d98 am: d705a333ca am: 16455893d7
am: 8510f57509

Change-Id: I58f746d72597db65456a4d09308c82a422fd318b
2016-11-02 16:50:04 +00:00
Juan Flores
92fa371a0b Fix crash while searching in Settings
A crash occurrs when power button is pressed during search in Settings
due to IndexOutOfBoundsException in HeaderViewListAdapter.
When suggestions and results are cleared,
the layouts should be invisible to solve this problem.

Bug: 27913974
Test: manual - search "font" and press power button twice

Change-Id: Ia53d393e695dbb238fc4c82a3fe52ef4250d84c1
2016-10-25 12:12:10 +09:00
Fan Zhang
c93d18e29c Use MetricsFeatureProvider for condition/suggestion/search.
Bug: 31664539
Test: make RunSettingsRoboTests

This allows different metric clients to listen to these events.

Change-Id: Ib19c8099b16ff78d9aa4901278e0ff33eeefd4a8
2016-09-22 13:22:26 -07:00
Fan Zhang
6507613ebc Log visibility change for all fragments.
Bug: 30681771
Test: SettingsUnitTests

Refactor visibility logging from InstrumentedFragment into a mixin. And
apply mixin in remaining fragments.

Change-Id: Ibbb59904336254a3e4bb9e8c7d0b36e5a6bc2622
2016-08-18 14:04:13 -07:00
Chris Wren
9d1bfd1e8d port settings over to new metrics enum
Change-Id: I0b3efd2f4db773ccbc52bfe59ee8eb0dab9584fb
2016-01-27 10:58:58 -05:00
Jason Monk
39b467482d Depend on support lib preferences
Bug: 24576551
Change-Id: Ic6190bacd3f7582c9bbc8de972da4612bd92421e
2015-10-13 10:12:20 -04:00
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
Chris Wren
8a963babe2 log visibility of views
Depends-On: I5b1dccb5d103ece3112acf38889bae16273b092f
Change-Id: I116aed2bb805f723a5bf2ec9eb94257de0b4a7b5
2015-03-27 13:39:07 -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
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
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
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
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
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
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
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
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