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

Commit 698d8d5d 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: I884bac0db9dc4a67c5f1bb0c1374b64fd0fea041
parents 7d64f16f 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) {