Use SearchIndexableData enable state for WiFi Settings
- same as for Bluetooth
- now the remembered WiFi networks names can be indexed when
WiFi is turned on
Change-Id: I904ce6a425c21ee07ce3ee8fdc0cd71ab5a18d12
diff --git a/src/com/android/settings/wifi/WifiEnabler.java b/src/com/android/settings/wifi/WifiEnabler.java
index a6989f0..ad0ba56 100644
--- a/src/com/android/settings/wifi/WifiEnabler.java
+++ b/src/com/android/settings/wifi/WifiEnabler.java
@@ -33,6 +33,7 @@
import com.android.settings.R;
import com.android.settings.WirelessSettings;
+import com.android.settings.search.Index;
import java.util.concurrent.atomic.AtomicBoolean;
@@ -136,6 +137,7 @@
case WifiManager.WIFI_STATE_ENABLED:
setSwitchChecked(true);
mSwitch.setEnabled(true);
+ updateSearchIndex(true);
break;
case WifiManager.WIFI_STATE_DISABLING:
mSwitch.setEnabled(false);
@@ -143,14 +145,20 @@
case WifiManager.WIFI_STATE_DISABLED:
setSwitchChecked(false);
mSwitch.setEnabled(true);
+ updateSearchIndex(false);
break;
default:
setSwitchChecked(false);
mSwitch.setEnabled(true);
- break;
+ updateSearchIndex(false);
}
}
+ private void updateSearchIndex(boolean isWiFiOn) {
+ Index.getInstance(mContext).updateFromClassNameResource(
+ WifiSettings.class.getName(), isWiFiOn);
+ }
+
private void setSwitchChecked(boolean checked) {
if (checked != mSwitch.isChecked()) {
mStateMachineEvent = true;
diff --git a/src/com/android/settings/wifi/WifiSettings.java b/src/com/android/settings/wifi/WifiSettings.java
index c911ead..667feb3 100644
--- a/src/com/android/settings/wifi/WifiSettings.java
+++ b/src/com/android/settings/wifi/WifiSettings.java
@@ -1195,6 +1195,7 @@
data = new SearchIndexableRaw(context);
data.title = accessPoint.getTitle().toString();
data.screenTitle = res.getString(R.string.wifi_settings);
+ data.enabled = enabled;
result.add(data);
}