Merge "Turn on remote volume slider"

This commit is contained in:
Lei Yu
2019-03-15 17:06:33 +00:00
committed by Android (Google) Code Review

View File

@@ -35,6 +35,7 @@ import com.android.settingslib.volume.MediaSessions;
import java.io.IOException; import java.io.IOException;
import java.util.List; import java.util.List;
import java.util.Objects;
public class RemoteVolumePreferenceController extends public class RemoteVolumePreferenceController extends
VolumeSeekBarPreferenceController { VolumeSeekBarPreferenceController {
@@ -58,14 +59,14 @@ public class RemoteVolumePreferenceController extends
if (mActiveToken == null) { if (mActiveToken == null) {
updateToken(token); updateToken(token);
} }
if (mActiveToken == token) { if (Objects.equals(mActiveToken, token)) {
updatePreference(mPreference, mActiveToken, pi); updatePreference(mPreference, mActiveToken, pi);
} }
} }
@Override @Override
public void onRemoteRemoved(MediaSession.Token t) { public void onRemoteRemoved(MediaSession.Token t) {
if (mActiveToken == t) { if (Objects.equals(mActiveToken, t)) {
updateToken(null); updateToken(null);
if (mPreference != null) { if (mPreference != null) {
mPreference.setVisible(false); mPreference.setVisible(false);
@@ -75,7 +76,7 @@ public class RemoteVolumePreferenceController extends
@Override @Override
public void onRemoteVolumeChanged(MediaSession.Token token, int flags) { public void onRemoteVolumeChanged(MediaSession.Token token, int flags) {
if (mActiveToken == token) { if (Objects.equals(mActiveToken, token)) {
final MediaController.PlaybackInfo pi = mMediaController.getPlaybackInfo(); final MediaController.PlaybackInfo pi = mMediaController.getPlaybackInfo();
if (pi != null) { if (pi != null) {
setSliderPosition(pi.getCurrentVolume()); setSliderPosition(pi.getCurrentVolume());
@@ -116,13 +117,13 @@ public class RemoteVolumePreferenceController extends
@OnLifecycleEvent(Lifecycle.Event.ON_RESUME) @OnLifecycleEvent(Lifecycle.Event.ON_RESUME)
public void onResume() { public void onResume() {
super.onResume(); super.onResume();
//TODO(b/126199571): register callback once b/126890783 is fixed mMediaSessions.init();
} }
@OnLifecycleEvent(Lifecycle.Event.ON_PAUSE) @OnLifecycleEvent(Lifecycle.Event.ON_PAUSE)
public void onPause() { public void onPause() {
super.onPause(); super.onPause();
//TODO(b/126199571): unregister callback once b/126890783 is fixed mMediaSessions.destroy();
} }
@Override @Override
@@ -189,8 +190,7 @@ public class RemoteVolumePreferenceController extends
@Override @Override
public Class<? extends SliceBackgroundWorker> getBackgroundWorkerClass() { public Class<? extends SliceBackgroundWorker> getBackgroundWorkerClass() {
//TODO(b/126199571): return RemoteVolumeSliceWorker once b/126890783 is fixed return RemoteVolumeSliceWorker.class;
return null;
} }
private void updatePreference(VolumeSeekBarPreference seekBarPreference, private void updatePreference(VolumeSeekBarPreference seekBarPreference,