diff --git a/src/AddIns/BackendBindings/CSharpBinding/Project/CSharpBinding.addin b/src/AddIns/BackendBindings/CSharpBinding/Project/CSharpBinding.addin index cf2fe24d3e..d139cdfc1b 100644 --- a/src/AddIns/BackendBindings/CSharpBinding/Project/CSharpBinding.addin +++ b/src/AddIns/BackendBindings/CSharpBinding/Project/CSharpBinding.addin @@ -210,6 +210,7 @@ or you can add NR5 code action providers using --> + diff --git a/src/AddIns/BackendBindings/CSharpBinding/Project/Src/Completion/ImportCompletionData.cs b/src/AddIns/BackendBindings/CSharpBinding/Project/Src/Completion/ImportCompletionData.cs index e4d5d57271..f8f25be2db 100644 --- a/src/AddIns/BackendBindings/CSharpBinding/Project/Src/Completion/ImportCompletionData.cs +++ b/src/AddIns/BackendBindings/CSharpBinding/Project/Src/Completion/ImportCompletionData.cs @@ -16,6 +16,9 @@ using ICSharpCode.SharpDevelop.Editor.CodeCompletion; namespace CSharpBinding.Completion { + /// + /// Completion item that introduces a using declaration. + /// class ImportCompletionData : EntityCompletionData { string insertUsing; @@ -42,11 +45,7 @@ namespace CSharpBinding.Completion SD.Log.Debug("Insert using '" + insertUsing + "'"); var refactoringContext = SDRefactoringContext.Create(context.Editor, CancellationToken.None); using (var script = refactoringContext.StartScript()) { - // TODO: sort usings; insert inside namespace if other usings are there; etc. - var prevUsing = refactoringContext.RootNode.Children.LastOrDefault(p => p is UsingDeclaration); - if (prevUsing != null) { - script.InsertAfter(prevUsing, new UsingDeclaration(insertUsing)); - } + UsingHelper.InsertUsing(refactoringContext, script, new UsingDeclaration(insertUsing)); } } } diff --git a/src/Libraries/NRefactory/ICSharpCode.NRefactory.Tests/CSharp/Parser/Statements/TryCatchStatementTests.cs b/src/Libraries/NRefactory/ICSharpCode.NRefactory.Tests/CSharp/Parser/Statements/TryCatchStatementTests.cs index 7ce29e7e38..f31fcae318 100644 --- a/src/Libraries/NRefactory/ICSharpCode.NRefactory.Tests/CSharp/Parser/Statements/TryCatchStatementTests.cs +++ b/src/Libraries/NRefactory/ICSharpCode.NRefactory.Tests/CSharp/Parser/Statements/TryCatchStatementTests.cs @@ -86,7 +86,7 @@ namespace ICSharpCode.NRefactory.CSharp.Parser.Statements Assert.IsFalse(c2.IsMatch(c1)); // and vice versa } - [Test, Ignore("broken")] + [Test] public void CommentBeforeTryCatchFinally() { var stmt = ParseUtilCSharp.ParseStatement(