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

Commit 96154a4d authored by Ioana Alexandru's avatar Ioana Alexandru Committed by Automerger Merge Worker
Browse files

Implement visitUris for RemoteViews ViewGroupActionAdd. am: 850fd984 am:...

Implement visitUris for RemoteViews ViewGroupActionAdd. am: 850fd984 am: f479f5e1 am: b50f8cd5 am: d3525a9d

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



Change-Id: Ifa5423265e4a4227e502fc91805d1fe18d78167c
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents effbcfe8 d3525a9d
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -2560,6 +2560,11 @@ public class RemoteViews implements Parcelable, Filter {
        public int getActionTag() {
            return VIEW_GROUP_ACTION_ADD_TAG;
        }

        @Override
        public final void visitUris(@NonNull Consumer<Uri> visitor) {
            mNestedViews.visitUris(visitor);
        }
    }

    /**
+24 −0
Original line number Diff line number Diff line
@@ -528,6 +528,30 @@ public class RemoteViewsTest {
        verify(visitor, times(1)).accept(eq(icon4.getUri()));
    }

    @Test
    public void visitUris_nestedViews() {
        final RemoteViews outer = new RemoteViews(mPackage, R.layout.remote_views_test);

        final RemoteViews inner = new RemoteViews(mPackage, 33);
        final Uri imageUriI = Uri.parse("content://inner/image");
        final Icon icon1 = Icon.createWithContentUri("content://inner/icon1");
        final Icon icon2 = Icon.createWithContentUri("content://inner/icon2");
        final Icon icon3 = Icon.createWithContentUri("content://inner/icon3");
        final Icon icon4 = Icon.createWithContentUri("content://inner/icon4");
        inner.setImageViewUri(R.id.image, imageUriI);
        inner.setTextViewCompoundDrawables(R.id.text, icon1, icon2, icon3, icon4);

        outer.addView(R.id.layout, inner);

        Consumer<Uri> visitor = (Consumer<Uri>) spy(Consumer.class);
        outer.visitUris(visitor);
        verify(visitor, times(1)).accept(eq(imageUriI));
        verify(visitor, times(1)).accept(eq(icon1.getUri()));
        verify(visitor, times(1)).accept(eq(icon2.getUri()));
        verify(visitor, times(1)).accept(eq(icon3.getUri()));
        verify(visitor, times(1)).accept(eq(icon4.getUri()));
    }

    @Test
    public void visitUris_separateOrientation() {
        final RemoteViews landscape = new RemoteViews(mPackage, R.layout.remote_views_test);