Skip to content

Commit

Permalink
For mozilla-mobile#4908: Adds telemetry for send tab
Browse files Browse the repository at this point in the history
  • Loading branch information
sblatz committed Sep 4, 2019
1 parent c5e3ebd commit 9b387aa
Show file tree
Hide file tree
Showing 3 changed files with 14 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -242,6 +242,12 @@ private val Event.wrapper: EventWrapper<*>?
is Event.SyncAccountSyncNow -> EventWrapper<NoExtraKeys>(
{ SyncAccount.syncNow.record(it) }
)
is Event.SignInToSendTab -> EventWrapper<NoExtraKeys>(
{ SyncAccount.signInToSendTab.record(it) }
)
is Event.SendTab -> EventWrapper<NoExtraKeys>(
{ SyncAccount.sendTab.record(it) }
)
is Event.PreferenceToggled -> EventWrapper(
{ Events.preferenceToggled.record(it) },
{ Events.preferenceToggledKeys.valueOf(it) }
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,8 @@ sealed class Event {
object SyncAccountOpened : Event()
object SyncAccountClosed : Event()
object SyncAccountSyncNow : Event()
object SendTab : Event()
object SignInToSendTab : Event()
object HistoryOpened : Event()
object HistoryItemShared : Event()
object HistoryItemOpened : Event()
Expand Down
6 changes: 6 additions & 0 deletions app/src/main/java/org/mozilla/fenix/share/ShareController.kt
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@

package org.mozilla.fenix.share

import android.content.Context
import android.content.Intent
import android.content.Intent.ACTION_SEND
import android.content.Intent.EXTRA_TEXT
Expand All @@ -16,6 +17,8 @@ import mozilla.components.concept.sync.Device
import mozilla.components.concept.sync.TabData
import mozilla.components.feature.sendtab.SendTabUseCases
import org.mozilla.fenix.R
import org.mozilla.fenix.components.metrics.Event
import org.mozilla.fenix.ext.metrics
import org.mozilla.fenix.ext.nav
import org.mozilla.fenix.share.listadapters.AppShareOption

Expand Down Expand Up @@ -43,6 +46,7 @@ interface ShareController {
* @param dismiss - callback signalling sharing can be closed.
*/
class DefaultShareController(
private val context: Context
private val fragment: Fragment,
private val sharedTabs: List<ShareTab>,
private val sendTabUseCases: SendTabUseCases,
Expand Down Expand Up @@ -73,6 +77,7 @@ class DefaultShareController(
}

override fun handleShareToDevice(device: Device) {
context.metrics.track(Event.SendTab)
sendTabUseCases.sendToDeviceAsync(device.id, sharedTabs.toTabData())
(fragment.activity as ShareFragment.TabsSharedCallback).onTabsShared(sharedTabs.size)
dismiss()
Expand All @@ -85,6 +90,7 @@ class DefaultShareController(
}

override fun handleSignIn() {
context.metrics.track(Event.SignInToSendTab)
val directions = ShareFragmentDirections.actionShareFragmentToTurnOnSyncFragment()
navController.nav(R.id.shareFragment, directions)
dismiss()
Expand Down

0 comments on commit 9b387aa

Please sign in to comment.