Skip to content
This repository was archived by the owner on Jun 21, 2023. It is now read-only.

Commit 8927658

Browse files
grokysjcansdale
authored andcommitted
Added metrics for changed file context menu.
1 parent e38cfc4 commit 8927658

File tree

5 files changed

+63
-1
lines changed

5 files changed

+63
-1
lines changed

src/GitHub.Exports/Models/UsageModel.cs

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,10 @@ public class UsageModel
3030
public int NumberOfWelcomeDocsClicks { get; set; }
3131
public int NumberOfWelcomeTrainingClicks { get; set; }
3232
public int NumberOfGitHubPaneHelpClicks { get; set; }
33+
public int NumberOfPRDetailsViewChanges { get; set; }
34+
public int NumberOfPRDetailsViewFile { get; set; }
35+
public int NumberOfPRDetailsCompareWithSolution { get; set; }
36+
public int NumberOfPRDetailsOpenFileInSolution { get; set; }
3337
public int NumberOfPRReviewDiffViewInlineCommentOpen { get; set; }
3438
public int NumberOfPRReviewDiffViewInlineCommentPost { get; set; }
3539

@@ -63,6 +67,10 @@ public UsageModel Clone(bool includeWeekly, bool includeMonthly)
6367
NumberOfWelcomeDocsClicks = NumberOfWelcomeDocsClicks,
6468
NumberOfWelcomeTrainingClicks = NumberOfWelcomeTrainingClicks,
6569
NumberOfGitHubPaneHelpClicks = NumberOfGitHubPaneHelpClicks,
70+
NumberOfPRDetailsViewChanges = NumberOfPRDetailsViewChanges,
71+
NumberOfPRDetailsViewFile = NumberOfPRDetailsViewFile,
72+
NumberOfPRDetailsCompareWithSolution = NumberOfPRDetailsCompareWithSolution,
73+
NumberOfPRDetailsOpenFileInSolution = NumberOfPRDetailsOpenFileInSolution,
6674
NumberOfPRReviewDiffViewInlineCommentOpen = NumberOfPRReviewDiffViewInlineCommentOpen,
6775
NumberOfPRReviewDiffViewInlineCommentPost = NumberOfPRReviewDiffViewInlineCommentPost,
6876
};

src/GitHub.Exports/Services/IUsageTracker.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,10 @@ public interface IUsageTracker
2323
Task IncrementWelcomeDocsClicks();
2424
Task IncrementWelcomeTrainingClicks();
2525
Task IncrementGitHubPaneHelpClicks();
26+
Task IncrementPRDetailsViewChanges();
27+
Task IncrementPRDetailsViewFile();
28+
Task IncrementPRDetailsCompareWithSolution();
29+
Task IncrementPRDetailsOpenFileInSolution();
2630
Task IncrementPRReviewDiffViewInlineCommentOpen();
2731
Task IncrementPRReviewDiffViewInlineCommentPost();
2832
}

src/GitHub.VisualStudio/Services/UsageTracker.cs

Lines changed: 33 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -202,6 +202,34 @@ public async Task IncrementPullRequestOpened()
202202
SaveUsage(usage);
203203
}
204204

205+
public async Task IncrementPRDetailsViewChanges()
206+
{
207+
var usage = await LoadUsage();
208+
++usage.Model.NumberOfPRDetailsViewChanges;
209+
SaveUsage(usage);
210+
}
211+
212+
public async Task IncrementPRDetailsViewFile()
213+
{
214+
var usage = await LoadUsage();
215+
++usage.Model.NumberOfPRDetailsViewFile;
216+
SaveUsage(usage);
217+
}
218+
219+
public async Task IncrementPRDetailsCompareWithSolution()
220+
{
221+
var usage = await LoadUsage();
222+
++usage.Model.NumberOfPRDetailsCompareWithSolution;
223+
SaveUsage(usage);
224+
}
225+
226+
public async Task IncrementPRDetailsOpenFileInSolution()
227+
{
228+
var usage = await LoadUsage();
229+
++usage.Model.NumberOfPRDetailsOpenFileInSolution;
230+
SaveUsage(usage);
231+
}
232+
205233
public async Task IncrementPRReviewDiffViewInlineCommentOpen()
206234
{
207235
var usage = await LoadUsage();
@@ -373,9 +401,13 @@ static void ClearCounters(UsageModel usage, bool weekly, bool monthly)
373401
usage.NumberOfGitHubPaneHelpClicks = 0;
374402
usage.NumberOfWelcomeTrainingClicks = 0;
375403
usage.NumberOfWelcomeDocsClicks = 0;
404+
usage.NumberOfPRDetailsViewChanges = 0;
405+
usage.NumberOfPRDetailsViewFile = 0;
406+
usage.NumberOfPRDetailsCompareWithSolution = 0;
407+
usage.NumberOfPRDetailsOpenFileInSolution = 0;
376408
usage.NumberOfPRReviewDiffViewInlineCommentOpen = 0;
377409
usage.NumberOfPRReviewDiffViewInlineCommentPost = 0;
378-
410+
379411
if (weekly)
380412
usage.NumberOfStartupsWeek = 0;
381413

src/GitHub.VisualStudio/Services/UsageTrackerDispatcher.cs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
using Task = System.Threading.Tasks.Task;
44
using GitHub.Exports;
55
using Microsoft.VisualStudio.Shell;
6+
using System.Threading.Tasks;
67

78
namespace GitHub.Services
89
{
@@ -34,6 +35,10 @@ public UsageTrackerDispatcher([Import(typeof(SVsServiceProvider))] IServiceProvi
3435
public Task IncrementWelcomeDocsClicks() => inner.IncrementWelcomeDocsClicks();
3536
public Task IncrementWelcomeTrainingClicks() => inner.IncrementWelcomeTrainingClicks();
3637
public Task IncrementGitHubPaneHelpClicks() => inner.IncrementGitHubPaneHelpClicks();
38+
public Task IncrementPRDetailsViewChanges() => inner.IncrementPRDetailsViewChanges();
39+
public Task IncrementPRDetailsViewFile() => inner.IncrementPRDetailsViewFile();
40+
public Task IncrementPRDetailsCompareWithSolution() => inner.IncrementPRDetailsCompareWithSolution();
41+
public Task IncrementPRDetailsOpenFileInSolution() => inner.IncrementPRDetailsOpenFileInSolution();
3742
public Task IncrementPRReviewDiffViewInlineCommentOpen() => inner.IncrementPRReviewDiffViewInlineCommentOpen();
3843
public Task IncrementPRReviewDiffViewInlineCommentPost() => inner.IncrementPRReviewDiffViewInlineCommentPost();
3944
}

src/GitHub.VisualStudio/UI/Views/PullRequestDetailView.xaml.cs

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,9 @@ public PullRequestDetailView()
6464
[Import]
6565
IEditorOptionsFactoryService EditorOptionsFactoryService { get; set; }
6666

67+
[Import]
68+
IUsageTracker UsageTracker { get; set; }
69+
6770
protected override void OnVisualParentChanged(DependencyObject oldParent)
6871
{
6972
base.OnVisualParentChanged(oldParent);
@@ -92,6 +95,11 @@ async Task DoOpenFile(IPullRequestFileNode file, bool workingDirectory)
9295
var buffer = GetBufferAt(fileName);
9396
AddBufferTag(buffer, ViewModel.Session, fullPath, false);
9497
}
98+
99+
if (workingDirectory)
100+
await UsageTracker.IncrementPRDetailsOpenFileInSolution();
101+
else
102+
await UsageTracker.IncrementPRDetailsViewFile();
95103
}
96104
catch (Exception e)
97105
{
@@ -144,6 +152,11 @@ async Task DoDiffFile(IPullRequestFileNode file, bool workingDirectory)
144152
var session = ViewModel.Session;
145153
AddBufferTag(diffViewer.LeftView.TextBuffer, session, fullPath, true);
146154
AddBufferTag(diffViewer.RightView.TextBuffer, session, fullPath, false);
155+
156+
if (workingDirectory)
157+
await UsageTracker.IncrementPRDetailsCompareWithSolution();
158+
else
159+
await UsageTracker.IncrementPRDetailsViewChanges();
147160
}
148161
catch (Exception e)
149162
{

0 commit comments

Comments
 (0)