diff --git a/src/com/android/settings/widget/SeekBarPreference.java b/src/com/android/settings/widget/SeekBarPreference.java index 30884eebada..3dd72f908fe 100644 --- a/src/com/android/settings/widget/SeekBarPreference.java +++ b/src/com/android/settings/widget/SeekBarPreference.java @@ -27,6 +27,7 @@ import android.os.Parcelable; import android.text.TextUtils; import android.util.AttributeSet; import android.view.KeyEvent; +import android.view.MotionEvent; import android.view.View; import android.view.accessibility.AccessibilityNodeInfo; import android.widget.SeekBar; @@ -42,7 +43,7 @@ import com.android.settingslib.RestrictedPreference; * Based on android.preference.SeekBarPreference, but uses support preference as base. */ public class SeekBarPreference extends RestrictedPreference - implements OnSeekBarChangeListener, View.OnKeyListener { + implements OnSeekBarChangeListener, View.OnKeyListener, View.OnHoverListener { public static final int HAPTIC_FEEDBACK_MODE_NONE = 0; public static final int HAPTIC_FEEDBACK_MODE_ON_TICKS = 1; @@ -128,6 +129,7 @@ public class SeekBarPreference extends RestrictedPreference public void onBindViewHolder(PreferenceViewHolder view) { super.onBindViewHolder(view); view.itemView.setOnKeyListener(this); + view.itemView.setOnHoverListener(this); mSeekBar = (SeekBar) view.findViewById( com.android.internal.R.id.seekbar); mSeekBar.setOnSeekBarChangeListener(this); @@ -414,6 +416,19 @@ public class SeekBarPreference extends RestrictedPreference notifyChanged(); } + @Override + public boolean onHover(View v, MotionEvent event) { + switch (event.getAction()) { + case MotionEvent.ACTION_HOVER_ENTER: + v.setHovered(true); + break; + case MotionEvent.ACTION_HOVER_EXIT: + v.setHovered(false); + break; + } + return false; + } + /** * SavedState, a subclass of {@link BaseSavedState}, will store the state * of MyPreference, a subclass of Preference.