diff options
author | Mike Krüger <mkrueger@xamarin.com> | 2017-03-03 13:57:07 +0300 |
---|---|---|
committer | Mike Krüger <mkrueger@xamarin.com> | 2017-03-03 13:57:07 +0300 |
commit | 47b66707c95ec2bed1b9019455f2818557fe34a3 (patch) | |
tree | b2951ee1c18225026a921446c063e31c068ad6f5 /main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Dialogs | |
parent | f6956705ea0d2d62a7db7aa1680b12bf65c6434d (diff) |
Fixed 'Bug 52923 - closing IDE triggers
TextEditor.InitializeExtensionChain'
The issue was that that the dirty files dialog set the content name
which triggers a reinitialization of the text editor chain.
Diffstat (limited to 'main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Dialogs')
-rw-r--r-- | main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Dialogs/DirtyFilesDialog.cs | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Dialogs/DirtyFilesDialog.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Dialogs/DirtyFilesDialog.cs index b1f1ac456b..84c5329dc0 100644 --- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Dialogs/DirtyFilesDialog.cs +++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Dialogs/DirtyFilesDialog.cs @@ -52,10 +52,7 @@ namespace MonoDevelop.Ide.Gui.Dialogs } tsFiles.AppendValues (projIter, viewcontent.PathRelativeToProject, true, viewcontent.WorkbenchWindow); } else { - if (viewcontent.ContentName == null) { - viewcontent.ContentName = System.IO.Path.Combine (Environment.GetFolderPath (Environment.SpecialFolder.Personal), viewcontent.UntitledName); - } - tsFiles.AppendValues (viewcontent.ContentName, true, viewcontent.WorkbenchWindow); + tsFiles.AppendValues (GetContentFileName (viewcontent), true, viewcontent.WorkbenchWindow); } } if (!topCombineIter.Equals (TreeIter.Zero)) { @@ -101,7 +98,12 @@ namespace MonoDevelop.Ide.Gui.Dialogs this.SetDefaultSize (300, 200); this.Child.ShowAll (); } - + + static string GetContentFileName (ViewContent viewcontent) + { + return viewcontent.ContentName ?? System.IO.Path.Combine (Environment.GetFolderPath (Environment.SpecialFolder.Personal), viewcontent.UntitledName); + } + protected override void OnDestroyed () { btnSaveAndQuit.Clicked -= SaveAndQuit; @@ -129,7 +131,7 @@ namespace MonoDevelop.Ide.Gui.Dialogs if (window == null) return false; if ((bool)tsFiles.GetValue (iter, 1)) { - saveTasks.Add (window.ViewContent.Save (window.ViewContent.ContentName)); + saveTasks.Add (window.ViewContent.Save (GetContentFileName(window.ViewContent))); } else { window.ViewContent.DiscardChanges (); } |