diff options
author | Dmytro Ovcharov <dmytro.ovcharov@globallogic.com> | 2017-08-01 15:44:19 +0300 |
---|---|---|
committer | Dmytro Ovcharov <dmytro.ovcharov@globallogic.com> | 2017-08-01 15:44:19 +0300 |
commit | e9a1ec6b3780637967c8aeb3e6035f0cff8a91de (patch) | |
tree | ca2beddf34f7d7b5b607fe5c27f9c93152372405 /main/src/core/MonoDevelop.Ide | |
parent | 85baf7d4c1e321f8ef1c259517f495ce3d024be2 (diff) |
#53783
Diffstat (limited to 'main/src/core/MonoDevelop.Ide')
3 files changed, 13 insertions, 7 deletions
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Projects/GtkNewProjectDialogBackend.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Projects/GtkNewProjectDialogBackend.cs index 4279096f6a..fe53ebb4bf 100644 --- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Projects/GtkNewProjectDialogBackend.cs +++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Projects/GtkNewProjectDialogBackend.cs @@ -74,7 +74,7 @@ namespace MonoDevelop.Ide.Projects } void ProjectCreationFailed (object obj, EventArgs args) => ShowProjectCreationAccessibityNotification (true);
- void ProjectCreationSucceed (object obj, EventArgs args) => ShowProjectCreationAccessibityNotification (false);
+ void ProjectCreated(object obj, EventArgs args) => ShowProjectCreationAccessibityNotification (false);
async void NextButtonClicked (object sender, EventArgs e) => await MoveToNextPage ();
void ShowProjectCreationAccessibityNotification (bool hasError)
@@ -104,7 +104,7 @@ namespace MonoDevelop.Ide.Projects {
this.controller = controller;
controller.ProjectCreationFailed += ProjectCreationFailed;
- controller.ProjectCreationSucceed += ProjectCreationSucceed;
+ controller.ProjectCreated += ProjectCreated;
languageCellRenderer.SelectedLanguage = controller.SelectedLanguage;
topBannerLabel.Text = controller.BannerText;
LoadTemplates ();
@@ -263,7 +263,7 @@ namespace MonoDevelop.Ide.Projects projectConfigurationWidget.Destroy ();
controller.ProjectCreationFailed -= ProjectCreationFailed;
- controller.ProjectCreationSucceed -= ProjectCreationSucceed;
+ controller.ProjectCreated -= ProjectCreated;
base.Destroy ();
}
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Projects/INewProjectController.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Projects/INewProjectController.cs index 76b58d7a69..f1c0aea808 100644 --- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Projects/INewProjectController.cs +++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Projects/INewProjectController.cs @@ -36,7 +36,7 @@ namespace MonoDevelop.Ide.Projects interface INewProjectDialogController
{ event EventHandler ProjectCreationFailed;
- event EventHandler ProjectCreationSucceed;
+ event EventHandler ProjectCreated;
IEnumerable<TemplateCategory> TemplateCategories { get; }
List<SolutionTemplate> RecentTemplates { get; }
TemplateCategory SelectedSecondLevelCategory { get; }
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Projects/NewProjectController.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Projects/NewProjectController.cs index d13c0b1cbe..b42d9dcdbd 100644 --- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Projects/NewProjectController.cs +++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Projects/NewProjectController.cs @@ -53,7 +53,7 @@ namespace MonoDevelop.Ide.Projects class NewProjectDialogController : INewProjectDialogController
{ public event EventHandler ProjectCreationFailed;
- public event EventHandler ProjectCreationSucceed;
+ public event EventHandler ProjectCreated;
string chooseTemplateBannerText = GettextCatalog.GetString ("Choose a template for your new project");
string configureYourWorkspaceBannerText = GettextCatalog.GetString ("Configure your new workspace");
@@ -703,8 +703,14 @@ namespace MonoDevelop.Ide.Projects IsNewItemCreated = true;
UpdateDefaultSettings ();
- var result = ProjectCreationSucceed?.BeginInvoke(this, new EventArgs (), new AsyncCallback ((_) => {} ),null);
- result.AsyncWaitHandle.WaitOne (); +
+ var tcs = new TaskCompletionSource<bool> (); + Gtk.Application.Invoke ((sender, args) => { + ProjectCreated?.Invoke (this, EventArgs.Empty); + tcs.SetResult (true); + });
+ await tcs.Task;
+
dialog.CloseDialog ();
}
|