44using System . Linq ;
55using System . Reactive ;
66using System . Threading . Tasks ;
7+ using GitHub . Extensions ;
78using GitHub . Models ;
89using GitHub . Services ;
910using ReactiveUI ;
@@ -17,6 +18,7 @@ public class PullRequestAnnotationsViewModel : PanePageViewModelBase, IPullReque
1718 {
1819 readonly IPullRequestSessionManager sessionManager ;
1920 readonly IPullRequestEditorService pullRequestEditorService ;
21+ readonly IUsageTracker usageTracker ;
2022
2123 IPullRequestSession session ;
2224 string title ;
@@ -32,10 +34,15 @@ public class PullRequestAnnotationsViewModel : PanePageViewModelBase, IPullReque
3234 /// <param name="sessionManager">The pull request session manager.</param>
3335 /// <param name="pullRequestEditorService">The pull request editor service.</param>
3436 [ ImportingConstructor ]
35- public PullRequestAnnotationsViewModel ( IPullRequestSessionManager sessionManager , IPullRequestEditorService pullRequestEditorService )
37+ public PullRequestAnnotationsViewModel (
38+ IPullRequestSessionManager sessionManager ,
39+ IPullRequestEditorService pullRequestEditorService ,
40+ IUsageTracker usageTracker )
3641 {
3742 this . sessionManager = sessionManager ;
3843 this . pullRequestEditorService = pullRequestEditorService ;
44+ this . usageTracker = usageTracker ;
45+
3946 NavigateToPullRequest = ReactiveCommand . Create ( ( ) => {
4047 NavigateTo ( FormattableString . Invariant (
4148 $ "{ LocalRepository . Owner } /{ LocalRepository . Name } /pull/{ PullRequestNumber } ") ) ;
@@ -158,6 +165,8 @@ void Load(PullRequestDetailModel pullRequest)
158165 . Cast < IPullRequestAnnotationItemViewModel > ( )
159166 . ToArray ( )
160167 ) ;
168+
169+ usageTracker . IncrementCounter ( x => x . NumberOfPullRequestOpenAnnotationsList ) . Forget ( ) ;
161170 }
162171 finally
163172 {
0 commit comments