Commit graph

4256 commits

Author SHA1 Message Date
Dr Mark C. Sinclair
a54bbdae1b chore(developer): add GetXStringImpl_type1 test 2024-05-30 16:32:49 +01:00
Dr Mark C. Sinclair
f412042d97 chore(developer): refactor GetXStringImpl test into two, seperating out type=0 2024-05-30 15:59:57 +01:00
Dr Mark C. Sinclair
7b742c5234 chore(developer): add additional five test cases to GetXStringImpl test, type=0 2024-05-30 15:51:45 +01:00
Dr Mark C. Sinclair
009450b562 chore(developer): add additional three test cases to GetXStringImpl test, type=0 2024-05-30 15:07:02 +01:00
Dr Mark C. Sinclair
b9b09a23f1 chore(developer): add additional four test cases to GetXStringImpl test, type=0 2024-05-30 12:22:40 +01:00
Marc Durdin
769c10ccf5
Merge pull request #11552 from keymanapp/fix/developer/11551-create-folder-for-mrulist
fix(developer): ensure folder for MRU list is always created
2024-05-30 13:36:31 +07:00
Nguonnyny Tan
6627d4e103
chore: remove 'chkShowStartupDialog' and 'chkAllowMultipleInstances' 2024-05-30 12:19:21 +07:00
Marc Durdin
e5e21e79cb
Merge pull request #11558 from keymanapp/fix/developer/11557-invalid-project-file-at-launch
fix(developer): handle invalid project file when scanning for owner project
2024-05-30 09:29:19 +07:00
Marc Durdin
84954063f3
Merge pull request #11546 from keymanapp/fix/developer/11545-nomatch-return-causes-exception
fix(developer): handle unsupported `return` statement in `match` and `nomatch` in web compiler
2024-05-30 09:28:47 +07:00
Marc Durdin
8cef070cd8 chore: increase kmc-kmn build test timeout
Rarely, CI builds have been timing out building the test fixtures, with
the default 2,000msec timeout. Increasing to 10,000msec.
2024-05-30 04:50:53 +07:00
Dr Mark C. Sinclair
2b313cb1c9 chore(developer): add initial GetXStringImpl test 2024-05-28 16:42:46 +01:00
Dr Mark C. Sinclair
4b35c815dd chore(developer): add additional case to GetRHS test 2024-05-28 11:53:41 +01:00
Dr Mark C. Sinclair
ec06107fcc chore(developer): add initial GetRHS test 2024-05-28 10:23:34 +01:00
Dr Mark C. Sinclair
9f4dbf8251 chore(developer): Merge branch 'master' into test/developer/kmcmplib-compiler-unit-tests 2024-05-28 10:06:18 +01:00
Nguonnyny Tan
518a13a591
Update contexthelp.xml 2024-05-28 14:53:47 +07:00
Marc Durdin
951eb571fe chore(developer): rename Default_DefaultProjectPath to Get_Initial_DefaultProjectPath 2024-05-28 14:39:07 +07:00
Marc Durdin
dfc90de81d fix(developer): handle editor initializing after debugger when setting execution point
Fixes: #11586
Fixes: KEYMAN-DEVELOPER-1K7
2024-05-28 13:53:04 +07:00
Nguonnyny Tan
73f8477b50
Update developer/src/tike/xml/help/contexthelp.xml
Co-authored-by: Marc Durdin <marc@durdin.net>
2024-05-28 12:34:35 +07:00
Nguonnyny Tan
8e0033072f
Update developer/src/tike/xml/help/contexthelp.xml
Co-authored-by: Marc Durdin <marc@durdin.net>
2024-05-28 12:34:20 +07:00
Marc Durdin
9f5141b18c fix(developer): correct the inference of default hint from flicks
There were two problems here:
* An undeclared variable `source`
* The `flick` parameter is an array, not an object, so indexing by
  direction is invalid

Fixes: #11581
Fixes: KEYMAN-DEVELOPER-1YW
2024-05-28 09:49:38 +07:00
Marc Durdin
5c40ec9878 fix(developer): use correct variable when fixing up flick and multitap in Layer Properties dialog
Fixes: #11574
Fixes: KEYMAN-DEVELOPER-1GC
2024-05-28 06:54:47 +07:00
Marc Durdin
193250db71 fix(developer): save touch layout editor selection when loading state
Key selection was left in a corrupted state in `builder.loadState()`, on
first load of the touch layout editor, because the selection was not
restored after calling `prepareLayer()`.

This only happens on first load because after first load, the selection
will have been saved to the state (which is kept in the backend,
associated with the instance of the editor), so pressing F5 to reload
the page will not reproduce the issue.

Fixes: #11573
Fixes: KEYMAN-DEVELOPER-1Z8
2024-05-28 06:46:48 +07:00
Nnyny
9e17f7f9c0 Add context/options 2024-05-27 15:39:41 +07:00
Marc Durdin
8efba7186e fix(developer): handle missing data in .kps <Keyboard>
Handles when `<Version/>`, `<Name/>`, or `<ID/>` elements are missing
from `<Keyboard>` elements in the .kps file in kmc-package. Adds a unit
test.

Fixes: #11562
Fixes: KEYMAN-DEVELOPER-1YY
2024-05-27 15:04:53 +07:00
Marc Durdin
15acd713fb fix(developer): handle invalid project file when scanning for owner project
Also updates the only other place where a project file is loaded like
this, in the project renderer, and handles it too (this scenario is
less likely to happen because the project file must already have been
loaded in order to be presented in the UI).

Fixes: #11557
Fixes: KEYMAN-DEVELOPER-1Z2
2024-05-27 12:46:49 +07:00
Marc Durdin
59a907ee04 fix(developer): handle invalid default project path in options
If a relative or otherwise invalid path is given for `default project
path` in .keymandeveloper/options.json, then this will reset the path
to the default of `%Documents%/Keyman Developer/Projects`.

Fixes: #11554
Fixes: KEYMAN-DEVELOPER-1ZB
2024-05-27 12:14:53 +07:00
Marc Durdin
6d2164f1e6 fix(developer): ensure folder for MRU list is always created
This arises if `%AppData%/Keyman/Keyman Developer` folder is missing.
It is sporadic because most times, Keyman Developer Server wins a
startup race and creates the folder before this code is ever reached.

Fixes: #11551
Fixes: KEYMAN-DEVELOPER-1MY
2024-05-27 10:50:58 +07:00
Marc Durdin
67484cb5d5 fix(developer): handle unsupported return statement in match and nomatch in web compiler
The `return` statement is unsupported in the web compiler. This is
documented, but the problem here was that the `nomatch` and `match`
metarules have no corresponding `fkp` structure, so that caused a fatal
error in the compiler if these were used in combination, e.g.

    nomatch > return

Fixes: #11545
2024-05-27 09:38:46 +07:00
Marc Durdin
e9175de00f fix(developer): test existence of ngrok.exe before atttempting to start
Fixes the scenario where the `%AppData%\Keyman\Keyman Developer\Server\bin`
folder exists, but ngrok.exe is not in the folder, which caused Keyman
Developer Server to crash.

Fixes: #11542
Fixes: KEYMAN-DEVELOPER-1JE
2024-05-27 08:21:13 +07:00
Marc Durdin
fcbfd62535
Merge branch 'master' into chore/common/8399-cleanup-meson-warnings 2024-05-25 05:32:38 +07:00
Marc Durdin
84888c2390
Merge pull request #11512 from Nnyny/developer/contexthelp
chore(developer): add context/key-test
2024-05-24 13:51:59 +07:00
Marc Durdin
900f248558 chore(common): cleanup meson deprecations and warnings
Most warnings have been cleaned up:

* min meson version is now 1.0
* additional parameters such as check, recursive added
* uses now global_source_root() instead of source_root()
* catting files on Windows wasn't actually working -- used in unit
  tests. This is because meson passes paths with forward slashes to
  cmd.exe `type` command, which doesn't understand them. This is bad,
  because we were running effectively null tests for the affected tests.
  Fortunately, the same tests were configured correctly on macOS and
  Linux, and were all passing, so no serious damage.

There is one significant warning left:

`WARNING: Project targets '>=1.0' but uses feature deprecated since
'0.64.0': copy arg in configure_file. Use fs.copyfile instead`

Refer to mesonbuild/meson#12792. I have opened a PR against that to
undeprecate `copy` kwarg in a future version of meson.

Fixes: #8399
2024-05-24 08:46:52 +07:00
Marc Durdin
1e66b6ed0e
Merge pull request #11421 from keymanapp/chore/developer/11317-build.sh
chore(developer): build.sh for developer
2024-05-23 14:22:54 +07:00
Nnyny
273d79e204 context/key-test 2024-05-23 13:45:05 +07:00
Marc Durdin
78de7e901b
Merge pull request #11488 from keymanapp/fix/developer/11486-handle-invalidate-context-in-debugger
fix(developer): handle `KM_CORE_IT_INVALIDATE_CONTEXT` in debugger
2024-05-22 10:56:02 +07:00
Dr Mark C. Sinclair
4b9c2e8f95 chore(developer): Merge branch 'master' into test/developer/kmn-compiler-messages-unit-tests 2024-05-21 09:09:49 +01:00
Marc Durdin
c52d32cca6 fix(developer): handle KM_CORE_IT_INVALIDATE_CONTEXT in debugger
The output from Keyman Core changed in #11172 to emit a
`KM_CORE_IT_INVALIDATE_CONTEXT` action when a frame key is pressed, but
the debugger was not catering for this scenario, causing an assertion
failure.

Fixes: #11486
Fixes: KEYMAN-DEVELOPER-1Y4
2024-05-21 09:02:28 +07:00
Dr Mark C. Sinclair
3ed3863a5f chore(developer): Merge branch 'master' into test/developer/kmcmplib-compiler-unit-tests 2024-05-20 17:40:28 +01:00
Dr Mark C. Sinclair
474caecab5 chore(developer): correct include paths 2024-05-20 17:35:21 +01:00
Dr Mark C. Sinclair
1c08e9d74d chore(developer): add ProcessBeginLine test with initial six test cases 2024-05-20 17:11:47 +01:00
Dr Mark C. Sinclair
ca09856208 chore(developer): restore indent on ComgMsg error messages (for sake of reviewer) 2024-05-20 11:50:37 +01:00
Dr Mark C. Sinclair
309727523e chore(developer): add AddCompileWarning test 2024-05-20 11:47:19 +01:00
Dr Mark C. Sinclair
213d7b9a57 chore(developer): reduce indent on CompMsg error messages 2024-05-20 11:26:05 +01:00
Dr Mark C. Sinclair
5ea3f6ec16 chore(developer): refactor CompMsg.cpp to use a std::map 2024-05-20 11:19:54 +01:00
Dr Mark C. Sinclair
6c2308637f chore(developer): Merge branch 'master' into test/developer/kmn-compiler-messages-unit-tests 2024-05-20 10:30:36 +01:00
Dr Mark C. Sinclair
23069398bf chore(developer): remove all message text assertions 2024-05-20 10:28:13 +01:00
Marc Durdin
682e141aea refactor(developer): include test_color.cpp in kmcmplib tests 2024-05-20 15:58:17 +07:00
Marc Durdin
8b2070c339 chore(developer): minor cleanup on scripts
Additional shared script resources for Developer and Windows,
refactor of a code signing function, refactor of clean step in build.sh.
2024-05-20 06:35:11 +07:00
Marc Durdin
a062c8773a chore(developer): checkout correct CEF version during release build 2024-05-20 06:35:09 +07:00
Marc Durdin
5c2737738d chore(developer): move to keymancore-2.dll 2024-05-20 06:35:08 +07:00