Merge "Remove VibrationAttributes#CATEGORY_KEYBOARD (in framework)" into main
diff --git a/core/java/android/os/VibrationAttributes.java b/core/java/android/os/VibrationAttributes.java
index da863e5..5896227 100644
--- a/core/java/android/os/VibrationAttributes.java
+++ b/core/java/android/os/VibrationAttributes.java
@@ -151,31 +151,6 @@
*/
public static final int USAGE_MEDIA = 0x10 | USAGE_CLASS_MEDIA;
- /** @hide */
- @IntDef(prefix = { "CATEGORY_" }, value = {
- CATEGORY_UNKNOWN,
- CATEGORY_KEYBOARD,
- })
- @Retention(RetentionPolicy.SOURCE)
- public @interface Category {}
-
- /**
- * Category value when the vibration category is unknown.
- *
- * @hide
- */
- public static final int CATEGORY_UNKNOWN = 0x0;
-
- /**
- * Category value for keyboard vibrations.
- *
- * <p>Most typical keyboard vibrations are haptic feedback for virtual keyboard key
- * press/release, for example.
- *
- * @hide
- */
- public static final int CATEGORY_KEYBOARD = 1;
-
/**
* @hide
*/
@@ -252,14 +227,12 @@
private final int mUsage;
private final int mFlags;
private final int mOriginalAudioUsage;
- private final int mCategory;
private VibrationAttributes(@Usage int usage, @AudioAttributes.AttributeUsage int audioUsage,
- @Flag int flags, @Category int category) {
+ @Flag int flags) {
mUsage = usage;
mOriginalAudioUsage = audioUsage;
mFlags = flags & FLAG_ALL_SUPPORTED;
- mCategory = category;
}
/**
@@ -297,20 +270,6 @@
}
/**
- * Return the vibration category.
- *
- * <p>Vibration categories describe the source of the vibration, and it can be combined with
- * the vibration usage to best match to a user setting, e.g. a vibration with usage touch and
- * category keyboard can be used to control keyboard haptic feedback independently.
- *
- * @hide
- */
- @Category
- public int getCategory() {
- return mCategory;
- }
-
- /**
* Check whether a flag is set
* @return true if a flag is set and false otherwise
*/
@@ -362,14 +321,12 @@
dest.writeInt(mUsage);
dest.writeInt(mOriginalAudioUsage);
dest.writeInt(mFlags);
- dest.writeInt(mCategory);
}
private VibrationAttributes(Parcel src) {
mUsage = src.readInt();
mOriginalAudioUsage = src.readInt();
mFlags = src.readInt();
- mCategory = src.readInt();
}
public static final @NonNull Parcelable.Creator<VibrationAttributes>
@@ -392,12 +349,12 @@
}
VibrationAttributes rhs = (VibrationAttributes) o;
return mUsage == rhs.mUsage && mOriginalAudioUsage == rhs.mOriginalAudioUsage
- && mFlags == rhs.mFlags && mCategory == rhs.mCategory;
+ && mFlags == rhs.mFlags;
}
@Override
public int hashCode() {
- return Objects.hash(mUsage, mOriginalAudioUsage, mFlags, mCategory);
+ return Objects.hash(mUsage, mOriginalAudioUsage, mFlags);
}
@Override
@@ -405,7 +362,6 @@
return "VibrationAttributes{"
+ "mUsage=" + usageToString()
+ ", mAudioUsage= " + AudioAttributes.usageToString(mOriginalAudioUsage)
- + ", mCategory=" + categoryToString()
+ ", mFlags=" + mFlags
+ '}';
}
@@ -445,23 +401,6 @@
}
}
- /** @hide */
- public String categoryToString() {
- return categoryToString(mCategory);
- }
-
- /** @hide */
- public static String categoryToString(@Category int category) {
- switch (category) {
- case CATEGORY_UNKNOWN:
- return "UNKNOWN";
- case CATEGORY_KEYBOARD:
- return "KEYBOARD";
- default:
- return "unknown category " + category;
- }
- }
-
/**
* Builder class for {@link VibrationAttributes} objects.
* By default, all information is set to UNKNOWN.
@@ -471,7 +410,6 @@
private int mUsage = USAGE_UNKNOWN;
private int mOriginalAudioUsage = AudioAttributes.USAGE_UNKNOWN;
private int mFlags = 0x0;
- private int mCategory = CATEGORY_UNKNOWN;
/**
* Constructs a new Builder with the defaults.
@@ -487,7 +425,6 @@
mUsage = vib.mUsage;
mOriginalAudioUsage = vib.mOriginalAudioUsage;
mFlags = vib.mFlags;
- mCategory = vib.mCategory;
}
}
@@ -554,7 +491,7 @@
*/
public @NonNull VibrationAttributes build() {
VibrationAttributes ans = new VibrationAttributes(
- mUsage, mOriginalAudioUsage, mFlags, mCategory);
+ mUsage, mOriginalAudioUsage, mFlags);
return ans;
}
@@ -570,19 +507,6 @@
}
/**
- * Sets the attribute describing the category of the corresponding vibration.
- *
- * @param category The category for the vibration
- * @return the same Builder instance.
- *
- * @hide
- */
- public @NonNull Builder setCategory(@Category int category) {
- mCategory = category;
- return this;
- }
-
- /**
* Sets only the flags specified in the bitmask, leaving the other supported flag values
* unchanged in the builder.
*
diff --git a/core/tests/coretests/src/android/os/VibrationAttributesTest.java b/core/tests/coretests/src/android/os/VibrationAttributesTest.java
index d8142c8..5bdae0e 100644
--- a/core/tests/coretests/src/android/os/VibrationAttributesTest.java
+++ b/core/tests/coretests/src/android/os/VibrationAttributesTest.java
@@ -28,11 +28,9 @@
@Test
public void testSimple() throws Exception {
final VibrationAttributes attr = new VibrationAttributes.Builder()
- .setCategory(VibrationAttributes.CATEGORY_KEYBOARD)
.setUsage(VibrationAttributes.USAGE_ALARM)
.build();
- assertEquals(VibrationAttributes.CATEGORY_KEYBOARD, attr.getCategory());
assertEquals(VibrationAttributes.USAGE_ALARM, attr.getUsage());
}
}
diff --git a/services/core/java/com/android/server/vibrator/HapticFeedbackVibrationProvider.java b/services/core/java/com/android/server/vibrator/HapticFeedbackVibrationProvider.java
index eccbffb..0761087 100644
--- a/services/core/java/com/android/server/vibrator/HapticFeedbackVibrationProvider.java
+++ b/services/core/java/com/android/server/vibrator/HapticFeedbackVibrationProvider.java
@@ -364,10 +364,7 @@
if ((privFlags & HapticFeedbackConstants.PRIVATE_FLAG_APPLY_INPUT_METHOD_SETTINGS) == 0) {
return TOUCH_VIBRATION_ATTRIBUTES;
}
- return new VibrationAttributes.Builder(IME_FEEDBACK_VIBRATION_ATTRIBUTES)
- // TODO(b/332661766): Remove CATEGORY_KEYBOARD logic
- .setCategory(VibrationAttributes.CATEGORY_KEYBOARD)
- .build();
+ return IME_FEEDBACK_VIBRATION_ATTRIBUTES;
}
@Nullable
diff --git a/services/core/java/com/android/server/vibrator/Vibration.java b/services/core/java/com/android/server/vibrator/Vibration.java
index 5c567da..aa4b9f3 100644
--- a/services/core/java/com/android/server/vibrator/Vibration.java
+++ b/services/core/java/com/android/server/vibrator/Vibration.java
@@ -282,12 +282,6 @@
VibrationScaler.scaleLevelToString(mScaleLevel), mAdaptiveScale,
Long.toBinaryString(mCallerInfo.attrs.getFlags()),
mCallerInfo.attrs.usageToString());
- // Optional, most vibrations have category unknown so skip them to simplify the logs
- String categoryStr =
- mCallerInfo.attrs.getCategory() != VibrationAttributes.CATEGORY_UNKNOWN
- ? " | category=" + VibrationAttributes.categoryToString(
- mCallerInfo.attrs.getCategory())
- : "";
// Optional, most vibrations should not be defined via AudioAttributes
// so skip them to simplify the logs
String audioUsageStr =
@@ -302,7 +296,7 @@
" | played: %s | original: %s",
mPlayedEffect == null ? null : mPlayedEffect.toDebugString(),
mOriginalEffect == null ? null : mOriginalEffect.toDebugString());
- pw.println(timingsStr + paramStr + categoryStr + audioUsageStr + callerStr + effectStr);
+ pw.println(timingsStr + paramStr + audioUsageStr + callerStr + effectStr);
}
/** Write this info into given {@link PrintWriter}. */
@@ -335,7 +329,6 @@
final VibrationAttributes attrs = mCallerInfo.attrs;
proto.write(VibrationAttributesProto.USAGE, attrs.getUsage());
proto.write(VibrationAttributesProto.AUDIO_USAGE, attrs.getAudioUsage());
- proto.write(VibrationAttributesProto.CATEGORY, attrs.getCategory());
proto.write(VibrationAttributesProto.FLAGS, attrs.getFlags());
proto.end(attrsToken);
diff --git a/services/tests/vibrator/src/com/android/server/vibrator/HapticFeedbackVibrationProviderTest.java b/services/tests/vibrator/src/com/android/server/vibrator/HapticFeedbackVibrationProviderTest.java
index 240bd1e..8797e63 100644
--- a/services/tests/vibrator/src/com/android/server/vibrator/HapticFeedbackVibrationProviderTest.java
+++ b/services/tests/vibrator/src/com/android/server/vibrator/HapticFeedbackVibrationProviderTest.java
@@ -16,8 +16,6 @@
package com.android.server.vibrator;
-import static android.os.VibrationAttributes.CATEGORY_KEYBOARD;
-import static android.os.VibrationAttributes.CATEGORY_UNKNOWN;
import static android.os.VibrationAttributes.FLAG_BYPASS_INTERRUPTION_POLICY;
import static android.os.VibrationAttributes.FLAG_BYPASS_USER_VIBRATION_INTENSITY_OFF;
import static android.os.VibrationAttributes.USAGE_IME_FEEDBACK;
@@ -255,7 +253,7 @@
}
@Test
- public void testKeyboardHaptic_fixAmplitude_keyboardCategoryOn_keyboardVibrationReturned() {
+ public void testKeyboardHaptic_fixAmplitude_keyboardVibrationReturned() {
mockVibratorPrimitiveSupport(PRIMITIVE_CLICK, PRIMITIVE_TICK);
mockKeyboardVibrationFixedAmplitude(KEYBOARD_VIBRATION_FIXED_AMPLITUDE);
@@ -330,7 +328,7 @@
}
@Test
- public void testVibrationAttribute_keyboardCategoryOn_notIme_useTouchUsage() {
+ public void testVibrationAttribute_notIme_useTouchUsage() {
HapticFeedbackVibrationProvider hapticProvider = createProviderWithDefaultCustomizations();
for (int effectId : KEYBOARD_FEEDBACK_CONSTANTS) {
@@ -338,13 +336,11 @@
effectId, /* flags */ 0, /* privFlags */ 0);
assertWithMessage("Expected USAGE_TOUCH for effect " + effectId)
.that(attrs.getUsage()).isEqualTo(USAGE_TOUCH);
- assertWithMessage("Expected CATEGORY_KEYBOARD for effect " + effectId)
- .that(attrs.getCategory()).isEqualTo(CATEGORY_UNKNOWN);
}
}
@Test
- public void testVibrationAttribute_keyboardCategoryOn_isIme_useImeFeedbackUsage() {
+ public void testVibrationAttribute_isIme_useImeFeedbackUsage() {
HapticFeedbackVibrationProvider hapticProvider = createProviderWithDefaultCustomizations();
for (int effectId : KEYBOARD_FEEDBACK_CONSTANTS) {
@@ -353,8 +349,6 @@
HapticFeedbackConstants.PRIVATE_FLAG_APPLY_INPUT_METHOD_SETTINGS);
assertWithMessage("Expected USAGE_IME_FEEDBACK for effect " + effectId)
.that(attrs.getUsage()).isEqualTo(USAGE_IME_FEEDBACK);
- assertWithMessage("Expected CATEGORY_KEYBOARD for effect " + effectId)
- .that(attrs.getCategory()).isEqualTo(CATEGORY_KEYBOARD);
}
}
diff --git a/services/tests/vibrator/src/com/android/server/vibrator/VibrationSettingsTest.java b/services/tests/vibrator/src/com/android/server/vibrator/VibrationSettingsTest.java
index 6f06050..38cd49d 100644
--- a/services/tests/vibrator/src/com/android/server/vibrator/VibrationSettingsTest.java
+++ b/services/tests/vibrator/src/com/android/server/vibrator/VibrationSettingsTest.java
@@ -610,7 +610,6 @@
assertVibrationIgnoredForAttributes(
new VibrationAttributes.Builder()
.setUsage(USAGE_IME_FEEDBACK)
- .setCategory(VibrationAttributes.CATEGORY_KEYBOARD)
.build(),
Vibration.Status.IGNORED_FOR_SETTINGS);
@@ -619,7 +618,6 @@
assertVibrationNotIgnoredForAttributes(
new VibrationAttributes.Builder()
.setUsage(USAGE_IME_FEEDBACK)
- .setCategory(VibrationAttributes.CATEGORY_KEYBOARD)
.setFlags(VibrationAttributes.FLAG_BYPASS_USER_VIBRATION_INTENSITY_OFF)
.build());
}
@@ -637,7 +635,6 @@
assertVibrationNotIgnoredForAttributes(
new VibrationAttributes.Builder()
.setUsage(USAGE_IME_FEEDBACK)
- .setCategory(VibrationAttributes.CATEGORY_KEYBOARD)
.build());
}
@@ -654,7 +651,6 @@
assertVibrationIgnoredForAttributes(
new VibrationAttributes.Builder()
.setUsage(USAGE_IME_FEEDBACK)
- .setCategory(VibrationAttributes.CATEGORY_KEYBOARD)
.build(),
Vibration.Status.IGNORED_FOR_SETTINGS);
}