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

Commit b46c1baf authored by Lais Andrade's avatar Lais Andrade Committed by Android (Google) Code Review
Browse files

Merge "Introduce vibration XML serialization"

parents 830ebb5e 02d3e651
Loading
Loading
Loading
Loading
+15 −0
Original line number Diff line number Diff line
@@ -2629,6 +2629,21 @@ package android.os.vibrator {

}

package android.os.vibrator.persistence {

  public final class VibrationXmlParser {
    method @Nullable public static android.os.VibrationEffect parse(@NonNull java.io.Reader) throws java.io.IOException;
  }

  public final class VibrationXmlSerializer {
    method public static void serialize(@NonNull android.os.VibrationEffect, @NonNull java.io.Writer) throws java.io.IOException, android.os.vibrator.persistence.VibrationXmlSerializer.SerializationFailedException;
  }

  public static final class VibrationXmlSerializer.SerializationFailedException extends java.lang.IllegalStateException {
  }

}

package android.permission {

  public final class PermissionControllerManager {
+5 −6
Original line number Diff line number Diff line
@@ -335,7 +335,7 @@ public abstract class VibrationEffect implements Parcelable {
     */
    @TestApi
    public static VibrationEffect get(int effectId) {
        return get(effectId, true);
        return get(effectId, PrebakedSegment.DEFAULT_SHOULD_FALLBACK);
    }

    /**
@@ -363,7 +363,7 @@ public abstract class VibrationEffect implements Parcelable {
    @TestApi
    public static VibrationEffect get(int effectId, boolean fallback) {
        VibrationEffect effect = new Composed(
                new PrebakedSegment(effectId, fallback, EffectStrength.MEDIUM));
                new PrebakedSegment(effectId, fallback, PrebakedSegment.DEFAULT_STRENGTH));
        effect.validate();
        return effect;
    }
@@ -1107,7 +1107,7 @@ public abstract class VibrationEffect implements Parcelable {
         */
        @NonNull
        public Composition addPrimitive(@PrimitiveType int primitiveId) {
            return addPrimitive(primitiveId, /*scale*/ 1.0f, /*delay*/ 0);
            return addPrimitive(primitiveId, PrimitiveSegment.DEFAULT_SCALE);
        }

        /**
@@ -1122,7 +1122,7 @@ public abstract class VibrationEffect implements Parcelable {
        @NonNull
        public Composition addPrimitive(@PrimitiveType int primitiveId,
                @FloatRange(from = 0f, to = 1f) float scale) {
            return addPrimitive(primitiveId, scale, /*delay*/ 0);
            return addPrimitive(primitiveId, scale, PrimitiveSegment.DEFAULT_DELAY_MILLIS);
        }

        /**
@@ -1137,8 +1137,7 @@ public abstract class VibrationEffect implements Parcelable {
        @NonNull
        public Composition addPrimitive(@PrimitiveType int primitiveId,
                @FloatRange(from = 0f, to = 1f) float scale, @IntRange(from = 0) int delay) {
            PrimitiveSegment primitive = new PrimitiveSegment(primitiveId, scale,
                    delay);
            PrimitiveSegment primitive = new PrimitiveSegment(primitiveId, scale, delay);
            primitive.validate();
            return addSegment(primitive);
        }
+7 −0
Original line number Diff line number Diff line
@@ -33,6 +33,13 @@ import java.util.Objects;
 */
@TestApi
public final class PrebakedSegment extends VibrationEffectSegment {

    /** @hide */
    public static final int DEFAULT_STRENGTH = VibrationEffect.EFFECT_STRENGTH_MEDIUM;

    /** @hide */
    public static final boolean DEFAULT_SHOULD_FALLBACK = true;

    private final int mEffectId;
    private final boolean mFallback;
    private final int mEffectStrength;
+7 −0
Original line number Diff line number Diff line
@@ -36,6 +36,13 @@ import java.util.Objects;
 */
@TestApi
public final class PrimitiveSegment extends VibrationEffectSegment {

    /** @hide */
    public static final float DEFAULT_SCALE = 1f;

    /** @hide */
    public static final int DEFAULT_DELAY_MILLIS = 0;

    private final int mPrimitiveId;
    private final float mScale;
    private final int mDelay;
+4 −0
Original line number Diff line number Diff line
@@ -113,6 +113,10 @@ public final class StepSegment extends VibrationEffectSegment {
        VibrationEffectSegment.checkDurationArgument(mDuration, "duration");
        if (Float.compare(mAmplitude, VibrationEffect.DEFAULT_AMPLITUDE) != 0) {
            Preconditions.checkArgumentInRange(mAmplitude, 0f, 1f, "amplitude");
            VibrationEffectSegment.checkFrequencyArgument(mFrequencyHz, "frequencyHz");
        } else if (Float.compare(mFrequencyHz, 0) != 0) {
            throw new IllegalArgumentException(
                    "frequency must be default when amplitude is set to default");
        }
    }

Loading