History log of /packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
0f01c849cd6b546f216f9fac837693fc4a9c5138 29-Mar-2017 Doris Ling <dling@google.com> Only register conditions receiver when needed.

1. Update the dnd receiver to listen when dashboard summary running.
- remove the dnd receiver from Android manifest, and create it inside
the dnd condition.
- add lifecycle implementation to condition manager, so that the dnd
condition can know when to register and unregister the receiver.
- remove getReceiverClass() from dnd condition so that its receiver will
not be disabled by the default condition handling when condition is
silenced.

2. Remove all other conditions receiver from Android manifest.
- the broadcast receivers for HotspotCondition, AirplaneModeCondition,
CellularDataCondition from the manifest and create them inside the
condition classes.
- update Condition.onSilenceChanged() to register/unregister the
receivers instead of enable/disable the receiver class.

Change-Id: Iea6288382680df2b02884d1934b8db85daae404c
Fix: 35968517
Test: make RunSettingsRoboTests
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
2907f869715fee03b2caf45e8a174aff87f07821 17-Mar-2017 Fan Zhang <zhfan@google.com> Fallback to default wallpaper picker if first choice fails

- Add fallback logic in WallpaperSuggestionActivity
- Move some classes around
- Delete some unused class

Change-Id: Ifc8864428647a94f3ecae50d193c2156b2592ff3
Fix: 36140287
Test: make RunSettingsRoboTests
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
264c0c2bbe6b16103774ffafa405e50a8fe68a45 16-Mar-2017 Fan Zhang <zhfan@google.com> Fix NPE when building suggestion identifier.

And refactored the getIdent logic into feature provider.

Change-Id: Id6f66a6942cbaf6d26ae4dca62037a6cf01179a5
Fix: 36314240
Test: make RunSettingsRoboTests
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
a5b620e73815834f138f8af0591ca42f45c0abd7 23-Feb-2017 Fan Zhang <zhfan@google.com> Swipe to dismiss suggestions

- Move dismiss suggestion logic into feature provider
- In DashboardData, use hashcode as suggestion's stable id. This is much
more likely to provide a truely stable id for each suggestion card.
Eventually I want to use hash for all tiles to provide stable id.
- Add a SuggestionDismissionController to handle swipe to dismiss
callbacks

Change-Id: If3770f07a90c5469a0b86fc28f3eb5e4c17227cd
Fix: 35159816
Test: make RunSettingsRoboTests
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
f2cf2aea3777ef5298bb1131890552f5f619dd30 04-Mar-2017 Doris Ling <dling@google.com> Remove code that check for dashboard feature.

- remove DashboardFeatureProvider.isEnabled() and all relating code
and tests.

Bug: 35764802
Test: make RunSettingsRoboTests
Change-Id: If7796677abc8904b7436525836d50cdef38e37a4
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
9ca41dd89a7d6af79e80ab4293f2f650185a9e27 22-Feb-2017 Soroosh Mariooryad <soroosh@google.com> Moving load of suggestions from onViewCreated to onCategoriesChanged.

- This is required when a suggestion is completed and it needs to be
removed from the list immediately.

Test: RunSettingsRoboTests
Fixes: b/35657186

Change-Id: I731bd1d4ef4a23a74cb4022513d0824ff5f74b2a
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
5f375a2776950b7e511d668102e7079efc57171c 23-Feb-2017 Soroosh Mariooryad <soroosh@google.com> Move suggestions package to dashboard.suggestions

Test: RunSettingsRoboTests

Change-Id: I4f9af27767c8e55d3b1a16e77c099da52d40aab5
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
e457e35ec020fa5cc0cd31a640db8055fb130a66 15-Feb-2017 Soroosh Mariooryad <soroosh@google.com> Add ranking to SuggestionFeatureProvider interface.

Test: RunSettingsRoboTests
Fixes: b/35363662

Change-Id: Ib786e6b2733e2b151f73fb68e174a21aedb2b20a
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
25d8049bb2d494dae4d55a30c3f290565b42d779 10-Feb-2017 Soroosh Mariooryad <soroosh@google.com> Modifying setting suggestion logging to only log the shown items.

Previously if there was three suggestions in the suggestions view, all
three would be logged as shown, although by default only two of them are
shown and the third one is shown only if the view is expanded. Now, only
the actual shown items will be logged.

Test: RunSettingsRoboTests
Fixes: b/35348496

Change-Id: Ic3af7961b4713f48e63c51ac599cb55bf69975ff
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
c6ca314c0b872f75926807ca7d6eb24ebe7cb684 15-Feb-2017 Fan Zhang <zhfan@google.com> Log source with visibility change

- Add a method in VisibilityLoggerMixin to log visible event using
LogMaker, which allows logging additional FIELD_CONTEXT field.
- In Utils.startFragment, add current page's metricsCategory as an extra
to next page.
- In next page's onResume(), extract the previous page's metricsCategory
and send it to VisibilityLoggerMixin.visible()
- Update all caller with additional paramters

Change-Id: I8e1f2597fa465b7d3aa16fa1d21c052a3219694a
Fix: 35359289
Test: RunSettingsRoboTests
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
efba6b4e143fe834dc3ded2cae0abc1a3e4748f7 08-Feb-2017 Fan Zhang <zhfan@google.com> Skip redundant SuggestionLoader run during app start.

also skip DiffUtil when drawing first frame.


Fix: 34103984
Test: make RunSettingsRoboTests
Change-Id: I4891d1bca1f17c437444761eaf3002624934014d
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
81adc530d966bd664057ca11179f709a035c2e30 31-Jan-2017 Soroosh Mariooryad <soroosh@google.com> Adding the dismiss logic for setting smart suggestions.

Test: make RunSettingsLibRoboTests
Fixes: 35059823
Change-Id: I48a71ff525f6dded6f0b505280f5678a554f7183
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
b1922dbc391977d668a640e0afc3a3d5c61a4619 18-Jan-2017 Soroosh Mariooryad <soroosh@google.com> Adding setting suggestion ranker.

Test: RunSettingsGoogleRoboTests
This is currently behind a flag and it is no-op CL.

Change-Id: Ieed3e5a9c3c2fbb0ce1bfea77c588b04778540eb
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
e5a7da2b169ae915ef4b6e4e770dbc8d4395eccd 09-Jan-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Fix the animation issue in DashboardSummary"
0bb598c4d0c556ed509b8a0d1a365437e566348e 05-Jan-2017 jackqdyulei <jackqdyulei@google.com> Fix the animation issue in DashboardSummary

1. When condition is inserted, only scroll to top when previous
position is at the top.

2. Clean condition status after it is removed. So the next time
you insert a condition view, it will always be collapsed.

Bug: 33839780
Bug: 34115341
Test: make -j40 RunSettingsRoboTests
Change-Id: I7f48524917c3119ec24b2f67ba506f381573a391
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
f91f7f7063c0982bdbda3e08d6140b80428bc658 07-Jan-2017 Fan Zhang <zhfan@google.com> Fully enable IA.

This saves about 120ms for app start time.

Bug: 34103984
Test: RunSettingsRoboTests
Change-Id: Ib1d2b190eb3b563b99c7f9d82e11e28229fe3316
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
f940f86bbce2324802f3eb50ed950c87f6982624 06-Jan-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Do not load old category when IA is enabled."
e8a77c551ed3296dfe7958d68bea5993f2e5404e 06-Jan-2017 Fan Zhang <zhfan@google.com> Do not load old category when IA is enabled.

Bug: 34026031
Test: RunSettingsRoboTests
Change-Id: Ie4ede018c8e3e906093cba4b9d4bf9d75c0bd972
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
c54503d9e16a90b9124a2cf4d7273d3a4ec8345c 05-Jan-2017 Fan Zhang <zhfan@google.com> Update tile color from using accent to colorControlNormal.

Also remove some unused code
Bug: 33759208
Test: visual

Change-Id: I0a019bf6b514564f9e6e844de8a6b75b2ca69cc7
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
0fd7190fdd0629bbcccc251e040feee41fa5be68 28-Dec-2016 jackqdyulei <jackqdyulei@google.com> Refine animation to remove strange reshuffling animation

The issue happens mainly because two animations(move + change) running
on the same view interrupt with each other. When ItemAnimator runs the
move animation, it will change the translationX&Y in a time period.
When the change animation occurs in this period, it gets this translation
value and calculates a non-zero deta, then it would run an unnecessary
move animation, which causes the strange reshuffling.

In this cl, I skip the translation value only for the tile view when
there is pending animation.

I also add scroll operation for conditions view to make it scroll to
top after condition change.

Bug: 33839777
Bug: 33839780
Test: make -j40 RunSettingsRoboTests

Change-Id: I2152f93f756ae20cf754d6fca3525119cb4ceb1f
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
413eaa4070f6e3ce1615973ca2aff2e2fd78ef54 06-Dec-2016 Fan Zhang <zhfan@google.com> Clean up search fragment loader lifecycle.

- Programatically create SearchView to make it always expand across
entire action bar.
- Store current query text during screen rotation
- Restart loader when query text changes

Bug: 33354491
Test: RunSettingsRoboTests
Change-Id: I63838a38514569aac60c5d67ac52ac06a7acd5a3
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
cdec3495f84d360d1c9345825ac63bca3575eed1 06-Dec-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Add InstrumentFragment for non-PreferenceFragment types."
2d0b3447360666847c483e6ce2521846c66c25c1 06-Dec-2016 Fan Zhang <zhfan@google.com> 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
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
179e16445e0f78a1ae53a9cb7323c4665c24713f 29-Nov-2016 Salvador Martinez <dehboxturtle@google.com> Added logging to pinpoint source of bug

Sometimes the airplane mode banner will show up even
though airplane mode is not on. Logging has been added
to several areas around this condition in addition to
where the actual view is created. This will be used
to try and get a better handle on what the source of
the bug is.

Test: manual
Bug: 30860132
Change-Id: I7213aa7e187c5a8c0e94a5ce7a3269e6667cd61b
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
fa45aee813e07d11de707b6cbf3edee0aa688959 30-Nov-2016 jackqdyulei <jackqdyulei@google.com> Add DashboardItemAnimator to stop flash

When there is no offset change for identical holder in
animateChange, simply return and don't invoke the
resetAnimation.

Bug: 33198024
Test: make RunSettingsRoboTests
Change-Id: Ib83363873bc5f51e5bd71af5a013ee0756728d1a
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
265d3c2a0c36251bf8a9f571d7239b6dd404d942 22-Jun-2016 Tamas Berghammer <tberghammer@google.com> Update package names to work with the proto3 compiler

Bug: b/28974522
Change-Id: I5f3adf4946ee4ba1e09e4f40afe83c151405972a
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
fabbfb435e4de239b31a5cd76f9e72d3b53ab8cf 07-Oct-2016 Fan Zhang <zhfan@google.com> Refactor SummaryLoader to set summary on subsetting pages.

- Make a SummaryConsumer interface. Things that needs latest summary
should implement this interface (DashboardAdapter for homepage,
DashboardFragment for subsettings). This also decouples SummaryLoader
from relying on SettingsDrawerActivity.
- Make DashboardFeatureProvider more generic to load DashboardCategory
by key.

Bug: 31781480
Test: RunSettingsRoboTests
Change-Id: I9c65456fb433a74c352498251e0ccf65da0be1f0
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
96fa06ebf7291c0da55de8b894a89e5e7ec09af2 29-Sep-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Use DashboardFeatureProvider to load homepage tiles."
a96a2d8d60b56525875ce710a085c9360b93bcde 28-Sep-2016 Fan Zhang <zhfan@google.com> Use DashboardFeatureProvider to load homepage tiles.

Adding support to homepage category.

Test: SettingsRoboTests for regression. Will write tests for new feature
soon once we are set on the data structure.
Bug: 31781480

Change-Id: I25fa367fecb643f17e23f0182df7585bf1fcdd02
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
d969a5f53daa3b39bf691a6490881dd5659231e2 20-Sep-2016 Salvador Martinez <dehboxturtle@google.com> Settings timeout for suggestions

If loading suggestions takes too long (750ms)
settings will display just the categories
so the user does not get confused.

Test: Forthcoming
Bug: 31203004
Change-Id: Ic9866a5ccdcef965908db8c4592435a5d252f7b0
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
aa71afe5978b1340a2d702f3a75d22baf8c96348 22-Sep-2016 Fan Zhang <zhfan@google.com> Use MetricsFeatureProvider for logging in Settings.

Bug: 31664539
Test: make RunSettingsRoboTests for regression
Test: adb logcat -b events | egrep "(sysui_|notification_)" for
verifying log

Change-Id: Id944be7c4ff9911aebee481c2df485542f1318f0
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
c93d18e29c4c0c82483d87345dbfc1afae1ed2fc 22-Sep-2016 Fan Zhang <zhfan@google.com> Use MetricsFeatureProvider for condition/suggestion/search.

Bug: 31664539
Test: make RunSettingsRoboTests

This allows different metric clients to listen to these events.

Change-Id: Ib19c8099b16ff78d9aa4901278e0ff33eeefd4a8
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
f0bb63f307670ca7239b4003a330514cc58d0004 27-Aug-2016 Doris Ling <dling@google.com> Fix NullPointerException in DashboardSummary. am: 797dd7440d am: 454dc3739a
am: 45a821105f

Change-Id: I39623232f80a9de2d2199af11585eaa61bce2e08
45a821105ff54949cc665c8f52d1bd4d2c859b07 27-Aug-2016 Doris Ling <dling@google.com> Fix NullPointerException in DashboardSummary. am: 797dd7440d
am: 454dc3739a

Change-Id: Id334c7b3f36d8fcfbb4e919007d0bf5789b605fb
797dd7440d4af1764279f479e7cca2a1bebad38e 26-Aug-2016 Doris Ling <dling@google.com> Fix NullPointerException in DashboardSummary.

In onSaveInstanceState(), move saving the suggestions logging lists to
the top so that it will be saved to the bundle even when layout manager
is null.

Test: run monkey
Change-Id: I248563a255158feadeb85898a920af96a1565fa9
Fixes:31111795
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
a54c3690a4fd0a8fe07ca8bdb4175de1ffe075ec 25-Aug-2016 Salvador Martinez <dehboxturtle@google.com> Added guard to logging in AsyncTask am: 030eeeee6d
am: 60bd509d4e

Change-Id: Ib1d37a0c9c68c01be0d59bff5d78cd37c083689f
030eeeee6d1c1cdba4a85557f78ab1ee6571901c 25-Aug-2016 Salvador Martinez <dehboxturtle@google.com> Added guard to logging in AsyncTask

An async task was trying to get the context
in an InstrumentedFragment. This could return
null if the context disappears before the new
thread gets to that line. Logging will now
be aborted if context is null to avoid this.

Test: Manual/Monkey Stability Test
Bug: 31058928
Change-Id: Iae97d389e58a76b0f213a2749415501894ebf649
(cherry picked from commit 566b66e27c69fbf48860f367781800442c5110e7)
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
e96d65deeabf6ab887140ee3e3791e9a8114fa64 25-Aug-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Added guard to logging in AsyncTask"
566b66e27c69fbf48860f367781800442c5110e7 25-Aug-2016 Salvador Martinez <dehboxturtle@google.com> Added guard to logging in AsyncTask

An async task was trying to get the context
in an InstrumentedFragment. This could return
null if the context disappears before the new
thread gets to that line. Logging will now
be aborted if context is null to avoid this.

Bug: 31058928
Change-Id: Iae97d389e58a76b0f213a2749415501894ebf649
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
f36eac38890d08cb6cea903da638cc52a6e3e3b0 24-Aug-2016 Andrew Sapperstein <asapperstein@google.com> resolve merge conflicts of 6890d53 to master

Change-Id: I61c1ed150fe311c4e07df524b5c0577f35d3bd60
6890d538ae66a1c2769f5bd6eec13656499a932b 24-Aug-2016 Doris Ling <dling@google.com> resolve merge conflicts of f757d1e to nyc-mr1-dev-plus-aosp

Change-Id: I1e53b78977bb32fe34462cf46bbfe66626574e65
bfbb964cb1a6a0a04f62d88e95be1565dbb25308 02-Aug-2016 Doris Ling <dling@google.com> Log settings suggestions events only once.

The show/hide settings suggestions events are logged every time Settings
is shown. Save the logged events into the state bundle so that when the
fragment is resumed, it does not re-log the suggestions events.

Also move the logging for the show suggestion event to when the suggestion
is loaded, as the suggestions can be empty when the fragment starts.

Change-Id: I644ea0012bad309e59fed0d48171915c955779cc
Fixes: 30108142
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
6507613ebcd22e4691c2af92a5c161bd327db336 08-Aug-2016 Fan Zhang <zhfan@google.com> 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
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
b14d42080b29eef9789b93a9d53b8de287ae6349 02-Aug-2016 Doris Ling <dling@google.com> Log settings suggestions events only once.

The show/hide settings suggestions events are logged every time Settings
is shown. Save the logged events into the state bundle so that when the
fragment is resumed, it does not re-log the suggestions events.

Also move the logging for the show suggestion event to when the suggestion
is loaded, as the suggestions can be empty when the fragment starts.

Change-Id: I644ea0012bad309e59fed0d48171915c955779cc
Fixes: 30108142
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
4a6f8b967a3d5ed3b6409213c2f09dad4ec32e59 22-Jul-2016 Doris Ling <dling@google.com> Check for null activity before getting dashboard categories. am: b7e650c6f7
am: 4ec4b64b9d

Change-Id: Id96c017083cc49abbdc3cc6122ea277fe3c78755
4ec4b64b9d6f14ed59b8e876b6268f78d21d8bb3 22-Jul-2016 Doris Ling <dling@google.com> Check for null activity before getting dashboard categories.
am: b7e650c6f7

Change-Id: I26f8c96189d3390055a7dd02680da57d2c2ed2cb
b7e650c6f7d689a46a34ce09d8bc4cc3e843ec6a 21-Jul-2016 Doris Ling <dling@google.com> Check for null activity before getting dashboard categories.

In DashboardSummary, when async task finishes running, ensure that the
fragment is still associated with the activity before getting the
dashboard categories from the activity.

Change-Id: If23cd27a0d3e3429d900ae41ef6f24ed03b9e8d6
Fixes: 30278854
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
eacb97e3d76d92a593a5f3dd44af1079f36ebc78 20-Jul-2016 Doris Ling <dling@google.com> Merge \\"Combine setCategories() and setSuggestions() in DashboardAdapter.\\" into nyc-mr1-dev am: 7e70fd1166
am: b3055b083a

Change-Id: I1c61400fee835a8297d754455596e530b1d006c2
b3055b083a22bce258def57488bdb2f9e097e20f 20-Jul-2016 Doris Ling <dling@google.com> Merge \"Combine setCategories() and setSuggestions() in DashboardAdapter.\" into nyc-mr1-dev
am: 7e70fd1166

Change-Id: Id8f655e0a9b29369a57eea3c5140cf47def7cc36
38d8582abe01ced40333f77d99c43d6111b047ed 15-Jul-2016 Doris Ling <dling@google.com> Combine setCategories() and setSuggestions() in DashboardAdapter.

In DashboardSummary.rebuildUI(), we first update the adapter with the
current categories, then run the async task to update the adapter with
the suggestions. This causes the adapter to first layout the existing
categories, and relayout when the suggestions is available. This causes
the suggestions view and categories view to overlap before the
relayout is complete.

Since categories and suggestions are borh set each time we try to
rebuild the UI, delaying the update for categories until the suggestions
are ready will avoid the unnecessary relayout of the list elements.

Ran app launch test for Settings app with the change and launch time is
between 412ms and 486ms in 10 runs, which does not show much delay in
app launch time with delaying updating the categories.

Bug: 29318104
Change-Id: I03ae2386392315f28fe2c361682f2f3252e9f827
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
89b315568a709f8335bc77aceade1b791a810c46 13-Jul-2016 Doris Ling <dling@google.com> resolve merge conflicts of 161093b to master

Change-Id: I14c74be54ca216b1f1e369685516a821a94ab30a
161093bb0ab71592ac8f70569295aa0384cfdf69 13-Jul-2016 Doris Ling <dling@google.com> Merge \"Reduce the number of times that dataset changed is triggerd in DashboardAdapter\" into nyc-mr1-dev
am: 8c50ced07c

Change-Id: I0989b7f8e122d5221757b57b1866d536a1657ae3
b76de265a2574264c7bfe592837894c559cfd06d 12-Jul-2016 Doris Ling <dling@google.com> Reduce the number of times that dataset changed is triggerd in DashboardAdapter

1. Save the suggestion list and the category list into the instance
state so that it will be available on warm start, and avoid the need
to reload the data.
2. Add the condition list to the constructor parameters for
DashboardAdapter, so that it does not need to setConditions()
separately which will trigger notifyDataSetChanged()

Bug: 30055644
Change-Id: Ia04fa3a25b13d2dacf6baf5f412d662a595fb6dd
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
718c84f121c5c5237d346596f1d755e3d45f8d6a 01-Jun-2016 Jason Monk <jmonk@google.com> resolve merge conflicts of 67e87fa to nyc-mr1-dev

Change-Id: I8c5a79de3176912a1803a481b8b179faf1dad178
350a930c68fa35d912e11d319848ac44bd868d59 01-Jun-2016 Jason Monk <jmonk@google.com> onResume -> onStart, onPause -> onStop

For SettingsActivity and DashboardSummary

Bug: 28896214
Change-Id: I235d5c82b04b1363bf4416acb5cf5fc1c4db704f
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
e5e4a555e776e702604ba8200cf10a8ceae35518 26-May-2016 Jason Monk <jmonk@google.com> Merge "Fix crash from battery saver switch" into nyc-dev am: 371aec1e92 am: e3b9c3dd63
am: 362287567e

* commit '362287567e1b66421c9bbdf1fd1ca7ae7c547113':
Fix crash from battery saver switch

Change-Id: I01a71bf6f60c634baa2b4784dd757ca729b7075c
e3b9c3dd6353ce662b80afb431ffa75e4fcd5f37 26-May-2016 Jason Monk <jmonk@google.com> Merge "Fix crash from battery saver switch" into nyc-dev
am: 371aec1e92

* commit '371aec1e92aa4b5cf6e4ed2b5f39faf180c17d1f':
Fix crash from battery saver switch

Change-Id: I0416b92dbc9b18a97c9d6d0617cba636e310690b
e4d0ed502df4a46c7e6997e5f9a7da5ebc344cae 26-May-2016 Jason Monk <jmonk@google.com> Fix crash from battery saver switch

Turns out most things expect the conditions to be loaded immediately
so if the dashboard hasn't been hit, they crash. Instead load
immediately for everything but the dashboard.

Change-Id: Iaa1114c88b3766e2ac513acb417ef2a55a0f4e7f
Fixes: 28952354
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
5c2a9d336b254b9779dcdd524a1c7ad436eb926b 11-May-2016 Jason Monk <jmonk@google.com> Merge "Protect against case when suggestions haven\'t loaded" into nyc-dev am: 76f95e82b8 am: f241ae5fcf
am: 2a5b456e69

* commit '2a5b456e69e029f101769e8465afc50939254780':
Protect against case when suggestions haven't loaded

Change-Id: I085ab8cdb6650457ebc552afdb5218a3fe37ce0a
f241ae5fcfdefd3b5ddb294c41f84c7deb6ef836 11-May-2016 Jason Monk <jmonk@google.com> Merge "Protect against case when suggestions haven\'t loaded" into nyc-dev
am: 76f95e82b8

* commit '76f95e82b861441bccb9f452fe77e1c47acc1d3c':
Protect against case when suggestions haven't loaded

Change-Id: Ie0bc3aa3e696efcec5560860284b457e636bd5bc
31ecec0ab117c1decfe9165951f095b5490377c8 11-May-2016 Jason Monk <jmonk@google.com> Protect against case when suggestions haven't loaded

Change-Id: I7668ed8af3f1808b619f0fdbd77c2f85da98f607
Fixes: 28691636
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
2e2f19d2ebb89094041e5831272cbea9091c60f1 10-May-2016 Jason Monk <jmonk@google.com> resolve merge conflicts of 0496ffa to master

Change-Id: I61589b7e9f1190e19d48dbb421541ebc2891ee82
0496ffad878421e24c8fd99b959a0ade51392c34 10-May-2016 Jason Monk <jmonk@google.com> Merge "Make sure TileAdapter always has a SuggestionParser" into nyc-dev am: a50a14a23a
am: 4101ba4eb1

* commit '4101ba4eb1395988941f3f24bc2f502753036e2f':
Make sure TileAdapter always has a SuggestionParser

Change-Id: Ic204cabd5cdbdd67f6bbdb53032a277da7fd34fa
6e9867dcc9766d3f14627b34ee4b74531062681a 10-May-2016 Jason Monk <jmonk@google.com> Merge "Make sure TileAdapter always has a SuggestionParser" into nyc-dev
am: a50a14a23a

* commit 'a50a14a23a4f57203d01489ddef607f46f485518':
Make sure TileAdapter always has a SuggestionParser

Change-Id: I87ee80fa989079c554c60870b9ddc70d3b36c5e4
a41a8d05abb92c0e945828afc85567cd812d1982 10-May-2016 Jason Monk <jmonk@google.com> Make sure TileAdapter always has a SuggestionParser

Since it expects to have one

Change-Id: Ic0dccd2271c011cf7dc877e341af5a8bfea90c37
Fixes: 28689801
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
572b3c82fce465744d6ed8427b9378cc8f64208e 09-May-2016 Jason Monk <jmonk@google.com> Merge "Dashboard performance work" into nyc-dev am: 04b25af149 am: 96eedcfdd2
am: fc5f0d4d20

* commit 'fc5f0d4d20817112d7d8d101f245ba50d45728e8':
Dashboard performance work

Change-Id: I5daad812baf80d27ea6cf097bea15065fa581a7b
96eedcfdd24a0cda4a56843a55f448367e8518c8 09-May-2016 Jason Monk <jmonk@google.com> Merge "Dashboard performance work" into nyc-dev
am: 04b25af149

* commit '04b25af149ba8e4c38cfe17fe9caf246a598e8e3':
Dashboard performance work

Change-Id: I41c9443c997428924b5ef6df2ad632c06bd416a8
2386dfc18d7b1b293b630b6527e078c8c5086d07 29-Apr-2016 Jason Monk <jmonk@google.com> Dashboard performance work

Push more stuff to backround threads (this will cause conditions/suggestions
to load slightly slower than normal content) and cache more info.

Fixes: 28613950
Bug: 28435146
Change-Id: I1080930e8f31c7f12a2d89f266bfd3236979cf40
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
2869157ba9b071f56691a285394500fa4c8a0a79 23-Mar-2016 Fan Zhang <zhfan@google.com> Display setting and support in a tab layout - DO NOT MERGE

Bug: 28269035
Bug: 28139604
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
c87aacb169a7c64f6d23d4ceb3f54883c5995f31 12-Apr-2016 Jason Monk <jmonk@google.com> Work on settings startup speed

- Cut down on amount stored in conditions xml
- Remove extra work from dashboard startup
- Move summary to min priority

Change-Id: I51ca3828e4446632d6faa60dcfbab3446d19d335
Fixes: 28134360
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
5673ced93cda4a48872c1452122ee278da3aa17a 12-Apr-2016 Jason Monk <jmonk@google.com> Work on settings startup speed

- Cut down on amount stored in conditions xml
- Remove extra work from dashboard startup
- Move summary to min priority

Change-Id: I51ca3828e4446632d6faa60dcfbab3446d19d335
Fixes: 28134360
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
872c61249b78056f0395e5214edf1566b8f8f440 11-Apr-2016 Fan Zhang <zhfan@google.com> Revert "Add a RecyclerView adapter for first tab in settings."

This reverts commit 44e7be1289d99b4d6720bbd9ac82d23671ea7b69.

Change-Id: I1391f41a19526ebd02a0c06e628fb1e18d454a71
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
c19eb986f3c918bdb2315e75c8c3c00d5b44ab63 08-Apr-2016 Jason Monk <jmonk@google.com> Settings tweaks

Change-Id: I68829fa8e49534d4635a008c94dced3c7ab6f4b1
Fixes: 27834471
Fixes: 27834626
Fixes: 27567838
Fixes: 27834676
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
db3fcfb7cb652c0afdd093e2ec9f387dc01b7819 08-Apr-2016 Jason Monk <jmonk@google.com> Merge "Settings tweaks" into nyc-dev
be8d5aa2b9ead06803a47c12a672ad124a2a4bb3 08-Apr-2016 Jason Monk <jmonk@google.com> Settings tweaks

Change-Id: I68829fa8e49534d4635a008c94dced3c7ab6f4b1
Fixes: 27834471
Fixes: 27834626
Fixes: 27567838
Fixes: 27834676
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
44e7be1289d99b4d6720bbd9ac82d23671ea7b69 24-Mar-2016 Fan Zhang <zhfan@google.com> Add a RecyclerView adapter for first tab in settings.

Bug: 27907841

The new adapter eventually will contain: conditionals, status,
suggestions.

Change-Id: I62f9db3db6557b16255ad94e2ce166b3c376e1bb
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
b84720c075fb2eb4bb816f34d8f3edd70e5a1653 05-Apr-2016 Suprabh Shukla <suprabh@google.com> Moving HelpUtils to SettingsLib

Moved HelpUtils to SettingsLib in frameworks/base so it can be shared by
packageinstaller as well.

Bug: b/22096093
Change-Id: I8d620abcde8279a3b4d11bbcff8ae9b6f46a1895
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
d9d21d6cb1e435bd46dcd089ecdc11a357dd7cfb 29-Mar-2016 Fan Zhang <zhfan@google.com> Move actionbar menu from DashboardSummary to container.

Bug: 27751187
Change-Id: I7730f104805abcbb6d243fccac94e39fad26ddd2
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
45fda2734abc6bf0a7938f2b5ee84e50d9abfaef 30-Mar-2016 Jason Monk <jmonk@google.com> Add metrics for suggestions

Bug: 27851236
Change-Id: Ia5aa1d42a40ba09a19db3c3790f0a7342660e613
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
f20c718f192d680bc4941e544c218c5a204c35f9 30-Mar-2016 Jason Monk <jmonk@google.com> Add metrics for settings conditionals

Bug: 27851236
Change-Id: I400716457d3f628419410a02c2a457d41d19a067
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
decc767f26c7e5229d536b9997f92b0e9c69bc1c 22-Mar-2016 Jason Monk <jmonk@google.com> Guard against monkey crash.

Bug: 27784445
Change-Id: I4ba6e02e0cdb6857661a824ae0888feac6762a05
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
d11cca016889f20a851734b2ec1dc1daf10cf0ee 16-Mar-2016 Jason Monk <jmonk@google.com> Fix Settings home lifecycle

Bug: 27330440
Bug: 26268813
Change-Id: Ibb3729c9872be2488db3741ec72ba5a43e66db5f
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
aa693f6734640515fcb25e13e5e5d96b614b36a1 27-Jan-2016 Udam Saini <udam@google.com> Merge "Adds screen lock as a suggested activity"
9d1bfd1e8de6e46137a9571507c03526880d6a46 27-Jan-2016 Chris Wren <cwren@android.com> port settings over to new metrics enum

Change-Id: I0b3efd2f4db773ccbc52bfe59ee8eb0dab9584fb
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
7ad4a17c5c6f2c068f0395bd7cd904524c3d29ae 25-Jan-2016 Udam Saini <udam@google.com> Adds screen lock as a suggested activity

Also, fixes a bug where the suggested activity stayed on screen
after the component was disabled causing a crash.

bug:25246207
bug:26770556
Change-Id: I28d784cdc57e464e49887483690ab514ca3bc46a
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
91ca519a0fb9a089c8953d9e03ece70388d8e49b 26-Jan-2016 Jason Monk <jmonk@google.com> Support changes to SuggestionParser

Change-Id: I002e10cfe2a058f934d2c6218c88c2588654733f
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
d4f03ec86f9e8b7b108fc63684e23f5c0fb2a864 07-Jan-2016 Jason Monk <jmonk@google.com> Add suggestions to settings

Use an XML to define the categories that Settings will look for,
and surface enabled activities under those categories as suggestions.

When clicked on the activity will be started for result. If the result
is not cancelled, then the operation is assumed successful and the
suggestion is disabled. Users can also use an overflow -> remove
flow to get rid of unwanted suggestions.

Change-Id: I767abf8efe103af0509bc6b6b55888ae82643512
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
db4ed191deefeda79af5644634415597c1c70217 11-Dec-2015 Jason Monk <jmonk@google.com> Add conditionals to Settings

Also add Airplane Mode and Hotspot conditionals (more to come soon)

Change-Id: I11f206db59f7c715f416fb5852b8f0fcb857a247
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
fd2c7224185bef301cfaa7de6fe1af22cab8df2f 02-Dec-2015 Jason Monk <jmonk@google.com> Work on settings launch speed

Move some stuff to the background, avoid doing other things.

Change-Id: I145172efa16f81c2f377f07744c8f88145e2ed1d
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
8c4ca41d2595925d108dad82959faddb676a392d 30-Nov-2015 Jason Monk <jmonk@google.com> Make sure the dashboard is up to date

Bug: 25794089
Change-Id: I65eaa8e14b3c998ec122eaa9fc4dbbe3749c568c
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
3069581512bcb9687cb8d79675f6c4950c9ac087 17-Nov-2015 Jason Monk <jmonk@google.com> Summary support for Settings Home

Also add summaries to a few of the major items.

Change-Id: I17924f14941fe095d819e142cdd21cf4b4e9ffd1
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
7c7eb70dc3e06c78f971cbf00c6b577d9b194394 11-Nov-2015 Jason Monk <jmonk@google.com> First pass at restyling dashboard

Still needs summaries, but the things are in the right place-ish.

Change-Id: I1cbc23da9f56589836b5ebd7e202114e8f323adc
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
2fe90293a16352c119acd6014ad0b9583896cd5e 10-Nov-2015 Jason Monk <jmonk@google.com> Various small crash fixes and guards

Bug: 25501551
Bug: 25583654
Bug: 25510495
Bug: 23575961
Change-Id: Id0e7f6aacdf763bf95b49d281aa8755afcd2e5ef
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
4da79e088f9e8d9c6123fbbb7590c779e280c893 10-Sep-2015 Jason Monk <jmonk@google.com> First pass at drawer to Settings

Change-Id: I94c3bc69ff773e48c33f59f37bfc0d91139c187a
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
15dcebe1e79ad396a08873f940e2f33d432cf387 27-May-2015 Jason Monk <jmonk@google.com> 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
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
47d16e9bf6768b7bcc8b3ca9327e9e866bf9cdee 21-Apr-2015 Jason Monk <jmonk@google.com> Tint dashboard items coming from external tiles

So they can match the Settings theme.

Bug: 20449897
Change-Id: I33ad0d78dad6fbc9dae35552246a559b6508deaf
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
23acc2bb8af7da000d72a8c1d8c28a2792200348 14-Apr-2015 Jason Monk <jmonk@google.com> 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
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
8a963babe2e36b7a41f77b8d2598c97658196e58 20-Mar-2015 Chris Wren <cwren@android.com> log visibility of views

Depends-On: I5b1dccb5d103ece3112acf38889bae16273b092f
Change-Id: I116aed2bb805f723a5bf2ec9eb94257de0b4a7b5
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
2ebc8a01696c4e7dd29863b92a15ae0bbbbb254d 13-Feb-2015 Jason Monk <jmonk@google.com> 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
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
c9ad22c38be54dcf10af3e2d0b2176da9f183c9a 24-Jul-2014 Fabrice Di Meglio <fdimeglio@google.com> 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
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
7f5c5e8bb84df3d414b4e0f0f1165754ebe056ef 24-Jul-2014 Fabrice Di Meglio <fdimeglio@google.com> Code cleaning

- remove those non usefull Intent.CATEGORY_LAUNCHER

Change-Id: Ib6e5f4a5265633da85423307fac26a104814f05f
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
b0a464fd2cbbe00821d483d28e76a04ac17996ea 24-Jul-2014 Fabrice Di Meglio <fdimeglio@google.com> 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
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
cfc7f9d9600f7b4514ce9608314874bf1023eb21 04-Jul-2014 Alexandra Gherghina <alexgherghina@google.com> Remove old accounts tile, replaced by a separate screen

Bug: 15815948
Bug: 15819268
Change-Id: I3b6978cff346c73cca1d6a2c209ffe4c71808244
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
47a25e76409aec1ae29b983779addf39722377f6 20-Jun-2014 Fabrice Di Meglio <fdimeglio@google.com> 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
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
53d76860a53c1463d182d4f3d28ce8e9f48454f3 22-May-2014 Fabrice Di Meglio <fdimeglio@google.com> 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
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
b644f29313c086806d1ba5ad3db8ac36d2bf3c4f 22-May-2014 Fabrice Di Meglio <fdimeglio@google.com> Optimize Dashboard loading

- prevent loading categories twice
- add some logging to see the time taken for building the Dashboard titles

Change-Id: I31724c0e66fe3b453a87f12476f58db84c73423f
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
5f995727cc2e4bd27d26a50f3a565fb677fdb294 20-May-2014 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #15080198 Enabling developer options requires restart of settings to enter

- fix Dashboard categories refresh issue

Change-Id: I5bb7fc4a1410df8f5c2d2d13f7625a1ccc8893c3
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
a8072fa6e009d5284bfedfcffcf5582934d9532b 16-May-2014 Fabrice Di Meglio <fdimeglio@google.com> 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
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
f40852046b367bbcb14b6eeea0957c79996b97e3 15-May-2014 Fabrice Di Meglio <fdimeglio@google.com> First batch of new Quantum Theme assets

- needed for Quantum Theme support

Change-Id: I90e8fdbb86a3cc5d5c209d4d345f6d423b2a1d5d
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
075a2963e89aa1f4ea6b36ab4e1ca884730f1c96 10-May-2014 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #14399525 settings crash on opening login error notification

- check if the account istener has been previously added or not

Change-Id: Icfd111a406507ac520a396e44710a9d882f2ae4d
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
f5b3f3b445aac61803ab0bc3543bf8a1e66f6d7f 30-Apr-2014 Amith Yamasani <yamasani@google.com> Fix crash when adding account

Remove the listener in onStop(), to be symmetrical with onStart().

Bug: 14393261
Change-Id: I5d4f0ca38d5ef52b97715b8f3791ff2a400c68e2
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
769630c8956fa844545d964166da90cc802fabac 24-Apr-2014 Fabrice Di Meglio <fdimeglio@google.com> 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
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
d25314d3305ed1a07b53991a978cd71219ef2a10 22-Mar-2014 Fabrice Di Meglio <fdimeglio@google.com> 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
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
fa7dc240e978b1b77bb5c80a78cd1f8c77648301 13-Mar-2014 Fabrice Di Meglio <fdimeglio@google.com> 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
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
0b63458c0bcf4bdbb7b8d2f4151e803905077319 07-Mar-2014 Fabrice Di Meglio <fdimeglio@google.com> Improve query filtering for Search

- there was a crash when inputing "w" then "-" then "-". This
crash was due to the InputFilter which got some strange indices
from the BaseInputConnection.
- so now we are doing our own filtering before sending the query
to Sqlite. We only keep Letters / Digits / Spaces.

Change-Id: I66dcbebeec9217cf8fd65a16b10fe2304d98cf58
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
835c5e4ef9064baa4bf67cfd42b7181e4c1a9f9d 06-Mar-2014 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #13322036 stability-sys: Java crash in com.android.settings: android.database.sqlite.SQLiteException: malformed MATCH expression: [ avs- /y@ggmd"*] (code 1)"
3ec129b1b50d8de3232009a1a032694c6fdb048d 06-Mar-2014 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #13322036 stability-sys: Java crash in com.android.settings:
android.database.sqlite.SQLiteException: malformed MATCH expression: [ avs- /y@ggmd"*] (code 1)

- the real issue was linked to the double quote
- add an InputFilter to the query EditText so that we allow only
Letters / Digits / Spaces (and this should works for all Locales)

Change-Id: I6016cc25d154b386870379dfa4c79a40c5505530
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
4931d7cc16055fc8c817b1babd30193269043798 04-Mar-2014 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #13300024 Settings app crashes on changing device orientation

- remove crashing code. Basically let the Framework do its work.
No need to save the state of the EditText by ourselves.

Change-Id: I49e98a852f4fcda61eabaa2967d027942905ec27
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
6f0739a3d9a9eca1591ae6bada1dd4d1d92c0def 04-Feb-2014 Fabrice Di Meglio <fdimeglio@google.com> Add Search to the Settings App (initial release)

- add basic UI for search
- build the search Index thru sqlite FTS4 (faster than FTS3)
- create the search Index on the fly depending on the locale
- re-index if there is a configuration change
- re-index too if the Android build version has changed (usefull
for an Android OTA or when a new Android version is pushed as
we need to recompute the Index)
- search thru "title" and "summary" Preference's data
- group results in the same order of the Settings categories
into the Drawer
- rewrite "title" and/or "summary" if they are containing
an hyphen "\u2011"
- add Preference Keywords (only for the Settings App) in the
Index and allow search on them (Wi-Fi network preference is
used as an example)

Known restrictions:

- we cannot yet search for "dynamic settings"
- ... nor we cannot search for settings coming from an external App
(like the Phone App and its related settings that are surfacing
into the Settings App).
- will need a few other CLs to add more keywords (and have them translated)

Change-Id: I017a4d6c433f28c257c08cacc1bed98c4c517039
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java
263bcc8b732dbb47d3ce63904e0e05191fabbad6 18-Jan-2014 Fabrice Di Meglio <fdimeglio@google.com> Use Drawer in Settings app

- get rid of PreferenceActivity as much as we can and use fragments instead
- add Drawer widget
- add Dashboard high level entry into the Drawer (but this is work in progress and would be done in another CL)
- add bypass of fragment's Header validation when launched from the Drawer but *force* validation if external
call thru an Intent

Be aware that WifiPickerActivity should remain for now a PreferenceActivity. It is used by SetupWizard and should
not trigger running the SettingsActivity's header building code. SetupWizard is a Home during the provisionnig process
and then deactivate itself as a Home but would make the Home header to appear in the Drawer (because momentarily we
would have two Home).

Also, verified that:

- the WiFi settings still work when called from SetupWizard
- when you have multiple Launchers, the Home header will appear in the list of Headers in the Drawer

Change-Id: I407a5e0fdd843ad7615d3d511c416a44e3d97c90
/packages/apps/Settings/src/com/android/settings/dashboard/DashboardSummary.java