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

Commit 81dfe744 authored by Lalit Maganti's avatar Lalit Maganti
Browse files

resolve merge conflicts of 0cb277ef to pi-dev-plus-aosp

Bug: None
Test: I solemnly swear I tested this conflict resolution.
Change-Id: I7c5ad527cd57659a7ae1d913580bd1f613bee9dd
parents 81462faf 0cb277ef
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -3524,4 +3524,13 @@

    <!-- Brand value for attestation of misprovisioned device. -->
    <string name="config_misprovisionedBrandValue" translatable="false"></string>

    <!-- Pre-scale volume at volume step 1 for Absolute Volume -->
    <fraction name="config_prescaleAbsoluteVolume_index1">50%</fraction>

    <!-- Pre-scale volume at volume step 2 for Absolute Volume -->
    <fraction name="config_prescaleAbsoluteVolume_index2">70%</fraction>

    <!-- Pre-scale volume at volume step 3 for Absolute Volume -->
    <fraction name="config_prescaleAbsoluteVolume_index3">85%</fraction>
</resources>
+5 −0
Original line number Diff line number Diff line
@@ -3418,4 +3418,9 @@
  <java-symbol type="string" name="config_misprovisionedBrandValue" />

  <java-symbol type="integer" name="db_wal_truncate_size" />

  <!-- For Bluetooth AbsoluteVolume -->
  <java-symbol type="fraction" name="config_prescaleAbsoluteVolume_index1" />
  <java-symbol type="fraction" name="config_prescaleAbsoluteVolume_index2" />
  <java-symbol type="fraction" name="config_prescaleAbsoluteVolume_index3" />
</resources>
+28 −10
Original line number Diff line number Diff line
@@ -627,6 +627,13 @@ public class AudioService extends IAudioService.Stub
    // If absolute volume is supported in AVRCP device
    private boolean mAvrcpAbsVolSupported = false;

    // Pre-scale for Bluetooth Absolute Volume
    private float[] mPrescaleAbsoluteVolume = new float[] {
        0.5f,    // Pre-scale for index 1
        0.7f,    // Pre-scale for index 2
        0.85f,   // Pre-scale for index 3
    };

    private static Long mLastDeviceConnectMsgTime = new Long(0);

    private NotificationManager mNm;
@@ -878,6 +885,23 @@ public class AudioService extends IAudioService.Stub
        mUserManagerInternal.addUserRestrictionsListener(mUserRestrictionsListener);

        mRecordMonitor.initMonitor();

        final float[] preScale = new float[3];
        preScale[0] = mContext.getResources().getFraction(
                com.android.internal.R.fraction.config_prescaleAbsoluteVolume_index1,
                1, 1);
        preScale[1] = mContext.getResources().getFraction(
                com.android.internal.R.fraction.config_prescaleAbsoluteVolume_index2,
                1, 1);
        preScale[2] = mContext.getResources().getFraction(
                com.android.internal.R.fraction.config_prescaleAbsoluteVolume_index3,
                1, 1);
        for (int i = 0; i < preScale.length; i++) {
            if (0.0f <= preScale[i] && preScale[i] <= 1.0f) {
                mPrescaleAbsoluteVolume[i] = preScale[i];
            }
        }

    }

    public void systemReady() {
@@ -4905,15 +4929,9 @@ public class AudioService extends IAudioService.Stub
            if (index == 0) {
                // 0% for volume 0
                index = 0;
            } else if (index == 1) {
                // 50% for volume 1
                index = (int)(mIndexMax * 0.5) /10;
            } else if (index == 2) {
                // 70% for volume 2
                index = (int)(mIndexMax * 0.70) /10;
            } else if (index == 3) {
                // 85% for volume 3
                index = (int)(mIndexMax * 0.85) /10;
            } else if (index > 0 && index <= 3) {
                // Pre-scale for volume steps 1 2 and 3
                index = (int) (mIndexMax * mPrescaleAbsoluteVolume[index - 1]) / 10;
            } else {
                // otherwise, full gain
                index = (mIndexMax + 5) / 10;