Skip to content

Commit 79f1d38

Browse files
committed
fix: missing support for custom keyboard shortcut for executing completion popup
Refs #2534
1 parent 0c969da commit 79f1d38

1 file changed

Lines changed: 11 additions & 4 deletions

File tree

source/main.pas

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4916,14 +4916,21 @@ procedure TMainForm.actSQLhelpExecute(Sender: TObject);
49164916

49174917

49184918
procedure TMainForm.actSynEditCompletionProposeExecute(Sender: TObject);
4919+
var
4920+
P: TPoint;
4921+
Memo: TCustomSynEdit;
49194922
begin
49204923
// Show completion proposal explicitely, without the use of its own ShortCut property,
49214924
// to support a customized shortcut, see
4922-
{SynCompletionProposal.Editor := ActiveSynMemo(False);
4923-
if Screen.ActiveControl is TCustomSynEdit then
4924-
SynCompletionProposal.ActivateCompletion
4925+
if Screen.ActiveControl is TCustomSynEdit then begin
4926+
Memo := ActiveSynMemo(False);
4927+
SynCompletionProposal.Editor := Memo;
4928+
P := Memo.RowColumnToPixels(Memo.CaretXY);
4929+
P := Memo.ClientToScreen(Point(P.X, P.Y + Memo.LineHeight));
4930+
SynCompletionProposal.Execute(SynCompletionProposal.CurrentString, P.X, P.Y);
4931+
end
49254932
else
4926-
MessageBeep(MB_ICONEXCLAMATION);}
4933+
Beep;
49274934
end;
49284935

49294936
procedure TMainForm.actSynMoveDownExecute(Sender: TObject);

0 commit comments

Comments
 (0)