[Output Switcher] Decouple selection behavior code

Bug: 269703576
Test: atest MediaOutputAdapterTest MediaOutputControllerTest MediaOutputBaseDialogTest MediaOutputDialogTest
Change-Id: I1e151e90bbe5e6dbb78b4e90a0765cbacbd09941
(cherry picked from commit def12fe204)
This commit is contained in:
shaoweishen
2023-02-23 12:02:23 +00:00
committed by Shaowei Shen
parent 204f951464
commit f1c2beaf8b
2 changed files with 6 additions and 9 deletions

View File

@@ -97,7 +97,7 @@ public abstract class MediaDevice implements Comparable<MediaDevice> {
@Retention(RetentionPolicy.SOURCE)
@IntDef({SelectionBehavior.SELECTION_BEHAVIOR_NONE,
SELECTION_BEHAVIOR_TRANSFER,
SelectionBehavior.SELECTION_BEHAVIOR_TRANSFER,
SelectionBehavior.SELECTION_BEHAVIOR_GO_TO_APP
})
public @interface SelectionBehavior {

View File

@@ -16,10 +16,6 @@
package com.android.systemui.media.dialog;
import static android.media.RouteListingPreference.Item.SUBTEXT_AD_ROUTING_DISALLOWED;
import static android.media.RouteListingPreference.Item.SUBTEXT_DOWNLOADED_CONTENT_ROUTING_DISALLOWED;
import static android.media.RouteListingPreference.Item.SUBTEXT_SUBSCRIPTION_REQUIRED;
import static com.android.settingslib.media.MediaDevice.SelectionBehavior.SELECTION_BEHAVIOR_GO_TO_APP;
import static com.android.settingslib.media.MediaDevice.SelectionBehavior.SELECTION_BEHAVIOR_NONE;
import static com.android.settingslib.media.MediaDevice.SelectionBehavior.SELECTION_BEHAVIOR_TRANSFER;
@@ -535,11 +531,12 @@ public class MediaOutputAdapter extends MediaOutputBaseAdapter {
@DoNotInline
static Drawable getDeviceStatusIconBasedOnSelectionBehavior(MediaDevice device,
Context context) {
switch (device.getSubtext()) {
case SUBTEXT_AD_ROUTING_DISALLOWED:
case SUBTEXT_DOWNLOADED_CONTENT_ROUTING_DISALLOWED:
switch (device.getSelectionBehavior()) {
case SELECTION_BEHAVIOR_NONE:
return context.getDrawable(R.drawable.media_output_status_failed);
case SUBTEXT_SUBSCRIPTION_REQUIRED:
case SELECTION_BEHAVIOR_TRANSFER:
return null;
case SELECTION_BEHAVIOR_GO_TO_APP:
return context.getDrawable(R.drawable.media_output_status_help);
}
return null;