Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e2e01268 authored by Jeff Brown's avatar Jeff Brown
Browse files

Only set KeyEvent long press flag when repeat count equals 1.

This fixes a Gingerbread regression.

Bug: 3507021
Change-Id: I8c2acb35be718fea7e996175c1407e84315d17ef
parent 55acdf7d
Loading
Loading
Loading
Loading
+6 −4
Original line number Diff line number Diff line
@@ -699,10 +699,6 @@ InputDispatcher::KeyEntry* InputDispatcher::synthesizeKeyRepeatLocked(
    // mKeyRepeatState.lastKeyEntry in addition to the one we return.
    entry->refCount += 1;

    if (entry->repeatCount == 1) {
        entry->flags |= AKEY_EVENT_FLAG_LONG_PRESS;
    }

    mKeyRepeatState.nextRepeatTime = currentTime + keyRepeatDelay;
    return entry;
}
@@ -752,6 +748,12 @@ bool InputDispatcher::dispatchKeyLocked(
            resetKeyRepeatLocked();
        }

        if (entry->repeatCount == 1) {
            entry->flags |= AKEY_EVENT_FLAG_LONG_PRESS;
        } else {
            entry->flags &= ~AKEY_EVENT_FLAG_LONG_PRESS;
        }

        entry->dispatchInProgress = true;
        resetTargetsLocked();