summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Jieru Shi <shijieru@google.com> 2021-05-11 22:01:01 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2021-05-11 22:01:01 +0000
commit8093fd207c855f2069da4da2132a3ea335193e24 (patch)
tree89e1347328b2a1cffc9a4397b71bd0e015f5a7db
parent7e12f3e9d5ecf6bd2485020f544f6c04fd33ca29 (diff)
parentef2e5dd22b3762f123615611cb5752b7579bc67a (diff)
Merge "Add SMARTSPACE_CARD_RENDERED for media card" into sc-dev
-rw-r--r--packages/SystemUI/src/com/android/systemui/media/MediaCarouselController.kt19
-rw-r--r--packages/SystemUI/src/com/android/systemui/media/MediaControlPanel.java10
2 files changed, 22 insertions, 7 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/media/MediaCarouselController.kt b/packages/SystemUI/src/com/android/systemui/media/MediaCarouselController.kt
index 644876c6b1af..7fe88e5166e8 100644
--- a/packages/SystemUI/src/com/android/systemui/media/MediaCarouselController.kt
+++ b/packages/SystemUI/src/com/android/systemui/media/MediaCarouselController.kt
@@ -184,7 +184,14 @@ class MediaCarouselController @Inject constructor(
true /* persistent */)
mediaManager.addListener(object : MediaDataManager.Listener {
override fun onMediaDataLoaded(key: String, oldKey: String?, data: MediaData) {
- addOrUpdatePlayer(key, oldKey, data)
+ if (addOrUpdatePlayer(key, oldKey, data)) {
+ MediaPlayerData.getMediaPlayer(key, null)?.let {
+ logSmartspaceCardReported(759, // SMARTSPACE_CARD_RECEIVED
+ it.mInstanceId,
+ /* isRecommendationCard */ false,
+ it.surfaceForSmartspaceLogging)
+ }
+ }
val canRemove = data.isPlaying?.let { !it } ?: data.isClearable && !data.active
if (canRemove && !Utils.useMediaResumption(context)) {
// This view isn't playing, let's remove this! This happens e.g when
@@ -203,6 +210,12 @@ class MediaCarouselController @Inject constructor(
override fun onSmartspaceMediaDataLoaded(key: String, data: SmartspaceTarget) {
Log.d(TAG, "My Smartspace media update is here")
addSmartspaceMediaRecommendations(key, data)
+ MediaPlayerData.getMediaPlayer(key, null)?.let {
+ logSmartspaceCardReported(759, // SMARTSPACE_CARD_RECEIVED
+ it.mInstanceId,
+ /* isRecommendationCard */ true,
+ it.surfaceForSmartspaceLogging)
+ }
if (mediaCarouselScrollHandler.visibleToUser) {
logSmartspaceImpression()
}
@@ -276,7 +289,8 @@ class MediaCarouselController @Inject constructor(
}
}
- private fun addOrUpdatePlayer(key: String, oldKey: String?, data: MediaData) {
+ // Returns true if new player is added
+ private fun addOrUpdatePlayer(key: String, oldKey: String?, data: MediaData): Boolean {
val dataCopy = data.copy(backgroundColor = bgColor)
val existingPlayer = MediaPlayerData.getMediaPlayer(key, oldKey)
if (existingPlayer == null) {
@@ -309,6 +323,7 @@ class MediaCarouselController @Inject constructor(
if (MediaPlayerData.players().size != mediaContent.childCount) {
Log.wtf(TAG, "Size of players list and number of views in carousel are out of sync")
}
+ return existingPlayer == null
}
private fun addSmartspaceMediaRecommendations(key: String, data: SmartspaceTarget) {
diff --git a/packages/SystemUI/src/com/android/systemui/media/MediaControlPanel.java b/packages/SystemUI/src/com/android/systemui/media/MediaControlPanel.java
index fe3463f853f0..b3ebed1fe6a9 100644
--- a/packages/SystemUI/src/com/android/systemui/media/MediaControlPanel.java
+++ b/packages/SystemUI/src/com/android/systemui/media/MediaControlPanel.java
@@ -276,7 +276,7 @@ public class MediaControlPanel {
if (mMediaViewController.isGutsVisible()) return;
logSmartspaceCardReported(760, // SMARTSPACE_CARD_CLICK
- false);
+ /* isRecommendationCard */ false);
mActivityStarter.postStartActivityDismissingKeyguard(clickIntent,
buildLaunchAnimatorController(mPlayerViewHolder.getPlayer()));
});
@@ -384,7 +384,7 @@ public class MediaControlPanel {
button.setEnabled(true);
button.setOnClickListener(v -> {
logSmartspaceCardReported(760, // SMARTSPACE_CARD_CLICK
- false);
+ /* isRecommendationCard */ false);
action.run();
});
}
@@ -418,7 +418,7 @@ public class MediaControlPanel {
mPlayerViewHolder.getDismiss().setEnabled(isDismissible);
mPlayerViewHolder.getDismiss().setOnClickListener(v -> {
logSmartspaceCardReported(761, // SMARTSPACE_CARD_DISMISS
- false);
+ /* isRecommendationCard */ false);
if (mKey != null) {
closeGuts();
@@ -563,7 +563,7 @@ public class MediaControlPanel {
// Set up long press to show guts setting panel.
mRecommendationViewHolder.getDismiss().setOnClickListener(v -> {
logSmartspaceCardReported(761, // SMARTSPACE_CARD_DISMISS
- true);
+ /* isRecommendationCard */ true);
closeGuts();
mKeyguardDismissUtil.executeWhenUnlocked(() -> {
mMediaDataManagerLazy.get().dismissSmartspaceRecommendation(
@@ -668,7 +668,7 @@ public class MediaControlPanel {
view.setOnClickListener(v -> {
// When media recommendation card is shown, it will always be the top card.
logSmartspaceCardReported(760, // SMARTSPACE_CARD_CLICK
- true);
+ /* isRecommendationCard */ true);
if (shouldSmartspaceRecItemOpenInForeground(action)) {
// Request to unlock the device if the activity needs to be opened in foreground.