diff options
author | Mike Krüger <mikkrg@microsoft.com> | 2019-07-12 16:07:08 +0300 |
---|---|---|
committer | monojenkins <jo.shields+jenkins@xamarin.com> | 2019-07-15 09:16:07 +0300 |
commit | 86a7366187625da65e28087e5bb3d69ac25206f7 (patch) | |
tree | 4e98da9f7f22a6b9eadbfd84bf920658f4bb4c88 /main | |
parent | e7cb5ab98845ed937de94df83e2818cb4671aa13 (diff) |
Fixes VSTS FeedbackTicket 943824: Diff Incorrect
https://devdiv.visualstudio.com/DevDiv/_workitems/edit/943824
Diff View could be loaded before the text view had the text - that
caused that the "local" text was empty. The blame view had the same
issue (but crashed) - fixed that as well.
Diffstat (limited to 'main')
2 files changed, 12 insertions, 2 deletions
diff --git a/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/BlameCommand.cs b/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/BlameCommand.cs index d3757a0e81..ca73d7011c 100644 --- a/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/BlameCommand.cs +++ b/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/BlameCommand.cs @@ -26,6 +26,7 @@ using System.Linq; using System.Threading.Tasks; +using Microsoft.VisualStudio.Text.Editor; using Mono.Addins; using MonoDevelop.Ide; using MonoDevelop.Ide.Gui; @@ -52,7 +53,11 @@ namespace MonoDevelop.VersionControl foreach (var item in items) { var document = await IdeApp.Workbench.OpenDocument (item.Path, item.ContainerProject, OpenDocumentOptions.Default | OpenDocumentOptions.OnlyInternalViewer); - document?.GetContent<VersionControlDocumentController> ()?.ShowBlameView (); + if (document == null) + continue; + document.RunWhenContentAdded<ITextView> (tv => { + document.GetContent<VersionControlDocumentController> ()?.ShowBlameView (); + }); } return true; diff --git a/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/DiffCommand.cs b/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/DiffCommand.cs index 408ad6a88f..33aeba3529 100644 --- a/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/DiffCommand.cs +++ b/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/DiffCommand.cs @@ -26,6 +26,7 @@ using System.Linq; using System.Threading.Tasks; +using Microsoft.VisualStudio.Text.Editor; using Mono.Addins; using MonoDevelop.Ide; using MonoDevelop.Ide.Gui; @@ -51,7 +52,11 @@ namespace MonoDevelop.VersionControl foreach (var item in items) { var document = await IdeApp.Workbench.OpenDocument (item.Path, item.ContainerProject, OpenDocumentOptions.Default | OpenDocumentOptions.OnlyInternalViewer); - document?.GetContent<VersionControlDocumentController> ()?.ShowDiffView (); + if (document == null) + continue; + document.RunWhenContentAdded<ITextView> (tv => { + document.GetContent<VersionControlDocumentController> ()?.ShowDiffView (); + }); } return true; |