Add new screen, composer event method and ui elements

This commit is contained in:
ismailgulek
2022-02-28 17:46:19 +03:00
parent 4e8076e800
commit 5d32e69ee9
3 changed files with 24 additions and 3 deletions
+9
View File
@@ -292,4 +292,13 @@ extension Analytics: MXAnalyticsDelegate {
func trackContactsAccessGranted(_ granted: Bool) {
// Do we still want to track this?
}
func trackEventComposed(inThread: Bool, isEditing: Bool, isReply: Bool, startsThread: Bool) {
let event = AnalyticsEvent.Composer(inThread: inThread,
isEditing: isEditing,
isReply: isReply,
startsThread: startsThread)
capture(event: event)
}
}
@@ -51,6 +51,7 @@ import AnalyticsEvents
case group
case myGroups
case inviteFriends
case threadList
/// The screen name reported to the AnalyticsEvent.
var screenName: AnalyticsEvent.MobileScreen.ScreenName {
@@ -121,6 +122,8 @@ import AnalyticsEvents
return .MyGroups
case .inviteFriends:
return .InviteFriends
case .threadList:
return .ThreadList
}
}
}
@@ -18,15 +18,24 @@ import AnalyticsEvents
/// A tappable UI element that can be tracked in Analytics.
@objc enum AnalyticsUIElement: Int {
case removeMe
case roomThreadListButton
case roomThreadSummaryItem
case threadListThreadItem
case threadListFilterItem
/// The element name reported to the AnalyticsEvent.
var name: AnalyticsEvent.Interaction.Name {
switch self {
// Note: This is a test element that doesn't need to be captured.
// It can be removed when some elements are added that relate to mobile.
case .removeMe:
return .WebRoomSettingsLeaveButton
case .roomThreadListButton:
return .MobileRoomThreadListButton
case .roomThreadSummaryItem:
return .MobileRoomThreadSummaryItem
case .threadListThreadItem:
return .MobileThreadListThreadItem
case .threadListFilterItem:
return .MobileThreadListFilterItem
}
}
}