Loading packages/SystemUI/src/com/android/keyguard/KeyguardSliceView.java +10 −1 Original line number Diff line number Diff line Loading @@ -52,6 +52,7 @@ import com.android.systemui.statusbar.policy.ConfigurationController; import com.android.systemui.tuner.TunerService; import com.android.systemui.util.wakelock.KeepAwakeAnimationListener; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.function.Consumer; Loading Loading @@ -158,7 +159,15 @@ public class KeyguardSliceView extends LinearLayout implements View.OnClickListe ListContent lc = new ListContent(getContext(), mSlice, null, 0, 0); mHasHeader = lc.hasHeader(); List<SliceItem> subItems = lc.getRowItems(); List<SliceItem> subItems = new ArrayList<SliceItem>(); for (int i = 0; i < lc.getRowItems().size(); i++) { SliceItem subItem = lc.getRowItems().get(i); String itemUri = subItem.getSlice().getUri().toString(); // Filter out the action row if (!KeyguardSliceProvider.KEYGUARD_ACTION_URI.equals(itemUri)) { subItems.add(subItem); } } if (!mHasHeader) { mTitle.setVisibility(GONE); } else { Loading packages/SystemUI/src/com/android/systemui/keyguard/KeyguardSliceProvider.java +17 −0 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ package com.android.systemui.keyguard; import android.app.ActivityManager; import android.app.AlarmManager; import android.app.NotificationManager; import android.app.PendingIntent; import android.content.BroadcastReceiver; import android.content.ContentResolver; import android.content.Context; Loading Loading @@ -48,6 +49,7 @@ import androidx.slice.Slice; import androidx.slice.SliceProvider; import androidx.slice.builders.ListBuilder; import androidx.slice.builders.ListBuilder.RowBuilder; import androidx.slice.builders.SliceAction; /** * Simple Slice provider that shows the current date. Loading @@ -60,6 +62,8 @@ public class KeyguardSliceProvider extends SliceProvider implements public static final String KEYGUARD_NEXT_ALARM_URI = "content://com.android.systemui.keyguard/alarm"; public static final String KEYGUARD_DND_URI = "content://com.android.systemui.keyguard/dnd"; public static final String KEYGUARD_ACTION_URI = "content://com.android.systemui.keyguard/action"; /** * Only show alarms that will ring within N hours. Loading Loading @@ -127,9 +131,22 @@ public class KeyguardSliceProvider extends SliceProvider implements builder.addRow(new RowBuilder(builder, mDateUri).setTitle(mLastText)); addNextAlarm(builder); addZenMode(builder); addPrimaryAction(builder); return builder.build(); } protected void addPrimaryAction(ListBuilder builder) { // 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); RowBuilder primaryActionRow = new RowBuilder(builder, Uri.parse(KEYGUARD_ACTION_URI)) .setPrimaryAction(action); builder.addRow(primaryActionRow); } protected void addNextAlarm(ListBuilder builder) { if (TextUtils.isEmpty(mNextAlarm)) { return; Loading Loading
packages/SystemUI/src/com/android/keyguard/KeyguardSliceView.java +10 −1 Original line number Diff line number Diff line Loading @@ -52,6 +52,7 @@ import com.android.systemui.statusbar.policy.ConfigurationController; import com.android.systemui.tuner.TunerService; import com.android.systemui.util.wakelock.KeepAwakeAnimationListener; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.function.Consumer; Loading Loading @@ -158,7 +159,15 @@ public class KeyguardSliceView extends LinearLayout implements View.OnClickListe ListContent lc = new ListContent(getContext(), mSlice, null, 0, 0); mHasHeader = lc.hasHeader(); List<SliceItem> subItems = lc.getRowItems(); List<SliceItem> subItems = new ArrayList<SliceItem>(); for (int i = 0; i < lc.getRowItems().size(); i++) { SliceItem subItem = lc.getRowItems().get(i); String itemUri = subItem.getSlice().getUri().toString(); // Filter out the action row if (!KeyguardSliceProvider.KEYGUARD_ACTION_URI.equals(itemUri)) { subItems.add(subItem); } } if (!mHasHeader) { mTitle.setVisibility(GONE); } else { Loading
packages/SystemUI/src/com/android/systemui/keyguard/KeyguardSliceProvider.java +17 −0 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ package com.android.systemui.keyguard; import android.app.ActivityManager; import android.app.AlarmManager; import android.app.NotificationManager; import android.app.PendingIntent; import android.content.BroadcastReceiver; import android.content.ContentResolver; import android.content.Context; Loading Loading @@ -48,6 +49,7 @@ import androidx.slice.Slice; import androidx.slice.SliceProvider; import androidx.slice.builders.ListBuilder; import androidx.slice.builders.ListBuilder.RowBuilder; import androidx.slice.builders.SliceAction; /** * Simple Slice provider that shows the current date. Loading @@ -60,6 +62,8 @@ public class KeyguardSliceProvider extends SliceProvider implements public static final String KEYGUARD_NEXT_ALARM_URI = "content://com.android.systemui.keyguard/alarm"; public static final String KEYGUARD_DND_URI = "content://com.android.systemui.keyguard/dnd"; public static final String KEYGUARD_ACTION_URI = "content://com.android.systemui.keyguard/action"; /** * Only show alarms that will ring within N hours. Loading Loading @@ -127,9 +131,22 @@ public class KeyguardSliceProvider extends SliceProvider implements builder.addRow(new RowBuilder(builder, mDateUri).setTitle(mLastText)); addNextAlarm(builder); addZenMode(builder); addPrimaryAction(builder); return builder.build(); } protected void addPrimaryAction(ListBuilder builder) { // 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); RowBuilder primaryActionRow = new RowBuilder(builder, Uri.parse(KEYGUARD_ACTION_URI)) .setPrimaryAction(action); builder.addRow(primaryActionRow); } protected void addNextAlarm(ListBuilder builder) { if (TextUtils.isEmpty(mNextAlarm)) { return; Loading