diff --git a/components/synedit/syncompletion.pas b/components/synedit/syncompletion.pas index d12e10fdbc..364ac1a131 100644 --- a/components/synedit/syncompletion.pas +++ b/components/synedit/syncompletion.pas @@ -105,6 +105,8 @@ type { TSynBaseCompletionForm } TSynBaseCompletionForm = class(TForm) + procedure SDKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); + procedure SDKeyPress(Sender: TObject; var Key: char); protected FCurrentString: string; FOnKeyPress: TKeyPressEvent; @@ -475,6 +477,7 @@ begin FResizeLock := 1; // prevent DoResize (on Handle Creation) do reset LinesInWindow FHintLock := 0; BeginFormUpdate; + KeyPreview:= True; inherited Create(AOwner); FItemList := TStringList.Create; BorderStyle := bsNone; @@ -508,6 +511,9 @@ begin SizeDrag.Height := Max(5, abs(Font.Height) * 2 div 3); SizeDrag.Cursor := crSizeNWSE; + SizeDrag.OnKeyPress:=@SDKeyPress; + SizeDrag.OnKeyDown:=@SDKeyDown; + Scroll.Anchors:=[akTop,akRight, akBottom]; Scroll.AnchorSide[akTop].Side := asrTop; Scroll.AnchorSide[akTop].Control := self; @@ -850,6 +856,17 @@ begin Position := Position - 1; end; +procedure TSynBaseCompletionForm.SDKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); +begin + KeyDown(key,shift); +end; + +procedure TSynBaseCompletionForm.SDKeyPress(Sender: TObject; var Key: char); +begin + KeyPress(key); +end; + procedure TSynBaseCompletionForm.UTF8KeyPress(var UTF8Key: TUTF8Char); begin debugln('TSynBaseCompletionForm.UTF8KeyPress A UTF8Key="',DbgStr(UTF8Key),'" ',dbgsName(TObject(TMethod(OnUTF8KeyPress).Data)));