Commit graph

33096 commits

Author SHA1 Message Date
Darcy Wong
9a129303d4
Merge pull request #6468 from keymanapp/docs/android/min-chrome-version
chore(android): Document minimum required version of Chrome
2022-04-04 11:32:23 +07:00
Darcy Wong
2f45cbabca chore(android): Document minimum required version of Chrome 2022-04-04 10:59:08 +07:00
Marc Durdin
8f64e30d93
Merge pull request #6464 from keymanapp/fix/developer/2750-help-on-icon-tool
fix(developer): improves More Help link for icon tool
2022-04-04 12:43:20 +10:00
Marc Durdin
757e2f5365 chore: Merge branch 'master' into chore/beta-to-master-B15S6 2022-04-04 12:39:16 +10:00
Marc Durdin
29d32bc0e6 chore: Merge branch 'master' into chore/beta-to-master-B15S6 2022-04-04 12:37:15 +10:00
Marc Durdin
ce67954d20 fix(developer): icon editor font color now follows fgcolor
Fixes #2748.

Note that transparent text is not supported for ClearType or antialiased
modes.
2022-04-04 10:24:14 +10:00
Marc Durdin
e9e5d285af feat(developer): add Clear All button to icon editor
Fixes #2749.

Adds a Clear All button which does the same as Edit/Clear Selection.

At the same time, fixes the Clear code for transparent background
colours; previously, clear all with transparent background gave a black
fill.
2022-04-04 09:29:31 +10:00
Marc Durdin
55561b3d34 fix(developer): improves More Help link for icon tool
Fixes #2750.

This tweaks the More Help link to open the correct part of the Keyboard
Editor help page. Goes together with keymanapp/help.keyman.com#526.

The context help data needs a consolidated rewrite. This does not
attempt to touch that, nor does it attempt to add more contextual help
links for any other part of the Developer IDE. That is work for another
day...
2022-04-04 09:25:43 +10:00
Marc Durdin
3e6f416bfa feat(developer): check for duplicate store/group names
Fixes #6462.

The compiler will now produce an error if a store() or group() name is
re-used, as this is invalid.
2022-04-04 08:08:28 +10:00
Marc Durdin
10b81d56ba
Update windows/src/developer/kmcmpdll/Compiler.rc
Co-authored-by: Eberhard Beilharz <ermshiperete@users.noreply.github.com>
2022-04-03 06:39:48 +10:00
Keyman Server
520944cf4c
Merge pull request #6461 from keymanapp/auto/version-beta-15.0.227
auto: increment beta version to 15.0.227
2022-04-02 05:02:51 +11:00
Keyman Build Agent
852754ea40 auto: increment beta version to 15.0.227 2022-04-01 14:02:08 -04:00
Eberhard Beilharz
655de30bc2
docs(linux): Update testing section in readme 2022-04-01 19:08:07 +02:00
Eberhard Beilharz
baee88344a
Merge pull request #6202 from keymanapp/feat/linux/wayland-tests
feat(linux): Allow to run ibus tests on Wayland 🛤️
2022-04-01 10:53:08 +02:00
Marc Durdin
21c5cdb111 chore(common): make first parameter required 2022-04-01 16:47:56 +11:00
Marc Durdin
b7ce99480f feat(web): prediction casing follows current layer
Fixes #6455.

This involved adding an extra hint to the data passed into the lexical
model layer, being the CasingForm that the current layer wants to use.

Given there are several entry points to the lexical model layer, this
meant a few places where we needed to check the current layer.

I refactored the very long function `InputProcessor.processKeyEvent` to
extract out the `buildAlternates` function. There should be no
functional changes to the `buildAlternates` code. But it makes
`processKeyEvent` significantly easier to read.
2022-04-01 16:20:50 +11:00
Marc Durdin
b21e18afb2 fix(web): rely on caller for unmatched keys
Fixes #6005.

If a key has no default behavior, and the expectation is to trigger the
key default, then set the output behavior to null, so that the caller
will do the action.

This fixes a regression in #5553, which handled the situation where a
rule was triggered but then default output was expected (common example
is final sigma transform only when a word is finished).

The regression resulted in suggestions rotating unexpectedly when
pressing a modifier key.
2022-04-01 14:38:43 +11:00
Marc Durdin
9e67c8c197
Merge pull request #6453 from keymanapp/fix/web/6405-statekey-desync-with-layer
fix(web): track stateKeys changes with layer changes
2022-04-01 14:37:32 +11:00
Keyman Server
676c5b8670
Merge pull request #6458 from keymanapp/auto/version-beta-15.0.226
auto: increment beta version to 15.0.226
2022-04-01 13:58:37 +11:00
Keyman Build Agent
439d00d87b auto: increment beta version to 15.0.226 2022-03-31 22:57:58 -04:00
Shawn Schantz
7532e6802d
Merge pull request #6446 from keymanapp/fix/oem/fv/ios/fix-6441
fix(oem/fv/ios): maintain consistent keyboard state between Keyman Engine and FV app
2022-04-01 08:45:11 +07:00
Marc Durdin
d33401c033 chore(web): fixup InputProcessor tests 2022-04-01 08:55:55 +11:00
Marc Durdin
5dcd95da41
Merge pull request #6449 from keymanapp/feat/developer/5063-multiple-virtual-keys
feat(developer): keep Virtual Key Identifier dialog open on Insert
2022-04-01 07:32:53 +11:00
Marc Durdin
c53edd9a4c
Merge pull request #6428 from keymanapp/fix/ios/6416-keyboard-switch-newContext
fix(ios): reset context when osk is resized
2022-04-01 07:32:46 +11:00
Marc Durdin
be42e068f5 chore(web): fix NodeProctor device ref 2022-04-01 07:24:08 +11:00
Eberhard Beilharz
aa7537730a
feat(linux): Allow to run ibus tests on Wayland
This change modifies the `run-tests.sh` script so that tests
run on both Wayland (if supported) and X11 unless
`--no-wayland` or `--no-x11` is specified.

This change also adds the new argument `--wayland` to the
`ibus-keyman-tests` executable which runs the tests under
Wayland.

Note that running Wayland tests is only possible in Ubuntu 21.10+
because it requires a version of `mutter` that supports the
headless option which got added in mutter 40.
2022-03-31 17:52:50 +02:00
Darcy Wong
5bcac1b1bf chore(common): Update crowdin strings for km 2022-03-31 20:59:07 +07:00
Darcy Wong
079a2a9af1
Merge pull request #6447 from keymanapp/fix/android/popup-landscape
fix(android/engine): Use fixed sizes for preview keys
2022-03-31 18:28:42 +07:00
sgschantz
f0e1138605 remove unused class CheckBox 2022-03-31 13:41:09 +07:00
Darcy Wong
3365713f76 fix(android/engine): Use fixed sizes for preview keys 2022-03-31 10:41:21 +07:00
Marc Durdin
32584010b5 chore(web): update NodeProctor constructor of processor 2022-03-31 14:36:12 +11:00
Marc Durdin
c0f29861ac fix(web): track stateKeys changes with layer changes
Fixes #6405.

If the layer is reset to default, e.g. by switching fields, then the
state key bitmask was not always kept in sync with the layer change.
2022-03-31 14:08:33 +11:00
Marc Durdin
674ff3a711 fix(developer): update kmconvert command line call 2022-03-31 12:11:47 +11:00
sgschantz
5119503148 revised comments 2022-03-31 08:01:50 +07:00
Marc Durdin
67a02a4a93 fix(developer): make sure unit tests stop build on error 2022-03-31 11:39:09 +11:00
Marc Durdin
921f0b9f1a fix(developer): adds unit test for kmconvert 2022-03-31 11:38:54 +11:00
Marc Durdin
34e2d7008c fix(developer): validate kmconvert parameters
Checks common error scenarios in kmconvert command line parameters.
2022-03-31 11:38:03 +11:00
Marc Durdin
0696587cc8 refactor(developer): KMConvertParameters use private setters
First part of #5472.

Refactoring with no behavioural change to make it easier to validate
parameters.
2022-03-31 10:09:53 +11:00
Marc Durdin
746a2d9be6 chore: update additional tests 2022-03-31 08:02:37 +11:00
Marc Durdin
4bcc1f1287
Merge pull request #6444 from keymanapp/fix/developer/2185-add-wordlist-copy-file
fix(developer): Add Wordlist button now copies into source folder
2022-03-31 06:40:55 +11:00
Marc Durdin
2434570f88
Merge pull request #6442 from keymanapp/fix/web/track-load-error-detail
fix(web): track load error detail
2022-03-31 06:40:43 +11:00
Marc Durdin
32eaff95b8 chore(developer): and... tweak test fixture 2022-03-31 06:40:03 +11:00
Marc Durdin
62e2f51887 feat(developer): keep Virtual Key Identifier dialog open on Insert
Fixes #5063.

It can be useful to be able to insert multiple keys into the active
keyboard source file. With this tweak, the dialog no longer closes with
the Insert button, only with the Close button.
2022-03-31 06:24:59 +11:00
Marc Durdin
0606e4e732 chore(developer): tweak test 2022-03-31 06:09:32 +11:00
Marc Durdin
7c1c4b8729 chore(developer): tweak test reporting 2022-03-30 19:57:53 +11:00
Darcy Wong
4796d37fad fix(android/engine): Don't include font padding for popup keys 2022-03-30 14:59:29 +07:00
sgschantz
16b8e26c89 maintain active keyboard list and rebuild keyboard list in Keyman Engine whenever a keyboard is added or removed 2022-03-30 14:31:18 +07:00
Marc Durdin
a639eaa946 feat(developer): promote 'info' messages to 'hint'
There was confusion in the compiler between INFO and HINT type messages.
The problem is that INFO messages will be suppressed by -s/-ss in
kmcomp, but we actually still want HINT messages to be emitted. So I
have gone ahead and renamed CERR_INFO to CERR_HINT and updated all the
places.

This was necessary in order for the kmcomp e2e test 194 to pass.
2022-03-30 17:04:48 +11:00
Marc Durdin
a192803021 chore(web): address review comment 2022-03-30 16:39:49 +11:00
Marc Durdin
d0a26ae62f feat(developer): check filename case consistency when compiling keyboard
Fixes #194.

Adds a check for all the various file types that may be referenced by a
.kmn file to ensure that the case of the reference matches the case in
the filesystem, to ensure that files are transportable across to
case-sensitive filesystems.

The output is provided as a Hint (Info) level message so that it does
not fail keyboard builds.
2022-03-30 16:25:12 +11:00