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

Commit 7c076779 authored by Wesley Wang's avatar Wesley Wang Committed by Android (Google) Code Review
Browse files

Merge "Clear UsageProgressBarPreference image view before setting images" into sc-dev

parents 14ff8345 0ca9728f
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -160,6 +160,7 @@ public class UsageProgressBarPreference extends Preference {
            customLayout.removeAllViews();
            customLayout.setVisibility(View.GONE);
        } else {
            customLayout.removeAllViews();
            customLayout.addView(mCustomImageView);
            customLayout.setVisibility(View.VISIBLE);
        }
+16 −0
Original line number Diff line number Diff line
@@ -127,4 +127,20 @@ public class UsageProgressBarPreferenceTest {
        assertThat(customContent.getChildAt(0)).isEqualTo(imageView);
        assertThat(customContent.getVisibility()).isEqualTo(View.VISIBLE);
    }

    @Test
    public void setCustomContent_setImageViewTwice_oneAndLatestChild() {
        final ImageView imageViewLegacy = mock(ImageView.class);
        final ImageView imageViewNew = mock(ImageView.class);
        mUsageProgressBarPreference.setCustomContent(imageViewLegacy);
        mUsageProgressBarPreference.setCustomContent(imageViewNew);

        mUsageProgressBarPreference.onBindViewHolder(mViewHolder);

        final FrameLayout customContent =
                (FrameLayout) mViewHolder.findViewById(R.id.custom_content);
        assertThat(customContent.getChildCount()).isEqualTo(1);
        assertThat(customContent.getChildAt(0)).isEqualTo(imageViewNew);
        assertThat(customContent.getVisibility()).isEqualTo(View.VISIBLE);
    }
}