Loading src/com/android/settings/SettingsActivity.java +1 −1 Original line number Diff line number Diff line Loading @@ -1209,7 +1209,7 @@ public class SettingsActivity extends Activity @Override public boolean onQueryTextChange(String newText) { mSearchQuery = newText; if (TextUtils.isEmpty(newText) || mSearchResultsFragment == null) { if (mSearchResultsFragment == null) { return false; } return mSearchResultsFragment.onQueryTextChange(newText); Loading src/com/android/settings/dashboard/SearchResultsSummary.java +30 −29 Original line number Diff line number Diff line Loading @@ -51,7 +51,7 @@ public class SearchResultsSummary extends Fragment { private static final String EMPTY_QUERY = ""; private static char ELLIPSIS = '\u2026'; private static final String SAVE_KEY_SHOW_ONLY_RESULTS = ":settings:show_only_results"; private static final String SAVE_KEY_SHOW_RESULTS = ":settings:show_results"; private SearchView mSearchView; Loading @@ -68,7 +68,7 @@ public class SearchResultsSummary extends Fragment { private String mQuery; private boolean mShowOnlyResults; private boolean mShowResults; /** * A basic AsyncTask for updating the query results cursor Loading @@ -83,6 +83,7 @@ public class SearchResultsSummary extends Fragment { protected void onPostExecute(Cursor cursor) { if (!isCancelled()) { setResultsCursor(cursor); setResultsVisibility(cursor.getCount() > 0); } else if (cursor != null) { cursor.close(); } Loading @@ -102,6 +103,7 @@ public class SearchResultsSummary extends Fragment { protected void onPostExecute(Cursor cursor) { if (!isCancelled()) { setSuggestionsCursor(cursor); setSuggestionsVisibility(cursor.getCount() > 0); } else if (cursor != null) { cursor.close(); } Loading @@ -116,7 +118,7 @@ public class SearchResultsSummary extends Fragment { mSuggestionsAdapter = new SuggestionsAdapter(getActivity()); if (savedInstanceState != null) { mShowOnlyResults = savedInstanceState.getBoolean(SAVE_KEY_SHOW_ONLY_RESULTS); mShowResults = savedInstanceState.getBoolean(SAVE_KEY_SHOW_RESULTS); } } Loading @@ -124,7 +126,7 @@ public class SearchResultsSummary extends Fragment { public void onSaveInstanceState(Bundle outState) { super.onSaveInstanceState(outState); outState.putBoolean(SAVE_KEY_SHOW_ONLY_RESULTS, mShowOnlyResults); outState.putBoolean(SAVE_KEY_SHOW_RESULTS, mShowResults); } @Override Loading Loading @@ -209,10 +211,9 @@ public class SearchResultsSummary extends Fragment { final Cursor cursor = mSuggestionsAdapter.mCursor; cursor.moveToPosition(position); mShowResults = true; mQuery = cursor.getString(0); mSearchView.setQuery(mQuery, false); setSuggestionsVisibility(false); mShowOnlyResults = true; } }); Loading @@ -220,10 +221,10 @@ public class SearchResultsSummary extends Fragment { } @Override public void onActivityCreated(Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); public void onResume() { super.onResume(); if (!mShowOnlyResults) { if (!mShowResults) { showSomeSuggestions(); } } Loading @@ -250,31 +251,28 @@ public class SearchResultsSummary extends Fragment { public boolean onQueryTextSubmit(String query) { mQuery = getFilteredQueryString(query); setSuggestionsVisibility(!mShowOnlyResults); mShowResults = true; setSuggestionsVisibility(false); updateSearchResults(); saveQueryToDatabase(); return true; } public boolean onQueryTextChange(String query) { final String newQuery = getFilteredQueryString(query); boolean isNewQuery; if (!TextUtils.isEmpty(mQuery)) { isNewQuery = !mQuery.equals(query); } else { isNewQuery = !TextUtils.isEmpty(query); } mQuery = newQuery; if (isNewQuery) { mShowOnlyResults = false; } if (!mShowOnlyResults) { if (TextUtils.isEmpty(mQuery)) { mShowResults = false; setResultsVisibility(false); updateSuggestions(); } else { mShowResults = true; setSuggestionsVisibility(false); updateSearchResults(); } updateSearchResults(); return true; } Loading Loading @@ -335,30 +333,33 @@ public class SearchResultsSummary extends Fragment { return filtered.toString(); } private void updateSuggestions() { private void clearAllTasks() { if (mUpdateSearchResultsTask != null) { mUpdateSearchResultsTask.cancel(false); mUpdateSearchResultsTask = null; } if (mUpdateSuggestionsTask != null) { mUpdateSuggestionsTask.cancel(false); mUpdateSuggestionsTask = null; } } private void updateSuggestions() { clearAllTasks(); if (mQuery == null) { setSuggestionsCursor(null); } else { setSuggestionsVisibility(true); mUpdateSuggestionsTask = new UpdateSuggestionsTask(); mUpdateSuggestionsTask.execute(mQuery); } } private void updateSearchResults() { if (mUpdateSearchResultsTask != null) { mUpdateSearchResultsTask.cancel(false); mUpdateSearchResultsTask = null; } clearAllTasks(); if (TextUtils.isEmpty(mQuery)) { setResultsVisibility(false); setResultsCursor(null); } else { setResultsVisibility(true); mUpdateSearchResultsTask = new UpdateSearchResultsTask(); mUpdateSearchResultsTask.execute(mQuery); } Loading Loading
src/com/android/settings/SettingsActivity.java +1 −1 Original line number Diff line number Diff line Loading @@ -1209,7 +1209,7 @@ public class SettingsActivity extends Activity @Override public boolean onQueryTextChange(String newText) { mSearchQuery = newText; if (TextUtils.isEmpty(newText) || mSearchResultsFragment == null) { if (mSearchResultsFragment == null) { return false; } return mSearchResultsFragment.onQueryTextChange(newText); Loading
src/com/android/settings/dashboard/SearchResultsSummary.java +30 −29 Original line number Diff line number Diff line Loading @@ -51,7 +51,7 @@ public class SearchResultsSummary extends Fragment { private static final String EMPTY_QUERY = ""; private static char ELLIPSIS = '\u2026'; private static final String SAVE_KEY_SHOW_ONLY_RESULTS = ":settings:show_only_results"; private static final String SAVE_KEY_SHOW_RESULTS = ":settings:show_results"; private SearchView mSearchView; Loading @@ -68,7 +68,7 @@ public class SearchResultsSummary extends Fragment { private String mQuery; private boolean mShowOnlyResults; private boolean mShowResults; /** * A basic AsyncTask for updating the query results cursor Loading @@ -83,6 +83,7 @@ public class SearchResultsSummary extends Fragment { protected void onPostExecute(Cursor cursor) { if (!isCancelled()) { setResultsCursor(cursor); setResultsVisibility(cursor.getCount() > 0); } else if (cursor != null) { cursor.close(); } Loading @@ -102,6 +103,7 @@ public class SearchResultsSummary extends Fragment { protected void onPostExecute(Cursor cursor) { if (!isCancelled()) { setSuggestionsCursor(cursor); setSuggestionsVisibility(cursor.getCount() > 0); } else if (cursor != null) { cursor.close(); } Loading @@ -116,7 +118,7 @@ public class SearchResultsSummary extends Fragment { mSuggestionsAdapter = new SuggestionsAdapter(getActivity()); if (savedInstanceState != null) { mShowOnlyResults = savedInstanceState.getBoolean(SAVE_KEY_SHOW_ONLY_RESULTS); mShowResults = savedInstanceState.getBoolean(SAVE_KEY_SHOW_RESULTS); } } Loading @@ -124,7 +126,7 @@ public class SearchResultsSummary extends Fragment { public void onSaveInstanceState(Bundle outState) { super.onSaveInstanceState(outState); outState.putBoolean(SAVE_KEY_SHOW_ONLY_RESULTS, mShowOnlyResults); outState.putBoolean(SAVE_KEY_SHOW_RESULTS, mShowResults); } @Override Loading Loading @@ -209,10 +211,9 @@ public class SearchResultsSummary extends Fragment { final Cursor cursor = mSuggestionsAdapter.mCursor; cursor.moveToPosition(position); mShowResults = true; mQuery = cursor.getString(0); mSearchView.setQuery(mQuery, false); setSuggestionsVisibility(false); mShowOnlyResults = true; } }); Loading @@ -220,10 +221,10 @@ public class SearchResultsSummary extends Fragment { } @Override public void onActivityCreated(Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); public void onResume() { super.onResume(); if (!mShowOnlyResults) { if (!mShowResults) { showSomeSuggestions(); } } Loading @@ -250,31 +251,28 @@ public class SearchResultsSummary extends Fragment { public boolean onQueryTextSubmit(String query) { mQuery = getFilteredQueryString(query); setSuggestionsVisibility(!mShowOnlyResults); mShowResults = true; setSuggestionsVisibility(false); updateSearchResults(); saveQueryToDatabase(); return true; } public boolean onQueryTextChange(String query) { final String newQuery = getFilteredQueryString(query); boolean isNewQuery; if (!TextUtils.isEmpty(mQuery)) { isNewQuery = !mQuery.equals(query); } else { isNewQuery = !TextUtils.isEmpty(query); } mQuery = newQuery; if (isNewQuery) { mShowOnlyResults = false; } if (!mShowOnlyResults) { if (TextUtils.isEmpty(mQuery)) { mShowResults = false; setResultsVisibility(false); updateSuggestions(); } else { mShowResults = true; setSuggestionsVisibility(false); updateSearchResults(); } updateSearchResults(); return true; } Loading Loading @@ -335,30 +333,33 @@ public class SearchResultsSummary extends Fragment { return filtered.toString(); } private void updateSuggestions() { private void clearAllTasks() { if (mUpdateSearchResultsTask != null) { mUpdateSearchResultsTask.cancel(false); mUpdateSearchResultsTask = null; } if (mUpdateSuggestionsTask != null) { mUpdateSuggestionsTask.cancel(false); mUpdateSuggestionsTask = null; } } private void updateSuggestions() { clearAllTasks(); if (mQuery == null) { setSuggestionsCursor(null); } else { setSuggestionsVisibility(true); mUpdateSuggestionsTask = new UpdateSuggestionsTask(); mUpdateSuggestionsTask.execute(mQuery); } } private void updateSearchResults() { if (mUpdateSearchResultsTask != null) { mUpdateSearchResultsTask.cancel(false); mUpdateSearchResultsTask = null; } clearAllTasks(); if (TextUtils.isEmpty(mQuery)) { setResultsVisibility(false); setResultsCursor(null); } else { setResultsVisibility(true); mUpdateSearchResultsTask = new UpdateSearchResultsTask(); mUpdateSearchResultsTask.execute(mQuery); } Loading