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:
@@ -32,6 +32,7 @@ import com.android.settings.Utils;
|
||||
import com.android.settings.core.BasePreferenceController;
|
||||
import com.android.settingslib.core.lifecycle.LifecycleObserver;
|
||||
import com.android.settingslib.core.lifecycle.events.OnDestroy;
|
||||
import com.android.settingslib.core.lifecycle.events.OnPause;
|
||||
import com.android.settingslib.media.LocalMediaManager;
|
||||
import com.android.settingslib.media.MediaDevice;
|
||||
import com.android.settingslib.media.MediaOutputSliceConstants;
|
||||
@@ -45,7 +46,7 @@ import java.util.List;
|
||||
* {@link com.android.settings.notification.RemoteVolumeSeekBarPreference}
|
||||
**/
|
||||
public class RemoteVolumeGroupController extends BasePreferenceController implements
|
||||
Preference.OnPreferenceChangeListener, LifecycleObserver, OnDestroy,
|
||||
Preference.OnPreferenceChangeListener, LifecycleObserver, OnDestroy, OnPause,
|
||||
LocalMediaManager.DeviceCallback {
|
||||
|
||||
private static final String KEY_REMOTE_VOLUME_GROUP = "remote_media_group";
|
||||
@@ -96,6 +97,14 @@ public class RemoteVolumeGroupController extends BasePreferenceController implem
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
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 void onDestroy() {
|
||||
mLocalMediaManager.unregisterCallback(this);
|
||||
@@ -159,11 +168,11 @@ public class RemoteVolumeGroupController extends BasePreferenceController implem
|
||||
if (TextUtils.equals(info.getId(),
|
||||
preference.getKey().substring(SWITCHER_PREFIX.length()))) {
|
||||
final Intent intent = new Intent()
|
||||
.setAction(MediaOutputSliceConstants.ACTION_MEDIA_OUTPUT)
|
||||
.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
|
||||
.setAction(MediaOutputSliceConstants.ACTION_LAUNCH_MEDIA_OUTPUT_DIALOG)
|
||||
.setPackage(MediaOutputSliceConstants.SYSTEMUI_PACKAGE_NAME)
|
||||
.putExtra(MediaOutputSliceConstants.EXTRA_PACKAGE_NAME,
|
||||
info.getClientPackageName());
|
||||
mContext.startActivity(intent);
|
||||
mContext.sendBroadcast(intent);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user