fix(developer): Ctrl key to select key was conflicting with shortcuts
Fixes #7425. In the layout editor, the "Select Key" dialog was being shown sometimes when using shortcuts such as Ctrl+V. The reason this happened was that the shortcut handler in Delphi was capturing the keydown of the V key, so the Ctrl event handler never saw it. Then, if you pressed Ctrl+V, and released the Ctrl key before releasing the V key (which often happens when you press a shortcut rapidly), the Ctrl event handler would receive notification of the Ctrl key release and trigger the "Select Key" dialog. This fix shifts the Ctrl key event handler out of the keyboard editor and into the top-level application events handler -- this is the best place where we can preview key events before they are passed to the shortcut handler and controls for processing. This necessitated adding a general `ControlKeyPressedAndReleased` event function to the TIKE editor base class. This is currently only used by `UfrmKeymanWizard` and `UfrmOSKEditor`. I noted that the OSK editor did not currently support the Ctrl key event to select a new key. As a part of this fix, I added support for this, to bring it into line with the Layout Editor and the Touch Layout Editor.
parent
0d3ec513
Please register or sign in to comment