Commit graph

2701 commits

Author SHA1 Message Date
rc-swag
341980ead8
Merge pull request #7108 from keymanapp/fix/windows/cherry-pick/invalidate-context-on-enter
fix(windows): Add invalidate context action to non-updatable parse 🍒
2022-08-24 21:43:05 +10:00
Ross
4108862a86 fix: grammar and typos 2022-08-24 11:04:03 +10:00
Ross
6fc623e4f3 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-24 11:03:43 +10:00
Ross
613f5c72ef fix: remove saving and restoring context kbd options
Remove the saving of context and keyboard options
on the non updateable call to process hook.

The windows Text Input Processor calls twice one call
is not updateable. With the core integeration we run
the processor only once, preserving the actions and
context to be applied on the updatable call.
2022-08-24 10:45:07 +10:00
Marc Durdin
75d86e2e53
Merge pull request #7014 from keymanapp/fix/developer/cherry-pick/keymanweb-readonly-groups-mismatches
fix(developer): compiler emitting garbage for readonly groups 🎾 🍒
2022-08-15 04:41:07 -05:00
Marc Durdin
fefa9de8fb
Merge pull request #7035 from keymanapp/fix/developer/cherry-pick/7032-crash-compiling-ansi-for-web
fix(developer): prevent crash attempting to compile ansi keyboard 🎾 🍒
2022-08-04 12:52:03 -05:00
Marc Durdin
3ec1adb061 fix(developer): prevent crash attempting to compile ansi keyboard
Fixes #7032.
2022-08-03 17:17:49 -05:00
Marc Durdin
7743f59e55 fix(developer): stack overflow when compiling non-web keyboard
Fixes #7030.

Prevents a stack overflow / loop when the web target is removed from a
keyboard and it has already been tested on web, and the user presses the
Compile button.
2022-08-03 17:15:29 -05:00
Marc Durdin
930c6a36a5 fix(developer): compiler emitting garbage for readonly groups
Picked up while reviewing code for conversion to C++. The compiler
could, in some circumstances emit garbage code for readonly groups
because we weren't testing all scenarios correctly. In practice, this
would have been rare as readonly groups don't emit characters, but it
should be fixed!
2022-07-29 11:26:36 +10:00
Marc Durdin
09003b0b1b
Merge pull request #6990 from keymanapp/fix/developer/cherry-pick/improve-error-for-multi-part-key-ids
fix(developer): improve error message for multi-part key ids on <15.0 🎾 🍒
2022-07-26 14:09:53 +10:00
Marc Durdin
e2a81764d1 fix(developer): improve error message for multi-part key ids on <15.0
Relates to https://community.software.sil.org/t/rule-for-touch-layout-question/6482/6
2022-07-26 06:21:19 +10:00
Marc Durdin
3759df1914
Merge pull request #6948 from keymanapp/fix/developer/cherry-pick/6897-timeouts-when-server-shutdown
fix(developer): reduce timeouts if server shut down 🎾 🍒
2022-07-22 16:43:45 +10:00
Marc Durdin
d7c7ad1c8f
Merge pull request #6947 from keymanapp/fix/developer/cherry-pick/crash-on-switching-back-tab
fix(developer): crash when switching back a tab 🎾 🍒
2022-07-22 16:43:28 +10:00
Marc Durdin
b4c4794088
Merge pull request #6946 from keymanapp/fix/developer/cherry-pick/6928-crash-on-exit
fix(developer): crash on exit when checking for updates 🎾 🍒
2022-07-22 16:43:20 +10:00
Marc Durdin
c910869a6f chore(developer): address review comments 2022-07-15 09:26:49 +10:00
Marc Durdin
d84e9d60c5 fix(developer): reduce timeouts if server shut down
If Server is shut down, Keyman Developer now handles this better
and offers to restart it in UI interactions, and backs out quietly
in non-UI processes.
2022-07-15 09:26:39 +10:00
Marc Durdin
1c50516f69 fix(developer): crash when switching back a tab
In rare circumstances, Keyman Developer can crash during startup if you
try and switch back to a tab which is not yet available
(Ctrl+Shift+Tab).
2022-07-15 09:23:45 +10:00
Marc Durdin
32ea909699 fix(developer): crash on exit when checking for updates
Fixes #6928.
2022-07-15 09:22:39 +10:00
Marc Durdin
628a5c155a fix(developer): kmdecomp virtual character key output
Virtual character keys were being written as garbage, for example:

```
store(store17) [RALT ""] [RALT SHIFT ""] [RALT ""] [RALT SHIFT ''] [RALT SHIFT ""] [RALT SHIFT ""] [RALT SHIFT ""] [RALT SHIFT ""] [RALT SHIFT ""] [RALT ""] [RALT SHIFT ""] [RALT SHIFT ""] [RALT SHIFT ""] [RALT ""] [RALT SHIFT ""] [RALT ""] [RALT ""] [RALT ""] [RALT SHIFT ""]
store(store18) [RCTRL ""] [RCTRL SHIFT ""] [RCTRL ""] [RCTRL SHIFT ''] [RCTRL SHIFT ""] [RCTRL SHIFT ""] [RCTRL SHIFT ""] [RCTRL SHIFT ""] [RCTRL SHIFT ""] [RCTRL ""] [RCTRL SHIFT ""] [RCTRL SHIFT ""] [RCTRL SHIFT ""] [RCTRL ""] [RCTRL SHIFT ""] [RCTRL ""] [RCTRL ""] [RCTRL ""] [RCTRL SHIFT ""]
```

Picked up in regression testing the compiler.
2022-07-15 09:20:31 +10:00
Marc Durdin
b4b53aa341 fix(developer): QR Code for Package Editor had wrong path 2022-07-12 15:07:03 +10:00
Marc Durdin
870d1c8598 fix(developer): readonly groups should never emit output
Fixes #6799.

For KeymanWeb compiled keyboards, readonly groups should never emit any
output. Rules in these groups permitted only to:
  * `use` other readonly groups
  * `call` external functions (which MUST NOT emit output)
  * `set`, `reset` or `save` store values

The base kmx compiler does emit output for rules in readonly groups.
Thus, the KeymanWeb compiler, when it transpiles from the generated
.kmx, needs to omit output for any readonly group, while avoiding any
other potential change in behaviour.
2022-06-30 06:54:50 +10:00
Ross
9dcffdb904 fix(windows): BCP47tag is canonicalized in GetUserDefaultLanguage
The BCP47tag is canonicalized in GetUserDefaultLanguage.
Comments updated for the function to make developer aware.

Comments added to GetKeyboardLanguage to make clear that it
can actuall Add/Set a langague in the com object.
2022-06-08 15:35:59 +10:00
Marc Durdin
3766eac305
Merge pull request #6691 from keymanapp/fix/developer/install-keyboard-quote-kmshell-path
fix(developer): install keyboard call should quote kmshell.exe path
2022-06-03 09:45:39 +10:00
Marc Durdin
48a4d8c2ec fix(developer): kmcomp package compiler race condition
Fixes a race condition when compiling multiple packages, where the
temp path may be re-used before the compiler has finished with it.

To take advantage of this fix, I wanted to make sure I was using the
right kmcomp.exe when building unit tests for Keyman Core. This
uncovered a couple of other things:

* Updates Keyman Core build infrastructure to use the current kmcomp.exe
  rather than a system-installed one.
* Corrects a bug that was identified by the 15.0 version of kmcomp in
  one unit test (duplicate `&NAME` stores -- the meson test script
  prepends a `&NAME` store to each source file during build).

@keymanapp-test-bot skip
2022-06-02 14:37:01 +10:00
Marc Durdin
8fe7234e1d
fix(developer): install keyboard call should quote kmshell.exe path 2022-06-01 15:33:44 +10:00
rc-swag
b90f22f578
Merge pull request #6580 from keymanapp/fix/windows/6571/ctrl-alt-keys-not-working
fix(windows): use GlobalGetAtomName to access global list
2022-05-17 11:00:50 +10:00
Darcy Wong
7c3de5bbc3 chore(common): Merge remote-tracking branch 'origin/beta' into chore/common/crowdin-pl 2022-05-11 14:28:50 +07:00
Darcy Wong
9c8cbb2362
Merge pull request #6592 from keymanapp/chore/common/crowdin-it
chore(common): Add crowdin strings for Italian
2022-05-10 20:46:32 +07:00
Darcy Wong
7773cdfe22 chore(common): Add crowdin strings for Polish 2022-05-09 12:41:36 +07:00
rc-swag
f6a2e5df65
Merge pull request #6491 from keymanapp/fix/windows/1864/dont-reset-defaults-upgrade
fix(windows): Don't reset defaults on Keyman upgrade
2022-05-09 15:35:06 +10:00
Darcy Wong
384f8befcb chore(common): Add crowdin strings for Italian 2022-05-09 11:04:12 +07:00
Darcy Wong
04985017ab
Merge pull request #6562 from keymanapp/chore/common/crowdin-ff-2
chore(common): Update Crowdin strings for Fula
2022-04-29 14:15:08 +07:00
Ross
ba72b3929d fix(windows): use GlobalGetAtomName to access global list
Incorrectly calling the the local atom list which meant
the flag isKeymanKeyboardActive was always false.
2022-04-29 15:34:48 +10:00
Ross
6b5c0fad24 fix(windows): remove white space 2022-04-28 20:44:33 +10:00
Ross
13b72e0ba5 fix(windows): removed debug logging 2022-04-28 13:58:49 +10:00
Ross
a52f9c59e9 fix(windows): add continuesetup flag
We can not set the InstallDefalults flag entirely in the
bootstrapmain.pas. Because we do not yet have the Msi Version info.
So we need to do that in RunTools.pas. However, we need to know
if this is continuing set up after a reboot, as we don't look at
previous version info if it is, as it would have been removed.
This is why the ContinueSetup flag has been made available to Runtools
2022-04-27 11:31:31 +10:00
Darcy Wong
e3e8e63a27 chore(common): Update Crowdin strings for Fula 2022-04-25 14:34:44 +07:00
Darcy Wong
9836c343b4 chore(windows): Remove stray gt mark 2022-04-25 10:41:10 +07:00
Darcy Wong
629dfd6848 docs(windows): Update OS and whatsnew in help 2022-04-25 10:33:42 +07:00
Ross
b7ed7c1974 fix(windows): add install defaults flag to cmd line
The install defaults flag will set the registry values
to their default values.

This flag can also be used by the installer itself when it needs to
do a restart to continue installing. It can check to see if this is
a fresh install or an upgrade and set the flag accordingly.
2022-04-20 15:19:43 +10:00
Darcy Wong
55a81fde70
Merge pull request #6532 from keymanapp/chore/common/crowdin-bwr-ng
chore(android,windows): Update crowdin strings for bwr-NG
2022-04-18 15:19:57 +07:00
Darcy Wong
34a3b15ac1 chore(windows): Update crowdin strings for bwr-NG 2022-04-14 09:40:13 +07:00
Darcy Wong
64aa5f80b7 chore(windows): Remove incorrect bwr-NT locale 2022-04-14 09:21:33 +07:00
Darcy Wong
1e42d360c6
Merge pull request #6509 from keymanapp/chore/common/crowdin-pt
chore(common): Add Crowdin strings for Portuguese (pt-PT)
2022-04-14 06:11:02 +07:00
Darcy Wong
6b2a71a76e
Merge pull request #6501 from keymanapp/chore/common/crowdin-km-spacebar
chore(common): Update km strings
2022-04-11 15:12:19 +07:00
Darcy Wong
243361f052
Merge pull request #6508 from keymanapp/chore/common/crowdin-az-2
chore(common): Update Crowding strings for Azerbaijani
2022-04-11 07:42:31 +07:00
rc-swag
4c3d81db86
Merge pull request #6392 from keymanapp/fix/windows/5996/no-keystrokes-emoji-input
fix(windows): framework for switching of pipeline
2022-04-08 16:16:34 +10:00
Darcy Wong
f0e41833c4 chore(common): Add Crowdin strings for Portuguese 2022-04-08 11:36:18 +07:00
Darcy Wong
8770c705cb chore(common): Update Crowding strings for Azerbaijani 2022-04-08 10:01:23 +07:00
Marc Durdin
c679117991 fix(windows): don't log before checking nil when installing keyboard 2022-04-08 11:09:11 +10:00