From cc5661d6239efa6cab8f8ef07e3cc8adc9f86059 Mon Sep 17 00:00:00 2001 From: Basile Burg Date: Wed, 23 Aug 2017 07:49:37 +0200 Subject: [PATCH] fix #175 - space or space-and-char ransomly inserted after completion --- src/ce_synmemo.pas | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/src/ce_synmemo.pas b/src/ce_synmemo.pas index 8e6d6ec3..3968c90a 100644 --- a/src/ce_synmemo.pas +++ b/src/ce_synmemo.pas @@ -2368,17 +2368,18 @@ procedure TCESynMemo.completionCodeCompletion(var value: string; SourceValue: string; var SourceStart, SourceEnd: TPoint; KeyChar: TUTF8Char; Shift: TShiftState); begin - if (KeyChar[1] = ' ') then + if KeyChar <> '' then begin - value := sourceValue + KeyChar[1]; - end - else - begin - fLastCompletion := value; - if KeyChar[1] in fCloseCompletionCharsWithSpace then - value += ' ' + KeyChar[1] - else if KeyChar[1] in fCloseCompletionChars then - value += KeyChar[1]; + if KeyChar[1] = ' ' then + value := sourceValue + KeyChar[1] + else + begin + fLastCompletion := value; + if KeyChar[1] in fCloseCompletionCharsWithSpace then + value += ' ' + KeyChar[1] + else if KeyChar[1] in fCloseCompletionChars then + value += KeyChar[1]; + end; end; end;