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

Commit 592a9508 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Update fallback vibration patterns"

parents 006c2019 595277d3
Loading
Loading
Loading
Loading
+9 −24
Original line number Diff line number Diff line
@@ -1080,34 +1080,27 @@
    <!-- Vibrator pattern for feedback about a long screen/key press -->
    <integer-array name="config_longPressVibePattern">
        <item>0</item>
        <item>1</item>
        <item>20</item>
        <item>21</item>
        <item>30</item>
    </integer-array>

    <!-- Vibrator pattern for feedback about touching a virtual key -->
    <integer-array name="config_virtualKeyVibePattern">
        <item>0</item>
        <item>10</item>
        <item>20</item>
        <item>30</item>
    </integer-array>

    <!-- Vibrator pattern for a very short but reliable vibration for soft keyboard tap -->
    <integer-array name="config_keyboardTapVibePattern">
        <item>40</item>
    <!-- Vibrator pattern for feedback that simulates a double click effect -->
    <integer-array name="config_doubleClickVibePattern">
        <item>0</item>
        <item>30</item>
        <item>100</item>
        <item>30</item>
    </integer-array>

    <!-- Vibrator pattern for feedback when selecting an hour/minute tick of a Clock -->
    <integer-array name="config_clockTickVibePattern">
        <item>125</item>
        <item>30</item>
    </integer-array>

    <!-- Vibrator pattern for feedback when selecting a day/month/year date of a Calendar -->
    <integer-array name="config_calendarDateVibePattern">
        <item>125</item>
        <item>30</item>
        <item>0</item>
        <item>10</item>
    </integer-array>

    <!-- Vibrator pattern for feedback about booting with safe mode enabled -->
@@ -1120,14 +1113,6 @@
        <item>600</item>
    </integer-array>

    <!-- Vibrator pattern for feedback about hitting a scroll barrier -->
    <integer-array name="config_scrollBarrierVibePattern">
        <item>0</item>
        <item>15</item>
        <item>10</item>
        <item>10</item>
    </integer-array>

    <!-- The URI to associate with each ringtone effect constant, intended to be used with the
         android.os.VibrationEffect#get(Uri, Context) API.
         The position of the string in the string-array determines which ringtone effect is chosen.
+2 −3
Original line number Diff line number Diff line
@@ -1695,10 +1695,10 @@
  <java-symbol type="anim" name="activity_close_exit" />

  <java-symbol type="array" name="config_autoRotationTiltTolerance" />
  <java-symbol type="array" name="config_keyboardTapVibePattern" />
  <java-symbol type="array" name="config_longPressVibePattern" />
  <java-symbol type="array" name="config_safeModeEnabledVibePattern" />
  <java-symbol type="array" name="config_virtualKeyVibePattern" />
  <java-symbol type="array" name="config_doubleClickVibePattern" />
  <java-symbol type="array" name="config_safeModeEnabledVibePattern" />
  <java-symbol type="attr" name="actionModePopupWindowStyle" />
  <java-symbol type="attr" name="dialogCustomTitleDecorLayout" />
  <java-symbol type="attr" name="dialogTitleDecorLayout" />
@@ -2502,7 +2502,6 @@
  <java-symbol type="dimen" name="datepicker_year_label_height" />

  <java-symbol type="array" name="config_clockTickVibePattern" />
  <java-symbol type="array" name="config_calendarDateVibePattern" />

  <!-- From KeyguardServiceDelegate -->
  <java-symbol type="string" name="config_keyguardComponent" />
+0 −10
Original line number Diff line number Diff line
@@ -390,12 +390,6 @@ public class PhoneWindowManager implements WindowManagerPolicy {
    // Assigned on main thread, accessed on UI thread
    volatile VrManagerInternal mVrManagerInternal;

    // Vibrator pattern for haptic feedback of a long press.
    long[] mLongPressVibePattern;

    // Vibrator pattern for a short vibration when tapping on a day/month/year date of a Calendar.
    long[] mCalendarDateVibePattern;

    // Vibrator pattern for haptic feedback during boot when safe mode is enabled.
    long[] mSafeModeEnabledVibePattern;

@@ -1804,10 +1798,6 @@ public class PhoneWindowManager implements WindowManagerPolicy {
        context.registerReceiver(mMultiuserReceiver, filter);

        mVibrator = (Vibrator)context.getSystemService(Context.VIBRATOR_SERVICE);
        mLongPressVibePattern = getLongIntArray(mContext.getResources(),
                com.android.internal.R.array.config_longPressVibePattern);
        mCalendarDateVibePattern = getLongIntArray(mContext.getResources(),
                com.android.internal.R.array.config_calendarDateVibePattern);
        mSafeModeEnabledVibePattern = getLongIntArray(mContext.getResources(),
                com.android.internal.R.array.config_safeModeEnabledVibePattern);

+5 −5
Original line number Diff line number Diff line
@@ -51,8 +51,6 @@ import java.util.List;
final class VibrationSettings {
    private static final String TAG = "VibrationSettings";

    private static final long[] DOUBLE_CLICK_EFFECT_FALLBACK_TIMINGS = {0, 30, 100, 30};

    /** Listener for changes on vibration settings. */
    interface OnVibratorSettingsChanged {
        /** Callback triggered when any of the vibrator settings change. */
@@ -120,8 +118,8 @@ final class VibrationSettings {

        VibrationEffect clickEffect = createEffectFromResource(
                com.android.internal.R.array.config_virtualKeyVibePattern);
        VibrationEffect doubleClickEffect = VibrationEffect.createWaveform(
                DOUBLE_CLICK_EFFECT_FALLBACK_TIMINGS, -1 /*repeatIndex*/);
        VibrationEffect doubleClickEffect = createEffectFromResource(
                com.android.internal.R.array.config_doubleClickVibePattern);
        VibrationEffect heavyClickEffect = createEffectFromResource(
                com.android.internal.R.array.config_longPressVibePattern);
        VibrationEffect tickEffect = createEffectFromResource(
@@ -468,12 +466,14 @@ final class VibrationSettings {
                UserHandle.USER_ALL);
    }

    @Nullable
    private VibrationEffect createEffectFromResource(int resId) {
        long[] timings = getLongIntArray(mContext.getResources(), resId);
        return createEffectFromTimings(timings);
    }

    private static VibrationEffect createEffectFromTimings(long[] timings) {
    @Nullable
    private static VibrationEffect createEffectFromTimings(@Nullable long[] timings) {
        if (timings == null || timings.length == 0) {
            return null;
        } else if (timings.length == 1) {