Commit graph

634 commits

Author SHA1 Message Date
Eberhard Beilharz
108e849459
fix(linux): Fix lintian warnings 2022-11-16 18:45:34 +01:00
Ross
2fcc0feed0 chore(windows): rearrange mock_options_update add commment 2022-11-15 11:03:41 +10:00
Steven R. Loomis
2b9a90f6eb
Merge pull request #7561 from keymanapp/feat/core/7532-fullspec-epic-ldml 2022-11-14 09:13:10 -06:00
rc-swag
9117b391e3
chore(windows): address review comments
Co-authored-by: Marc Durdin <marc@durdin.net>
2022-11-14 16:15:40 +10:00
Ross
578a9017f4 chore(windows): add unit test for SetupCoreEnvironment 2022-11-14 12:55:13 +10:00
Steven R. Loomis
34013b3fe9 feat(core): ldml: spec, add 'list' section, others 🙀
- multiTap
- flicks
- longPress

New 'list' section for string lists

For #7532
2022-11-10 18:24:11 -06: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
Steven R. Loomis
57648d87a2 fix(core): ldml: spec WIP 🙀
For #7532
2022-11-07 15:30:23 -06:00
Steven R. Loomis
d2546060d5
Apply suggestions from code review
Co-authored-by: Marc Durdin <marc@durdin.net>
2022-11-07 11:26:09 -06:00
Marc Durdin
8e5c26bc2a fix(core): m_actions already existed in KMX_Options 2022-11-07 10:50:14 +11:00
Marc Durdin
a8c3854431 fix(core): save() should be on internal kmx action queue
Fixes #7643.

The kmn statement `save()` action was being written directly to the
state queue, bypassing the internal kmx action queue. This caused two
issues:

1. save() actions were out-of-order with other actions on the same key
   event.
2. The number of items in the internal action queue became out of sync
   with the debug item queue, which would cause the debugger to fail
   with an assertion.

The new test in debug_api.cpp validates this second issue as the number
of items in the action queue now matches the expected count in the
corresponding debug item.
2022-11-07 10:28:58 +11:00
Steven R. Loomis
670791d3a9 fix(core): ldml spec typo 2022-11-04 15:28:26 -05:00
Steven R. Loomis
1f2d8e782a fix(core): sprintf to snprintf 2022-11-04 15:06:12 -05:00
Steven R. Loomis
a9daefb293 feat(core): ldml: updates to C7043.1 spec 🙀
- merge all but the kitchen sink into layr element :)
- update numbers
2022-11-04 13:24:05 -05:00
Steven R. Loomis
a00ea0423a chore(core): ldml: cleanup 🙀
- minor cleanup in the .cpp

#5015
2022-11-02 13:39:17 -05:00
Steven R. Loomis
1c7517c5a8 fix(developer): ldml: yet more review feedback fixes 🙀
🙀 #7532
2022-11-02 13:36:24 -05:00
Steven R. Loomis
49b46f42ea feat(common): ldml: builder disp 🙀
- with initial core updates

For feat(developer): ldml: include all LDML data in kmx+ 🙀 #7532
2022-11-02 13:36:24 -05:00
Steven R. Loomis
f140093088
Apply suggestions from code review
Co-authored-by: Marc Durdin <marc@durdin.net>
2022-11-02 13:09:35 -05:00
Steven R. Loomis
c191fc7cc7 feat(core): ldml: updates to C7043.1 spec 🙀
merge layr into lyrs
2022-10-28 18:28:18 -05:00
Steven R. Loomis
87dc1f79bb feat(core): ldml: updates to C7043.1 spec 🙀
- add layers, rows, display
- draft status
2022-10-28 18:28:18 -05:00
Marc Durdin
920d22795c chore(core): additional cleanup 2022-10-21 15:33:09 +11:00
Marc Durdin
ae68f059b8 chore(core): move DebugLog into parent folder
Fixes #7447.
2022-10-21 15:26:41 +11:00
Eberhard Beilharz
e04acb8295
fix(core): Add missing include files
Recently some include files got added to `common/include` which are
referenced by `core/include/keyman`. This change adds the necessary
code to install them in the same directory as the other include files.

Fixes #7490.
2022-10-20 17:06:35 +02:00
Steven R. Loomis
66a5cdb1f9 chore(developer): ldml: update tools and data for keyboard-preview 🙀
- update tooling in common and kmc
- update spec
- update test files
2022-10-18 11:32:41 -05:00
Steven R. Loomis
7e5c9ec675 fix(developer): offset of 0th elem str must be 0000 🙀
- update test fixture
- update kmx_plus.cpp to require this

Fix: 7404
2022-10-14 15:00:49 -05:00
Steven R. Loomis
9cb5a03a0d
Merge pull request #7454 from keymanapp/fix/core/7418-utf32-suggestions
fix(core): xstring/utf32 review feedback
2022-10-14 00:00:45 -05:00
Steven R. Loomis
67cac5f147
Merge pull request #7436 from keymanapp/chore/core/refactor-vkeys-epic-ldml
chore(core): ldml: split out vkey processing 🙀
2022-10-13 17:13:07 -05:00
Steven R. Loomis
fc554c4901 fix(core): xstring/utf32 review feedback
For: #7418

Co-authored-by: Eberhard Beilharz <ermshiperete@users.noreply.github.com>
2022-10-13 17:05:39 -05:00
Steven R. Loomis
45bc101e77 fix(core): ldml: update per review comments 🙀
Co-authored-by: Marc Durdin <marc@durdin.net>
2022-10-13 16:34:36 -05:00
Steven R. Loomis
ab0f2c1b24 feat(core): ldml: basic transforms, utf32 fixes 🙀
for #7234
2022-10-12 19:31:05 -05:00
Steven R. Loomis
8127ec60d2 chore(core): ldml: transforms: documentation 🙀
- update per review comments

for #7234
2022-10-12 19:29:38 -05:00
Steven R. Loomis
5a6389deb8 feat(core): ldml: basic transforms, again 🙀
- new test file for transforms
- new class, ldml_transforms

for #7234
2022-10-12 19:29:37 -05:00
Steven R. Loomis
8a6b4a7fd4 feat(core): ldml: Use new UTF-16 to UTF-32 function 🙀
- also a test case with a 🙀 key on the tiny keyboard

For #7418
2022-10-12 19:26:42 -05:00
Steven R. Loomis
20032d02b7 feat(core): kmx_xstring: New UTF-16 to UTF-32 function 🙀
- plus test

For #7418
2022-10-12 19:23:58 -05:00
Steven R. Loomis
5970a46f87 fix(core): ldml: ldml_vkeys: fix for namespace 🙀
for #7234
2022-10-12 17:30:49 -05:00
Steven R. Loomis
e64177e17f chore(core): ldml: ldml_vkeys: per review comments 🙀
- update parameter names for consistency

for #7234
2022-10-12 17:27:25 -05:00
Steven R. Loomis
eba0d12123 chore(core): refactor ldml_processor 🙀
- split out vkeys

for #7234
2022-10-12 17:21:32 -05:00
Steven R. Loomis
8a3c8af7a1 fix(core): ldml: fix incorrect use of Debug_UnicodeString 🙀
- update API docs for Debug_UnicodeString

for #7234
2022-10-12 17:01:46 -05:00
Steven R. Loomis
a63ca4377f fix(core): improve check and output 2022-10-12 15:57:12 -05:00
Steven R. Loomis
30a100aa8a fix(core): ldml: cleanup per review comments 🙀
- update DebugLog macro to use scoped functions

for #7234
2022-10-12 15:21:13 -05:00
Steven R. Loomis
ced4ed9099 fix(core): ldml: use DebugLog for debug 🙀
for #7234
2022-10-12 15:05:03 -05:00
Steven R. Loomis
35799e2306 feat(core): kmx_plus: add accessors for elem 🙀
- other refactor and cleanup in kmx_plus

for #7234
2022-10-11 15:43:44 -05:00
Steven R. Loomis
d56f6557fb chore(core): deprecate checksum in 16.0 🙀
- do not generate unless version<16.0
- never check checksum

Fixes: #7220
2022-09-16 14:24:01 -05:00
Steven R. Loomis
efd4c83490 chore(core): ignore checksum in 16.0 🙀
- mark as deprecated

Fixes: #7220
2022-09-16 14:24:01 -05:00
Steven R. Loomis
3ceea19218 fix(core): validate kmxplus files 🙀
- split validation out into a separate kmx_file_validator.hpp
- kmx_file.h should remain C-only usable

Fixes: #7220
2022-09-14 16:32:18 -05:00
Steven R. Loomis
be2307cc25 chore(core): ldml correct for rebase hiccup 🙀 2022-09-13 16:25:13 -05:00
Steven R. Loomis
ea417c9f72 fix(core): VerifyKeyboard() on kmxplus files 🙀
- move VerifyKeyboard into COMP_KEYBOARD::VerifyKeyboard
- change call sites in kmx_file.h

For: #7220
2022-09-12 17:01:45 -05:00
Marc Durdin
c820fbc0e6
Merge pull request #7264 from keymanapp/chore/core/kmx-file-verification-baby-steps
chore(core): verify StartGroup in kmx load 🙀
2022-09-13 07:46:02 +10:00
Marc Durdin
3e6d9356c3
Merge pull request #7255 from keymanapp/chore/7222-optional-checksum
chore: make checksum optional 🙀
2022-09-13 06:30:04 +10:00
Marc Durdin
74a6c65710
Merge branch 'feature-ldml' into chore/merge-master-into-feature-ldml 2022-09-12 15:24:19 +10:00