Commit graph

3955 commits

Author SHA1 Message Date
Marc Durdin
6a71c1d07c
Merge pull request #15984 from keymanapp/fix/windows/15164-locale-missing-after-lang-switch
fix(windows): Ensure default locale always appears in list of locales
2026-05-22 22:42:05 +10:00
Marc Durdin
6b77c4fd91 fix(windows): set default locale correctly
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
2026-05-21 11:17:25 +02:00
Marc Durdin
34d6eb89fa fix(windows): Ensure default locale always appears in list of locales
* Add `TKeymanPaths.KeymanLocalePath` for consistent access to locales
  folder, and update references.
* Remove the `SKDefaultLanguageCode` string and hard code the default
  language in CustomisationMessages.pas.
* Hide the test locale 'qqq' on release builds.

Fixes: #15164
2026-05-20 15:51:25 +02:00
Marc Durdin
94723ba556 chore(common): move common cpp files and remove unused files
* Move the following files from common/windows/cpp/include/ to
  common/include/:
  * keymanversion.h
  * vkeys.h

* Move the following file from common/windows/cpp/ to common/cpp/:
  * vkeys.cpp

* Move crc32.cpp,crc32.h into kmcmplib, as they are only used there.

* Remove unused ConvertUTF.c and ConvertUTF.h.

* Update references to the above files.

* Remove precompiled header refs from vkeys.cpp and change data type to
  `char*` for types in vkeys.cpp (unless `USE_CHAR16_T` is defined), so
  that it is more cross-platform accessible, update usages accordingly,
  fixup project definitions accordingly.

* Remove unused define `KMN_KBP_EXPORTING` from kmcmplib/meson.build.

Fixes: #15565
Test-bot: skip
2026-05-20 13:44:05 +02:00
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
c23284ea51 fix(windows): rename fTestEatenBuf to fOnTestEatenBuf
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
2026-04-02 16:19:45 +10:00
rc-swag
d2012ed79b fix(windows): provide clarity to log message 2026-04-02 13:41:51 +10:00
rc-swag
d7370c472e fix(windows): update lastkey in tip processor
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
Update the lastkey, lastscankey and lasttransition in aaitp.
This ensures that when the pfEaten is FALSE and the get_message_hook
does not recieve the key press the "last" value is correct.
2026-03-31 22:13:45 +10:00
rc-swag
f0cf996976 fix(windows): make log code message fix
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
2026-03-30 13:43:11 +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
a1c493665e fix(windows): add key transition to better track key press
Some checks are pending
Keyman Build Summary / Summarize build status checks (push) Waiting to run
Added a Key transition member to the thread globals.
This help so better insure we actually matching the key value
that may have been cleared by kmhook_getmessage to the right key.
More importantly makes sure we are not matching it to the wrong
key press. This was happening when a synthazised capslock key press was followed
by and actuall capslock key press.
2026-03-25 15:16:26 +10:00
rc-swag
c1c3952717 fix(windows): reduce the number of places km scan flag
The SCAN_FLAG_KEYMAN_KEY_EVENT was checked in OnKey pressess as well
as an early return option in _KeymanProcessKeystroke. This change
removes the extra and allows _KeymanProcessKeystroke, to be the
central place for code readablitiy and maintainablity.

It also adds a processToggleChange call in kmhook_getmessage as
it is sometimes called before the TIP hook. the call is also idempotent
2026-03-20 09:22:35 +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
rc-swag
f990805cea
Merge pull request #15269 from keymanapp/fix/windows/14261/splash-screen-unresponsive
fix(windows): unresponsive splash screen
2026-02-05 09:34:49 +10:00
Darcy Wong
356ef54c86 chore(common): Update Crowdin strings for de 2026-01-29 16:38:12 +07:00
rc-swag
492ce31934 fix(windows): add showconfiguration fn review comments 2026-01-27 14:37:24 +10:00
rc-swag
a3b784e35a
Merge branch 'master' into fix/windows/14261/splash-screen-unresponsive 2026-01-13 17:26:18 +10:00
Darcy Wong
665e82a104 chore(common): Update Crowdin strings for Italian 2026-01-13 09:37:15 +07:00
rc-swag
d3942412ea fix(windows): move event handler to diff PR 2026-01-08 17:23:19 +10:00
rc-swag
9c7b1a6ae6 fix(windows): remove dead code 2026-01-08 17:19:34 +10:00
Darcy Wong
1e14d46d1c chore(windows): Update Crowdin strings for Portuguese 2026-01-08 08:59:57 +07:00
rc-swag
0bbda82a0a fix(windows): fix to use TModalResult instead of integer 2026-01-07 13:25:50 +10:00
rc-swag
10f1e2470e fix(windows): config frm result used to close splash
The Configuration window will return a mrAbort result when we want
the Splash screen to close. This is in the case the Installation
now has been selected.
2026-01-06 10:39:54 +10:00
rc-swag
aa3e6567f7 chore(windows): Merge branch 'master' into fix/windows/14261/splash-screen-unresponsive 2025-12-23 14:30:17 +10:00
Marc Durdin
751fc79014
Merge pull request #14621 from keymanapp/epic/win-arm
epic: ARM support for Windows 🦾
2025-12-22 03:37:22 +01:00
Marc Durdin
6243afea0c chore(windows): show architecture in support texteditor
Test-bot: skip
Build-bot: skip build:windows
2025-12-22 09:44:55 +11:00
Darcy Wong
7072a516a4 fix(windows): Use double slash for debug path 2025-12-19 13:26:21 +07:00
rc-swag
ae979d879f
Merge pull request #15360 from keymanapp/feat/windows/epic-arm-basic-regression-test
feat(windows): epic arm basic regression test 🦾
2025-12-19 10:12:46 +10:00
Darcy Wong
f0fc8f9d13
Merge branch 'master' into chore/common/crowdin-pt 2025-12-19 06:02:14 +07:00
Darcy Wong
cbca7630e1 chore(common): Update crowdin strings for PT 2025-12-18 16:13:25 +07:00
rc-swag
c3e8d648c7 chore: Merge branch 'master' into chore/merge-master-to-epic-win-arm 2025-12-18 15:45:55 +10:00
rc-swag
c1cd17bc57 feat(windows): fix typo 2025-12-18 14:46:10 +10:00
Marc Durdin
a77518eb28 chore(windows): fix typo in error message
Build-bot: skip
Test-bot: skip
2025-12-17 05:41:20 +11:00
Marc Durdin
1332a9c3f7
Merge pull request #15351 from keymanapp/fix/windows/15345-use-thai-kedmanee-for-ralt-unit-test
chore(windows): correct kbda1 to kbdth0 in comment in unit test
2025-12-16 19:13:07 +01:00
Marc Durdin
484acff8e8
Merge pull request #15353 from keymanapp/maint/win/15065-arm64-core-test
maint(windows): add GitHub Action for ARM64 test for Keyman Core 🦾
2025-12-16 18:49:57 +01:00
rc-swag
a9a62254e7 feat(windows): pr for running some regression tests 2025-12-16 19:31:58 +10:00
Marc Durdin
b26a2f1ad4 fix(windows): use Thai Kedmanee instead of Arabic 101 in RightAltEmulationCheck.tests.cpp
Fixes: #15345
Test-bot: skip
2025-12-16 07:05:09 +11:00
Marc Durdin
a7b38dcf8b
Merge pull request #15335 from keymanapp/feat/windows/15218-report-low-level-hook-reinstall
feat(windows): report a sentry event when low level hook is reinstalled
2025-12-15 20:03:23 +01:00
rc-swag
330f2b8163 feat(windows): no arm binaries on x64 machine
kmtiparm64x.dll was correctly not installed on x86-x64 machines
however keymanarm64.dll and keymanhp.arm64.exe were still being
installed. It will be cleaner if we don't install them.
2025-12-15 15:18:39 +10:00
Marc Durdin
49a3a1d643 chore(windows): correct kbda1 to kbdth0 in comment in unit test
Fixes: #15345
Test-bot: skip
Build-bot: skip
2025-12-14 03:54:26 +11:00
rc-swag
afed7da2f9
Merge branch 'epic/win-arm' into docs/windows/15237/kmtip-readme 2025-12-12 21:30:26 +10:00
rc-swag
be3fbf4845 docs(windows): review comments 2025-12-12 17:41:56 +10:00
rc-swag
4e7d2dddca
feat(windows): review comments
Co-authored-by: Eberhard Beilharz <ermshiperete@users.noreply.github.com>
2025-12-12 17:24:29 +10:00
Marc Durdin
66a22754cb
Merge branch 'master' into feat/windows/15218-report-low-level-hook-reinstall 2025-12-11 21:22:38 +01:00
Marc Durdin
aeb7dc7934
Merge branch 'master' into chore/windows/remove-unused-variable 2025-12-11 21:22:32 +01:00
Marc Durdin
612a0173db fix(windows): use Thai Kedmanee instead of Arabic 101 in RightAltEmulationCheck.tests.cpp
Fixes: #15345
Test-bot: skip
2025-12-12 06:11:33 +11:00
rc-swag
d6568fb8f1 docs(windows): describe kmtip as well as the arm64X 2025-12-11 14:10:41 +10:00