Marc Durdin
227e023cdd
fix(windows): disable mitigation for Windows 10 build 19597 and later
...
Fixes #1285 .
If running Windows 10 19597 or later, the underlying issue has
been addressed, so disable the mitigation for new installs of
the keyboard. Does not attempt to change the language code if
the keyboard is already installed.
2020-12-21 08:56:34 +11:00
Marc Durdin
e9723251fb
fix(windows/engine): Build 19597 update
...
Build 19597 of Windows 10 no longer causes the issue with Amharic,
Tigrinya and Sinhala keyboards failing to register and activate
correctly.
2020-12-21 08:23:51 +11:00
Marc Durdin
e83061ef80
fix(windows): ensure mitigation works with new registration strategy
...
The keyboard profile and registration strategy was not taking into
account the mitigation for Win10 1803 (#1285 ) and this meant that the
Amharic, Tigrigna and Sinhala keyboards would not install correctly.
2020-12-21 08:20:28 +11:00
Marc Durdin
246cb70840
fix(windows): Warn if we reach maximum transient languages
...
Fixes #3749 .
Fixes #3759 .
Adds a warning dialog when user attempts to add a transient language to
a keyboard but the maximum number of transient languages is already
installed.
If this issue arises when a user is installing a keyboard for the first
time, Keyman instead installs the keyboard for the user's default
language. This may be a little confusing, but the error condition is
difficult to explain and non-technical users will probably be stuck
and need to install under their default language in any case. Happy to
receive any pushback on this decision.
2020-12-16 09:09:19 +11:00
Marc Durdin
bbfe5adcc8
fix(windows): crash with package online update
...
Fixes #4005 .
The wrong object was being freed which caused an access violation
internally.
2020-12-01 10:15:05 +11:00
Marc Durdin
5a4287a68d
fix(windows): disabling/enabling a profile could have wrong association
...
Transient language profiles would get the wrong language association
when they were disabled and re-enabled.
Fixes #3798 .
2020-10-30 14:20:00 +11:00
Marc Durdin
827ea6c386
fix(windows): upgrading disabled keyboards
...
Fixes #3561 .
Resolves issues with upgrading disabled keyboards, and fixes a secondary
issue where Windows was giving us invalid LANGIDs for locales, which was
causing trouble with transient LANGIDs.
2020-09-29 20:25:10 +10:00
Marc Durdin
301a76c88a
fix(windows): upgrading transitional profiles
...
Relates to #3561 .
If a keyboard is installed for a transitional profile but another
keyboard is already installed for that profile, then Keyman would
crash, expecting the transitional profile to be missing.
2020-09-29 09:08:47 +10:00
Marc Durdin
ffc0b21a46
chore(windows): cleanup comments
2020-09-23 17:47:08 +10:00
Marc Durdin
8fc7421391
fix(windows): add back support for disabling keyboards
...
Fixes #3560 . This reworks the functionality for disabling
keyboards to work with the new TIP registration pattern. Much
of the code is the same as in Keyman 13, but there are some
significant differences, so it all needs to be reviewed.
2020-09-23 17:37:08 +10:00
Marc Durdin
9f2d99b5c7
Merge pull request #3552 from keymanapp/fix/windows/upgrade-profile-scenarios
...
fix(windows): upgrade of profiles from 13.0
2020-09-04 11:33:23 +10:00
Marc Durdin
2df50c07ba
Merge pull request #3545 from keymanapp/fix/windows/3485-canonicalization
...
fix(windows): BCP 47 tag canonicalization
2020-09-04 11:33:09 +10:00
Marc Durdin
3d65466cff
Merge pull request #3543 from keymanapp/fix/windows/simplify-profile-uninstall
...
fix(windows): simplify profile uninstall
2020-09-02 16:53:19 +10:00
Marc Durdin
edfabc5447
Merge pull request #3542 from keymanapp/feat/windows/map-installed-bcp47
...
feat(windows): map installed bcp47
2020-09-02 16:53:09 +10:00
Marc Durdin
69227beb2a
fix(windows): upgrade of profiles from 13.0
...
This upgrades a 11.0-13.0 install to the 14.0 model for registered TIPs.
It does not yet deal with transient TIPs or disabled keyboards (these
will come in a separate PR). There is also more tidy up coming in a
future PR for language names.
2020-09-02 16:46:58 +10:00
Marc Durdin
6d5ccbd719
fix(windows): add tests and improve canonical options
2020-09-01 09:41:33 +10:00
Marc Durdin
84f0219541
fix(windows): canonicalization
...
Reworks the BCP 47 tag canonicalization algorithm.
2020-09-01 08:42:56 +10:00
Marc Durdin
b3f5f586cb
fix(windows): simplify profile uninstall
2020-08-31 16:32:53 +10:00
Marc Durdin
b1b3f62b18
feat(windows): map installed bcp47
...
This PR handles the case where Windows installs a BCP 47 tag that may not
match our tag 100% precisely. In this case, Keyman maps the Windows BCP 47
tag to the in-memory data for consistency. It also allows for install of
more complex tags.
2020-08-31 14:11:25 +10:00
Marc Durdin
6c1d93e399
chore: address review comments
2020-08-28 15:37:44 +10:00
Keyman Server
97a16e8535
feat(windows): profile installation - engine
2020-08-26 11:06:10 +10:00
Marc Durdin
a0c0141092
feat: more work towards bootstrap
2020-07-03 13:42:12 +10:00
Marc Durdin
9779792059
fix(windows): remove errlogpath and cleanup
2020-03-27 11:23:51 +11:00
Marc Durdin
a2596b49d9
[Windows] Fixes #1285 . Adds a mitigation for issues with installation under certain languages in Windows 10 1803 and later
2018-11-02 09:43:38 +11:00
Marc Durdin
c5e553782e
Fixes #975 . Fixes #996 . Installation of keyboards in Windows avoids some side effects with refresh and additional system keyboards.
2018-06-18 16:08:35 +07:00
Marc Durdin
ae22b52ec5
Merge pull request #964 from keymanapp/windows-strip-script-subtag-on-windows-7-keyboard-install-919
...
[Windows] Strip script subtag on Windows 7 before installing keyboard as script subtag not supported.
2018-06-08 10:34:02 +07:00
Marc Durdin
55aa150d20
Fixes #919 (again). Strip script subtag on Windows 7 before installing keyboard as script subtag not supported.
2018-06-08 10:16:33 +07:00
Marc Durdin
112c517823
Fix merge conflict
2018-06-06 15:53:47 +07:00
Marc Durdin
dc76e53067
Fixes #888 . Untitled keyboards will now show the filename of the keyboard in Keyman UI
2018-06-06 10:45:58 +07:00
Marc Durdin
67333c95f6
Fixes #919 . Keyboards with custom BCP 47 language tags will now install on Windows 7 with a fallback language.
2018-06-05 16:30:40 +07:00
Marc Durdin
1b9f64f811
Avoid issues when invalid tags are given
2018-05-25 08:15:03 +07:00
Marc Durdin
f6b2977aac
Fixes #886 . Fixes #887 . BCP 47 tags will now be canonicalized and scripts applied where possible and needed, automatically, during keyboard installation
2018-05-24 16:04:33 +07:00
Marc Durdin
eb8a52dbf8
Fixes #515 , IKeymanKeyboardFile.DefaultHotkey not implemented
2018-05-08 13:27:13 +07:00
Marc Durdin
ac2b6ed87e
Add test cases and complete code paths for keyboard language info in COM API
2018-02-21 23:28:58 +07:00
Marc Durdin
26980fd5c3
Refactor kpinstallkeyboard slightly for language information passing
2018-02-21 14:30:08 +07:00
Marc Durdin
da3056c25f
Basic support for reading language information from package data
2018-02-21 14:14:14 +07:00
Marc Durdin
3ff4a989b9
When installing a package, use BCP47 tag from package metadata in preference to kmx data
2018-02-18 16:57:38 +07:00
Marc Durdin
208e6e29cf
Rewrote BCP 47 todo notes for upcoming work
2018-02-16 13:26:56 +07:00
Marc Durdin
324335771e
Refactor kmxfile constants into kmxfileconsts to avoid pulling in too many dependencies
2018-02-15 16:18:51 +07:00
Marc Durdin
9b026c423e
x64 support for COM API - first steps: build of kmcomapi.dll for x64, and rename of registry keys
2017-12-24 13:47:56 +07:00
Marc Durdin
be2c43871d
Package Editor support for keyboards
2017-12-07 14:14:33 +07:00
Marc Durdin
a4acb142b9
Fixup build errors
2017-12-04 22:12:13 +07:00
Marc Durdin
2d1009a21e
Add standards data - lcid to bcp47
2017-12-02 06:42:47 +07:00
Marc Durdin
b65b982584
Keyman Desktop and Keyman Developer open source 10.0 alpha seed ( #121 )
...
* Keyman for Windows 10.0 Open Source
* Squashed 'windows/src/ext/jedi/jedi/' content from commit f444ad2
git-subtree-dir: windows/src/ext/jedi/jedi
git-subtree-split: f444ad2da4693851e523f1ea6bd541f701904c24
* Squashed 'windows/src/ext/jedi/jcl/' content from commit d63d3c9fd
git-subtree-dir: windows/src/ext/jedi/jcl
git-subtree-split: d63d3c9fd9ff84efdd8159084ec6a60313644243
* Squashed 'windows/src/ext/jedi/jvcl/' content from commit bee19f3b4
git-subtree-dir: windows/src/ext/jedi/jvcl
git-subtree-split: bee19f3b46909fde2fa92c06cd2706f41d99f6c3
* Add required .res files
* Add required .res files
* Add docbook files (forced)
* Add required libxslt
* Add required jedi files
* Add installation files
* Tweak .gitignore for open
* CI
* Remove KMW from Developer source (#122 )
* Remove KMW from Developer source (copies during build)
* Remove KMW from Developer source (copies during build)
* Remove KMW from Developer source (copies during build)
* Fixup release build and copy license, readme from kmw during build
* Remove obsolete build help documentation
* Keyman Engine 10 on Windows regression for shift states (#129 )
* Improve #128 -- cleaner debug messages
* Fixes #127 , shift state now resets correctly; and more work for #128
* Fixes #130 (#131 )
2017-07-25 10:53:06 +07:00