am 579e970a
: am cce30794
: am 50234a19
: am 22592afd
: am 9a8c58d4
: Merge "Fix automatic Wi-fi toggle" into lmp-dev
* commit '579e970a907fe0d99cdfe1f7cf9bd70343944df6': Fix automatic Wi-fi toggle
This commit is contained in:
@@ -40,6 +40,7 @@ import java.util.concurrent.atomic.AtomicBoolean;
|
||||
public class WifiEnabler implements SwitchBar.OnSwitchChangeListener {
|
||||
private Context mContext;
|
||||
private SwitchBar mSwitchBar;
|
||||
private boolean mListeningToOnSwitchChange = false;
|
||||
private AtomicBoolean mConnected = new AtomicBoolean(false);
|
||||
|
||||
private final WifiManager mWifiManager;
|
||||
@@ -99,23 +100,41 @@ public class WifiEnabler implements SwitchBar.OnSwitchChangeListener {
|
||||
public void setupSwitchBar() {
|
||||
final int state = mWifiManager.getWifiState();
|
||||
handleWifiStateChanged(state);
|
||||
mSwitchBar.addOnSwitchChangeListener(this);
|
||||
if (!mListeningToOnSwitchChange) {
|
||||
mSwitchBar.addOnSwitchChangeListener(this);
|
||||
mListeningToOnSwitchChange = true;
|
||||
}
|
||||
mSwitchBar.show();
|
||||
|
||||
mContext.registerReceiver(mReceiver, mIntentFilter);
|
||||
}
|
||||
|
||||
public void teardownSwitchBar() {
|
||||
mSwitchBar.removeOnSwitchChangeListener(this);
|
||||
if (mListeningToOnSwitchChange) {
|
||||
mSwitchBar.removeOnSwitchChangeListener(this);
|
||||
mListeningToOnSwitchChange = false;
|
||||
}
|
||||
mSwitchBar.hide();
|
||||
|
||||
mContext.unregisterReceiver(mReceiver);
|
||||
}
|
||||
|
||||
public void resume(Context context) {
|
||||
mContext = context;
|
||||
// Wi-Fi state is sticky, so just let the receiver update UI
|
||||
mContext.registerReceiver(mReceiver, mIntentFilter);
|
||||
if (!mListeningToOnSwitchChange) {
|
||||
mSwitchBar.addOnSwitchChangeListener(this);
|
||||
mListeningToOnSwitchChange = true;
|
||||
}
|
||||
}
|
||||
|
||||
public void pause() {
|
||||
mContext.unregisterReceiver(mReceiver);
|
||||
if (mListeningToOnSwitchChange) {
|
||||
mSwitchBar.removeOnSwitchChangeListener(this);
|
||||
mListeningToOnSwitchChange = false;
|
||||
}
|
||||
}
|
||||
|
||||
private void handleWifiStateChanged(int state) {
|
||||
|
Reference in New Issue
Block a user