Merge "[Media TTT] Add @SystemApis for new states of receiver devices" into tm-qpr-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
860d469829
@@ -511,10 +511,26 @@ public class StatusBarManager {
|
|||||||
@SystemApi
|
@SystemApi
|
||||||
public static final int MEDIA_TRANSFER_RECEIVER_STATE_FAR_FROM_SENDER = 1;
|
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 */
|
/** @hide */
|
||||||
@IntDef(prefix = {"MEDIA_TRANSFER_RECEIVER_STATE_"}, value = {
|
@IntDef(prefix = {"MEDIA_TRANSFER_RECEIVER_STATE_"}, value = {
|
||||||
MEDIA_TRANSFER_RECEIVER_STATE_CLOSE_TO_SENDER,
|
MEDIA_TRANSFER_RECEIVER_STATE_CLOSE_TO_SENDER,
|
||||||
MEDIA_TRANSFER_RECEIVER_STATE_FAR_FROM_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)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
public @interface MediaTransferReceiverState {}
|
public @interface MediaTransferReceiverState {}
|
||||||
|
|||||||
@@ -35,6 +35,14 @@ enum class ChipStateReceiver(
|
|||||||
FAR_FROM_SENDER(
|
FAR_FROM_SENDER(
|
||||||
StatusBarManager.MEDIA_TRANSFER_RECEIVER_STATE_FAR_FROM_SENDER,
|
StatusBarManager.MEDIA_TRANSFER_RECEIVER_STATE_FAR_FROM_SENDER,
|
||||||
MediaTttReceiverUiEvents.MEDIA_TTT_RECEIVER_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 {
|
companion object {
|
||||||
|
|||||||
@@ -127,8 +127,8 @@ open class MediaTttChipControllerReceiver @Inject constructor(
|
|||||||
}
|
}
|
||||||
uiEventLogger.logReceiverStateChange(chipState)
|
uiEventLogger.logReceiverStateChange(chipState)
|
||||||
|
|
||||||
if (chipState == ChipStateReceiver.FAR_FROM_SENDER) {
|
if (chipState != ChipStateReceiver.CLOSE_TO_SENDER) {
|
||||||
removeView(routeInfo.id, removalReason = ChipStateReceiver.FAR_FROM_SENDER.name)
|
removeView(routeInfo.id, removalReason = chipState.name)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if (appIcon == null) {
|
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")
|
@UiEvent(doc = "See android.app.StatusBarManager.MEDIA_TRANSFER_RECEIVER_* docs")
|
||||||
MEDIA_TTT_RECEIVER_CLOSE_TO_SENDER(982),
|
MEDIA_TTT_RECEIVER_CLOSE_TO_SENDER(982),
|
||||||
@UiEvent(doc = "See android.app.StatusBarManager.MEDIA_TRANSFER_RECEIVER_* docs")
|
@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
|
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
|
@Test
|
||||||
fun commandQueueCallback_closeThenFar_chipShownThenHidden() {
|
fun commandQueueCallback_closeThenFar_chipShownThenHidden() {
|
||||||
commandQueueCallback.updateMediaTapToTransferReceiverDisplay(
|
commandQueueCallback.updateMediaTapToTransferReceiverDisplay(
|
||||||
@@ -215,6 +245,48 @@ class MediaTttChipControllerReceiverTest : SysuiTestCase() {
|
|||||||
verify(windowManager).removeView(viewCaptor.value)
|
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
|
@Test
|
||||||
fun commandQueueCallback_closeThenFar_wakeLockAcquiredThenReleased() {
|
fun commandQueueCallback_closeThenFar_wakeLockAcquiredThenReleased() {
|
||||||
commandQueueCallback.updateMediaTapToTransferReceiverDisplay(
|
commandQueueCallback.updateMediaTapToTransferReceiverDisplay(
|
||||||
|
|||||||
Reference in New Issue
Block a user