parent
5eb5cdf361
commit
c6562bff98
|
@ -1543,3 +1543,82 @@ experiments.metrics:
|
|||
notification_emails:
|
||||
- mcooper@mozilla.com
|
||||
expires: 2019-11-01
|
||||
|
||||
download_notification:
|
||||
resume:
|
||||
type: event
|
||||
description: >
|
||||
A user resumed a download in the download notification
|
||||
bugs:
|
||||
- https://github.com/mozilla-mobile/fenix/issues/5583
|
||||
data_reviews:
|
||||
- https://github.com/mozilla-mobile/fenix/pull/6554
|
||||
notification_emails:
|
||||
- fenix-core@mozilla.com
|
||||
expires: "2020-03-01"
|
||||
pause:
|
||||
type: event
|
||||
description: >
|
||||
A user paused a download in the download notification
|
||||
bugs:
|
||||
- https://github.com/mozilla-mobile/fenix/issues/5583
|
||||
data_reviews:
|
||||
- https://github.com/mozilla-mobile/fenix/pull/6554
|
||||
notification_emails:
|
||||
- fenix-core@mozilla.com
|
||||
expires: "2020-03-01"
|
||||
cancel:
|
||||
type: event
|
||||
description: >
|
||||
A user cancelled a download in the download notification
|
||||
bugs:
|
||||
- https://github.com/mozilla-mobile/fenix/issues/5583
|
||||
data_reviews:
|
||||
- https://github.com/mozilla-mobile/fenix/pull/6554
|
||||
notification_emails:
|
||||
- fenix-core@mozilla.com
|
||||
expires: "2020-03-01"
|
||||
try_again:
|
||||
type: event
|
||||
description: >
|
||||
A user tapped on try again when a download fails in the download notification
|
||||
bugs:
|
||||
- https://github.com/mozilla-mobile/fenix/issues/5583
|
||||
data_reviews:
|
||||
- https://github.com/mozilla-mobile/fenix/pull/6554
|
||||
notification_emails:
|
||||
- fenix-core@mozilla.com
|
||||
expires: "2020-03-01"
|
||||
open:
|
||||
type: event
|
||||
description: >
|
||||
A user opened a downloaded file in the download notification
|
||||
bugs:
|
||||
- https://github.com/mozilla-mobile/fenix/issues/5583
|
||||
data_reviews:
|
||||
- https://github.com/mozilla-mobile/fenix/pull/6554
|
||||
notification_emails:
|
||||
- fenix-core@mozilla.com
|
||||
expires: "2020-03-01"
|
||||
in_app_open:
|
||||
type: event
|
||||
description: >
|
||||
A user opened a downloaded file in the in-app notification link
|
||||
bugs:
|
||||
- https://github.com/mozilla-mobile/fenix/issues/5583
|
||||
data_reviews:
|
||||
- https://github.com/mozilla-mobile/fenix/pull/6554
|
||||
notification_emails:
|
||||
- fenix-core@mozilla.com
|
||||
expires: "2020-03-01"
|
||||
in_app_try_again:
|
||||
type: event
|
||||
description: >
|
||||
A user tapped on try again when a download fails in the in-app notification link
|
||||
bugs:
|
||||
- https://github.com/mozilla-mobile/fenix/issues/5583
|
||||
data_reviews:
|
||||
- https://github.com/mozilla-mobile/fenix/pull/6554
|
||||
notification_emails:
|
||||
- fenix-core@mozilla.com
|
||||
expires: "2020-03-01"
|
||||
|
|
|
@ -19,6 +19,7 @@ import org.mozilla.fenix.GleanMetrics.Collections
|
|||
import org.mozilla.fenix.GleanMetrics.ContextMenu
|
||||
import org.mozilla.fenix.GleanMetrics.CrashReporter
|
||||
import org.mozilla.fenix.GleanMetrics.CustomTab
|
||||
import org.mozilla.fenix.GleanMetrics.DownloadNotification
|
||||
import org.mozilla.fenix.GleanMetrics.ErrorPage
|
||||
import org.mozilla.fenix.GleanMetrics.Events
|
||||
import org.mozilla.fenix.GleanMetrics.FindInPage
|
||||
|
@ -382,6 +383,27 @@ private val Event.wrapper: EventWrapper<*>?
|
|||
is Event.MediaStopState -> EventWrapper<NoExtraKeys>(
|
||||
{ MediaState.stop.record(it) }
|
||||
)
|
||||
is Event.InAppNotificationDownloadOpen -> EventWrapper<NoExtraKeys>(
|
||||
{ DownloadNotification.inAppOpen.record(it) }
|
||||
)
|
||||
is Event.InAppNotificationDownloadTryAgain -> EventWrapper<NoExtraKeys>(
|
||||
{ DownloadNotification.inAppTryAgain.record(it) }
|
||||
)
|
||||
is Event.NotificationDownloadCancel -> EventWrapper<NoExtraKeys>(
|
||||
{ DownloadNotification.cancel.record(it) }
|
||||
)
|
||||
is Event.NotificationDownloadOpen -> EventWrapper<NoExtraKeys>(
|
||||
{ DownloadNotification.open.record(it) }
|
||||
)
|
||||
is Event.NotificationDownloadPause -> EventWrapper<NoExtraKeys>(
|
||||
{ DownloadNotification.pause.record(it) }
|
||||
)
|
||||
is Event.NotificationDownloadResume -> EventWrapper<NoExtraKeys>(
|
||||
{ DownloadNotification.resume.record(it) }
|
||||
)
|
||||
is Event.NotificationDownloadTryAgain -> EventWrapper<NoExtraKeys>(
|
||||
{ DownloadNotification.tryAgain.record(it) }
|
||||
)
|
||||
is Event.NotificationMediaPlay -> EventWrapper<NoExtraKeys>(
|
||||
{ MediaNotification.play.record(it) }
|
||||
)
|
||||
|
|
|
@ -10,6 +10,7 @@ import mozilla.components.browser.search.SearchEngine
|
|||
import mozilla.components.browser.toolbar.facts.ToolbarFacts
|
||||
import mozilla.components.feature.contextmenu.facts.ContextMenuFacts
|
||||
import mozilla.components.feature.customtabs.CustomTabsFacts
|
||||
import mozilla.components.feature.downloads.facts.DownloadsFacts
|
||||
import mozilla.components.feature.findinpage.facts.FindInPageFacts
|
||||
import mozilla.components.feature.media.facts.MediaFacts
|
||||
import mozilla.components.support.base.Component
|
||||
|
@ -117,6 +118,13 @@ sealed class Event {
|
|||
object MediaPlayState : Event()
|
||||
object MediaPauseState : Event()
|
||||
object MediaStopState : Event()
|
||||
object InAppNotificationDownloadOpen : Event()
|
||||
object InAppNotificationDownloadTryAgain : Event()
|
||||
object NotificationDownloadCancel : Event()
|
||||
object NotificationDownloadOpen : Event()
|
||||
object NotificationDownloadPause : Event()
|
||||
object NotificationDownloadResume : Event()
|
||||
object NotificationDownloadTryAgain : Event()
|
||||
object NotificationMediaPlay : Event()
|
||||
object NotificationMediaPause : Event()
|
||||
object TrackingProtectionTrackerList : Event()
|
||||
|
@ -332,28 +340,29 @@ private fun Fact.toEvent(): Event? = when (Pair(component, item)) {
|
|||
Component.FEATURE_CUSTOMTABS to CustomTabsFacts.Items.CLOSE -> Event.CustomTabsClosed
|
||||
Component.FEATURE_CUSTOMTABS to CustomTabsFacts.Items.ACTION_BUTTON -> Event.CustomTabsActionTapped
|
||||
|
||||
Component.FEATURE_DOWNLOADS to DownloadsFacts.Items.NOTIFICATION -> {
|
||||
when (action) {
|
||||
Action.CANCEL -> Event.NotificationDownloadCancel
|
||||
Action.OPEN -> Event.NotificationDownloadOpen
|
||||
Action.PAUSE -> Event.NotificationDownloadPause
|
||||
Action.RESUME -> Event.NotificationDownloadResume
|
||||
Action.TRY_AGAIN -> Event.NotificationDownloadTryAgain
|
||||
else -> null
|
||||
}
|
||||
}
|
||||
|
||||
Component.FEATURE_MEDIA to MediaFacts.Items.NOTIFICATION -> {
|
||||
when (action) {
|
||||
Action.PLAY -> {
|
||||
Event.NotificationMediaPlay
|
||||
}
|
||||
Action.PAUSE -> {
|
||||
Event.NotificationMediaPause
|
||||
}
|
||||
Action.PLAY -> Event.NotificationMediaPlay
|
||||
Action.PAUSE -> Event.NotificationMediaPause
|
||||
else -> null
|
||||
}
|
||||
}
|
||||
Component.FEATURE_MEDIA to MediaFacts.Items.STATE -> {
|
||||
when (action) {
|
||||
Action.PLAY -> {
|
||||
Event.MediaPlayState
|
||||
}
|
||||
Action.PAUSE -> {
|
||||
Event.MediaPauseState
|
||||
}
|
||||
Action.STOP -> {
|
||||
Event.MediaStopState
|
||||
}
|
||||
Action.PLAY -> Event.MediaPlayState
|
||||
Action.PAUSE -> Event.MediaPauseState
|
||||
Action.STOP -> Event.MediaStopState
|
||||
else -> null
|
||||
}
|
||||
}
|
||||
|
|
|
@ -16,6 +16,8 @@ import mozilla.components.browser.state.state.content.DownloadState
|
|||
import mozilla.components.feature.downloads.AbstractFetchDownloadService
|
||||
import mozilla.components.feature.downloads.toMegabyteString
|
||||
import org.mozilla.fenix.R
|
||||
import org.mozilla.fenix.components.metrics.Event
|
||||
import org.mozilla.fenix.ext.metrics
|
||||
import org.mozilla.fenix.theme.ThemeManager
|
||||
|
||||
class DownloadNotificationBottomSheetDialog(
|
||||
|
@ -42,6 +44,7 @@ class DownloadNotificationBottomSheetDialog(
|
|||
)
|
||||
setOnClickListener {
|
||||
tryAgain(download.id)
|
||||
context.metrics.track(Event.InAppNotificationDownloadTryAgain)
|
||||
dismiss()
|
||||
}
|
||||
}
|
||||
|
@ -66,6 +69,7 @@ class DownloadNotificationBottomSheetDialog(
|
|||
contentType = download.contentType,
|
||||
filePath = download.filePath
|
||||
)
|
||||
context.metrics.track(Event.InAppNotificationDownloadOpen)
|
||||
dismiss()
|
||||
}
|
||||
}
|
||||
|
|
File diff suppressed because one or more lines are too long
Loading…
Reference in New Issue