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

Commit 0f46d509 authored by tim peng's avatar tim peng Committed by Automerger Merge Worker
Browse files

Merge "Output Switcher shows "+" button next to some non-expandable device"...

Merge "Output Switcher shows "+" button next to some non-expandable device" into sc-dev am: 5d85d8f3 am: fbccd4fc

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15066852

Change-Id: I02a77780eb43f95e4f91ebcb26489eb1c13976d7
parents f854b140 fbccd4fc
Loading
Loading
Loading
Loading
+12 −6
Original line number Original line Diff line number Diff line
@@ -128,7 +128,8 @@ public class MediaOutputAdapter extends MediaOutputBaseAdapter {
            }
            }
            mBottomDivider.setVisibility(View.GONE);
            mBottomDivider.setVisibility(View.GONE);
            mCheckBox.setVisibility(View.GONE);
            mCheckBox.setVisibility(View.GONE);
            if (currentlyConnected && mController.isActiveRemoteDevice(device)) {
            if (currentlyConnected && mController.isActiveRemoteDevice(device)
                    && mController.getSelectableMediaDevice().size() > 0) {
                // Init active device layout
                // Init active device layout
                mDivider.setVisibility(View.VISIBLE);
                mDivider.setVisibility(View.VISIBLE);
                mDivider.setTransitionAlpha(1);
                mDivider.setTransitionAlpha(1);
@@ -186,11 +187,16 @@ public class MediaOutputAdapter extends MediaOutputBaseAdapter {
                mConnectedItem = mContainerLayout;
                mConnectedItem = mContainerLayout;
                mBottomDivider.setVisibility(View.GONE);
                mBottomDivider.setVisibility(View.GONE);
                mCheckBox.setVisibility(View.GONE);
                mCheckBox.setVisibility(View.GONE);
                if (mController.getSelectableMediaDevice().size() > 0) {
                    mDivider.setVisibility(View.VISIBLE);
                    mDivider.setVisibility(View.VISIBLE);
                    mDivider.setTransitionAlpha(1);
                    mDivider.setTransitionAlpha(1);
                    mAddIcon.setVisibility(View.VISIBLE);
                    mAddIcon.setVisibility(View.VISIBLE);
                    mAddIcon.setTransitionAlpha(1);
                    mAddIcon.setTransitionAlpha(1);
                    mAddIcon.setOnClickListener(v -> onEndItemClick());
                    mAddIcon.setOnClickListener(v -> onEndItemClick());
                } else {
                    mDivider.setVisibility(View.GONE);
                    mAddIcon.setVisibility(View.GONE);
                }
                mTitleIcon.setImageDrawable(getSpeakerDrawable());
                mTitleIcon.setImageDrawable(getSpeakerDrawable());
                final CharSequence sessionName = mController.getSessionName();
                final CharSequence sessionName = mController.getSessionName();
                final CharSequence title = TextUtils.isEmpty(sessionName)
                final CharSequence title = TextUtils.isEmpty(sessionName)
+17 −9
Original line number Original line Diff line number Diff line
@@ -135,8 +135,6 @@ public class MediaOutputAdapterTest extends SysuiTestCase {
        mMediaOutputAdapter.onBindViewHolder(mViewHolder, 0);
        mMediaOutputAdapter.onBindViewHolder(mViewHolder, 0);


        assertThat(mViewHolder.mSeekBar.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mViewHolder.mSeekBar.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mViewHolder.mDivider.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mViewHolder.mAddIcon.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mViewHolder.mTwoLineLayout.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mViewHolder.mTwoLineLayout.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mViewHolder.mTitleText.getVisibility()).isEqualTo(View.GONE);
        assertThat(mViewHolder.mTitleText.getVisibility()).isEqualTo(View.GONE);
        assertThat(mViewHolder.mProgressBar.getVisibility()).isEqualTo(View.GONE);
        assertThat(mViewHolder.mProgressBar.getVisibility()).isEqualTo(View.GONE);
@@ -154,8 +152,6 @@ public class MediaOutputAdapterTest extends SysuiTestCase {
        mMediaOutputAdapter.onBindViewHolder(mViewHolder, 0);
        mMediaOutputAdapter.onBindViewHolder(mViewHolder, 0);


        assertThat(mViewHolder.mSeekBar.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mViewHolder.mSeekBar.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mViewHolder.mDivider.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mViewHolder.mAddIcon.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mViewHolder.mTwoLineLayout.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mViewHolder.mTwoLineLayout.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mViewHolder.mTitleText.getVisibility()).isEqualTo(View.GONE);
        assertThat(mViewHolder.mTitleText.getVisibility()).isEqualTo(View.GONE);
        assertThat(mViewHolder.mProgressBar.getVisibility()).isEqualTo(View.GONE);
        assertThat(mViewHolder.mProgressBar.getVisibility()).isEqualTo(View.GONE);
@@ -176,9 +172,25 @@ public class MediaOutputAdapterTest extends SysuiTestCase {
        assertThat(mViewHolder.mBottomDivider.getVisibility()).isEqualTo(View.GONE);
        assertThat(mViewHolder.mBottomDivider.getVisibility()).isEqualTo(View.GONE);
        assertThat(mViewHolder.mTwoLineTitleText.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mViewHolder.mTwoLineTitleText.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mViewHolder.mSeekBar.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mViewHolder.mSeekBar.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mViewHolder.mTwoLineTitleText.getText()).isEqualTo(TEST_DEVICE_NAME_1);
    }

    @Test
    public void onBindViewHolder_bindConnectedDevice_withSelectableDevice_showAddIcon() {
        when(mMediaOutputController.getSelectableMediaDevice()).thenReturn(mMediaDevices);
        mMediaOutputAdapter.onBindViewHolder(mViewHolder, 0);

        assertThat(mViewHolder.mDivider.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mViewHolder.mDivider.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mViewHolder.mAddIcon.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mViewHolder.mAddIcon.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mViewHolder.mTwoLineTitleText.getText()).isEqualTo(TEST_DEVICE_NAME_1);
    }

    @Test
    public void onBindViewHolder_bindConnectedDevice_withoutSelectableDevice_hideAddIcon() {
        when(mMediaOutputController.getSelectableMediaDevice()).thenReturn(new ArrayList<>());
        mMediaOutputAdapter.onBindViewHolder(mViewHolder, 0);

        assertThat(mViewHolder.mDivider.getVisibility()).isEqualTo(View.GONE);
        assertThat(mViewHolder.mAddIcon.getVisibility()).isEqualTo(View.GONE);
    }
    }


    @Test
    @Test
@@ -245,8 +257,6 @@ public class MediaOutputAdapterTest extends SysuiTestCase {
        assertThat(mViewHolder.mCheckBox.getVisibility()).isEqualTo(View.GONE);
        assertThat(mViewHolder.mCheckBox.getVisibility()).isEqualTo(View.GONE);
        assertThat(mViewHolder.mBottomDivider.getVisibility()).isEqualTo(View.GONE);
        assertThat(mViewHolder.mBottomDivider.getVisibility()).isEqualTo(View.GONE);
        assertThat(mViewHolder.mProgressBar.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mViewHolder.mProgressBar.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mViewHolder.mDivider.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mViewHolder.mAddIcon.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mViewHolder.mTwoLineTitleText.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mViewHolder.mTwoLineTitleText.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mViewHolder.mTwoLineTitleText.getText()).isEqualTo(TEST_DEVICE_NAME_1);
        assertThat(mViewHolder.mTwoLineTitleText.getText()).isEqualTo(TEST_DEVICE_NAME_1);
    }
    }
@@ -263,8 +273,6 @@ public class MediaOutputAdapterTest extends SysuiTestCase {
        assertThat(mViewHolder.mCheckBox.getVisibility()).isEqualTo(View.GONE);
        assertThat(mViewHolder.mCheckBox.getVisibility()).isEqualTo(View.GONE);
        assertThat(mViewHolder.mBottomDivider.getVisibility()).isEqualTo(View.GONE);
        assertThat(mViewHolder.mBottomDivider.getVisibility()).isEqualTo(View.GONE);
        assertThat(mViewHolder.mTitleText.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mViewHolder.mTitleText.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mViewHolder.mDivider.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mViewHolder.mAddIcon.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mViewHolder.mTitleText.getText()).isEqualTo(TEST_DEVICE_NAME_1);
        assertThat(mViewHolder.mTitleText.getText()).isEqualTo(TEST_DEVICE_NAME_1);
    }
    }