This CL is not working (even after careful testing) but when I tried I was not completely ToT.

Revert "Fix bug #15170508 When I initially load settings, all on/off toggles start in off position then move to on after pane loads"

This reverts commit 1e52db8063.

Change-Id: I73bdfeba4a4b3e993e37cdae1e3733ffe272b9eb
This commit is contained in:
Fabrice Di Meglio
2014-05-28 17:36:21 +00:00
parent 1e52db8063
commit 00b5e6b247
17 changed files with 90 additions and 101 deletions

View File

@@ -27,6 +27,7 @@ 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;
import android.widget.Toast;
@@ -39,6 +40,7 @@ import java.util.concurrent.atomic.AtomicBoolean;
public class WifiEnabler implements SwitchBar.OnSwitchChangeListener {
private Context mContext;
private Switch mSwitch;
private SwitchBar mSwitchBar;
private AtomicBoolean mConnected = new AtomicBoolean(false);
@@ -85,6 +87,7 @@ public class WifiEnabler implements SwitchBar.OnSwitchChangeListener {
public WifiEnabler(Context context, SwitchBar switchBar) {
mContext = context;
mSwitchBar = switchBar;
mSwitch = switchBar.getSwitch();
mWifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
mIntentFilter = new IntentFilter(WifiManager.WIFI_STATE_CHANGED_ACTION);
@@ -110,24 +113,24 @@ public class WifiEnabler implements SwitchBar.OnSwitchChangeListener {
private void handleWifiStateChanged(int state) {
switch (state) {
case WifiManager.WIFI_STATE_ENABLING:
mSwitchBar.setSwitchEnabled(false);
mSwitch.setEnabled(false);
break;
case WifiManager.WIFI_STATE_ENABLED:
setSwitchChecked(true);
mSwitchBar.setSwitchEnabled(true);
mSwitch.setEnabled(true);
updateSearchIndex(true);
break;
case WifiManager.WIFI_STATE_DISABLING:
mSwitchBar.setSwitchEnabled(false);
mSwitch.setEnabled(false);
break;
case WifiManager.WIFI_STATE_DISABLED:
setSwitchChecked(false);
mSwitchBar.setSwitchEnabled(true);
mSwitch.setEnabled(true);
updateSearchIndex(false);
break;
default:
setSwitchChecked(false);
mSwitchBar.setSwitchEnabled(true);
mSwitch.setEnabled(true);
updateSearchIndex(false);
}
}
@@ -142,9 +145,9 @@ public class WifiEnabler implements SwitchBar.OnSwitchChangeListener {
}
private void setSwitchChecked(boolean checked) {
if (checked != mSwitchBar.isSwitchChecked()) {
if (checked != mSwitch.isChecked()) {
mStateMachineEvent = true;
mSwitchBar.setSwitchChecked(checked);
mSwitch.setChecked(checked);
mStateMachineEvent = false;
}
}
@@ -186,10 +189,10 @@ public class WifiEnabler implements SwitchBar.OnSwitchChangeListener {
mWifiManager.setWifiApEnabled(null, false);
}
mSwitchBar.setSwitchEnabled(false);
mSwitch.setEnabled(false);
if (!mWifiManager.setWifiEnabled(isChecked)) {
// Error
mSwitchBar.setSwitchEnabled(true);
mSwitch.setEnabled(true);
Toast.makeText(mContext, R.string.wifi_error, Toast.LENGTH_SHORT).show();
}
}