diff options
6 files changed, 32 insertions, 2 deletions
diff --git a/packages/SettingsLib/src/com/android/settingslib/dream/DreamBackend.java b/packages/SettingsLib/src/com/android/settingslib/dream/DreamBackend.java index 1606540da3fd..2614644feb20 100644 --- a/packages/SettingsLib/src/com/android/settingslib/dream/DreamBackend.java +++ b/packages/SettingsLib/src/com/android/settingslib/dream/DreamBackend.java @@ -92,7 +92,8 @@ public class DreamBackend { COMPLICATION_TYPE_AIR_QUALITY, COMPLICATION_TYPE_CAST_INFO, COMPLICATION_TYPE_HOME_CONTROLS, - COMPLICATION_TYPE_SMARTSPACE + COMPLICATION_TYPE_SMARTSPACE, + COMPLICATION_TYPE_MEDIA_ENTRY }) @Retention(RetentionPolicy.SOURCE) public @interface ComplicationType { @@ -105,6 +106,7 @@ public class DreamBackend { public static final int COMPLICATION_TYPE_CAST_INFO = 5; public static final int COMPLICATION_TYPE_HOME_CONTROLS = 6; public static final int COMPLICATION_TYPE_SMARTSPACE = 7; + public static final int COMPLICATION_TYPE_MEDIA_ENTRY = 8; private final Context mContext; private final IDreamManager mDreamManager; diff --git a/packages/SystemUI/src/com/android/systemui/dreams/complication/Complication.java b/packages/SystemUI/src/com/android/systemui/dreams/complication/Complication.java index 29bb2f42cca5..41f557850f88 100644 --- a/packages/SystemUI/src/com/android/systemui/dreams/complication/Complication.java +++ b/packages/SystemUI/src/com/android/systemui/dreams/complication/Complication.java @@ -164,7 +164,8 @@ public interface Complication { COMPLICATION_TYPE_AIR_QUALITY, COMPLICATION_TYPE_CAST_INFO, COMPLICATION_TYPE_HOME_CONTROLS, - COMPLICATION_TYPE_SMARTSPACE + COMPLICATION_TYPE_SMARTSPACE, + COMPLICATION_TYPE_MEDIA_ENTRY }) @Retention(RetentionPolicy.SOURCE) @interface ComplicationType {} @@ -177,6 +178,7 @@ public interface Complication { int COMPLICATION_TYPE_CAST_INFO = 1 << 4; int COMPLICATION_TYPE_HOME_CONTROLS = 1 << 5; int COMPLICATION_TYPE_SMARTSPACE = 1 << 6; + int COMPLICATION_TYPE_MEDIA_ENTRY = 1 << 7; /** * The {@link Host} interface specifies a way a {@link Complication} to communicate with its diff --git a/packages/SystemUI/src/com/android/systemui/dreams/complication/ComplicationUtils.java b/packages/SystemUI/src/com/android/systemui/dreams/complication/ComplicationUtils.java index 75a97de10e7e..18aacd21bd12 100644 --- a/packages/SystemUI/src/com/android/systemui/dreams/complication/ComplicationUtils.java +++ b/packages/SystemUI/src/com/android/systemui/dreams/complication/ComplicationUtils.java @@ -20,6 +20,7 @@ import static com.android.systemui.dreams.complication.Complication.COMPLICATION import static com.android.systemui.dreams.complication.Complication.COMPLICATION_TYPE_CAST_INFO; import static com.android.systemui.dreams.complication.Complication.COMPLICATION_TYPE_DATE; import static com.android.systemui.dreams.complication.Complication.COMPLICATION_TYPE_HOME_CONTROLS; +import static com.android.systemui.dreams.complication.Complication.COMPLICATION_TYPE_MEDIA_ENTRY; import static com.android.systemui.dreams.complication.Complication.COMPLICATION_TYPE_NONE; import static com.android.systemui.dreams.complication.Complication.COMPLICATION_TYPE_SMARTSPACE; import static com.android.systemui.dreams.complication.Complication.COMPLICATION_TYPE_TIME; @@ -54,6 +55,8 @@ public class ComplicationUtils { return COMPLICATION_TYPE_HOME_CONTROLS; case DreamBackend.COMPLICATION_TYPE_SMARTSPACE: return COMPLICATION_TYPE_SMARTSPACE; + case DreamBackend.COMPLICATION_TYPE_MEDIA_ENTRY: + return COMPLICATION_TYPE_MEDIA_ENTRY; default: return COMPLICATION_TYPE_NONE; } diff --git a/packages/SystemUI/src/com/android/systemui/dreams/complication/DreamMediaEntryComplication.java b/packages/SystemUI/src/com/android/systemui/dreams/complication/DreamMediaEntryComplication.java index 1166c2fc1120..deff0608bedd 100644 --- a/packages/SystemUI/src/com/android/systemui/dreams/complication/DreamMediaEntryComplication.java +++ b/packages/SystemUI/src/com/android/systemui/dreams/complication/DreamMediaEntryComplication.java @@ -55,6 +55,11 @@ public class DreamMediaEntryComplication implements Complication { return mComponentFactory.create().getViewHolder(); } + @Override + public int getRequiredTypeAvailability() { + return COMPLICATION_TYPE_MEDIA_ENTRY; + } + /** * Contains values/logic associated with the dream complication view. */ diff --git a/packages/SystemUI/tests/src/com/android/systemui/dreams/complication/ComplicationUtilsTest.java b/packages/SystemUI/tests/src/com/android/systemui/dreams/complication/ComplicationUtilsTest.java index e099c9269d3f..ea16cb567028 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/dreams/complication/ComplicationUtilsTest.java +++ b/packages/SystemUI/tests/src/com/android/systemui/dreams/complication/ComplicationUtilsTest.java @@ -20,6 +20,7 @@ import static com.android.systemui.dreams.complication.Complication.COMPLICATION import static com.android.systemui.dreams.complication.Complication.COMPLICATION_TYPE_CAST_INFO; import static com.android.systemui.dreams.complication.Complication.COMPLICATION_TYPE_DATE; import static com.android.systemui.dreams.complication.Complication.COMPLICATION_TYPE_HOME_CONTROLS; +import static com.android.systemui.dreams.complication.Complication.COMPLICATION_TYPE_MEDIA_ENTRY; import static com.android.systemui.dreams.complication.Complication.COMPLICATION_TYPE_SMARTSPACE; import static com.android.systemui.dreams.complication.Complication.COMPLICATION_TYPE_TIME; import static com.android.systemui.dreams.complication.Complication.COMPLICATION_TYPE_WEATHER; @@ -63,6 +64,8 @@ public class ComplicationUtilsTest extends SysuiTestCase { .isEqualTo(COMPLICATION_TYPE_HOME_CONTROLS); assertThat(convertComplicationType(DreamBackend.COMPLICATION_TYPE_SMARTSPACE)) .isEqualTo(COMPLICATION_TYPE_SMARTSPACE); + assertThat(convertComplicationType(DreamBackend.COMPLICATION_TYPE_MEDIA_ENTRY)) + .isEqualTo(COMPLICATION_TYPE_MEDIA_ENTRY); } @Test diff --git a/packages/SystemUI/tests/src/com/android/systemui/dreams/complication/DreamMediaEntryComplicationTest.java b/packages/SystemUI/tests/src/com/android/systemui/dreams/complication/DreamMediaEntryComplicationTest.java index 50f27ea27ae9..0295030da510 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/dreams/complication/DreamMediaEntryComplicationTest.java +++ b/packages/SystemUI/tests/src/com/android/systemui/dreams/complication/DreamMediaEntryComplicationTest.java @@ -16,8 +16,11 @@ package com.android.systemui.dreams.complication; +import static com.android.systemui.dreams.complication.Complication.COMPLICATION_TYPE_MEDIA_ENTRY; import static com.android.systemui.flags.Flags.DREAM_MEDIA_TAP_TO_OPEN; +import static com.google.common.truth.Truth.assertThat; + import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; @@ -32,6 +35,7 @@ import androidx.test.filters.SmallTest; import com.android.systemui.ActivityIntentHelper; import com.android.systemui.SysuiTestCase; import com.android.systemui.dreams.DreamOverlayStateController; +import com.android.systemui.dreams.complication.dagger.DreamMediaEntryComplicationComponent; import com.android.systemui.flags.FeatureFlags; import com.android.systemui.media.controls.ui.MediaCarouselController; import com.android.systemui.media.dream.MediaDreamComplication; @@ -51,6 +55,9 @@ import org.mockito.MockitoAnnotations; @TestableLooper.RunWithLooper public class DreamMediaEntryComplicationTest extends SysuiTestCase { @Mock + private DreamMediaEntryComplicationComponent.Factory mComponentFactory; + + @Mock private View mView; @Mock @@ -89,6 +96,14 @@ public class DreamMediaEntryComplicationTest extends SysuiTestCase { when(mFeatureFlags.isEnabled(DREAM_MEDIA_TAP_TO_OPEN)).thenReturn(false); } + @Test + public void testGetRequiredTypeAvailability() { + final DreamMediaEntryComplication complication = + new DreamMediaEntryComplication(mComponentFactory); + assertThat(complication.getRequiredTypeAvailability()).isEqualTo( + COMPLICATION_TYPE_MEDIA_ENTRY); + } + /** * Ensures clicking media entry chip adds/removes media complication. */ |