From 4aaebfe5911fe33149f88228e7273ac045ad6cba Mon Sep 17 00:00:00 2001 From: Irfan Sheriff Date: Wed, 17 Oct 2012 18:43:37 -0700 Subject: [PATCH] Revert "bluetooth won't turn on after turn Airplane mode off on setting screen on manta(tablet)" This reverts commit 0b21b3d725935c03a4ca4ab8476da2b0675a53cd. Bug: 7366814 Change-Id: I0992e9ca1a6e36ebc3a717137a6c494835fad712 --- .../settings/bluetooth/BluetoothEnabler.java | 42 +++++-------------- 1 file changed, 10 insertions(+), 32 deletions(-) diff --git a/src/com/android/settings/bluetooth/BluetoothEnabler.java b/src/com/android/settings/bluetooth/BluetoothEnabler.java index 87cf4ee9788..f08e083b5b3 100644 --- a/src/com/android/settings/bluetooth/BluetoothEnabler.java +++ b/src/com/android/settings/bluetooth/BluetoothEnabler.java @@ -37,7 +37,7 @@ import com.android.settings.WirelessSettings; public final class BluetoothEnabler implements CompoundButton.OnCheckedChangeListener { private final Context mContext; private Switch mSwitch; - private boolean mValidListener; + private final LocalBluetoothAdapter mLocalAdapter; private final IntentFilter mIntentFilter; @@ -52,7 +52,6 @@ public final class BluetoothEnabler implements CompoundButton.OnCheckedChangeLis public BluetoothEnabler(Context context, Switch switch_) { mContext = context; mSwitch = switch_; - mValidListener = false; LocalBluetoothManager manager = LocalBluetoothManager.getInstance(context); if (manager == null) { @@ -75,10 +74,7 @@ public final class BluetoothEnabler implements CompoundButton.OnCheckedChangeLis handleStateChanged(mLocalAdapter.getBluetoothState()); mContext.registerReceiver(mReceiver, mIntentFilter); - synchronized(this) { - mSwitch.setOnCheckedChangeListener(this); - mValidListener = true; - } + mSwitch.setOnCheckedChangeListener(this); } public void pause() { @@ -87,26 +83,20 @@ public final class BluetoothEnabler implements CompoundButton.OnCheckedChangeLis } mContext.unregisterReceiver(mReceiver); - synchronized(this) { - mSwitch.setOnCheckedChangeListener(null); - mValidListener = false; - } + mSwitch.setOnCheckedChangeListener(null); } public void setSwitch(Switch switch_) { if (mSwitch == switch_) return; + mSwitch.setOnCheckedChangeListener(null); + mSwitch = switch_; + mSwitch.setOnCheckedChangeListener(this); int bluetoothState = BluetoothAdapter.STATE_OFF; if (mLocalAdapter != null) bluetoothState = mLocalAdapter.getBluetoothState(); boolean isOn = bluetoothState == BluetoothAdapter.STATE_ON; boolean isOff = bluetoothState == BluetoothAdapter.STATE_OFF; - - synchronized(this) { - mSwitch.setOnCheckedChangeListener(null); - mSwitch = switch_; - mSwitch.setOnCheckedChangeListener(null); - } - setChecked(isOn); + mSwitch.setChecked(isOn); mSwitch.setEnabled(isOn || isOff); } @@ -131,31 +121,19 @@ public final class BluetoothEnabler implements CompoundButton.OnCheckedChangeLis mSwitch.setEnabled(false); break; case BluetoothAdapter.STATE_ON: - setChecked(true); + mSwitch.setChecked(true); mSwitch.setEnabled(true); break; case BluetoothAdapter.STATE_TURNING_OFF: mSwitch.setEnabled(false); break; case BluetoothAdapter.STATE_OFF: - setChecked(false); + mSwitch.setChecked(false); mSwitch.setEnabled(true); break; default: - setChecked(false); + mSwitch.setChecked(false); mSwitch.setEnabled(true); } } - - private synchronized void setChecked(boolean isChecked) { - // set listener to null, so onCheckedChanged won't be called - // if the checked status on Switch isn't changed by user click - if (mValidListener) { - mSwitch.setOnCheckedChangeListener(null); - } - mSwitch.setChecked(isChecked); - if (mValidListener) { - mSwitch.setOnCheckedChangeListener(this); - } - } }