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
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
Bug: 31664539
Test: make RunSettingsRoboTests
This allows different metric clients to listen to these events.
Change-Id: Ib19c8099b16ff78d9aa4901278e0ff33eeefd4a8
Bug: 30681771
Test: SettingsUnitTests
Refactor visibility logging from InstrumentedFragment into a mixin. And
apply mixin in remaining fragments.
Change-Id: Ibbb59904336254a3e4bb9e8c7d0b36e5a6bc2622
- dismiss keyboard when the query is submitted by returning the correct value to
onQueryTextSubmit()
Change-Id: I3da0606ea7c5e65c860784a867a54ad30589b3a7
- 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
- ahhhh Monkeys, do not allow to have position < 0
Similar fix than the one done for:
mSuggestionsListView.setOnItemClickListener(...) in I3a8ded4c1471a1589134826539c9db1b551f49dd
Change-Id: I6ef266852e2c2ab5d0d0f6b4faf358b22d12bf6b
- 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
- 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
- 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
- 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
- make the summary view as GONE when its text is empty
See bug: #12910134 Implement Search into the Settings App
Change-Id: Iafd680706b937137eaa30692e1c57a77cb5d7fc8
- 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
... 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
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
- 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
- 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
- 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
- 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
- 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
- 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
- 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