diff options
author | Fabrice Di Meglio <fdimeglio@google.com> | 2014-06-04 18:08:32 +0000 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2014-06-04 18:08:32 +0000 |
commit | 475f5b73c290c09d0d674bf7b698b4125f6b91bc (patch) | |
tree | 12fd286782e8716bfd07026be398a2630c9fa0c5 /src | |
parent | f7c460d8d66ebc2723fc58f02e147d1e7dd6dbd6 (diff) | |
parent | 6ba7075ae8afb1edc5cb7864bc71121c9992903f (diff) | |
download | packages_apps_Settings-475f5b73c290c09d0d674bf7b698b4125f6b91bc.zip packages_apps_Settings-475f5b73c290c09d0d674bf7b698b4125f6b91bc.tar.gz packages_apps_Settings-475f5b73c290c09d0d674bf7b698b4125f6b91bc.tar.bz2 |
am 6ba7075a: Merge "Entire Switch bar should be a touch state" into lmp-preview-dev
* commit '6ba7075ae8afb1edc5cb7864bc71121c9992903f':
Entire Switch bar should be a touch state
Diffstat (limited to 'src')
-rw-r--r-- | src/com/android/settings/widget/SwitchBar.java | 20 |
1 files changed, 17 insertions, 3 deletions
diff --git a/src/com/android/settings/widget/SwitchBar.java b/src/com/android/settings/widget/SwitchBar.java index 40c8481..bc06d87 100644 --- a/src/com/android/settings/widget/SwitchBar.java +++ b/src/com/android/settings/widget/SwitchBar.java @@ -20,6 +20,7 @@ import android.content.Context; import android.transition.TransitionManager; import android.util.AttributeSet; import android.view.LayoutInflater; +import android.view.MotionEvent; import android.view.View; import android.view.ViewGroup; import android.widget.CompoundButton; @@ -31,7 +32,8 @@ import com.android.settings.R; import java.util.ArrayList; -public class SwitchBar extends LinearLayout implements CompoundButton.OnCheckedChangeListener { +public class SwitchBar extends LinearLayout implements CompoundButton.OnCheckedChangeListener, + View.OnClickListener { private ToggleSwitch mSwitch; private TextView mTextView; @@ -82,6 +84,8 @@ public class SwitchBar extends LinearLayout implements CompoundButton.OnCheckedC mSwitch.setTrackResource(R.drawable.switch_track); mSwitch.setThumbResource(R.drawable.switch_inner); + setOnClickListener(this); + // Default is hide setVisibility(View.GONE); } @@ -105,13 +109,23 @@ public class SwitchBar extends LinearLayout implements CompoundButton.OnCheckedC } @Override - public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { + public void onClick(View v) { + final boolean isChecked = !mSwitch.isChecked(); + mSwitch.setChecked(isChecked); + } + + public void propagateChecked(boolean isChecked) { final int count = mSwitchChangeListeners.size(); for (int n = 0; n < count; n++) { - mSwitchChangeListeners.get(n).onSwitchChanged(mSwitch,isChecked); + mSwitchChangeListeners.get(n).onSwitchChanged(mSwitch, isChecked); } } + @Override + public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { + propagateChecked(isChecked); + } + public void addOnSwitchChangeListener(OnSwitchChangeListener listener) { if (mSwitchChangeListeners.contains(listener)) { throw new IllegalStateException("Cannot add twice the same OnSwitchChangeListener"); |