Commit graph

780 commits

Author SHA1 Message Date
rc-swag
64efd2a7b4
Merge pull request #11973 from keymanapp/chore/windows/11925/deprecate-qit-vshiftdown
chore(windows): remove QIT_VSHIFTDOWN QIT _VSHIFTUP
2024-08-05 13:07:21 +10:00
Marc Durdin
0175f906c8
Merge pull request #11921 from keymanapp/refactor/windows/cleanup-engine-logging
refactor(windows): clean up logging
2024-07-27 11:31:37 +10:00
Marc Durdin
36d00c0424 chore(windows): rename log statements 2024-07-25 10:37:04 +07:00
Marc Durdin
400751b510 fix(windows): align engine.sln platforms and configurations
Fixes: #12001
2024-07-25 09:38:02 +07:00
rc-swag
915f710b44 chore(windows): remove posting keydown up events to IM
The code has already been commented out so this was more a clean up
of deadcode. WM_KEYDOWN events are not expected by the IM window anyway.
2024-07-24 17:05:40 +10:00
Marc Durdin
72625fa741
Apply suggestions from code review 2024-07-23 17:40:37 +10:00
Marc Durdin
1d0f5cacd0
Apply suggestions from code review
Co-authored-by: rc-swag <58423624+rc-swag@users.noreply.github.com>
2024-07-23 17:31:14 +10:00
Marc Durdin
05edc8a7ce
Merge branch 'master' into refactor/windows/cleanup-engine-logging 2024-07-23 17:29:55 +10:00
Marc Durdin
489778f455
chore: Update windows/src/engine/keyman32/k32_dbg.cpp
Co-authored-by: rc-swag <58423624+rc-swag@users.noreply.github.com>
2024-07-23 15:15:53 +10:00
Marc Durdin
7875950e00
chore: Update windows/src/engine/keyman32/k32_dbg.cpp
Co-authored-by: rc-swag <58423624+rc-swag@users.noreply.github.com>
2024-07-23 15:14:57 +10:00
rc-swag
4e25bbe2e0
Merge pull request #11884 from keymanapp/fix/windows/7870/add-is-text-selected-flag
fix(windows): add text selected bool emit backspace key when text selected in TSF
2024-07-23 11:19:41 +10:00
rc-swag
440997289c chore(windows): remove QIT_VSHIFTDOWN QITSHIFTUP
QIT_VSHIFTDOWN and QIT_VSHIFTUP is no longer sent out in the windows
engine. This commit cleans up any rement references to these
2024-07-17 14:20:43 +10:00
rc-swag
eb17115058 fix(windows): add comments for clarity 2024-07-10 10:43:08 +10:00
rc-swag
3998c8b75c fix(windows): make KeymanIsTextSelected Private
Only call GetSelection once, pace the parameters through to the
GetLeftSelection in order to get the results needed for
KeymanIsTextSelected
2024-07-09 22:39:01 +10:00
Marc Durdin
c537bcd8fa
Merge pull request #11929 from keymanapp/chore/windows/11906-comments
chore(windows): add comments for _WIN64 tests
2024-07-09 08:45:34 +10:00
Marc Durdin
6ea53dd1be chore(windows): correct output file for 64-bit build of keyman32 in build.sh 2024-07-05 14:28:55 +10:00
Marc Durdin
12fdb2b31e chore(windows): add comments for _WIN64 tests 2024-07-05 08:06:46 +10:00
Marc Durdin
6fe81cb256
Merge branch 'master' into refactor/windows/cleanup-engine-logging 2024-07-04 10:23:00 +10:00
Marc Durdin
f13f13b960
Merge pull request #11920 from keymanapp/refactor/windows/11917-remove-wm_keyman_key
refactor(windows): remove wm_keyman_keydown and wm_keyman_keyup
2024-07-04 06:58:30 +10:00
Marc Durdin
35e4d10e9d
chore(windows): remove incorrect architecture description from build.sh
Co-authored-by: Eberhard Beilharz <ermshiperete@users.noreply.github.com>
2024-07-04 06:58: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
Marc Durdin
aace36963e refactor(windows): remove wm_keyman_keydown and wm_keyman_keyup
Also cleanup the use of state.msg as that had no relevant data in it.

Fixes: #11917
2024-07-03 09:34:44 +10:00
Marc Durdin
4138ec4796 chore(windows): core dep 2024-07-02 19:01:30 +10:00
Marc Durdin
98a261d4ae chore(windows): correct deps for keyman32 x64 2024-07-02 17:50:34 +10:00
Marc Durdin
643ebca530 refactor(windows): merge keyman64 build into keyman32
Merges the build settings for keyman64.dll vc++ project into the
keyman32.dll project, so they are both built from the same project, in
preparation for ARM support, to minimize repetition in the source tree.

There should be no material differences to the built libraries.

Also cleans up some noise in keyman32.vcxproj which made it easier to
verify the changes.

Fixes: #11904
2024-07-02 17:00:38 +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
f7391e3a46 chore(windows): add debug log msgs for modifier key press
add debug log messages in the code that processes modifier
key presses. Will be usefull debuging issues with the
seralized event server and modifer keys.
2024-06-03 21:40:24 +10:00
Marc Durdin
c67369e143 fix(windows): correct filename and path for keymanengine.msm 2024-05-23 09:47:56 +07:00
Marc Durdin
c06dd480df chore(windows): add new build scripts for Windows builds 2024-05-20 08:27:31 +07:00
Marc Durdin
f9a321fa1a chore(windows): add compiled resources to .gitignore 2024-05-20 08:19:56 +07:00
Marc Durdin
d06f4b13d0 chore(windows): move insthelper up to engine folder 2024-05-20 08:19:27 +07:00
Marc Durdin
9f7eff122e chore(windows): remove legacy build Makefiles 2024-05-20 08:16:52 +07:00
Marc Durdin
fa57d5c674 chore(developer): final work on build.sh for developer
Now builds from a clean repo:

  developer/src/build.sh configure build test publish

* Splits kmbrowserhost into kmdbrowserhost for Developer; this means
  that Developer Browser Host now inherits the Developer settings rather
  than the Keyman for Windows settings, and simplifies distribution and
  management. The only difference between the two is in the startup code
  so this seems like a good split.

* Cleanup of various build scripts and dependencies.
2024-05-20 06:34:53 +07:00
Steven R. Loomis
6706ae0957 chore(core): km_core_cp -> km_core_cu
- km_core_cp represents a 16 bit code unit, not a code point.

Fixes: #11033
2024-05-02 17:39:15 -05:00
rc-swag
71377c3754 fix(windows): Still need to guard against out of bound index 2024-04-23 08:56:56 +10:00
rc-swag
94c8879961 fix(windows): check font count display none found
This change is to check number of fonts found for keyboard
to guard against trying to index it when there are no fonts.
  for i := 0 to grid.RowCount - 1 do
        m := System.Math.Max(m,
	Canvas.TextWidth(FSelectedKeyboard.Fonts[i].FontName) + 6)
It also notifies the user no suggested fonts where found.
2024-04-22 17:01:44 +10: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
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