diff options
author | 2016-08-30 17:20:17 +0000 | |
---|---|---|
committer | 2016-08-30 17:20:17 +0000 | |
commit | 994e5909d1a579641efa66c0b04e7af9c67b8fff (patch) | |
tree | bffdcfb62232a233a3ad639ce52fc6150d4def8c | |
parent | 0a38c9f5df6ce7efd60fa54328ffa1dca021114b (diff) | |
parent | 214f2fe7b41406e7ef8a342320e5e1fd3530b1a7 (diff) |
Play sound on ACTION_DOWN for navigation keys am: 05bce15da9 am: 9bdfbd7c82
am: 214f2fe7b4
Change-Id: I5cd28d2b4c1d903fa76a8bae0edec93d7d047282
-rw-r--r-- | packages/SystemUI/src/com/android/systemui/statusbar/policy/KeyButtonView.java | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/policy/KeyButtonView.java b/packages/SystemUI/src/com/android/systemui/statusbar/policy/KeyButtonView.java index 61bac2d8d3c4..e6066aaa4c31 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/policy/KeyButtonView.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/policy/KeyButtonView.java @@ -59,6 +59,7 @@ public class KeyButtonView extends ImageView implements ButtonDispatcher.ButtonI private AudioManager mAudioManager; private boolean mGestureAborted; private boolean mLongClicked; + private OnClickListener mOnClickListener; private final Runnable mCheckLongPress = new Runnable() { public void run() { @@ -109,6 +110,12 @@ public class KeyButtonView extends ImageView implements ButtonDispatcher.ButtonI mCode = code; } + @Override + public void setOnClickListener(OnClickListener onClickListener) { + super.setOnClickListener(onClickListener); + mOnClickListener = onClickListener; + } + public void loadAsync(String uri) { new AsyncTask<String, Void, Drawable>() { @Override @@ -190,6 +197,7 @@ public class KeyButtonView extends ImageView implements ButtonDispatcher.ButtonI // Provide the same haptic feedback that the system offers for virtual keys. performHapticFeedback(HapticFeedbackConstants.VIRTUAL_KEY); } + playSoundEffect(SoundEffectConstants.CLICK); removeCallbacks(mCheckLongPress); postDelayed(mCheckLongPress, ViewConfiguration.getLongPressTimeout()); break; @@ -215,14 +223,14 @@ public class KeyButtonView extends ImageView implements ButtonDispatcher.ButtonI if (doIt) { sendEvent(KeyEvent.ACTION_UP, 0); sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_CLICKED); - playSoundEffect(SoundEffectConstants.CLICK); } else { sendEvent(KeyEvent.ACTION_UP, KeyEvent.FLAG_CANCELED); } } else { // no key code, just a regular ImageView - if (doIt) { - performClick(); + if (doIt && mOnClickListener != null) { + mOnClickListener.onClick(this); + sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_CLICKED); } } removeCallbacks(mCheckLongPress); |