spiegel-keyman/core/tests/unit
Marc Durdin 1b88ab99be fix(core): make km_core_state_get_actions() idempotent
Fixes #10582.

Returned struct from the `km_core_state_get_actions()` API is now owned
by the state object. This is a change in API contract. The corresponding
`km_core_actions_dispose()` API has been made private, because there is
never any need for API consumers to call it. As this change is happening
in alpha, we won't bump the ABI version.

`state->app_context` is now guaranteed to be in sync with
`state->context` after `km_core_process_event()`, with the actions
struct populated at that point.

The next and final step in this refactor is to remove the actions queue
altogether from the Core and make that a kmn-only concept, but that will
wait until 18.0. The only consumers of the actions queue are the
kmn-specific interactive debugger in Keyman Developer, and kmn-specific
Input Method eXtensions in Keyman Engine for Windows.
2024-02-01 11:28:08 +07:00
..
json chore(core): split flags into standard.meson.build 2023-03-09 11:34:54 +07:00
kmnkbd fix(core): make km_core_state_get_actions() idempotent 2024-02-01 11:28:08 +07:00
kmx feat(developer): make context_get and context_length public again 2024-01-26 06:37:09 +07:00
ldml Merge pull request #10390 from keymanapp/epic/core/9999-normalization 2024-01-31 10:45:51 +11:00
utftest chore(common): Merge branch 'chore/web/keyman-version-for-developer' into chore/common/move-common-core-desktop-to-core 2022-05-30 09:38:27 +10:00
emscripten_filesystem.cpp feat(core): use kmc to build kmx tests 2023-03-24 06:22:40 +07:00
emscripten_filesystem.h feat(core): use kmc to build kmx tests 2023-03-24 06:22:40 +07:00
meson.build chore(core): make kmx_test_source available as a library 2023-02-23 15:50:58 +07:00