From cb7378d989e44aa69bb961ea9b8800ff2bdfa345 Mon Sep 17 00:00:00 2001 From: Chris Ye Date: Mon, 27 Jan 2020 14:18:08 -0800 Subject: [PATCH] Change VibrationAttributes.Builder.replaceFlags() to @hide. Remove VibrationAttributes.Builder.replaceFlags() from public API. Add VibrationAttributes.Builder.setFlags() as public API. Bug: 148286757 Test: atest VibrationAttributesTest Change-Id: I573268d75f70b36552bd1ecd547906a4b50b77cb --- api/current.txt | 2 +- core/java/android/os/VibrationAttributes.java | 12 ++++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/api/current.txt b/api/current.txt index 2ff81365fcfd7..612aa0d49c4e9 100644 --- a/api/current.txt +++ b/api/current.txt @@ -36920,7 +36920,7 @@ package android.os { ctor public VibrationAttributes.Builder(); ctor public VibrationAttributes.Builder(@Nullable android.os.VibrationAttributes); method @NonNull public android.os.VibrationAttributes build(); - method @NonNull public android.os.VibrationAttributes.Builder replaceFlags(int); + method @NonNull public android.os.VibrationAttributes.Builder setFlags(int, int); method @NonNull public android.os.VibrationAttributes.Builder setUsage(int); } diff --git a/core/java/android/os/VibrationAttributes.java b/core/java/android/os/VibrationAttributes.java index 3e16640895eb0..27782fa74dab1 100644 --- a/core/java/android/os/VibrationAttributes.java +++ b/core/java/android/os/VibrationAttributes.java @@ -391,11 +391,23 @@ public final class VibrationAttributes implements Parcelable { * Replaces flags * @param flags any combination of flags. * @return the same Builder instance. + * @hide */ public @NonNull Builder replaceFlags(int flags) { mFlags = flags; return this; } + + /** + * Set flags + * @param flags combination of flags to be set. + * @param mask Bit range that should be changed. + * @return the same Builder instance. + */ + public @NonNull Builder setFlags(int flags, int mask) { + mFlags = (mFlags & ~mask) | (flags & mask); + return this; + } } }