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

Commit 4513d9ac authored by Corinna Vinschen's avatar Corinna Vinschen Committed by Bruno Martins
Browse files

InputDispatcher: On keypress, deliver keycode to pokeUserActivity



Change-Id: I8f64a6fa9b4b2e4520e25731f55e89f5087c70da
Signed-off-by: default avatarCorinna Vinschen <xda@vinschen.de>
parent c8adc5ec
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -2849,6 +2849,7 @@ void InputDispatcher::pokeUserActivityLocked(const EventEntry& eventEntry) {
    }

    int32_t eventType = USER_ACTIVITY_EVENT_OTHER;
    int32_t keyCode = AKEYCODE_UNKNOWN;
    switch (eventEntry.type) {
        case EventEntry::Type::MOTION: {
            const MotionEntry& motionEntry = static_cast<const MotionEntry&>(eventEntry);
@@ -2867,6 +2868,7 @@ void InputDispatcher::pokeUserActivityLocked(const EventEntry& eventEntry) {
                return;
            }
            eventType = USER_ACTIVITY_EVENT_BUTTON;
            keyCode = keyEntry.keyCode;
            break;
        }
        default: {
@@ -2876,10 +2878,10 @@ void InputDispatcher::pokeUserActivityLocked(const EventEntry& eventEntry) {
        }
    }

    auto command = [this, eventTime = eventEntry.eventTime, eventType, displayId]()
    auto command = [this, eventTime = eventEntry.eventTime, eventType, displayId, keyCode]()
                           REQUIRES(mLock) {
                               scoped_unlock unlock(mLock);
                               mPolicy->pokeUserActivity(eventTime, eventType, displayId);
                               mPolicy->pokeUserActivity(eventTime, eventType, displayId, keyCode);
                           };
    postCommandLocked(std::move(command));
}
+2 −1
Original line number Diff line number Diff line
@@ -123,7 +123,8 @@ public:
                              uint32_t policyFlags) = 0;

    /* Poke user activity for an event dispatched to a window. */
    virtual void pokeUserActivity(nsecs_t eventTime, int32_t eventType, int32_t displayId) = 0;
    virtual void pokeUserActivity(nsecs_t eventTime, int32_t eventType, int32_t displayId,
                                  int32_t keyCode) = 0;

    /* Notifies the policy that a pointer down event has occurred outside the current focused
     * window.