diff options
| -rw-r--r-- | packages/SystemUI/src/com/android/systemui/statusbar/policy/KeyButtonView.java | 20 |
1 files changed, 11 insertions, 9 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 127d1b180f7b..aed3dc7aaed2 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/policy/KeyButtonView.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/policy/KeyButtonView.java @@ -100,22 +100,24 @@ public class KeyButtonView extends ImageView { if (mSending) { x = (int)ev.getX(); y = (int)ev.getY(); - if (x < 0 || x >= getWidth() || y < 0 || y >= getHeight()) { - mSending = false; - sendEvent(KeyEvent.ACTION_UP, - KeyEvent.FLAG_FROM_SYSTEM | KeyEvent.FLAG_VIRTUAL_HARD_KEY - | KeyEvent.FLAG_CANCELED); - setPressed(false); - removeCallbacks(mCheckLongPress); - } + setPressed(x >= 0 && x < getWidth() && y >= 0 && y < getHeight()); } break; - case MotionEvent.ACTION_UP: case MotionEvent.ACTION_CANCEL: setPressed(false); if (mSending && !mLongPressed) { mSending = false; sendEvent(KeyEvent.ACTION_UP, + KeyEvent.FLAG_FROM_SYSTEM | KeyEvent.FLAG_VIRTUAL_HARD_KEY + | KeyEvent.FLAG_CANCELED); + removeCallbacks(mCheckLongPress); + } + break; + case MotionEvent.ACTION_UP: + setPressed(false); + if (mSending && !mLongPressed) { + mSending = false; + sendEvent(KeyEvent.ACTION_UP, KeyEvent.FLAG_FROM_SYSTEM | KeyEvent.FLAG_VIRTUAL_HARD_KEY); removeCallbacks(mCheckLongPress); } |