Add AnalyticsScreenTimer and track more screens.

Update Analytics with new methods in MXAnalyticsDelegate.
This commit is contained in:
Doug
2021-12-02 14:25:45 +00:00
parent b7a4e5c0d3
commit 47348b7f34
42 changed files with 513 additions and 42 deletions
@@ -35,6 +35,8 @@
id kThemeServiceDidChangeThemeNotificationObserver;
}
@property (nonatomic) AnalyticsScreenTimer *screenTimer;
@end
@implementation DirectoryViewController
@@ -46,6 +48,8 @@
// Setup `MXKViewControllerHandling` properties
self.enableBarTintColorStatusChange = NO;
self.rageShakeManager = [RageShakeManager sharedManager];
self.screenTimer = [[AnalyticsScreenTimer alloc] initWithScreen:AnalyticsScreenRoomDirectory];
}
- (void)viewDidLoad
@@ -106,9 +110,6 @@
- (void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
// Screen tracking
[Analytics.shared trackScreen:AnalyticsScreenRoomDirectory];
// Observe kAppDelegateDidTapStatusBarNotificationObserver.
kAppDelegateDidTapStatusBarNotificationObserver = [[NSNotificationCenter defaultCenter] addObserverForName:kAppDelegateDidTapStatusBarNotification object:nil queue:[NSOperationQueue mainQueue] usingBlock:^(NSNotification *notif) {
@@ -135,6 +136,8 @@
// the selected room (if any) is highlighted.
[self refreshCurrentSelectedCell:YES];
}
[self.screenTimer start];
}
- (void)viewWillDisappear:(BOOL)animated
@@ -148,6 +151,12 @@
[super viewWillDisappear:animated];
}
- (void)viewDidDisappear:(BOOL)animated
{
[super viewDidDisappear:animated];
[self.screenTimer stop];
}
- (void)displayWitDataSource:(PublicRoomsDirectoryDataSource *)dataSource2
{
// Let the data source provide cells