summaryrefslogtreecommitdiffstats
path: root/src/com/android/settings/print
diff options
context:
space:
mode:
authorRaju Yadav <raju.yadav@sonymobile.com>2014-11-25 13:26:17 +0100
committerFabrice Di Meglio <fdimeglio@google.com>2014-11-25 15:08:14 -0800
commit21dba1f0e7a7df64e4e9211153523f09d4bdd9df (patch)
tree1a5f2c0157715d3560ff72afff8c2b0dcc89ebff /src/com/android/settings/print
parent3a84d40133e7a4f74fd1df091ba43fb85859b169 (diff)
downloadpackages_apps_Settings-21dba1f0e7a7df64e4e9211153523f09d4bdd9df.zip
packages_apps_Settings-21dba1f0e7a7df64e4e9211153523f09d4bdd9df.tar.gz
packages_apps_Settings-21dba1f0e7a7df64e4e9211153523f09d4bdd9df.tar.bz2
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.java11
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 49fd6df..e36e92c 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()) {