Add a primary action to slices from keyguard slice provider
We'll be enforcing requiring a primary action on slices.
There isn't a clear action that makes sense for these
slices... which is unfortunate but add a dummy one for now.
Test: atest KeyguardSliceProviderTest
Bug: 77855834
Change-Id: Ic37f9a8eba463654b3b2b93c1df9cb97d6d688a2
diff --git a/packages/SystemUI/src/com/android/keyguard/KeyguardSliceView.java b/packages/SystemUI/src/com/android/keyguard/KeyguardSliceView.java
index 97cf1e5..12ac805 100644
--- a/packages/SystemUI/src/com/android/keyguard/KeyguardSliceView.java
+++ b/packages/SystemUI/src/com/android/keyguard/KeyguardSliceView.java
@@ -52,6 +52,7 @@
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;
@@ -156,7 +157,15 @@
ListContent lc = new ListContent(getContext(), mSlice);
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 {