Commit graph

3303 commits

Author SHA1 Message Date
rc-swag
a2f9a4431a fix(windows): fix keyboard lookup in getkeyboardlanguage
The look up for the kmcom keyboard now uses index of
to find the correct index into the Keyboard array.
2024-03-05 15:00:16 +10:00
rc-swag
a39f5cbca4
Merge pull request #10871 from keymanapp/feat/windows/10235/move-kmshell-dpr
feat(windows): move the code kmshell.dpr to unit so that only the includes are in dpr
2024-03-01 13:50:52 +10:00
rc-swag
e7776b74a7 feat(windows): oops checkin in new system-main-pas 2024-02-29 09:05:47 +10:00
rc-swag
4211820c05 feat(windows): Move code form dpr to unit
The IDE would put strange indents into the main loop code
in the dpr project file. This code has now been removed to
the a new unit Keyman.Configuration.System.Main
2024-02-28 15:20:55 +10:00
rc-swag
e8b7c3a752
Merge pull request #10783 from keymanapp/docs/windows/10717/whats-new-windows-17
docs(windows): add whats new Keyman for Windows  17.0
2024-02-27 09:31:12 +10:00
Marc Durdin
b60243075d chore(common): upgrade sentry to 7.102.0 for Windows + Developer
Updates to version 7.102.0 of Sentry, in order to get working sourcemap
matching.
2024-02-22 12:51:01 +07:00
rc-swag
8e7a12f8cb docs(windows): add whats new k4w 17.0 2024-02-20 17:50:32 +10:00
Darcy Wong
3f84d19502 chore(windows): Update rest of PT strings 2024-02-14 10:39:21 +07:00
FranciscoMatos1
2f5b8fa2c8
Update strings.xml 2024-02-13 08:22:35 +00:00
rc-swag
043090f8a4
Merge pull request #10184 from keymanapp/feat/update-windows-engine-tests
feat(windows): update windows engine unit tests to match removal of engine cached context
2024-02-13 09:45:29 +10:00
rc-swag
477197ae23 chore(windows): missed registryw.cpp deffinition update
Checkin the kmtip registryw.cpp LPCWSTR argument update.
2024-02-12 15:19:43 +10:00
rc-swag
89f6770a78 chore(windows): add const to argument definition
Updated the call stack to keep a const string for the value parameter
being written to registry.

SaveKeyboardOptionCoretoRegistry calls
IntSaveKeyboardOptionCoretoRegistry which calls
RegistryFullAccess::WriteString which calls
RegSetValueExW, which takes a const data parameter.
2024-02-09 11:11:27 +10:00
rc-swag
a798303871 feat: remove uneeded tests after core refactor 2024-02-07 15:31:56 +10:00
Marc Durdin
4624247231
Merge pull request #10661 from keymanapp/chore/windows/rename-action-variable
chore(windows): rename actionItem to outputString for clarity
2024-02-07 16:02:17 +11:00
Marc Durdin
65125196e5
Merge pull request #10660 from keymanapp/fix/windows/wstrtostr-use-WideCharToMultiByte
fix(windows): `wstrtostr` should use `WideCharToMultiByte`
2024-02-07 16:02:11 +11:00
Marc Durdin
73b4ee5d21
Merge pull request #10650 from keymanapp/fix/windows/10604-unicode-logging
fix(windows): support unicode strings properly in logs
2024-02-07 16:01:45 +11:00
rc-swag
ec03e47b85 chore: Merge branch 'master' into feat/update-windows-engine-tests 2024-02-07 14:16:50 +10:00
rc-swag
c781808d8d chore(windows): rename actionOption to output string
renamed a variable for clarity added a description to make clear
that a null terminated string is the expected input.
2024-02-07 14:11:44 +10:00
Marc Durdin
f9bb4ba818 fix(windows): wstrtostr should use WideCharToMultiByte
Relates to #10604: "Note also wstrtostr crashes if you pass it surrogate
pairs because they won't convert ... ouch."
2024-02-07 10:39:07 +07:00
Marc Durdin
07c7a0659f
Merge branch 'master' into fix/core/10582-km_core_state_get_actions-idempotency 2024-02-07 12:32:41 +11:00
Marc Durdin
2c2602ba18
Merge pull request #10569 from keymanapp/chore/core/10520-hide-old-action-apis
chore(core): move action apis into keyman_core_api_actions.h
2024-02-07 12:30:22 +11:00
Marc Durdin
a90e9f45f3 fix(windows): etl2log support unicode
Minimal patch to etl2log to support emitting Unicode characters, in
UTF-8.
2024-02-06 15:07:08 +07:00
rc-swag
eed14b3c5b feat: keyman-engine-tests include icu and appcontext
The keyman-engine and keyman-engine-tests have the icu
dependncy added. Also the appcontext.h and appcontext.cpp
refactor has been update in the project.
2024-02-06 17:28:36 +10:00
Marc Durdin
810ed35a8a fix(windows): support unicode strings properly in logs
Fixes #10604.

Note: does not address limitations in etl2log yet, but allows us to emit
unicode strings to the logs.
2024-02-06 14:12:41 +07:00
rc-swag
6d4b287d7d feat(windows): variable name change 2024-02-06 08:47:22 +10:00
rc-swag
eecc6cd7bd
fix(windows): address review comments
Co-authored-by: Marc Durdin <marc@durdin.net>
2024-02-06 08:25:08 +10:00
rc-swag
dbc3338d41 chore: Merge branch 'master' into feat/update-windows-engine-tests 2024-02-05 15:19:03 +10:00
Marc Durdin
e69bfe7e71 chore(windows): remove old code relating to actions lifecycle
After the changes to core in previous commit, Windows no longer needs to
dispose the actions struct. Also refactored the lifecycle of
core_actions to make ownership clearer.
2024-02-05 09:59:47 +07:00
Marc Durdin
aa80992fb8
Merge branch 'feat/windows/use-km-core-actions-struct' into chore/core/10520-hide-old-action-apis 2024-02-05 13:44:36 +11:00
rc-swag
7ad81f9440 feat(windows): revert kmshell.res 2024-02-05 11:03:31 +10:00
rc-swag
50b5d197b3 feat(windows): remove extra debug messages 2024-02-05 11:00:27 +10:00
Marc Durdin
f34976e8c0
Merge branch 'feat/windows/use-km-core-actions-struct' into chore/core/10520-hide-old-action-apis 2024-02-03 09:40:53 +11:00
rc-swag
8f2e0a76eb feat(windows): code comment 2024-02-02 16:55:28 +10:00
rc-swag
d34ba7e527 feat(windows): remove extra debugging 2024-02-02 16:48:09 +10:00
rc-swag
2b0950617d feat(windows): add cached actions 2024-02-01 15:11:23 +10:00
Marc Durdin
9ee5777e48 chore(core): move action apis into keyman_core_api_actions.h
Fixes #10520.

The definitions for `struct km_core_action_item`, `struct
km_core_backspace_item`, `enum km_core_backspace_type`, `enum
km_core_action_type`, `km_core_state_action_items()`,
`km_core_state_queue_action_items()`, `km_core_process_queued_actions()`
are now in keyman_core_api_actions.h rather than in the primary
keyman_core_api.h, as they should not be used by engines in general.

The current users of those APIs are the interactive kmx debugger, and
the IMX integration in Keyman Engine for Windows. Both of these depend
on the old action queue model rather than the actions struct.

In a future version, we may refactor these further to make them apply
directly to the KMX processor, and provide access via an interface to
the KMX processor rather than as a general Core API. Once this change is
made, then Core itself will no longer support action queues at all, and
will expect keyboard processors to fill in an action struct (this is
already done for LDML).
2024-01-31 11:32:09 +07:00
rc-swag
118466f6b2 feat(windows): use delete-context for backspace
Use the delete_context memember of the action struct to
check for surrogates and determine the code units to delete.
2024-01-31 10:31:59 +10:00
rc-swag
5ff8092bde chore(windows): Merge branch 'master' into feat/windows/use-km-core-actions-struct 2024-01-31 09:59:12 +10:00
rc-swag
1e554c8804 feat(windows): don't write persisted option back to core
When the action from the core is to persist an option there
is no need to write that value back to the core as it has already
been updated, by the core.
2024-01-30 15:42:17 +10:00
rc-swag
d8c232dc7c feat(windows): refactor to use km_core_actions struct 2024-01-30 14:07:55 +10:00
Marc Durdin
249ed77835
Merge branch 'epic/core/9999-normalization' into chore/merge-master-into-core/9999-normalization 2024-01-19 17:42:40 +11:00
Darcy Wong
799117a6fa chore(common): Update crowdin strings for Khmer 2024-01-17 10:48:15 +07:00
Marc Durdin
671973baab refactor(core): split context API from Core primary API
Relates to #9999.
Fixes #10384.

The context API endpoints should no longer be considered as part of the
standard Core API. The only consumers that have a need to access these
APIs are the IMX integration in Engine for Windows, and the Keyman
Developer Debugger.

These symbols are currently used by Developer:
* `km_core_context` struct
* `km_core_context_type` enum
* `km_core_context_item` struct
* `KM_CORE_CONTEXT_ITEM_END` macro
* `km_core_state_context()`
* `km_core_context_set()`
* `km_core_context_clear()`

These symbols are currently used by Windows IMX:
* `km_core_context` struct
* `km_core_context_type` enum
* `km_core_context_item` struct
* `KM_CORE_CONTEXT_ITEM_END` macro
* `km_core_context_items_dispose()`
* `km_core_context_item_list_size()`
* `km_core_state_get_intermediate_context()`

The following functions and symbols are moving to
keyman_core_api_context.h:
* `km_core_context` struct
* `km_core_context_type` enum
* `km_core_context_item` struct
* `KM_CORE_CONTEXT_ITEM_END` macro
* `km_core_state_context()` function
* `km_core_state_get_intermediate_context()` function
* `km_core_context_set()` function
* `km_core_context_clear()` function
* `km_core_context_get()` function
* `km_core_context_items_from_utf16()` function
* `km_core_context_items_from_utf8()` function
* `km_core_context_items_to_utf8()` function
* `km_core_context_items_to_utf16()` function
* `km_core_context_items_to_utf32()` function
* `km_core_context_items_dispose()` function
* `km_core_context_length()` function
* `km_core_context_append()` function
* `km_core_context_shrink()` function
* `km_core_context_item_list_size()` function
2024-01-17 14:44:25 +11:00
Marc Durdin
7cd7ab3346 refactor(windows): use km_core_state_context_debug
Relates to #10365.
2024-01-15 08:29:27 +07:00
Darcy Wong
0515f5c513 chore(common): Update crowdin for Spanish Latin America 2024-01-12 09:01:38 +07:00
Darcy Wong
f963d77546 chore(common): Update crowdin for German 2024-01-12 08:59:19 +07:00
Marc Durdin
06409e0c0b
Merge pull request #10312 from keymanapp/fix/windows/10308-readme-embedded-images
fix(windows): serve images for readme files in Keyboard Install
2024-01-11 18:39:46 +11:00
Nguonnyny Tan
4dc61300b0
Update character-map.md
add [
2024-01-10 12:23:18 +07:00
Marc Durdin
126a657715 fix(windows): serve images for readme files in Keyboard Install
Fixes #10308.

When a file is requested without a tag parameter, we need to look to
the referer to find out what the tag is, so we can associate it with
the correct readme file.
2024-01-03 14:10:20 +07:00
Marc Durdin
3d5506ef3e chore(windows): move reportExceptions check in exception handler to caller 2023-12-11 20:44:53 +07:00