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

Commit 99dd4d84 authored by Derek Jedral's avatar Derek Jedral
Browse files

Rename output switcher grouping flag

This flag was originally not listed as a bugfix. The suggestion from the
release team is to re-define the flag.

Test: atest
Bug: 394907674
Flag: com.android.media.flags.enable_output_switcher_device_grouping
Change-Id: Icb50a5a013c29b0a3267b8b1ca192f05f0ecfcc0
parent 9408d873
Loading
Loading
Loading
Loading
+10 −0
Original line number Diff line number Diff line
@@ -144,6 +144,16 @@ flag {
    }
}

flag {
    name: "enable_output_switcher_device_grouping"
    namespace: "media_better_together"
    description: "Enables selected items in Output Switcher to be grouped together."
    bug: "388347018"
    metadata {
        purpose: PURPOSE_BUGFIX
    }
}

flag {
    name: "enable_prevention_of_keep_alive_route_providers"
    namespace: "media_solutions"
+4 −4
Original line number Diff line number Diff line
@@ -779,7 +779,7 @@ public abstract class InfoMediaManager {
        static List<RouteListingPreference.Item> composePreferenceRouteListing(
                RouteListingPreference routeListingPreference) {
            boolean preferRouteListingOrdering =
                    com.android.media.flags.Flags.enableOutputSwitcherSessionGrouping()
                    com.android.media.flags.Flags.enableOutputSwitcherDeviceGrouping()
                    && preferRouteListingOrdering(routeListingPreference);
            List<RouteListingPreference.Item> finalizedItemList = new ArrayList<>();
            List<RouteListingPreference.Item> itemList = routeListingPreference.getItems();
@@ -814,7 +814,7 @@ public abstract class InfoMediaManager {
         * Returns an ordered list of available devices based on the provided {@code
         * routeListingPreferenceItems}.
         *
         * <p>The resulting order if enableOutputSwitcherSessionGrouping is disabled is:
         * <p>The resulting order if enableOutputSwitcherDeviceGrouping is disabled is:
         *
         * <ol>
         *   <li>Selected routes.
@@ -822,7 +822,7 @@ public abstract class InfoMediaManager {
         *   <li>Not-selected, non-system, available routes sorted by route listing preference.
         * </ol>
         *
         * <p>The resulting order if enableOutputSwitcherSessionGrouping is enabled is:
         * <p>The resulting order if enableOutputSwitcherDeviceGrouping is enabled is:
         *
         * <ol>
         *   <li>Selected routes sorted by route listing preference.
@@ -848,7 +848,7 @@ public abstract class InfoMediaManager {
            Set<String> sortedRouteIds = new LinkedHashSet<>();

            boolean addSelectedRlpItemsFirst =
                    com.android.media.flags.Flags.enableOutputSwitcherSessionGrouping()
                    com.android.media.flags.Flags.enableOutputSwitcherDeviceGrouping()
                    && preferRouteListingOrdering(routeListingPreference);
            Set<String> selectedRouteIds = new HashSet<>();

+4 −4
Original line number Diff line number Diff line
@@ -942,7 +942,7 @@ public class InfoMediaManagerTest {
        assertThat(mInfoMediaManager.getCurrentConnectedDevice()).isEqualTo(device);
    }

    @EnableFlags(Flags.FLAG_ENABLE_OUTPUT_SWITCHER_SESSION_GROUPING)
    @EnableFlags(Flags.FLAG_ENABLE_OUTPUT_SWITCHER_DEVICE_GROUPING)
    @Test
    public void composePreferenceRouteListing_useSystemOrderingIsFalse() {
        RouteListingPreference routeListingPreference =
@@ -955,7 +955,7 @@ public class InfoMediaManagerTest {
        assertThat(routeOrder.get(1).getRouteId()).isEqualTo(TEST_ID_4);
    }

    @EnableFlags(Flags.FLAG_ENABLE_OUTPUT_SWITCHER_SESSION_GROUPING)
    @EnableFlags(Flags.FLAG_ENABLE_OUTPUT_SWITCHER_DEVICE_GROUPING)
    @Test
    public void composePreferenceRouteListing_useSystemOrderingIsTrue() {
        RouteListingPreference routeListingPreference =
@@ -968,7 +968,7 @@ public class InfoMediaManagerTest {
        assertThat(routeOrder.get(1).getRouteId()).isEqualTo(TEST_ID_3);
    }

    @EnableFlags(Flags.FLAG_ENABLE_OUTPUT_SWITCHER_SESSION_GROUPING)
    @EnableFlags(Flags.FLAG_ENABLE_OUTPUT_SWITCHER_DEVICE_GROUPING)
    @Test
    public void arrangeRouteListByPreference_useSystemOrderingIsFalse() {
        RouteListingPreference routeListingPreference =
@@ -986,7 +986,7 @@ public class InfoMediaManagerTest {
        assertThat(routeOrder.get(3).getId()).isEqualTo(TEST_ID_1);
    }

    @EnableFlags(Flags.FLAG_ENABLE_OUTPUT_SWITCHER_SESSION_GROUPING)
    @EnableFlags(Flags.FLAG_ENABLE_OUTPUT_SWITCHER_DEVICE_GROUPING)
    @Test
    public void arrangeRouteListByPreference_useSystemOrderingIsTrue() {
        RouteListingPreference routeListingPreference =
+9 −9
Original line number Diff line number Diff line
@@ -166,7 +166,7 @@ public class MediaOutputAdapterTest extends SysuiTestCase {
                mContext.getText(R.string.media_output_dialog_pairing_new).toString());
    }

    @DisableFlags(Flags.FLAG_ENABLE_OUTPUT_SWITCHER_SESSION_GROUPING)
    @DisableFlags(Flags.FLAG_ENABLE_OUTPUT_SWITCHER_DEVICE_GROUPING)
    @Test
    public void onBindViewHolder_bindGroup_withSessionName_verifyView() {
        when(mMediaSwitchingController.getSelectedMediaDevice())
@@ -188,7 +188,7 @@ public class MediaOutputAdapterTest extends SysuiTestCase {
        assertThat(mViewHolder.mCheckBox.getVisibility()).isEqualTo(View.VISIBLE);
    }

    @DisableFlags(Flags.FLAG_ENABLE_OUTPUT_SWITCHER_SESSION_GROUPING)
    @DisableFlags(Flags.FLAG_ENABLE_OUTPUT_SWITCHER_DEVICE_GROUPING)
    @Test
    public void onBindViewHolder_bindGroup_noSessionName_verifyView() {
        when(mMediaSwitchingController.getSelectedMediaDevice())
@@ -237,7 +237,7 @@ public class MediaOutputAdapterTest extends SysuiTestCase {
        assertThat(mViewHolder.mSeekBar.getVisibility()).isEqualTo(View.VISIBLE);
    }

    @DisableFlags(Flags.FLAG_ENABLE_OUTPUT_SWITCHER_SESSION_GROUPING)
    @DisableFlags(Flags.FLAG_ENABLE_OUTPUT_SWITCHER_DEVICE_GROUPING)
    @Test
    public void onBindViewHolder_bindConnectedRemoteDevice_verifyView() {
        when(mMediaSwitchingController.getSelectableMediaDevice())
@@ -818,7 +818,7 @@ public class MediaOutputAdapterTest extends SysuiTestCase {
        verify(mMediaSwitchingController).removeDeviceFromPlayMedia(mMediaDevice1);
    }

    @DisableFlags(Flags.FLAG_ENABLE_OUTPUT_SWITCHER_SESSION_GROUPING)
    @DisableFlags(Flags.FLAG_ENABLE_OUTPUT_SWITCHER_DEVICE_GROUPING)
    @Test
    public void onBindViewHolder_hasVolumeAdjustmentRestriction_verifySeekbarDisabled() {
        when(mMediaSwitchingController.getSelectedMediaDevice()).thenReturn(
@@ -935,7 +935,7 @@ public class MediaOutputAdapterTest extends SysuiTestCase {
                .isEqualTo(R.drawable.media_output_icon_volume);
    }

    @EnableFlags(Flags.FLAG_ENABLE_OUTPUT_SWITCHER_SESSION_GROUPING)
    @EnableFlags(Flags.FLAG_ENABLE_OUTPUT_SWITCHER_DEVICE_GROUPING)
    @Test
    public void multipleSelectedDevices_verifySessionView() {
        initializeSession();
@@ -956,7 +956,7 @@ public class MediaOutputAdapterTest extends SysuiTestCase {
        assertThat(mViewHolder.mSeekBar.getVolume()).isEqualTo(TEST_CURRENT_VOLUME);
    }

    @EnableFlags(Flags.FLAG_ENABLE_OUTPUT_SWITCHER_SESSION_GROUPING)
    @EnableFlags(Flags.FLAG_ENABLE_OUTPUT_SWITCHER_DEVICE_GROUPING)
    @Test
    public void multipleSelectedDevices_verifyCollapsedView() {
        initializeSession();
@@ -970,7 +970,7 @@ public class MediaOutputAdapterTest extends SysuiTestCase {
        assertThat(mViewHolder.mEndTouchArea.getVisibility()).isEqualTo(View.GONE);
    }

    @EnableFlags(Flags.FLAG_ENABLE_OUTPUT_SWITCHER_SESSION_GROUPING)
    @EnableFlags(Flags.FLAG_ENABLE_OUTPUT_SWITCHER_DEVICE_GROUPING)
    @Test
    public void multipleSelectedDevices_expandIconClicked_verifyInitialView() {
        initializeSession();
@@ -993,7 +993,7 @@ public class MediaOutputAdapterTest extends SysuiTestCase {
        assertThat(mViewHolder.mTitleText.getText().toString()).isEqualTo(TEST_DEVICE_NAME_1);
    }

    @EnableFlags(Flags.FLAG_ENABLE_OUTPUT_SWITCHER_SESSION_GROUPING)
    @EnableFlags(Flags.FLAG_ENABLE_OUTPUT_SWITCHER_DEVICE_GROUPING)
    @Test
    public void multipleSelectedDevices_expandIconClicked_verifyCollapsedView() {
        initializeSession();
@@ -1016,7 +1016,7 @@ public class MediaOutputAdapterTest extends SysuiTestCase {
        assertThat(mViewHolder.mTitleText.getText().toString()).isEqualTo(TEST_DEVICE_NAME_2);
    }

    @EnableFlags(Flags.FLAG_ENABLE_OUTPUT_SWITCHER_SESSION_GROUPING)
    @EnableFlags(Flags.FLAG_ENABLE_OUTPUT_SWITCHER_DEVICE_GROUPING)
    @Test
    public void deviceCanNotBeDeselected_verifyView() {
        List<MediaDevice> selectedDevices = new ArrayList<>();
+3 −3
Original line number Diff line number Diff line
@@ -58,7 +58,7 @@ public class MediaOutputAdapter extends MediaOutputBaseAdapter {
    private static final float DEVICE_DISABLED_ALPHA = 0.5f;
    private static final float DEVICE_ACTIVE_ALPHA = 1f;
    protected List<MediaItem> mMediaItemList = new CopyOnWriteArrayList<>();
    private boolean mShouldGroupSelectedMediaItems = Flags.enableOutputSwitcherSessionGrouping();
    private boolean mShouldGroupSelectedMediaItems = Flags.enableOutputSwitcherDeviceGrouping();

    public MediaOutputAdapter(MediaSwitchingController controller) {
        super(controller);
@@ -333,7 +333,7 @@ public class MediaOutputAdapter extends MediaOutputBaseAdapter {
        }

        private boolean shouldShowGroupCheckbox(@NonNull GroupStatus groupStatus) {
            if (Flags.enableOutputSwitcherSessionGrouping()) {
            if (Flags.enableOutputSwitcherDeviceGrouping()) {
                return isGroupCheckboxEnabled(groupStatus);
            }
            return true;
@@ -391,7 +391,7 @@ public class MediaOutputAdapter extends MediaOutputBaseAdapter {
            if (drawable instanceof AnimatedVectorDrawable) {
                ((AnimatedVectorDrawable) drawable).start();
            }
            if (Flags.enableOutputSwitcherSessionGrouping()) {
            if (Flags.enableOutputSwitcherDeviceGrouping()) {
                mEndClickIcon.setContentDescription(mContext.getString(accessibilityStringId));
            }
        }
Loading