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.
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...
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.
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.
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.
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.
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.
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.