diff --git a/source/forms/NonVisual.cpp b/source/forms/NonVisual.cpp index b3f012b75..0dcf9ee17 100644 --- a/source/forms/NonVisual.cpp +++ b/source/forms/NonVisual.cpp @@ -1073,10 +1073,7 @@ int __fastcall TNonVisualDataModule::CreateCustomCommandsListMenu( Item->Tag = Item->Tag | CustomCommandBoth; } Item->Hint = CustomCommandHint(Command); - if (ListType != ccltBoth) - { - Item->ShortCut = Command->ShortCut; - } + Item->ShortCut = Command->ShortCut; Item->OnClick = CustomCommandClick; Menu->Add(Item); diff --git a/source/forms/SynchronizeChecklist.cpp b/source/forms/SynchronizeChecklist.cpp index 4bfbf05c0..ad6ef355d 100644 --- a/source/forms/SynchronizeChecklist.cpp +++ b/source/forms/SynchronizeChecklist.cpp @@ -1387,3 +1387,28 @@ void __fastcall TSynchronizeChecklistDialog::BrowseRemoteActionExecute(TObject * DoBrowse(osRemote); } //--------------------------------------------------------------------------- +void __fastcall TSynchronizeChecklistDialog::KeyDown(Word & Key, TShiftState Shift) +{ + TShortCut KeyShortCut = ShortCut(Key, Shift); + TShortCut CustomShortCut = NormalizeCustomShortCut(KeyShortCut); + if (IsCustomShortCut(CustomShortCut)) + { + TTBXItem * MenuItem = new TTBXItem(this); + CustomCommandsAction->ActionComponent = MenuItem; + CustomCommandsAction->Execute(); + + for (int Index = 0; Index < MenuItem->Count; Index++) + { + TTBCustomItem * Item = MenuItem->Items[Index]; + if (Item->Enabled && (Item->ShortCut == CustomShortCut)) + { + TAutoFlag DontCopyCommandToClipboardFlag(DontCopyCommandToClipboard); + Item->Click(); + Key = 0; + break; + } + } + } + + TForm::KeyDown(Key, Shift); +} diff --git a/source/forms/SynchronizeChecklist.h b/source/forms/SynchronizeChecklist.h index 050108128..c51b1b442 100644 --- a/source/forms/SynchronizeChecklist.h +++ b/source/forms/SynchronizeChecklist.h @@ -181,6 +181,7 @@ protected: void __fastcall DoBrowse(TOperationSide Side); void __fastcall ListViewHintShow(TCMHintShow & HintShow); void __fastcall StatusBarHintShow(TCMHintShow & HintShow); + DYNAMIC void __fastcall KeyDown(Word & Key, TShiftState Shift); }; //---------------------------------------------------------------------------- #endif