Update OutputSwitcher from MediaOutputSlice to MediaOutputDialog in Settings

-Update entry point at media indicator in volume panel
-Update entry point at remote media slice in volume panel
-Update entry point at remote volume group in Sound Settings
-Update entry point at media output preference in Sound Settings
-Hide Media output dialog when the caller is not active

Bug: 155822415
Test: make -j50 RunSettingsRoboTests
Change-Id: Ib6c86067522925c439f336644e4d027dbae3379c
This commit is contained in:
timhypeng
2020-09-26 15:43:11 +08:00
parent 2489494cd3
commit 3084d063f3
7 changed files with 83 additions and 39 deletions

View File

@@ -16,6 +16,8 @@
package com.android.settings.panel;
import static androidx.lifecycle.Lifecycle.Event.ON_PAUSE;
import static com.android.settings.slices.CustomSliceRegistry.MEDIA_OUTPUT_INDICATOR_SLICE_URI;
import static com.android.settings.slices.CustomSliceRegistry.REMOTE_MEDIA_SLICE_URI;
import static com.android.settings.slices.CustomSliceRegistry.VOLUME_ALARM_URI;
@@ -29,12 +31,19 @@ import android.content.Intent;
import android.net.Uri;
import android.provider.Settings;
import androidx.lifecycle.LifecycleObserver;
import androidx.lifecycle.OnLifecycleEvent;
import com.android.settings.R;
import com.android.settingslib.media.MediaOutputSliceConstants;
import java.util.ArrayList;
import java.util.List;
public class VolumePanel implements PanelContent {
/**
* Panel data class for Volume settings.
*/
public class VolumePanel implements PanelContent, LifecycleObserver {
private final Context mContext;
@@ -46,6 +55,15 @@ public class VolumePanel implements PanelContent {
mContext = context.getApplicationContext();
}
/** Invoked when the panel is paused. */
@OnLifecycleEvent(ON_PAUSE)
public void onPause() {
// Media output dialog should not show when onPause
mContext.sendBroadcast(new Intent()
.setAction(MediaOutputSliceConstants.ACTION_DISMISS_MEDIA_OUTPUT_DIALOG)
.setPackage(MediaOutputSliceConstants.SYSTEMUI_PACKAGE_NAME));
}
@Override
public CharSequence getTitle() {
return mContext.getText(R.string.sound_settings);