Commit graph

47 commits

Author SHA1 Message Date
rc-swag
02db51c9b6 fix(windows): address review comments
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
2026-04-28 23:16:17 +10:00
rc-swag
7084d64b7b fix(windows): clean up debug logs
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
2026-03-26 22:44:47 +10:00
rc-swag
f4c5d9df02 fix(windows): fix logic error with caps_changed_state
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
Return early if caps lock state is unchanged.
2026-03-16 15:00:12 +10:00
rc-swag
6277735dbb fix(windows): fix typos and grammar in commments 2026-03-16 12:02:26 +10:00
rc-swag
95a7c6008b fix(windows): simplify the processCapsLock if else
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
also update external processsCaps Lock call to handle the
Updateable change
2026-03-13 14:16:48 +10:00
rc-swag
bc6b0ea773 fix(windows): change caps on updateable
This change also adds a check in aiTIP.cpp to check the
thread data stored last key press and scan code. Before
if the scan code had been cleared then we would process the
synthasized caps lock key presses which was just for the system
and not for the current Keyman app.
2026-03-12 20:20:42 +10:00
Marc Durdin
05edc8a7ce
Merge branch 'master' into refactor/windows/cleanup-engine-logging 2024-07-23 17:29:55 +10:00
rc-swag
eb17115058 fix(windows): add comments for clarity 2024-07-10 10:43:08 +10:00
Marc Durdin
1be73a9c2e refactor(windows): clean up logging
* Remove unused parameters from SendDebugMessage functions
* Add SendDebugEntry and SendDebugExit functions for tracking
  function entry/exit
* Add indenting and function names to log entries
* Remove unused debug functions
* Eliminate now-unused hwnd parameter in initialization functions
* Replace Log,LogEntry,LogExit functions with SendDebug equivalents in
  kmtip

Many functions now have SendDebugEntry/SendDebugExit (or
return_SendDebugExit) pairs. It is important to SendDebugExit on all
returns from a function to keep the log indent depth consistent. In some
cases I chose not to add these logging calls, e.g. on frequently called
functions such as the message hooks.
2024-07-03 21:28:37 +10:00
rc-swag
442903c4f3 fix(windows): add text selected bool emit key when true
Add a bool to the KeymanGetContext call, allowing the windows engine
to make the decistion to emit backspace key stroke when text is
selecting allowing the application to make the correct decision on
how to handle it. Usually deleting the selected text.
2024-06-27 10:58:51 +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
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
07c7a0659f
Merge branch 'master' into fix/core/10582-km_core_state_get_actions-idempotency 2024-02-07 12:32:41 +11: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
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
rc-swag
50b5d197b3 feat(windows): remove extra debug messages 2024-02-05 11:00:27 +10: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
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
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
rc-swag
4480a05412 chore(windows): removed cached context windows engine
Removed the cached context from the windows engine
2023-11-23 16:58:41 +10:00
Marc Durdin
db76e2541d chore: rename KM_KBP_ to KM_CORE_ 2023-10-09 14:53:22 +07:00
Marc Durdin
ba5f18defd chore: rename km_kbp_ to km_core_ 2023-10-09 14:53:13 +07:00
rc-swag
3bcd919922
feat(windows): review suggestions
Co-authored-by: Marc Durdin <marc@durdin.net>
2023-08-07 12:08:09 +10:00
Ross
792899c124 feat(windows): add ProcessActionsExternalEvent 2023-08-03 12:12:57 +10:00
Ross
708b6bcf68 chore(windows): rename KeyboardOptionCoretoRegistry
LoadKeyboardOptionsREGCore -> LoadKeyboardOptionsRegistrytoCore
SaveKeyboardOptionREGCore -> SaveKeyboardOptionCoretoRegistry
2023-05-04 14:16:09 +10:00
Ross
90851ad311 fix(windows): TSF apps delete all of smp
When the windows platform recieves the action for a backspace
it will check to see if the character being delete is a surrogate
pair. If it is and the app is TSF aware app it will need to backspace
twice to remove both parts of the surrogate pair. For legacy apps this
is not required.
2022-09-08 22:28:35 +10:00
Ross
ecad0209cb fix: Add invalidate context action to non-updatable parse
Rename ProcessActionsTestParse to NonUpdatable parse. It does
more then just test. Add handling for the invalidate context action
to this parse, so that if we emit a keystroke we invalidate the context
2022-08-22 11:51:01 +10:00
Ross
c3a30d184c fix(windows): add flag to track core process event
For the TSF applications in most cases there is no test parse
with updatable=false. In these cases we need to call the
core process event function and process the actions in the
one call. A bool flag has been added to track if the core process
event has been called for the current keystroke
2022-02-08 12:19:28 +10:00
Ross
9dd342eace feat(windows): Turn imx synthesised actions to emti keystroke action 2022-01-21 14:12:00 +10:00
Ross
ca8108c642 feat(windows): remove extra logging add comments 2022-01-13 14:00:13 +10:00
Ross
7efb4b1756 feat(windows): add wm_kewm_keymanim_close for core
This commit adds call to the core keyboard processor
on wm_keymanim_close event. To get the latest actions.
It also changes the core to allow QIT BACK even when
the context is empty.
2022-01-13 13:59:43 +10:00
rc-swag
daff5ec96d
feat(windows): apply cap stores review comments
Co-authored-by: Marc Durdin <marc@durdin.net>
2021-10-08 10:49:05 +10:00
Ross
1b92aafec8 feat(windows): fix debug comment var name error 2021-10-07 15:35:13 +10:00
Ross
f1e55ab662 feat(windows): add in code comments explaining caps lock handling 2021-10-07 14:27:26 +10:00
Ross
96697e89ba feat(windows): Change caps to work with common core processor 2021-10-06 15:35:23 +10:00
Ross
a4801373db feat(windows): err logs, DEBUG_ASSERT macro
Added some more error logs
Added a DEBUG_ASSERT macro
Update variable names
2021-08-24 17:17:26 +10:00
rc-swag
aab8cb178c
fix(windows): apply suggestion changes core integration review
Co-authored-by: Marc Durdin <marc@durdin.net>
2021-08-23 09:51:10 +10:00
Ross
937bf8a485 feat(windows): review comments 2021-08-19 14:17:34 +10:00
Ross
4350c5a63d feat(windows): review comments rename keyman32-tests 2021-08-19 11:51:31 +10:00
rc-swag
a681f46319
feat(windows): apply review suggestions
Co-authored-by: Eberhard Beilharz <ermshiperete@users.noreply.github.com>
Co-authored-by: Marc Durdin <marc@durdin.net>
2021-08-19 09:07:30 +10:00
Ross
0f4e3d1768 feat(windows): core saving context null pointer check 2021-08-17 14:10:44 +10:00
Ross
a901f349b0 feat(windows): fix vs project settings 2021-08-04 10:32:05 +10:00
Ross
22a0fd53a0 feat(windows): add km process actions to win engine 2021-08-02 13:23:55 +10:00