diff options
author | Mike Krüger <mkrueger@xamarin.com> | 2017-03-08 16:15:34 +0300 |
---|---|---|
committer | Mike Krüger <mkrueger@xamarin.com> | 2017-03-08 16:15:34 +0300 |
commit | f3abf423a0f6ac0dbcb37a79860d6ce419f065e7 (patch) | |
tree | 81fa3712d016039e5952b80a4989cd40d2bf6b84 /main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CodeCompletion | |
parent | 0ae132f3ea0c579681ee7ae5f0bd28421ffd8558 (diff) |
[Ide] Fixed little completion commit char issue.
Diffstat (limited to 'main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CodeCompletion')
-rw-r--r-- | main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CodeCompletion/CompletionListWindow.cs | 2 | ||||
-rw-r--r-- | main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CodeCompletion/ListWindow.cs | 12 |
2 files changed, 2 insertions, 12 deletions
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CodeCompletion/CompletionListWindow.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CodeCompletion/CompletionListWindow.cs index c1cf55c349..848aacfb91 100644 --- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CodeCompletion/CompletionListWindow.cs +++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CodeCompletion/CompletionListWindow.cs @@ -530,11 +530,11 @@ namespace MonoDevelop.Ide.CodeCompletion } } } - if (!keyHandled) ka = PostProcessKey (descriptor); if ((ka & KeyActions.Complete) != 0) CompleteWord (ref ka, descriptor); + UpdateLastWordChar (); if ((ka & KeyActions.CloseWindow) != 0) { CompletionWindowManager.HideWindow (); OnWindowClosed (EventArgs.Empty); diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CodeCompletion/ListWindow.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CodeCompletion/ListWindow.cs index 7644aa78c8..e7f7663364 100644 --- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CodeCompletion/ListWindow.cs +++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CodeCompletion/ListWindow.cs @@ -311,38 +311,31 @@ namespace MonoDevelop.Ide.CodeCompletion public KeyActions PostProcessKey (KeyDescriptor descriptor) { - UpdateLastWordChar (); if (CompletionWidget == null || StartOffset > CompletionWidget.CaretOffset) {// CompletionWidget == null may happen in unit tests. - UpdateLastWordChar (); return KeyActions.CloseWindow | KeyActions.Process; } if (HideWhenWordDeleted && StartOffset >= CompletionWidget.CaretOffset) { - UpdateLastWordChar (); return KeyActions.CloseWindow | KeyActions.Process; } switch (descriptor.SpecialKey) { case SpecialKey.BackSpace: ResetSizes (); UpdateWordSelection (); - UpdateLastWordChar (); return KeyActions.Process; } var keyChar = descriptor.KeyChar; if (keyChar == '[' && CloseOnSquareBrackets) { - UpdateLastWordChar (); return KeyActions.Process | KeyActions.CloseWindow; } if (char.IsLetterOrDigit (keyChar) || keyChar == '_') { ResetSizes (); UpdateWordSelection (); - UpdateLastWordChar (); return KeyActions.Process; } if (SelectedItemIndex < 0) { - UpdateLastWordChar (); return KeyActions.Process; } var data = DataProvider.GetCompletionData (SelectedItemIndex); @@ -355,7 +348,6 @@ namespace MonoDevelop.Ide.CodeCompletion if (!text.StartsWith (curword, StringComparison.OrdinalIgnoreCase)) match = -1; } - UpdateLastWordChar (); if (match >= 0 && keyChar != '<' && keyChar != ' ') { ResetSizes (); UpdateWordSelection (); @@ -384,16 +376,14 @@ namespace MonoDevelop.Ide.CodeCompletion return KeyActions.CloseWindow; var text = DataProvider.GetText (selectedItem); if (!text.Substring (0, Math.Min (text.Length, CurrentPartialWord.Length)).EndsWith (descriptor.KeyChar.ToString (), StringComparison.Ordinal)) { - UpdateLastWordChar (); return KeyActions.Process | KeyActions.CloseWindow; } } } - UpdateLastWordChar (); return KeyActions.Process; } - void UpdateLastWordChar () + internal void UpdateLastWordChar () { EndOffset = CompletionWidget.CaretOffset; } |