Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/monodevelop.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLluis Sanchez <lluis@xamarin.com>2015-11-18 17:14:03 +0300
committerLluis Sanchez <lluis@xamarin.com>2015-11-25 18:44:59 +0300
commit74881948086cfe253d389d074d44d12f9149fc60 (patch)
treeffdb19809fdd73e84c4a3dc502126803e88d3904 /main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Navigation
parentd804ac2110c412f444528960a66f2e835a8ec88b (diff)
Asynchronize document load and save operations
Diffstat (limited to 'main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Navigation')
-rw-r--r--main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Navigation/DocumentNavigationPoint.cs7
-rw-r--r--main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Navigation/NavigationHistoryService.cs4
-rw-r--r--main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Navigation/NavigationPoint.cs5
-rw-r--r--main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Navigation/TextFileNavigationPoint.cs5
4 files changed, 12 insertions, 9 deletions
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Navigation/DocumentNavigationPoint.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Navigation/DocumentNavigationPoint.cs
index d0f82bfe1e..37939b918b 100644
--- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Navigation/DocumentNavigationPoint.cs
+++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Navigation/DocumentNavigationPoint.cs
@@ -28,6 +28,7 @@
//
using System;
+using System.Threading.Tasks;
using MonoDevelop.Core;
using MonoDevelop.Ide.Gui;
@@ -77,12 +78,12 @@ namespace MonoDevelop.Ide.Navigation
get { return doc != null? doc.FileName : fileName; }
}
- public override Document ShowDocument ()
+ public override Task<Document> ShowDocument ()
{
return DoShow ();
}
- protected virtual Document DoShow ()
+ protected virtual async Task<Document> DoShow ()
{
if (doc != null) {
doc.Select ();
@@ -95,7 +96,7 @@ namespace MonoDevelop.Ide.Navigation
break;
}
}
- return IdeApp.Workbench.OpenDocument (new FileOpenInformation (fileName, p, true));
+ return await IdeApp.Workbench.OpenDocument (new FileOpenInformation (fileName, p, true));
}
public override string DisplayName {
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Navigation/NavigationHistoryService.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Navigation/NavigationHistoryService.cs
index d9a964024c..be001978cb 100644
--- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Navigation/NavigationHistoryService.cs
+++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Navigation/NavigationHistoryService.cs
@@ -224,10 +224,10 @@ namespace MonoDevelop.Ide.Navigation
get { return closedHistory.Count != 0; }
}
- public static void OpenLastClosedDocument () {
+ public static async void OpenLastClosedDocument () {
if (HasClosedDocuments) {
var tuple = closedHistory.Pop ();
- var doc = tuple.Item1.ShowDocument ();
+ var doc = await tuple.Item1.ShowDocument ();
IdeApp.Workbench.ReorderTab (IdeApp.Workbench.Documents.IndexOf (doc), tuple.Item2);
}
}
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Navigation/NavigationPoint.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Navigation/NavigationPoint.cs
index 7455083ace..a45eb04d53 100644
--- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Navigation/NavigationPoint.cs
+++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Navigation/NavigationPoint.cs
@@ -26,6 +26,7 @@
// THE SOFTWARE.
using System;
+using System.Threading.Tasks;
using MonoDevelop.Ide.Gui;
namespace MonoDevelop.Ide.Navigation
@@ -35,9 +36,9 @@ namespace MonoDevelop.Ide.Navigation
public abstract string DisplayName { get; }
//public abstract string Tooltip { get; }
- public virtual Document ShowDocument ()
+ public virtual Task<Document> ShowDocument ()
{
- return null;
+ return Task.FromResult<Document> (null);
}
// used for fuzzy matching to decide whether to replace an existing nav point
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Navigation/TextFileNavigationPoint.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Navigation/TextFileNavigationPoint.cs
index d17c03e0c9..9fc346329d 100644
--- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Navigation/TextFileNavigationPoint.cs
+++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Navigation/TextFileNavigationPoint.cs
@@ -32,6 +32,7 @@ using MonoDevelop.Ide.Gui.Content;
using MonoDevelop.Core;
using MonoDevelop.Ide.Gui;
using MonoDevelop.Ide.Editor;
+using System.Threading.Tasks;
namespace MonoDevelop.Ide.Navigation
{
@@ -78,9 +79,9 @@ namespace MonoDevelop.Ide.Navigation
}
}
- protected override Document DoShow ()
+ protected override async Task<Document> DoShow ()
{
- Document doc = base.DoShow ();
+ Document doc = await base.DoShow ();
if (doc != null) {
var buf = doc.Editor;
if (buf != null) {