summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Lucas Dupin <dupin@google.com> 2018-05-04 01:14:10 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2018-05-04 01:14:10 +0000
commit88e264576a731a2bf3005c68d1ca08321f6208eb (patch)
tree31ca68ec17224d531b7599837fbeaf95b945e3e2
parentdf1dbb0bfa523c9951ee000325464fc00a40019e (diff)
parentf39ce10e2a6c18e54701c72ce3ac514b0325e259 (diff)
Merge "Update views when next slice is null" into pi-dev
-rw-r--r--packages/SystemUI/src/com/android/keyguard/KeyguardSliceView.java6
-rw-r--r--packages/SystemUI/tests/src/com/android/keyguard/KeyguardSliceViewTest.java22
2 files changed, 17 insertions, 11 deletions
diff --git a/packages/SystemUI/src/com/android/keyguard/KeyguardSliceView.java b/packages/SystemUI/src/com/android/keyguard/KeyguardSliceView.java
index c31cea2b5de9..ffe92fd34257 100644
--- a/packages/SystemUI/src/com/android/keyguard/KeyguardSliceView.java
+++ b/packages/SystemUI/src/com/android/keyguard/KeyguardSliceView.java
@@ -145,17 +145,13 @@ public class KeyguardSliceView extends LinearLayout implements View.OnClickListe
}
private void showSlice() {
- if (mPulsing) {
+ if (mPulsing || mSlice == null) {
mTitle.setVisibility(GONE);
mRow.setVisibility(GONE);
mContentChangeListener.accept(getLayoutTransition() != null);
return;
}
- if (mSlice == null) {
- return;
- }
-
ListContent lc = new ListContent(getContext(), mSlice);
mHasHeader = lc.hasHeader();
List<SliceItem> subItems = lc.getRowItems();
diff --git a/packages/SystemUI/tests/src/com/android/keyguard/KeyguardSliceViewTest.java b/packages/SystemUI/tests/src/com/android/keyguard/KeyguardSliceViewTest.java
index 9a2865785065..210764adb4a6 100644
--- a/packages/SystemUI/tests/src/com/android/keyguard/KeyguardSliceViewTest.java
+++ b/packages/SystemUI/tests/src/com/android/keyguard/KeyguardSliceViewTest.java
@@ -21,9 +21,6 @@ import android.test.suitebuilder.annotation.SmallTest;
import android.testing.AndroidTestingRunner;
import android.testing.TestableLooper.RunWithLooper;
import android.view.LayoutInflater;
-import android.view.View;
-import android.view.View.MeasureSpec;
-import android.view.ViewGroup;
import com.android.systemui.SysuiTestCase;
import com.android.systemui.keyguard.KeyguardSliceProvider;
@@ -35,6 +32,7 @@ import org.junit.runner.RunWith;
import java.util.Collections;
import java.util.HashSet;
+import java.util.concurrent.atomic.AtomicBoolean;
import androidx.slice.SliceProvider;
import androidx.slice.SliceSpecs;
@@ -58,12 +56,24 @@ public class KeyguardSliceViewTest extends SysuiTestCase {
@Test
public void showSlice_notifiesListener() {
ListBuilder builder = new ListBuilder(getContext(), mSliceUri);
- boolean[] notified = {false};
+ AtomicBoolean notified = new AtomicBoolean();
mKeyguardSliceView.setContentChangeListener((hasHeader)-> {
- notified[0] = true;
+ notified.set(true);
});
mKeyguardSliceView.onChanged(builder.build());
- Assert.assertTrue("Listener should be notified about slice changes.", notified[0]);
+ Assert.assertTrue("Listener should be notified about slice changes.",
+ notified.get());
+ }
+
+ @Test
+ public void showSlice_emptySliceNotifiesListener() {
+ AtomicBoolean notified = new AtomicBoolean();
+ mKeyguardSliceView.setContentChangeListener((hasHeader)-> {
+ notified.set(true);
+ });
+ mKeyguardSliceView.onChanged(null);
+ Assert.assertTrue("Listener should be notified about slice changes.",
+ notified.get());
}
@Test