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:
Diffstat (limited to 'main/src/addins/Xml/Completion/XmlTagCompletionData.cs')
-rw-r--r--main/src/addins/Xml/Completion/XmlTagCompletionData.cs14
1 files changed, 6 insertions, 8 deletions
diff --git a/main/src/addins/Xml/Completion/XmlTagCompletionData.cs b/main/src/addins/Xml/Completion/XmlTagCompletionData.cs
index befc32f068..e0d08b5ef2 100644
--- a/main/src/addins/Xml/Completion/XmlTagCompletionData.cs
+++ b/main/src/addins/Xml/Completion/XmlTagCompletionData.cs
@@ -31,6 +31,7 @@ using System;
using MonoDevelop.Ide.CodeCompletion;
using MonoDevelop.Ide.Gui.Content;
using MonoDevelop.Core;
+using MonoDevelop.Ide.Editor.Extension;
namespace MonoDevelop.Xml.Completion
{
@@ -66,20 +67,17 @@ namespace MonoDevelop.Xml.Completion
get { return element; }
}
- public override void InsertCompletionText (CompletionListWindow window, ref KeyActions ka, Gdk.Key closeChar, char keyChar, Gdk.ModifierType modifier)
+ public override void InsertCompletionText (CompletionListWindow window, ref KeyActions ka, KeyDescriptor descriptor)
{
- IEditableTextBuffer buf = window.CompletionWidget as IEditableTextBuffer;
+ var buf = window.CompletionWidget;
if (buf != null) {
//completion context gets nulled from window as soon as we alter the buffer
var codeCompletionContext = window.CodeCompletionContext;
- using (var undo = buf.OpenUndoGroup ()) {
- buf.InsertText (buf.CursorPosition, element);
+ buf.Replace (buf.CaretOffset, 0, element);
- // Move caret into the middle of the tags
- buf.CursorPosition = codeCompletionContext.TriggerOffset + cursorOffset;
- buf.Select (buf.CursorPosition, buf.CursorPosition);
- }
+ // Move caret into the middle of the tags
+ buf.CaretOffset = codeCompletionContext.TriggerOffset + cursorOffset;
}
}
}