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

Commit 2a73f9b8 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Follow slice API finalization"

parents 1abc88b6 1045e0be
Loading
Loading
Loading
Loading
+16 −11
Original line number Diff line number Diff line
@@ -45,6 +45,7 @@ import java.util.Date;
import java.util.Locale;
import java.util.concurrent.TimeUnit;

import androidx.core.graphics.drawable.IconCompat;
import androidx.slice.Slice;
import androidx.slice.SliceProvider;
import androidx.slice.builders.ListBuilder;
@@ -127,8 +128,8 @@ public class KeyguardSliceProvider extends SliceProvider implements

    @Override
    public Slice onBindSlice(Uri sliceUri) {
        ListBuilder builder = new ListBuilder(getContext(), mSliceUri);
        builder.addRow(new RowBuilder(builder, mDateUri).setTitle(mLastText));
        ListBuilder builder = new ListBuilder(getContext(), mSliceUri, ListBuilder.INFINITY);
        builder.addRow(new RowBuilder(mDateUri).setTitle(mLastText));
        addNextAlarm(builder);
        addZenMode(builder);
        addPrimaryAction(builder);
@@ -139,10 +140,12 @@ public class KeyguardSliceProvider extends SliceProvider implements
        // Add simple action because API requires it; Keyguard handles presenting
        // its own slices so this action + icon are actually never used.
        PendingIntent pi = PendingIntent.getActivity(getContext(), 0, new Intent(), 0);
        Icon icon = Icon.createWithResource(getContext(), R.drawable.ic_access_alarms_big);
        SliceAction action = new SliceAction(pi, icon, mLastText);
        IconCompat icon = IconCompat.createWithResource(getContext(),
                R.drawable.ic_access_alarms_big);
        SliceAction action = SliceAction.createDeeplink(pi, icon,
                ListBuilder.ICON_IMAGE, mLastText);

        RowBuilder primaryActionRow = new RowBuilder(builder, Uri.parse(KEYGUARD_ACTION_URI))
        RowBuilder primaryActionRow = new RowBuilder(Uri.parse(KEYGUARD_ACTION_URI))
                .setPrimaryAction(action);
        builder.addRow(primaryActionRow);
    }
@@ -152,10 +155,11 @@ public class KeyguardSliceProvider extends SliceProvider implements
            return;
        }

        Icon alarmIcon = Icon.createWithResource(getContext(), R.drawable.ic_access_alarms_big);
        RowBuilder alarmRowBuilder = new RowBuilder(builder, mAlarmUri)
        IconCompat alarmIcon = IconCompat.createWithResource(getContext(),
                R.drawable.ic_access_alarms_big);
        RowBuilder alarmRowBuilder = new RowBuilder(mAlarmUri)
                .setTitle(mNextAlarm)
                .addEndItem(alarmIcon);
                .addEndItem(alarmIcon, ListBuilder.ICON_IMAGE);
        builder.addRow(alarmRowBuilder);
    }

@@ -167,10 +171,11 @@ public class KeyguardSliceProvider extends SliceProvider implements
        if (!isDndSuppressingNotifications()) {
            return;
        }
        RowBuilder dndBuilder = new RowBuilder(builder, mDndUri)
        RowBuilder dndBuilder = new RowBuilder(mDndUri)
                .setContentDescription(getContext().getResources()
                        .getString(R.string.accessibility_quick_settings_dnd))
                .addEndItem(Icon.createWithResource(getContext(), R.drawable.stat_sys_dnd));
                .addEndItem(IconCompat.createWithResource(getContext(), R.drawable.stat_sys_dnd),
                        ListBuilder.ICON_IMAGE);
        builder.addRow(dndBuilder);
    }

+3 −5
Original line number Diff line number Diff line
@@ -55,7 +55,7 @@ public class KeyguardSliceViewTest extends SysuiTestCase {

    @Test
    public void showSlice_notifiesListener() {
        ListBuilder builder = new ListBuilder(getContext(), mSliceUri);
        ListBuilder builder = new ListBuilder(getContext(), mSliceUri, ListBuilder.INFINITY);
        AtomicBoolean notified = new AtomicBoolean();
        mKeyguardSliceView.setContentChangeListener(()-> notified.set(true));
        mKeyguardSliceView.onChanged(builder.build());
@@ -74,13 +74,11 @@ public class KeyguardSliceViewTest extends SysuiTestCase {

    @Test
    public void hasHeader_readsSliceData() {
        ListBuilder builder = new ListBuilder(getContext(), mSliceUri);
        ListBuilder builder = new ListBuilder(getContext(), mSliceUri, ListBuilder.INFINITY);
        mKeyguardSliceView.onChanged(builder.build());
        Assert.assertFalse("View should not have a header", mKeyguardSliceView.hasHeader());

        builder.setHeader((ListBuilder.HeaderBuilder headerBuilder) -> {
            headerBuilder.setTitle("header title!");
        });
        builder.setHeader(new ListBuilder.HeaderBuilder().setTitle("header title!"));
        mKeyguardSliceView.onChanged(builder.build());
        Assert.assertTrue("View should have a header", mKeyguardSliceView.hasHeader());
    }
+2 −1
Original line number Diff line number Diff line
@@ -137,7 +137,8 @@ public class KeyguardSliceProviderTest extends SysuiTestCase {

    @Test
    public void addZenMode_addedToSlice() {
        ListBuilder listBuilder = spy(new ListBuilder(getContext(), mProvider.getUri()));
        ListBuilder listBuilder = spy(new ListBuilder(getContext(), mProvider.getUri(),
            ListBuilder.INFINITY));
        mProvider.addZenMode(listBuilder);
        verify(listBuilder, never()).addRow(any(ListBuilder.RowBuilder.class));