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

Commit 274d5068 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Automerger Merge Worker
Browse files

Merge "Don't send volume keys twice" into rvc-dev am: 83cdf386 am:...

Merge "Don't send volume keys twice" into rvc-dev am: 83cdf386 am: 7bfd5d5f am: baf697ed am: 04f878c8

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11741278

Change-Id: I5bb43362aa1b955549b44f5e8dcb447f62eb8d7e
parents e0fed2a1 04f878c8
Loading
Loading
Loading
Loading
+9 −4
Original line number Diff line number Diff line
@@ -1893,7 +1893,7 @@ public class AudioService extends IAudioService.Stub
                            Binder.getCallingUid(), true, keyEventMode);
                break;
            case KeyEvent.KEYCODE_VOLUME_MUTE:
                if (event.getRepeatCount() == 0) {
                if (event.getAction() == KeyEvent.ACTION_DOWN && event.getRepeatCount() == 0) {
                    adjustSuggestedStreamVolume(AudioManager.ADJUST_TOGGLE_MUTE,
                            AudioManager.USE_DEFAULT_STREAM_TYPE, flags, callingPackage, caller,
                            Binder.getCallingUid(), true, VOL_ADJUST_NORMAL);
@@ -2155,7 +2155,8 @@ public class AudioService extends IAudioService.Stub
        }
        int oldIndex = mStreamStates[streamType].getIndex(device);

        if (adjustVolume && (direction != AudioManager.ADJUST_SAME)) {
        if (adjustVolume
                && (direction != AudioManager.ADJUST_SAME) && (keyEventMode != VOL_ADJUST_END)) {
            mAudioHandler.removeMessages(MSG_UNMUTE_STREAM);

            if (isMuteAdjust && !mFullVolumeDevices.contains(device)) {
@@ -2238,6 +2239,11 @@ public class AudioService extends IAudioService.Stub
            if (streamTypeAlias == AudioSystem.STREAM_MUSIC) {
                setSystemAudioVolume(oldIndex, newIndex, getStreamMaxVolume(streamType), flags);
            }
        }

        final int newIndex = mStreamStates[streamType].getIndex(device);

        if (adjustVolume) {
            synchronized (mHdmiClientLock) {
                if (mHdmiManager != null) {
                    // mHdmiCecSink true => mHdmiPlaybackClient != null
@@ -2290,8 +2296,7 @@ public class AudioService extends IAudioService.Stub
                }
            }
        }
        int index = mStreamStates[streamType].getIndex(device);
        sendVolumeUpdate(streamType, oldIndex, index, flags, device);
        sendVolumeUpdate(streamType, oldIndex, newIndex, flags, device);
    }

    // Called after a delay when volume down is pressed while muted