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

Commit 460f4c24 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Move displayId into InputEvent"

parents 8930cd21 91fa08ff
Loading
Loading
Loading
Loading
+13 −0
Original line number Diff line number Diff line
@@ -94,6 +94,19 @@ public abstract class InputEvent implements Parcelable {
        return (getSource() & source) == source;
    }

    /**
     * Gets the display id of the event.
     * @return The display id associated with the event.
     * @hide
     */
    public abstract int getDisplayId();

    /**
     * Modifies the display id associated with the event
     * @param displayId
     * @hide
     */
    public abstract void setDisplayId(int displayId);
    /**
     * Copies the event.
     *
+40 −1
Original line number Diff line number Diff line
@@ -16,6 +16,8 @@

package android.view;

import static android.view.Display.INVALID_DISPLAY;

import android.annotation.NonNull;
import android.annotation.TestApi;
import android.os.Parcel;
@@ -1246,6 +1248,7 @@ public class KeyEvent extends InputEvent implements Parcelable {

    private int mDeviceId;
    private int mSource;
    private int mDisplayId;
    private int mMetaState;
    private int mAction;
    private int mKeyCode;
@@ -1473,6 +1476,7 @@ public class KeyEvent extends InputEvent implements Parcelable {
        mScanCode = scancode;
        mFlags = flags;
        mSource = source;
        mDisplayId = INVALID_DISPLAY;
    }

    /**
@@ -1497,6 +1501,7 @@ public class KeyEvent extends InputEvent implements Parcelable {
        mDeviceId = deviceId;
        mFlags = flags;
        mSource = InputDevice.SOURCE_KEYBOARD;
        mDisplayId = INVALID_DISPLAY;
    }

    /**
@@ -1511,6 +1516,7 @@ public class KeyEvent extends InputEvent implements Parcelable {
        mMetaState = origEvent.mMetaState;
        mDeviceId = origEvent.mDeviceId;
        mSource = origEvent.mSource;
        mDisplayId = origEvent.mDisplayId;
        mScanCode = origEvent.mScanCode;
        mFlags = origEvent.mFlags;
        mCharacters = origEvent.mCharacters;
@@ -1537,6 +1543,7 @@ public class KeyEvent extends InputEvent implements Parcelable {
        mMetaState = origEvent.mMetaState;
        mDeviceId = origEvent.mDeviceId;
        mSource = origEvent.mSource;
        mDisplayId = origEvent.mDisplayId;
        mScanCode = origEvent.mScanCode;
        mFlags = origEvent.mFlags;
        mCharacters = origEvent.mCharacters;
@@ -1564,7 +1571,7 @@ public class KeyEvent extends InputEvent implements Parcelable {
     */
    public static KeyEvent obtain(long downTime, long eventTime, int action,
            int code, int repeat, int metaState,
            int deviceId, int scancode, int flags, int source, String characters) {
            int deviceId, int scancode, int flags, int source, int displayId, String characters) {
        KeyEvent ev = obtain();
        ev.mDownTime = downTime;
        ev.mEventTime = eventTime;
@@ -1576,10 +1583,25 @@ public class KeyEvent extends InputEvent implements Parcelable {
        ev.mScanCode = scancode;
        ev.mFlags = flags;
        ev.mSource = source;
        ev.mDisplayId = displayId;
        ev.mCharacters = characters;
        return ev;
    }

    /**
     * Obtains a (potentially recycled) key event.
     *
     * @hide
     */
    public static KeyEvent obtain(long downTime, long eventTime, int action,
            int code, int repeat, int metaState,
            int deviceId, int scancode, int flags, int source, String characters) {
        return obtain(downTime, eventTime, action, code, repeat, metaState, deviceId, scancode,
                flags, source, INVALID_DISPLAY, characters);
    }

    /**

    /**
     * Obtains a (potentially recycled) copy of another key event.
     *
@@ -1597,6 +1619,7 @@ public class KeyEvent extends InputEvent implements Parcelable {
        ev.mScanCode = other.mScanCode;
        ev.mFlags = other.mFlags;
        ev.mSource = other.mSource;
        ev.mDisplayId = other.mDisplayId;
        ev.mCharacters = other.mCharacters;
        return ev;
    }
@@ -1683,6 +1706,7 @@ public class KeyEvent extends InputEvent implements Parcelable {
        mMetaState = origEvent.mMetaState;
        mDeviceId = origEvent.mDeviceId;
        mSource = origEvent.mSource;
        mDisplayId = origEvent.mDisplayId;
        mScanCode = origEvent.mScanCode;
        mFlags = origEvent.mFlags;
        // Don't copy mCharacters, since one way or the other we'll lose it
@@ -1917,6 +1941,18 @@ public class KeyEvent extends InputEvent implements Parcelable {
        mSource = source;
    }

    /** @hide */
    @Override
    public final int getDisplayId() {
        return mDisplayId;
    }

    /** @hide */
    @Override
    public final void setDisplayId(int displayId) {
        mDisplayId = displayId;
    }

    /**
     * <p>Returns the state of the meta keys.</p>
     *
@@ -2852,6 +2888,7 @@ public class KeyEvent extends InputEvent implements Parcelable {
        msg.append(", downTime=").append(mDownTime);
        msg.append(", deviceId=").append(mDeviceId);
        msg.append(", source=0x").append(Integer.toHexString(mSource));
        msg.append(", displayId=").append(mDisplayId);
        msg.append(" }");
        return msg.toString();
    }
@@ -2983,6 +3020,7 @@ public class KeyEvent extends InputEvent implements Parcelable {
    private KeyEvent(Parcel in) {
        mDeviceId = in.readInt();
        mSource = in.readInt();
        mDisplayId = in.readInt();
        mAction = in.readInt();
        mKeyCode = in.readInt();
        mRepeatCount = in.readInt();
@@ -2999,6 +3037,7 @@ public class KeyEvent extends InputEvent implements Parcelable {

        out.writeInt(mDeviceId);
        out.writeInt(mSource);
        out.writeInt(mDisplayId);
        out.writeInt(mAction);
        out.writeInt(mKeyCode);
        out.writeInt(mRepeatCount);
+2 −0
Original line number Diff line number Diff line
@@ -1943,11 +1943,13 @@ public final class MotionEvent extends InputEvent implements Parcelable {
    }

    /** @hide */
    @Override
    public int getDisplayId() {
        return nativeGetDisplayId(mNativePtr);
    }

    /** @hide */
    @Override
    public void setDisplayId(int displayId) {
        nativeSetDisplayId(mNativePtr, displayId);
    }
+3 −4
Original line number Diff line number Diff line
@@ -114,8 +114,8 @@ status_t NativeInputEventSender::sendKeyEvent(uint32_t seq, const KeyEvent* even

    uint32_t publishedSeq = mNextPublishedSeq++;
    status_t status = mInputPublisher.publishKeyEvent(publishedSeq,
            event->getDeviceId(), event->getSource(), event->getAction(), event->getFlags(),
            event->getKeyCode(), event->getScanCode(), event->getMetaState(),
            event->getDeviceId(), event->getSource(), event->getDisplayId(), event->getAction(),
            event->getFlags(), event->getKeyCode(), event->getScanCode(), event->getMetaState(),
            event->getRepeatCount(), event->getDownTime(), event->getEventTime());
    if (status) {
        ALOGW("Failed to send key event on channel '%s'.  status=%d",
@@ -135,8 +135,7 @@ status_t NativeInputEventSender::sendMotionEvent(uint32_t seq, const MotionEvent
    for (size_t i = 0; i <= event->getHistorySize(); i++) {
        publishedSeq = mNextPublishedSeq++;
        status_t status = mInputPublisher.publishMotionEvent(publishedSeq,
                event->getDeviceId(), event->getSource(),
                event->getDisplayId(),
                event->getDeviceId(), event->getSource(), event->getDisplayId(),
                event->getAction(), event->getActionButton(), event->getFlags(),
                event->getEdgeFlags(), event->getMetaState(), event->getButtonState(),
                event->getXOffset(), event->getYOffset(),
+8 −2
Original line number Diff line number Diff line
@@ -39,6 +39,7 @@ static struct {

    jfieldID mDeviceId;
    jfieldID mSource;
    jfieldID mDisplayId;
    jfieldID mMetaState;
    jfieldID mAction;
    jfieldID mKeyCode;
@@ -65,6 +66,7 @@ jobject android_view_KeyEvent_fromNative(JNIEnv* env, const KeyEvent* event) {
            event->getScanCode(),
            event->getFlags(),
            event->getSource(),
            event->getDisplayId(),
            NULL);
    if (env->ExceptionCheck()) {
        ALOGE("An exception occurred while obtaining a key event.");
@@ -79,6 +81,7 @@ status_t android_view_KeyEvent_toNative(JNIEnv* env, jobject eventObj,
        KeyEvent* event) {
    jint deviceId = env->GetIntField(eventObj, gKeyEventClassInfo.mDeviceId);
    jint source = env->GetIntField(eventObj, gKeyEventClassInfo.mSource);
    jint displayId = env->GetIntField(eventObj, gKeyEventClassInfo.mDisplayId);
    jint metaState = env->GetIntField(eventObj, gKeyEventClassInfo.mMetaState);
    jint action = env->GetIntField(eventObj, gKeyEventClassInfo.mAction);
    jint keyCode = env->GetIntField(eventObj, gKeyEventClassInfo.mKeyCode);
@@ -88,7 +91,8 @@ status_t android_view_KeyEvent_toNative(JNIEnv* env, jobject eventObj,
    jlong downTime = env->GetLongField(eventObj, gKeyEventClassInfo.mDownTime);
    jlong eventTime = env->GetLongField(eventObj, gKeyEventClassInfo.mEventTime);

    event->initialize(deviceId, source, action, flags, keyCode, scanCode, metaState, repeatCount,
    event->initialize(deviceId, source, displayId, action, flags, keyCode, scanCode, metaState,
            repeatCount,
            milliseconds_to_nanoseconds(downTime),
            milliseconds_to_nanoseconds(eventTime));
    return OK;
@@ -131,12 +135,14 @@ int register_android_view_KeyEvent(JNIEnv* env) {
    gKeyEventClassInfo.clazz = MakeGlobalRefOrDie(env, clazz);

    gKeyEventClassInfo.obtain = GetStaticMethodIDOrDie(env, gKeyEventClassInfo.clazz,
            "obtain", "(JJIIIIIIIILjava/lang/String;)Landroid/view/KeyEvent;");
            "obtain", "(JJIIIIIIIIILjava/lang/String;)Landroid/view/KeyEvent;");
    gKeyEventClassInfo.recycle = GetMethodIDOrDie(env, gKeyEventClassInfo.clazz,
            "recycle", "()V");

    gKeyEventClassInfo.mDeviceId = GetFieldIDOrDie(env, gKeyEventClassInfo.clazz, "mDeviceId", "I");
    gKeyEventClassInfo.mSource = GetFieldIDOrDie(env, gKeyEventClassInfo.clazz, "mSource", "I");
    gKeyEventClassInfo.mDisplayId = GetFieldIDOrDie(env, gKeyEventClassInfo.clazz, "mDisplayId",
                                                    "I");
    gKeyEventClassInfo.mMetaState = GetFieldIDOrDie(env, gKeyEventClassInfo.clazz, "mMetaState",
                                                    "I");
    gKeyEventClassInfo.mAction = GetFieldIDOrDie(env, gKeyEventClassInfo.clazz, "mAction", "I");
Loading