diff options
| author | Raju Yadav <raju.yadav@sonymobile.com> | 2014-11-25 13:26:17 +0100 |
|---|---|---|
| committer | Fabrice Di Meglio <fdimeglio@google.com> | 2014-11-25 15:08:14 -0800 |
| commit | 21dba1f0e7a7df64e4e9211153523f09d4bdd9df (patch) | |
| tree | 1a5f2c0157715d3560ff72afff8c2b0dcc89ebff /src/com/android/settings/print | |
| parent | 3a84d40133e7a4f74fd1df091ba43fb85859b169 (diff) | |
| download | packages_apps_Settings-21dba1f0e7a7df64e4e9211153523f09d4bdd9df.tar.gz packages_apps_Settings-21dba1f0e7a7df64e4e9211153523f09d4bdd9df.tar.bz2 packages_apps_Settings-21dba1f0e7a7df64e4e9211153523f09d4bdd9df.zip | |
IllegalStateException fixed in print service settings
Settings crashed due to IllegalStateException
as OnQueryTextListener refers to an already
detached view. The listener is set to null
on press of home key (onPause).
Change-Id: I96052f95689ae17dd1b4e9d1c313100b7b47a599
Diffstat (limited to 'src/com/android/settings/print')
| -rw-r--r-- | src/com/android/settings/print/PrintServiceSettingsFragment.java | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/src/com/android/settings/print/PrintServiceSettingsFragment.java b/src/com/android/settings/print/PrintServiceSettingsFragment.java index 49fd6df78..e36e92cb6 100644 --- a/src/com/android/settings/print/PrintServiceSettingsFragment.java +++ b/src/com/android/settings/print/PrintServiceSettingsFragment.java @@ -137,6 +137,8 @@ public class PrintServiceSettingsFragment extends SettingsPreferenceFragment private boolean mServiceEnabled; + private SearchView mSearchView; + @Override public void onResume() { super.onResume(); @@ -148,6 +150,9 @@ public class PrintServiceSettingsFragment extends SettingsPreferenceFragment @Override public void onPause() { mSettingsContentObserver.unregister(getContentResolver()); + if (mSearchView != null) { + mSearchView.setOnQueryTextListener(null); + } super.onPause(); } @@ -408,8 +413,8 @@ public class PrintServiceSettingsFragment extends SettingsPreferenceFragment MenuItem searchItem = menu.findItem(R.id.print_menu_item_search); if (mServiceEnabled && mPrintersAdapter.getUnfilteredCount() > 0) { - SearchView searchView = (SearchView) searchItem.getActionView(); - searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() { + mSearchView = (SearchView) searchItem.getActionView(); + mSearchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() { @Override public boolean onQueryTextSubmit(String query) { return true; @@ -421,7 +426,7 @@ public class PrintServiceSettingsFragment extends SettingsPreferenceFragment return true; } }); - searchView.addOnAttachStateChangeListener(new View.OnAttachStateChangeListener() { + mSearchView.addOnAttachStateChangeListener(new View.OnAttachStateChangeListener() { @Override public void onViewAttachedToWindow(View view) { if (AccessibilityManager.getInstance(getActivity()).isEnabled()) { |
