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

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

Merge "Disable group volume control bar in output switcher systemUI dialog"...

Merge "Disable group volume control bar in output switcher systemUI dialog" into sc-dev am: 3245ab13

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

Change-Id: I1df26b2ea0796584138bc84b3eb62e398ab96d5b
parents 20acb9ba 3245ab13
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -81,6 +81,7 @@
                android:visibility="gone"/>
            <SeekBar
                android:id="@+id/volume_seekbar"
                style="@*android:style/Widget.DeviceDefault.SeekBar"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_alignParentBottom="true"/>
+9 −0
Original line number Diff line number Diff line
@@ -220,6 +220,9 @@ public abstract class MediaOutputBaseAdapter extends
        }

        void initSeekbar(MediaDevice device) {
            if (!mController.isVolumeControlEnabled(device)) {
                disableSeekBar();
            }
            mSeekBar.setMax(device.getMaxVolume());
            mSeekBar.setMin(0);
            final int currentVolume = device.getCurrentVolume();
@@ -248,6 +251,7 @@ public abstract class MediaOutputBaseAdapter extends
        }

        void initSessionSeekbar() {
            disableSeekBar();
            mSeekBar.setMax(mController.getSessionVolumeMax());
            mSeekBar.setMin(0);
            final int currentVolume = mController.getSessionVolume();
@@ -336,5 +340,10 @@ public abstract class MediaOutputBaseAdapter extends
                    PorterDuff.Mode.SRC_IN));
            return BluetoothUtils.buildAdvancedDrawable(mContext, drawable);
        }

        private void disableSeekBar() {
            mSeekBar.setEnabled(false);
            mSeekBar.setOnTouchListener((v, event) -> true);
        }
    }
}
+4 −0
Original line number Diff line number Diff line
@@ -465,6 +465,10 @@ public class MediaOutputController implements LocalMediaManager.DeviceCallback {
                || features.contains(MediaRoute2Info.FEATURE_REMOTE_GROUP_PLAYBACK));
    }

    boolean isVolumeControlEnabled(@NonNull MediaDevice device) {
        return !device.getFeatures().contains(MediaRoute2Info.FEATURE_REMOTE_GROUP_PLAYBACK);
    }

    private final MediaController.Callback mCb = new MediaController.Callback() {
        @Override
        public void onMetadataChanged(MediaMetadata metadata) {