From 2a3b15b267f4a4c43a2d3f47241c489b9cd94d41 Mon Sep 17 00:00:00 2001 From: "Tadashi G. Takaoka" Date: Wed, 31 Oct 2012 19:37:35 +0900 Subject: [PATCH] Flatten nested if-else blocks into plain if-else blocks (refactor step 2.5) Change-Id: I42aad04658e14e8fd703e3828676719a333ec8f9 --- .../inputmethod/keyboard/PointerTracker.java | 68 +++++++++---------- 1 file changed, 32 insertions(+), 36 deletions(-) diff --git a/java/src/com/android/inputmethod/keyboard/PointerTracker.java b/java/src/com/android/inputmethod/keyboard/PointerTracker.java index 110393b9c..fc31c9436 100644 --- a/java/src/com/android/inputmethod/keyboard/PointerTracker.java +++ b/java/src/com/android/inputmethod/keyboard/PointerTracker.java @@ -971,44 +971,40 @@ public final class PointerTracker implements PointerTrackerQueue.Element { startRepeatKey(key); if (mIsAllowedSlidingKeyInput) { processSlidingKeyInput(key, x, y, eventTime); + } + // HACK: On some devices, quick successive touches may be reported as a sudden move by + // touch panel firmware. This hack detects such cases and translates the move event to + // successive up and down events. + // TODO: Should find a way to balance gesture detection and this hack. + else if (sNeedsPhantomSuddenMoveEventHack + && getDistance(x, y, lastX, lastY) >= mPhantonSuddenMoveThreshold) { + processPhantomSuddenMoveHack(key, x, y, eventTime, oldKey, lastX, lastY); + } + // HACK: On some devices, quick successive proximate touches may be reported as a bogus + // down-move-up event by touch panel firmware. This hack detects such cases and breaks + // these events into separate up and down events. + else if (sNeedsProximateBogusDownMoveUpEventHack && sTimeRecorder.isInFastTyping(eventTime) + && mBogusMoveEventDetector.isCloseToActualDownEvent(x, y)) { + processProximateBogusDownMoveUpEventHack(key, x, y, eventTime, oldKey, lastX, lastY); + } + // HACK: If there are currently multiple touches, register the key even if the finger + // slides off the key. This defends against noise from some touch panels when there are + // close multiple touches. + // Caveat: When in chording input mode with a modifier key, we don't use this hack. + else if (getActivePointerTrackerCount() > 1 && sPointerTrackerQueue != null + && !sPointerTrackerQueue.hasModifierKeyOlderThan(this)) { + if (DEBUG_MODE) { + Log.w(TAG, String.format("[%d] onMoveEvent:" + + " detected sliding finger while multi touching", mPointerId)); + } + onUpEvent(x, y, eventTime); + mKeyAlreadyProcessed = true; + setReleasedKeyGraphics(oldKey); } else { - // HACK: On some devices, quick successive touches may be reported as a sudden move by - // touch panel firmware. This hack detects such cases and translates the move event to - // successive up and down events. - // TODO: Should find a way to balance gesture detection and this hack. - if (sNeedsPhantomSuddenMoveEventHack - && getDistance(x, y, lastX, lastY) >= mPhantonSuddenMoveThreshold) { - processPhantomSuddenMoveHack(key, x, y, eventTime, oldKey, lastX, lastY); - } - // HACK: On some devices, quick successive proximate touches may be reported as a bogus - // down-move-up event by touch panel firmware. This hack detects such cases and breaks - // these events into separate up and down events. - else if (sNeedsProximateBogusDownMoveUpEventHack - && sTimeRecorder.isInFastTyping(eventTime) - && mBogusMoveEventDetector.isCloseToActualDownEvent(x, y)) { - processProximateBogusDownMoveUpEventHack(key, x, y, eventTime, oldKey, lastX, lastY); - } - else { - // HACK: If there are currently multiple touches, register the key even if the - // finger slides off the key. This defends against noise from some touch panels - // when there are close multiple touches. - // Caveat: When in chording input mode with a modifier key, we don't use this hack. - if (getActivePointerTrackerCount() > 1 && sPointerTrackerQueue != null - && !sPointerTrackerQueue.hasModifierKeyOlderThan(this)) { - if (DEBUG_MODE) { - Log.w(TAG, String.format("[%d] onMoveEvent:" - + " detected sliding finger while multi touching", mPointerId)); - } - onUpEvent(x, y, eventTime); - mKeyAlreadyProcessed = true; - setReleasedKeyGraphics(oldKey); - } else { - if (!mIsDetectingGesture) { - mKeyAlreadyProcessed = true; - } - setReleasedKeyGraphics(oldKey); - } + if (!mIsDetectingGesture) { + mKeyAlreadyProcessed = true; } + setReleasedKeyGraphics(oldKey); } }