In PR #14360 a new file km_vkey.h is introduced from which all VK_* will
be imported.
This is completed for windows/linux.
On mac km_vkey.h should be used instead of
\mac\Keyman4Mac\Keyman4Mac\WindowsVKCodes.h
\mac\KeymanEngine4Mac\KeymanEngine4Mac\KME\WindowsVKCodes.h
Fixes: #16345
See-also: #12434
See-also: #14360
Test-bot: skip
---------
Co-authored-by: sabine_schmitt <sabine@sabinesittsMini.fritz.box>
The typeFlags property is used to differentiate Unicode and non-Unicode
keys in the array of keys in a .kvk file. All non-Unicode keys should
be ignored, as we do not support non-Unicode keyboards on macOS.
The reason this fixes#15007, is that the keyboard in question had both
ANSI and Unicode sections in its .kvk file, and the ANSI section was
stored after the Unicode section, so the font spec for ANSI was
overriding the previously (correctly) set Unicode font spec.
Fixes: #15007
Previously the builder scripts defined a readonly `VERSION` environment
variable for the Keyman version. That caused problems when another
(external) script tried to define a `VERSION` variable. We encountered
this problem when trying to move the TC build steps of a configuration
into a single script (#13399) when we tried to source `~/.nvm/nvm.sh`.
This change uses a Keyman specific prefix for the version variables and
renames `VERSION` → `KEYMAN_VERSION` etc. Unfortunately these variables
are used in a lot of places, so this turned out to be a bit of a yak
shave.
Test-bot: skip
beginSheetModalForWindow:modalDelegate:didEndSelector:contextInfo:
was deprecated in macOS 10.10 and replaced by
beginSheetModalForWindow:completionHandler:
The newer API automatically closes the sheet.
Explicitly closing the sheet also seemed to be causing
the parent windows to close.
Fixes: #9308
set clipsToBounds to true for osk and osk key views
This property began defaulting to false with the update to
macOS 14 sonoma causing the osk keys to become so large
that they obscured the entire osk view.
Also replaced and few more deprecated properties and functions.
With the move to Xcode 15.3, there are many APIs called from
Keyman for Mac that were deprecated before our minimum supported
version of macOS (now set to 10.13)