Commit graph

1185 commits

Author SHA1 Message Date
Sabine
db72606b08 chore(developer): restored kmcompxtest, adapted readme 2023-01-19 14:10:18 +01:00
Sabine
1a552a9036 chore(developer): revert change in NamedCodeConstants 2023-01-17 11:56:09 +01:00
Sabine
7cf88082fc chore(developer): use environment var KEYMAN_ROOT in path for tests; remove try-catch from json-validation.cpp 2023-01-17 10:04:39 +01:00
Sabine
2907d4cbe0 chore(developer): change #include paths ../ ; excange km_kbp_cp with KMX_WCHAR; change some variable names 2023-01-13 17:16:42 +01:00
Sabine
7452740f53 chore(developer): restored kmcompxtest 2023-01-12 19:38:43 +01:00
Sabine
9cd591aebf chore(developer): change include paths ../ 2023-01-12 15:40:12 +01:00
Sabine
e2489737be chore(developer): remove kmx-file; NamedCodeConstants: rename variables, set const variables for buf sizes, brackets in for-loops 2023-01-12 14:05:38 +01:00
Sabine
c81e35ef6d chore(developer): use PKMX_DWORD/PKMX_WCHAR instead of LPKMX_DWORD/LPKMX_WCHAR; use PKMX_STR instead of char* in CompilerMessageProc 2023-01-10 16:49:18 +01:00
Sabine
b599c4529e chore(developer): note about func.call_js; change all "VESION x.y " to "VESION x.y or higher" ; rename flag for kmcompx to flag_use_new_kmcomp 2023-01-10 16:45:18 +01:00
Sabine
8f3c9552eb chore(developer): remove CERR_CallIsProfessionalFeature, CERR_IncludeCodesIsProfessionalFeature, CERR_MnemonicLayoutIsProfessionalFeature 2023-01-10 16:38:41 +01:00
Sabine
b06d4c4aad chore(developer): remove some unnecessary CERR_ tests 2023-01-10 16:30:21 +01:00
Sabine
081fa7deb9 chore(developer): use namespaces in kmcmplib (except for in dllexport-functions) 2022-12-20 11:31:08 +01:00
Sabine
105d6f3fba chore(developer): solve merge conflicts in namespaces 2022-12-15 01:47:34 +07:00
Sabine
6a8881f8f8 chore(developer): more changes for using namespaces 2022-12-14 11:58:07 +07:00
Sabine
597462ab72 chore(developer): introduce namespace kmcmp instead of different filenames 2022-12-13 16:05:11 +07:00
Sabine
d067324ccf chore(developer): add flag flag_use_kmcompx as switch to use old code (kmcmpdll) or new code kmcmplib 2022-12-08 16:28:15 +07:00
Sabine
d23b7b787e chore(developer):repeatedBEgin plus rename functions to prevent same names in kmcmpdll and kmcmplib 2022-12-04 16:38:27 +07:00
Sabine
c3b1af78c0 chore(developer): addCompilerMsg for RepeatedBegin 2022-12-04 16:32:07 +07:00
Sabine
9f5b6c83b7 Merge branch 'refactor/developer/6026-kmcompx-compiler-cross-platform-part-2-NEW_VERSION' of https://github.com/keymanapp/keyman into refactor/developer/6026-kmcompx-compiler-cross-platform-part-2-NEW_VERSION 2022-11-29 15:33:16 +07:00
Sabine
0d3200346f chore(developer): include BEGIN_LINE (repeated Begin) 2022-11-29 14:55:46 +07:00
Marc Durdin
41451d9cc9 chore(developer): link kmcmpdll to kmcmplib 2022-11-29 13:48:39 +07:00
Marc Durdin
73966fe477 chore(developer): add build.sh for kmcmplib 2022-11-29 13:39:47 +07:00
Marc Durdin
c0cbd157e2 chore(developer): Merge branch 'feature-kmcompx' into refactor/developer/6026-kmcompx-compiler-cross-platform-part-2-NEW_VERSION 2022-11-29 13:20:28 +07:00
Marc Durdin
875f2c459c chore(developer): start kmcmpdll link to kmcmplib 2022-11-29 13:06:12 +07:00
Marc Durdin
14e5d44e22 chore(developer): make kmcmplib a static library 2022-11-29 12:59:21 +07:00
Marc Durdin
16602babd7 chore: tweak unit test, error messages, and paths 2022-11-29 12:37:51 +07:00
Sabine
29c13897ff chore: meson build for kmcmplib 2022-11-29 10:40:07 +07:00
Sabine
96878c43f7 chore: more cleanup 2022-11-29 10:24:53 +07:00
Sabine
0ebb7c37f7 chore: copy files back 2022-11-29 10:19:07 +07:00
Sabine
2b0fb45477 chore: use ifdef for vkeys 2022-11-29 10:12:07 +07:00
Sabine
08909fe70c chore: commit kmcompx-files 2022-11-29 10:01:19 +07:00
Sabine
577fe4e870 chore: reorganize 2022-11-29 09:53:18 +07:00
Marc Durdin
97c210b361 chore: rename tike internally 2022-11-28 19:51:38 +07:00
Marc Durdin
fb245bfbeb fix(windows): lower case filenames for projects
Fixes #7828.

Moves all projects to lower case filenames so that we don't end up with
filename conflicts in symbol servers.
2022-11-28 19:29:48 +07:00
Joshua A. Horton
94c0e69985 feat(common/models): directional quotes now match against nondirectional ones 2022-11-18 14:15:53 +07:00
Sabine
3b77db95cf chore(developer): comments: converting functions in kmx_u16 2022-11-18 10:06:56 +07:00
Marc Durdin
c18f1a7e63
Merge pull request #7631 from keymanapp/fix/developer/7628-utf8-urls
fix(developer): URL parameters should be UTF-8
2022-11-11 08:03:00 +11:00
Marc Durdin
31513d657e fix(developer): handle utf-8 paths safely 2022-11-10 15:26:27 +11:00
Marc Durdin
3dbd11939f
Merge pull request #7650 from keymanapp/fix/core/7649-emit-keystroke-writing-action-to-wrong-queue
fix(core): emit keystroke was writing to wrong queue
2022-11-09 20:24:26 +11:00
Marc Durdin
d1ab61eac1
Merge pull request #7659 from keymanapp/fix/developer/7658-handle-unpaired-surrogate-in-token-command
fix(developer): handle unpaired surrogate
2022-11-09 16:46:21 +11:00
Marc Durdin
6ebba9deb1
Merge pull request #7655 from keymanapp/fix/developer/4757-6928-handle-shutdown-on-update-better
fix(developer): handle shutdown cleanup more cleanly
2022-11-09 16:46:04 +11:00
Marc Durdin
5d41e7a36e fix(developer): handle unpaired surrogate
Fixes #7658.

When manipulating text that contains an unpaired surrogate, the text
editor could throw an exception trying to encode the text to send
through to the token command. This simply masks that error.
2022-11-09 09:43:55 +11:00
Marc Durdin
03ae8582db fix(developer): handle shutdown cleanup more cleanly
Fixes #4757.
Fixes #6928.

Three separate ways shutdown is more robust:

1. Destroy main form before web server -- this ensures that all main
   form routines have deregistered app sources from web server.
2. In some situations, `FormClose` can be skipped by shutdown routines,
   for example, if you call `Application.Terminate`. This change ensures
   that we get a second chance to cleanup in the form destructor with
   `DoCloseCleanup`.
3. In the Online Update Check, instead of `Application.Terminate`, we
   now use `Application.MainForm.Close`, which is much more polite, as
   it ensures that changed files are saved, etc, and does proper
   cleanup. This particular change may make the other two somewhat
   irrelevant but they are still sensible as they will cover us for
   other potential form destruction sequences.
2022-11-09 08:18:41 +11:00
Marc Durdin
d2fe2a61f9 fix(developer): patch from previous commit 2022-11-09 07:36:28 +11:00
Marc Durdin
b76eb41a06 fix(developer): handle edge cases for app sources
Relates to #6928 and KEYMAN-DEVELOPER-74.

Fixes one more potential pathway for assertions being raised, and adds
some extra debugging in case there are additional pathways we are not
capturing.
2022-11-09 07:32:05 +11:00
Marc Durdin
d7fbdfc59a
Merge pull request #7617 from keymanapp/fix/developer/7616-inferred-key-text-stability
fix(developer): improve support for inferred key cap text
2022-11-09 05:14:44 +11:00
Marc Durdin
5eb006864b fix(developer): kmlmc has runtime dependency on keyman-version 2022-11-08 16:53:10 +11:00
Marc Durdin
42a9f2ca72 fix(core): emit keystroke was writing to wrong queue
Fixes #7649.

emit_keystroke code path in kmx processor was writing directly to the
core queue instead of to the internal kmx processor queue. This caused
it to be out-of-order in the actions sent to the engine/debugger.

Engines didn't really care but it broke the debugger, for example if
only a deadkey was in the buffer and backspace was pressed, Developer
would assert as it would get unexpected context for the deletions.
2022-11-08 16:31:30 +11:00
Marc Durdin
cbc63c42b2
Merge pull request #7642 from keymanapp/fix/developer/7641-prevent-compile-if-no-project
fix(developer): disable Keyboard|Compile if no project loaded
2022-11-08 14:42:19 +11:00
Marc Durdin
094050ec90
Merge pull request #7635 from keymanapp/fix/developer/7634-handle-encoding-error
fix(developer): handle EEncodingError loading text file
2022-11-08 14:41:35 +11:00