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

Commit e304c72e 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: Id34afe62b4296f32e485b943f120eccd8e0f162d
parents fb013257 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) {