From 9eb7e9fe2d865b8e117928d25e6454053f38599d Mon Sep 17 00:00:00 2001 From: Vince Leung Date: Tue, 22 Dec 2020 00:26:58 +0000 Subject: [PATCH] Add PRIMITIVE_LOW_TICK VibrationEffect Bug: 174561580 Change-Id: I553a06b6dfb9d4a743d6aa1a6b0b728d90dbeee1 --- core/api/current.txt | 1 + core/java/android/os/VibrationEffect.java | 11 ++++++++++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/core/api/current.txt b/core/api/current.txt index 1c50e14d0caa7..695b9a10d89c4 100644 --- a/core/api/current.txt +++ b/core/api/current.txt @@ -31335,6 +31335,7 @@ package android.os { method @NonNull public android.os.VibrationEffect.Composition addPrimitive(int, @FloatRange(from=0.0f, to=1.0f) float, @IntRange(from=0) int); method @NonNull public android.os.VibrationEffect compose(); field public static final int PRIMITIVE_CLICK = 1; // 0x1 + field public static final int PRIMITIVE_LOW_TICK = 8; // 0x8 field public static final int PRIMITIVE_QUICK_FALL = 6; // 0x6 field public static final int PRIMITIVE_QUICK_RISE = 4; // 0x4 field public static final int PRIMITIVE_SLOW_RISE = 5; // 0x5 diff --git a/core/java/android/os/VibrationEffect.java b/core/java/android/os/VibrationEffect.java index b57418d751bcd..c0b2ada7860c1 100644 --- a/core/java/android/os/VibrationEffect.java +++ b/core/java/android/os/VibrationEffect.java @@ -1071,6 +1071,7 @@ public abstract class VibrationEffect implements Parcelable { PRIMITIVE_SLOW_RISE, PRIMITIVE_QUICK_FALL, PRIMITIVE_TICK, + PRIMITIVE_LOW_TICK, }) @Retention(RetentionPolicy.SOURCE) public @interface Primitive {} @@ -1116,6 +1117,12 @@ public abstract class VibrationEffect implements Parcelable { */ // Internally this maps to the HAL constant CompositePrimitive::LIGHT_TICK public static final int PRIMITIVE_TICK = 7; + /** + * This very short low frequency effect should produce a light crisp sensation + * intended to be used repetitively for dynamic feedback. + */ + // Internally this maps to the HAL constant CompositePrimitive::LOW_TICK + public static final int PRIMITIVE_LOW_TICK = 8; private ArrayList mEffects = new ArrayList<>(); @@ -1194,7 +1201,7 @@ public abstract class VibrationEffect implements Parcelable { * */ static int checkPrimitive(int primitiveId) { - Preconditions.checkArgumentInRange(primitiveId, PRIMITIVE_NOOP, PRIMITIVE_TICK, + Preconditions.checkArgumentInRange(primitiveId, PRIMITIVE_NOOP, PRIMITIVE_LOW_TICK, "primitiveId"); return primitiveId; } @@ -1223,6 +1230,8 @@ public abstract class VibrationEffect implements Parcelable { return "PRIMITIVE_QUICK_FALL"; case PRIMITIVE_TICK: return "PRIMITIVE_TICK"; + case PRIMITIVE_LOW_TICK: + return "PRIMITIVE_LOW_TICK"; default: return Integer.toString(id); }