spiegel-keyman/windows/src/developer/TIKE/dialogs
Marc Durdin 11043b62c9 fix(developer): get Test Mode working again
Relates to #5013.

This resolves the broken Test Mode with Keyman Core. Previously, Test
Mode just dumped the keyboard into Keyman for Windows, and let it do its
thing. Given that we no longer have the dependency on Keyman for
Windows, the Test window must use Keyman Core to process keystrokes, and
that means there are some differences in how Test Mode operates in 15.0:

* Behind the scenes, the Test mode is just the Debug mode with
  breakpoints and single step disabled, and the Debug Status window
  hidden
* Test mode requires debug information in the keyboard (see note below)
* You can always switch between Test and Debug mode
* Deadkeys are always shown in the debug window

Test Mode now requires debug information to be included in the keyboard
in order for deadkeys to be tracked correctly in the editor. While it
would be possible to remove the need for this, it does not add any
significant benefit to do so -- doing so would mean that the tester
would have less visibility into deadkeys, and complicate the Core
marker tracking in the debug window.

I considered removing Test Mode altogether, but it still feels like a
useful view for playing with a keyboard without all the debugging
paraphernalia cluttering the display. It's a little slower than full
native Keyman for Windows (aka the 14.0 Test Mode), because the debug
hooks are still running in the background, but it is quite usable.

Note the removal of `Application.ProcessMessages`. This resolves the
issue of keystrokes being swallowed by the debugger during
non-interactive debug runs, making rapid input work properly in both
Debug Mode and Test Mode.
2021-08-18 07:46:39 +10:00
..
languages feat(developer): improve BCP 47 canonicalization 2021-02-05 16:56:21 +11:00
Keyman.Developer.UI.UfrmMessageDlgWithSave.dfm feat(developer): always save options 2020-02-25 23:51:07 +07:00
Keyman.Developer.UI.UfrmMessageDlgWithSave.pas chore: address review comments 2020-02-26 13:13:44 +07:00
UfrmAboutTike.dfm fix(developer): Project window and About window hardcoded urls 2020-09-25 09:54:27 +10:00
UfrmAboutTike.pas fix(developer): Project window and About window hardcoded urls 2020-09-25 09:54:27 +10:00
UfrmAddKeyboardFeature.dfm Keyman Desktop and Keyman Developer open source 10.0 alpha seed (#121) 2017-07-25 10:53:06 +07:00
UfrmAddKeyboardFeature.pas Refactor kmxfile constants into kmxfileconsts to avoid pulling in too many dependencies 2018-02-15 16:18:51 +07:00
UfrmBitmapEditorText.dfm Keyman Desktop and Keyman Developer open source 10.0 alpha seed (#121) 2017-07-25 10:53:06 +07:00
UfrmBitmapEditorText.pas Rewrite all context help links to match Developer 10.0 help paths and identifiers; update language help to track keywords more reliably 2018-04-25 14:09:56 +07:00
UfrmFontHelper.dfm Keyman Desktop and Keyman Developer open source 10.0 alpha seed (#121) 2017-07-25 10:53:06 +07:00
UfrmFontHelper.pas Keyman Desktop and Keyman Developer open source 10.0 alpha seed (#121) 2017-07-25 10:53:06 +07:00
UfrmKeyboardFonts.dfm fix(developer): Support all fonts in Keyboard Fonts dialog 2021-03-03 14:24:59 +11:00
UfrmKeyboardFonts.pas Rewrite all context help links to match Developer 10.0 help paths and identifiers; update language help to track keywords more reliably 2018-04-25 14:09:56 +07:00
UfrmMustIncludeDebug.dfm fix(developer): get Test Mode working again 2021-08-18 07:46:39 +10:00
UfrmMustIncludeDebug.pas fix(developer): get Test Mode working again 2021-08-18 07:46:39 +10:00
UfrmNew.dfm [Developer] Add model support to File/New dialog 2019-08-28 12:56:21 +10:00
UfrmNew.pas feat(developer): Default project path 2019-12-13 05:07:09 +11:00
UfrmNewFileDetails.dfm Keyman Desktop and Keyman Developer open source 10.0 alpha seed (#121) 2017-07-25 10:53:06 +07:00
UfrmNewFileDetails.pas feat(developer): Default project path 2019-12-13 05:07:09 +11:00
UfrmOptions.dfm feat(windows): user control for upload to sentry 2020-03-27 17:50:51 +11:00
UfrmOptions.pas feat(windows): user control for upload to sentry 2020-03-27 17:50:51 +11:00
UfrmRegressionTestFailure.dfm [Developer] Refactor use of TKeymanDeveloperMemo, where not needed, to TMemo 2018-08-13 22:52:13 +10:00
UfrmRegressionTestFailure.pas [Developer] Refactor use of TKeymanDeveloperMemo, where not needed, to TMemo 2018-08-13 22:52:13 +10:00
UfrmRegressionTestsWaitForIdle.dfm Keyman Desktop and Keyman Developer open source 10.0 alpha seed (#121) 2017-07-25 10:53:06 +07:00
UfrmRegressionTestsWaitForIdle.pas Keyman Desktop and Keyman Developer open source 10.0 alpha seed (#121) 2017-07-25 10:53:06 +07:00
UfrmSelectKey.dfm Keyman Desktop and Keyman Developer open source 10.0 alpha seed (#121) 2017-07-25 10:53:06 +07:00
UfrmSelectKey.pas Rewrite all context help links to match Developer 10.0 help paths and identifiers; update language help to track keywords more reliably 2018-04-25 14:09:56 +07:00
UfrmSendURLsToEmail.dfm Keyman Desktop and Keyman Developer open source 10.0 alpha seed (#121) 2017-07-25 10:53:06 +07:00
UfrmSendURLsToEmail.pas Keyman Desktop and Keyman Developer open source 10.0 alpha seed (#121) 2017-07-25 10:53:06 +07:00
UfrmSMTPSetup.dfm Keyman Desktop and Keyman Developer open source 10.0 alpha seed (#121) 2017-07-25 10:53:06 +07:00
UfrmSMTPSetup.pas Keyman Desktop and Keyman Developer open source 10.0 alpha seed (#121) 2017-07-25 10:53:06 +07:00
UfrmVisualKeyboardImportKMX.dfm refactor(developer): visual keyboard import 2021-08-04 07:44:18 +10:00
UfrmVisualKeyboardImportKMX.pas refactor(developer): visual keyboard import 2021-08-04 07:44:18 +10:00