Loading core/java/android/os/VibrationAttributes.java +8 −12 Original line number Diff line number Diff line Loading @@ -129,6 +129,12 @@ public final class VibrationAttributes implements Parcelable { */ public static final int FLAG_BYPASS_INTERRUPTION_POLICY = 0x1; /** * All flags supported by vibrator service, update it when adding new flag. * @hide */ public static final int FLAG_ALL_SUPPORTED = FLAG_BYPASS_INTERRUPTION_POLICY; // If a vibration is playing for longer than 5s, it's probably not haptic feedback private static final long MAX_HAPTIC_FEEDBACK_DURATION = 5000; Loading @@ -139,7 +145,7 @@ public final class VibrationAttributes implements Parcelable { private VibrationAttributes(int usage, int flags, @NonNull AudioAttributes audio) { mUsage = usage; mFlags = flags; mFlags = flags & FLAG_ALL_SUPPORTED; mAudioAttributes = audio; } Loading Loading @@ -387,17 +393,6 @@ public final class VibrationAttributes implements Parcelable { return this; } /** * 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. Loading @@ -405,6 +400,7 @@ public final class VibrationAttributes implements Parcelable { * @return the same Builder instance. */ public @NonNull Builder setFlags(int flags, int mask) { mask &= FLAG_ALL_SUPPORTED; mFlags = (mFlags & ~mask) | (flags & mask); return this; } Loading services/core/java/com/android/server/VibratorService.java +3 −2 Original line number Diff line number Diff line Loading @@ -717,7 +717,8 @@ public class VibratorService extends IVibratorService.Stub || hasPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING))) { final int flags = attrs.getFlags() & ~VibrationAttributes.FLAG_BYPASS_INTERRUPTION_POLICY; attrs = new VibrationAttributes.Builder(attrs).replaceFlags(flags).build(); attrs = new VibrationAttributes.Builder(attrs) .setFlags(flags, attrs.getFlags()).build(); } } Loading Loading @@ -2047,7 +2048,7 @@ public class VibratorService extends IVibratorService.Stub : 0; return new VibrationAttributes.Builder() .setUsage(VibrationAttributes.USAGE_UNKNOWN) .replaceFlags(flags) .setFlags(flags, VibrationAttributes.FLAG_ALL_SUPPORTED) .build(); } Loading Loading
core/java/android/os/VibrationAttributes.java +8 −12 Original line number Diff line number Diff line Loading @@ -129,6 +129,12 @@ public final class VibrationAttributes implements Parcelable { */ public static final int FLAG_BYPASS_INTERRUPTION_POLICY = 0x1; /** * All flags supported by vibrator service, update it when adding new flag. * @hide */ public static final int FLAG_ALL_SUPPORTED = FLAG_BYPASS_INTERRUPTION_POLICY; // If a vibration is playing for longer than 5s, it's probably not haptic feedback private static final long MAX_HAPTIC_FEEDBACK_DURATION = 5000; Loading @@ -139,7 +145,7 @@ public final class VibrationAttributes implements Parcelable { private VibrationAttributes(int usage, int flags, @NonNull AudioAttributes audio) { mUsage = usage; mFlags = flags; mFlags = flags & FLAG_ALL_SUPPORTED; mAudioAttributes = audio; } Loading Loading @@ -387,17 +393,6 @@ public final class VibrationAttributes implements Parcelable { return this; } /** * 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. Loading @@ -405,6 +400,7 @@ public final class VibrationAttributes implements Parcelable { * @return the same Builder instance. */ public @NonNull Builder setFlags(int flags, int mask) { mask &= FLAG_ALL_SUPPORTED; mFlags = (mFlags & ~mask) | (flags & mask); return this; } Loading
services/core/java/com/android/server/VibratorService.java +3 −2 Original line number Diff line number Diff line Loading @@ -717,7 +717,8 @@ public class VibratorService extends IVibratorService.Stub || hasPermission(android.Manifest.permission.MODIFY_AUDIO_ROUTING))) { final int flags = attrs.getFlags() & ~VibrationAttributes.FLAG_BYPASS_INTERRUPTION_POLICY; attrs = new VibrationAttributes.Builder(attrs).replaceFlags(flags).build(); attrs = new VibrationAttributes.Builder(attrs) .setFlags(flags, attrs.getFlags()).build(); } } Loading Loading @@ -2047,7 +2048,7 @@ public class VibratorService extends IVibratorService.Stub : 0; return new VibrationAttributes.Builder() .setUsage(VibrationAttributes.USAGE_UNKNOWN) .replaceFlags(flags) .setFlags(flags, VibrationAttributes.FLAG_ALL_SUPPORTED) .build(); } Loading