diff options
Diffstat (limited to 'core/java/android/view/InputDevice.java')
-rw-r--r-- | core/java/android/view/InputDevice.java | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/core/java/android/view/InputDevice.java b/core/java/android/view/InputDevice.java index f39d1f5..cc4598d 100644 --- a/core/java/android/view/InputDevice.java +++ b/core/java/android/view/InputDevice.java @@ -201,6 +201,35 @@ public final class InputDevice implements Parcelable { public static final int SOURCE_STYLUS = 0x00004000 | SOURCE_CLASS_POINTER; /** + * The input device is a Bluetooth stylus. + * <p> + * Note that this bit merely indicates that an input device is capable of + * obtaining input from a Bluetooth stylus. To determine whether a given + * touch event was produced by a stylus, examine the tool type returned by + * {@link MotionEvent#getToolType(int)} for each individual pointer. + * </p><p> + * A single touch event may multiple pointers with different tool types, + * such as an event that has one pointer with tool type + * {@link MotionEvent#TOOL_TYPE_FINGER} and another pointer with tool type + * {@link MotionEvent#TOOL_TYPE_STYLUS}. So it is important to examine + * the tool type of each pointer, regardless of the source reported + * by {@link MotionEvent#getSource()}. + * </p><p> + * A bluetooth stylus generally receives its pressure and button state + * information from the stylus itself, and derives the rest from another + * source. For example, a Bluetooth stylus used in conjunction with a + * touchscreen would derive its contact position and pointer size from the + * touchscreen and may not be any more accurate than other tools such as + * fingers. + * </p> + * + * @see #SOURCE_STYLUS + * @see #SOURCE_CLASS_POINTER + */ + public static final int SOURCE_BLUETOOTH_STYLUS = + 0x00008000 | SOURCE_STYLUS; + + /** * The input source is a trackball. * * @see #SOURCE_CLASS_TRACKBALL |