Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit dadf7aed authored by Treehugger Robot's avatar Treehugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Introduce VibrationEffect.createVendorEffect" into main

parents 478cd746 92de1dc3
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -255,7 +255,7 @@ java_library {
        "android.hardware.vibrator-V1.1-java",
        "android.hardware.vibrator-V1.2-java",
        "android.hardware.vibrator-V1.3-java",
        "android.hardware.vibrator-V2-java",
        "android.hardware.vibrator-V3-java",
        "android.se.omapi-V1-java",
        "android.system.suspend.control.internal-java",
        "devicepolicyprotosnano",
+5 −0
Original line number Diff line number Diff line
@@ -409,6 +409,7 @@ package android {
    field @FlaggedApi("android.app.ondeviceintelligence.flags.enable_on_device_intelligence") public static final String USE_ON_DEVICE_INTELLIGENCE = "android.permission.USE_ON_DEVICE_INTELLIGENCE";
    field public static final String USE_RESERVED_DISK = "android.permission.USE_RESERVED_DISK";
    field public static final String UWB_PRIVILEGED = "android.permission.UWB_PRIVILEGED";
    field @FlaggedApi("android.os.vibrator.vendor_vibration_effects") public static final String VIBRATE_VENDOR_EFFECTS = "android.permission.VIBRATE_VENDOR_EFFECTS";
    field public static final String WHITELIST_AUTO_REVOKE_PERMISSIONS = "android.permission.WHITELIST_AUTO_REVOKE_PERMISSIONS";
    field public static final String WHITELIST_RESTRICTED_PERMISSIONS = "android.permission.WHITELIST_RESTRICTED_PERMISSIONS";
    field public static final String WIFI_ACCESS_COEX_UNSAFE_CHANNELS = "android.permission.WIFI_ACCESS_COEX_UNSAFE_CHANNELS";
@@ -11354,6 +11355,10 @@ package android.os {
    field @NonNull public static final android.os.Parcelable.Creator<android.os.UserManager.EnforcingUser> CREATOR;
  }
  public abstract class VibrationEffect implements android.os.Parcelable {
    method @FlaggedApi("android.os.vibrator.vendor_vibration_effects") @NonNull @RequiresPermission(android.Manifest.permission.VIBRATE_VENDOR_EFFECTS) public static android.os.VibrationEffect createVendorEffect(@NonNull android.os.PersistableBundle);
  }
  public abstract class Vibrator {
    method @RequiresPermission(android.Manifest.permission.ACCESS_VIBRATOR_STATE) public void addVibratorStateListener(@NonNull android.os.Vibrator.OnVibratorStateChangedListener);
    method @RequiresPermission(android.Manifest.permission.ACCESS_VIBRATOR_STATE) public void addVibratorStateListener(@NonNull java.util.concurrent.Executor, @NonNull android.os.Vibrator.OnVibratorStateChangedListener);
+10 −0
Original line number Diff line number Diff line
@@ -2577,6 +2577,16 @@ package android.os {
  public static final class VibrationEffect.Composition.UnreachableAfterRepeatingIndefinitelyException extends java.lang.IllegalStateException {
  }

  @FlaggedApi("android.os.vibrator.vendor_vibration_effects") public static final class VibrationEffect.VendorEffect extends android.os.VibrationEffect {
    method @Nullable public long[] computeCreateWaveformOffOnTimingsOrNull();
    method public long getDuration();
    method public int getEffectStrength();
    method public float getLinearScale();
    method @NonNull public android.os.PersistableBundle getVendorData();
    method public void writeToParcel(@NonNull android.os.Parcel, int);
    field @NonNull public static final android.os.Parcelable.Creator<android.os.VibrationEffect.VendorEffect> CREATOR;
  }

  public static class VibrationEffect.VibrationParameter {
    method @NonNull public static android.os.VibrationEffect.VibrationParameter targetAmplitude(@FloatRange(from=0, to=1) float);
    method @NonNull public static android.os.VibrationEffect.VibrationParameter targetFrequency(@FloatRange(from=1) float);
+38 −0
Original line number Diff line number Diff line
@@ -18,6 +18,7 @@ package android.os;

import android.annotation.NonNull;
import android.annotation.TestApi;
import android.os.vibrator.Flags;
import android.util.SparseArray;

import com.android.internal.util.Preconditions;
@@ -152,6 +153,9 @@ public abstract class CombinedVibration implements Parcelable {
    /** @hide */
    public abstract boolean hasVibrator(int vibratorId);

    /** @hide */
    public abstract boolean hasVendorEffects();

    /**
     * Returns a compact version of the {@link #toString()} result for debugging purposes.
     *
@@ -424,6 +428,15 @@ public abstract class CombinedVibration implements Parcelable {
            return true;
        }

        /** @hide */
        @Override
        public boolean hasVendorEffects() {
            if (!Flags.vendorVibrationEffects()) {
                return false;
            }
            return mEffect instanceof VibrationEffect.VendorEffect;
        }

        @Override
        public boolean equals(Object o) {
            if (this == o) {
@@ -605,6 +618,20 @@ public abstract class CombinedVibration implements Parcelable {
            return mEffects.indexOfKey(vibratorId) >= 0;
        }

        /** @hide */
        @Override
        public boolean hasVendorEffects() {
            if (!Flags.vendorVibrationEffects()) {
                return false;
            }
            for (int i = 0; i < mEffects.size(); i++) {
                if (mEffects.get(i) instanceof VibrationEffect.VendorEffect) {
                    return true;
                }
            }
            return false;
        }

        @Override
        public boolean equals(Object o) {
            if (this == o) {
@@ -838,6 +865,17 @@ public abstract class CombinedVibration implements Parcelable {
            return false;
        }

        /** @hide */
        @Override
        public boolean hasVendorEffects() {
            for (int i = 0; i < mEffects.size(); i++) {
                if (mEffects.get(i).hasVendorEffects()) {
                    return true;
                }
            }
            return false;
        }

        @Override
        public boolean equals(Object o) {
            if (this == o) {
+329 −82

File changed.

Preview size limit exceeded, changes collapsed.

Loading