Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 73358906 authored by Fabrice Di Meglio's avatar Fabrice Di Meglio Committed by Android (Google) Code Review
Browse files

Merge "Better decoupling of Index updates in WiFi Settings"

parents a5c0c173 784f266c
Loading
Loading
Loading
Loading
+24 −2
Original line number Diff line number Diff line
@@ -24,6 +24,8 @@ import android.net.NetworkInfo;
import android.net.wifi.SupplicantState;
import android.net.wifi.WifiInfo;
import android.net.wifi.WifiManager;
import android.os.Handler;
import android.os.Message;
import android.provider.Settings;
import android.widget.CompoundButton;
import android.widget.Switch;
@@ -64,6 +66,22 @@ public class WifiEnabler implements CompoundButton.OnCheckedChangeListener {
        }
    };

    private static final String EVENT_DATA_IS_WIFI_ON = "is_wifi_on";
    private static final int EVENT_UPDATE_INDEX = 0;

    private Handler mHandler = new Handler() {
        @Override
        public void handleMessage(Message msg) {
            switch (msg.what) {
                case EVENT_UPDATE_INDEX:
                    final boolean isWiFiOn = msg.getData().getBoolean(EVENT_DATA_IS_WIFI_ON);
                    Index.getInstance(mContext).updateFromClassNameResource(
                            WifiSettings.class.getName(), false, isWiFiOn);
                    break;
            }
        }
    };

    public WifiEnabler(Context context, Switch switch_) {
        mContext = context;
        mSwitch = switch_;
@@ -154,8 +172,12 @@ public class WifiEnabler implements CompoundButton.OnCheckedChangeListener {
    }

    private void updateSearchIndex(boolean isWiFiOn) {
        Index.getInstance(mContext).updateFromClassNameResource(
                WifiSettings.class.getName(), false, isWiFiOn);
        mHandler.removeMessages(EVENT_UPDATE_INDEX);

        Message msg = new Message();
        msg.what = EVENT_UPDATE_INDEX;
        msg.getData().putBoolean(EVENT_DATA_IS_WIFI_ON, isWiFiOn);
        mHandler.sendMessage(msg);
    }

    private void setSwitchChecked(boolean checked) {