Methods Summary |
---|
public abstract void | cancel()Marks the input event as being canceled.
|
public abstract android.view.InputEvent | copy()Copies the event.
|
public int | describeContents()
return 0;
|
public final InputDevice | getDevice()Gets the device that this event came from.
return InputDevice.getDevice(getDeviceId());
|
public abstract int | getDeviceId()Gets the id for the device that this event came from. An id of
zero indicates that the event didn't come from a physical device
and maps to the default keymap. The other numbers are arbitrary and
you shouldn't depend on the values.
|
public abstract long | getEventTime()Retrieve the time this event occurred,
in the {@link android.os.SystemClock#uptimeMillis} time base.
|
public abstract long | getEventTimeNano()Retrieve the time this event occurred,
in the {@link android.os.SystemClock#uptimeMillis} time base but with
nanosecond (instead of millisecond) precision.
The value is in nanosecond precision but it may not have nanosecond accuracy.
|
public int | getSequenceNumber()Gets the unique sequence number of this event.
Every input event that is created or received by a process has a
unique sequence number. Moreover, a new sequence number is obtained
each time an event object is recycled.
Sequence numbers are only guaranteed to be locally unique within a process.
Sequence numbers are not preserved when events are parceled.
return mSeq;
|
public abstract int | getSource()Gets the source of the event.
|
public boolean | isFromSource(int source)Determines whether the event is from the given source.
return (getSource() & source) == source;
|
public abstract boolean | isTainted()Gets a private flag that indicates when the system has detected that this input event
may be inconsistent with respect to the sequence of previously delivered input events,
such as when a key up event is sent but the key was not down or when a pointer
move event is sent but the pointer is not down.
|
protected void | prepareForReuse()Reinitializes the event on reuse (after recycling).
mRecycled = false;
mRecycledLocation = null;
mSeq = mNextSeq.getAndIncrement();
|
public void | recycle()Recycles the event.
This method should only be used by the system since applications do not
expect {@link KeyEvent} objects to be recycled, although {@link MotionEvent}
objects are fine. See {@link KeyEvent#recycle()} for details.
if (TRACK_RECYCLED_LOCATION) {
if (mRecycledLocation != null) {
throw new RuntimeException(toString() + " recycled twice!", mRecycledLocation);
}
mRecycledLocation = new RuntimeException("Last recycled here");
} else {
if (mRecycled) {
throw new RuntimeException(toString() + " recycled twice!");
}
mRecycled = true;
}
|
public void | recycleIfNeededAfterDispatch()Conditionally recycled the event if it is appropriate to do so after
dispatching the event to an application.
If the event is a {@link MotionEvent} then it is recycled.
If the event is a {@link KeyEvent} then it is NOT recycled, because applications
expect key events to be immutable so once the event has been dispatched to
the application we can no longer recycle it.
recycle();
|
public abstract void | setSource(int source)Modifies the source of the event.
|
public abstract void | setTainted(boolean tainted)Sets a private flag that indicates when the system has detected that this input event
may be inconsistent with respect to the sequence of previously delivered input events,
such as when a key up event is sent but the key was not down or when a pointer
move event is sent but the pointer is not down.
|