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

Commit 1740c625 authored by John Spurlock's avatar John Spurlock Committed by Android (Google) Code Review
Browse files

Merge "Zen: Enter alarms only on volume down from vibrate."

parents 691ae9dc b02c744f
Loading
Loading
Loading
Loading
+19 −0
Original line number Diff line number Diff line
@@ -19,6 +19,8 @@ package android.media;
import android.os.Parcel;
import android.os.Parcelable;

import java.util.Objects;

/** @hide */
public final class VolumePolicy implements Parcelable {
    public static final VolumePolicy DEFAULT = new VolumePolicy(false, false, true, 400);
@@ -52,6 +54,23 @@ public final class VolumePolicy implements Parcelable {
                + ",vibrateToSilentDebounce=" + vibrateToSilentDebounce + "]";
    }

    @Override
    public int hashCode() {
        return Objects.hash(volumeDownToEnterSilent, volumeUpToExitSilent, doNotDisturbWhenSilent,
                vibrateToSilentDebounce);
    }

    @Override
    public boolean equals(Object o) {
        if (!(o instanceof VolumePolicy)) return false;
        if (o == this) return true;
        final VolumePolicy other = (VolumePolicy) o;
        return other.volumeDownToEnterSilent == volumeDownToEnterSilent
                && other.volumeUpToExitSilent == volumeUpToExitSilent
                && other.doNotDisturbWhenSilent == doNotDisturbWhenSilent
                && other.vibrateToSilentDebounce == vibrateToSilentDebounce;
    }

    @Override
    public int describeContents() {
        return 0;
+7 −1
Original line number Diff line number Diff line
@@ -43,6 +43,12 @@ public class VolumeDialogComponent implements VolumeComponent {
    private final VolumeDialogController mController;
    private final ZenModeController mZenModeController;
    private final VolumeDialog mDialog;
    private final VolumePolicy mVolumePolicy = new VolumePolicy(
            true,  // volumeDownToEnterSilent
            true,  // volumeUpToExitSilent
            true,  // doNotDisturbWhenSilent
            400    // vibrateToSilentDebounce
    );

    public VolumeDialogComponent(SystemUI sysui, Context context, Handler handler,
            ZenModeController zen) {
@@ -74,7 +80,7 @@ public class VolumeDialogComponent implements VolumeComponent {
        mDialog.setZenFooter(true);
        mDialog.setAutomute(true);
        mDialog.setSilentMode(false);
        mController.setVolumePolicy(VolumePolicy.DEFAULT);
        mController.setVolumePolicy(mVolumePolicy);
        mController.showDndTile(false);
    }

+2 −1
Original line number Diff line number Diff line
@@ -99,7 +99,7 @@ public class VolumeDialogController {

    private boolean mEnabled;
    private boolean mDestroyed;
    private VolumePolicy mVolumePolicy = new VolumePolicy(true, true, false, 400);
    private VolumePolicy mVolumePolicy;
    private boolean mShowDndTile = false;

    public VolumeDialogController(Context context, ComponentName component) {
@@ -147,6 +147,7 @@ public class VolumeDialogController {

    public void setVolumePolicy(VolumePolicy policy) {
        mVolumePolicy = policy;
        if (mVolumePolicy == null) return;
        try {
            mAudio.setVolumePolicy(mVolumePolicy);
        } catch (NoSuchMethodError e) {
+1 −2
Original line number Diff line number Diff line
@@ -244,8 +244,7 @@ public class ZenFooter extends LinearLayout {
        public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
            if (D.BUG) Log.d(TAG, "onCheckedChanged " + isChecked);
            if (isChecked != isZen()) {
                final int newZen = isChecked ? Global.ZEN_MODE_IMPORTANT_INTERRUPTIONS
                        : Global.ZEN_MODE_OFF;
                final int newZen = isChecked ? Global.ZEN_MODE_ALARMS : Global.ZEN_MODE_OFF;
                mZen = newZen;  // this one's optimistic
                setFooterExpanded(isChecked);
                mController.setZen(newZen, null, TAG);
+2 −1
Original line number Diff line number Diff line
@@ -5577,8 +5577,9 @@ public class AudioService extends IAudioService.Stub {
    @Override
    public void setVolumePolicy(VolumePolicy policy) {
        enforceVolumeController("set volume policy");
        if (policy != null) {
        if (policy != null && !policy.equals(mVolumePolicy)) {
            mVolumePolicy = policy;
            if (DEBUG_VOL) Log.d(TAG, "Volume policy changed: " + mVolumePolicy);
        }
    }

Loading