Merge "[Media TTT] Add @SystemApis for new states of receiver devices" into tm-qpr-dev am: 860d469829 am: 0af60b86d0
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/20667967 Change-Id: Ia6fa5466c878c4190e96a1faa551a4ff67085f06 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -511,10 +511,26 @@ public class StatusBarManager {
|
||||
@SystemApi
|
||||
public static final int MEDIA_TRANSFER_RECEIVER_STATE_FAR_FROM_SENDER = 1;
|
||||
|
||||
/**
|
||||
* State indicating that media transfer to this receiver device is succeeded.
|
||||
*
|
||||
* @hide
|
||||
*/
|
||||
public static final int MEDIA_TRANSFER_RECEIVER_STATE_TRANSFER_TO_RECEIVER_SUCCEEDED = 2;
|
||||
|
||||
/**
|
||||
* State indicating that media transfer to this receiver device is failed.
|
||||
*
|
||||
* @hide
|
||||
*/
|
||||
public static final int MEDIA_TRANSFER_RECEIVER_STATE_TRANSFER_TO_RECEIVER_FAILED = 3;
|
||||
|
||||
/** @hide */
|
||||
@IntDef(prefix = {"MEDIA_TRANSFER_RECEIVER_STATE_"}, value = {
|
||||
MEDIA_TRANSFER_RECEIVER_STATE_CLOSE_TO_SENDER,
|
||||
MEDIA_TRANSFER_RECEIVER_STATE_FAR_FROM_SENDER,
|
||||
MEDIA_TRANSFER_RECEIVER_STATE_TRANSFER_TO_RECEIVER_SUCCEEDED,
|
||||
MEDIA_TRANSFER_RECEIVER_STATE_TRANSFER_TO_RECEIVER_FAILED,
|
||||
})
|
||||
@Retention(RetentionPolicy.SOURCE)
|
||||
public @interface MediaTransferReceiverState {}
|
||||
|
||||
@@ -35,6 +35,14 @@ enum class ChipStateReceiver(
|
||||
FAR_FROM_SENDER(
|
||||
StatusBarManager.MEDIA_TRANSFER_RECEIVER_STATE_FAR_FROM_SENDER,
|
||||
MediaTttReceiverUiEvents.MEDIA_TTT_RECEIVER_FAR_FROM_SENDER
|
||||
),
|
||||
TRANSFER_TO_RECEIVER_SUCCEEDED(
|
||||
StatusBarManager.MEDIA_TRANSFER_RECEIVER_STATE_TRANSFER_TO_RECEIVER_SUCCEEDED,
|
||||
MediaTttReceiverUiEvents.MEDIA_TTT_RECEIVER_TRANSFER_TO_RECEIVER_SUCCEEDED,
|
||||
),
|
||||
TRANSFER_TO_RECEIVER_FAILED(
|
||||
StatusBarManager.MEDIA_TRANSFER_RECEIVER_STATE_TRANSFER_TO_RECEIVER_FAILED,
|
||||
MediaTttReceiverUiEvents.MEDIA_TTT_RECEIVER_TRANSFER_TO_RECEIVER_FAILED,
|
||||
);
|
||||
|
||||
companion object {
|
||||
|
||||
@@ -127,8 +127,8 @@ open class MediaTttChipControllerReceiver @Inject constructor(
|
||||
}
|
||||
uiEventLogger.logReceiverStateChange(chipState)
|
||||
|
||||
if (chipState == ChipStateReceiver.FAR_FROM_SENDER) {
|
||||
removeView(routeInfo.id, removalReason = ChipStateReceiver.FAR_FROM_SENDER.name)
|
||||
if (chipState != ChipStateReceiver.CLOSE_TO_SENDER) {
|
||||
removeView(routeInfo.id, removalReason = chipState.name)
|
||||
return
|
||||
}
|
||||
if (appIcon == null) {
|
||||
|
||||
@@ -34,7 +34,11 @@ enum class MediaTttReceiverUiEvents(val metricId: Int) : UiEventLogger.UiEventEn
|
||||
@UiEvent(doc = "See android.app.StatusBarManager.MEDIA_TRANSFER_RECEIVER_* docs")
|
||||
MEDIA_TTT_RECEIVER_CLOSE_TO_SENDER(982),
|
||||
@UiEvent(doc = "See android.app.StatusBarManager.MEDIA_TRANSFER_RECEIVER_* docs")
|
||||
MEDIA_TTT_RECEIVER_FAR_FROM_SENDER(983);
|
||||
MEDIA_TTT_RECEIVER_FAR_FROM_SENDER(983),
|
||||
@UiEvent(doc = "See android.app.StatusBarManager.MEDIA_TRANSFER_RECEIVER_* docs")
|
||||
MEDIA_TTT_RECEIVER_TRANSFER_TO_RECEIVER_SUCCEEDED(1263),
|
||||
@UiEvent(doc = "See android.app.StatusBarManager.MEDIA_TRANSFER_RECEIVER_* docs")
|
||||
MEDIA_TTT_RECEIVER_TRANSFER_TO_RECEIVER_FAILED(1264);
|
||||
|
||||
override fun getId() = metricId
|
||||
}
|
||||
|
||||
@@ -194,6 +194,36 @@ class MediaTttChipControllerReceiverTest : SysuiTestCase() {
|
||||
)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun commandQueueCallback_transferToReceiverSucceeded_noChipShown() {
|
||||
commandQueueCallback.updateMediaTapToTransferReceiverDisplay(
|
||||
StatusBarManager.MEDIA_TRANSFER_RECEIVER_STATE_TRANSFER_TO_RECEIVER_SUCCEEDED,
|
||||
routeInfo,
|
||||
null,
|
||||
null
|
||||
)
|
||||
|
||||
verify(windowManager, never()).addView(any(), any())
|
||||
assertThat(uiEventLoggerFake.eventId(0)).isEqualTo(
|
||||
MediaTttReceiverUiEvents.MEDIA_TTT_RECEIVER_TRANSFER_TO_RECEIVER_SUCCEEDED.id
|
||||
)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun commandQueueCallback_transferToReceiverFailed_noChipShown() {
|
||||
commandQueueCallback.updateMediaTapToTransferReceiverDisplay(
|
||||
StatusBarManager.MEDIA_TRANSFER_RECEIVER_STATE_TRANSFER_TO_RECEIVER_FAILED,
|
||||
routeInfo,
|
||||
null,
|
||||
null
|
||||
)
|
||||
|
||||
verify(windowManager, never()).addView(any(), any())
|
||||
assertThat(uiEventLoggerFake.eventId(0)).isEqualTo(
|
||||
MediaTttReceiverUiEvents.MEDIA_TTT_RECEIVER_TRANSFER_TO_RECEIVER_FAILED.id
|
||||
)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun commandQueueCallback_closeThenFar_chipShownThenHidden() {
|
||||
commandQueueCallback.updateMediaTapToTransferReceiverDisplay(
|
||||
@@ -215,6 +245,48 @@ class MediaTttChipControllerReceiverTest : SysuiTestCase() {
|
||||
verify(windowManager).removeView(viewCaptor.value)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun commandQueueCallback_closeThenSucceeded_chipShownThenHidden() {
|
||||
commandQueueCallback.updateMediaTapToTransferReceiverDisplay(
|
||||
StatusBarManager.MEDIA_TRANSFER_RECEIVER_STATE_CLOSE_TO_SENDER,
|
||||
routeInfo,
|
||||
null,
|
||||
null
|
||||
)
|
||||
|
||||
commandQueueCallback.updateMediaTapToTransferReceiverDisplay(
|
||||
StatusBarManager.MEDIA_TRANSFER_RECEIVER_STATE_TRANSFER_TO_RECEIVER_SUCCEEDED,
|
||||
routeInfo,
|
||||
null,
|
||||
null
|
||||
)
|
||||
|
||||
val viewCaptor = ArgumentCaptor.forClass(View::class.java)
|
||||
verify(windowManager).addView(viewCaptor.capture(), any())
|
||||
verify(windowManager).removeView(viewCaptor.value)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun commandQueueCallback_closeThenFailed_chipShownThenHidden() {
|
||||
commandQueueCallback.updateMediaTapToTransferReceiverDisplay(
|
||||
StatusBarManager.MEDIA_TRANSFER_RECEIVER_STATE_CLOSE_TO_SENDER,
|
||||
routeInfo,
|
||||
null,
|
||||
null
|
||||
)
|
||||
|
||||
commandQueueCallback.updateMediaTapToTransferReceiverDisplay(
|
||||
StatusBarManager.MEDIA_TRANSFER_RECEIVER_STATE_TRANSFER_TO_RECEIVER_FAILED,
|
||||
routeInfo,
|
||||
null,
|
||||
null
|
||||
)
|
||||
|
||||
val viewCaptor = ArgumentCaptor.forClass(View::class.java)
|
||||
verify(windowManager).addView(viewCaptor.capture(), any())
|
||||
verify(windowManager).removeView(viewCaptor.value)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun commandQueueCallback_closeThenFar_wakeLockAcquiredThenReleased() {
|
||||
commandQueueCallback.updateMediaTapToTransferReceiverDisplay(
|
||||
|
||||
Reference in New Issue
Block a user