At least one user got a crash trying to click on the "About" button
to display keyboard details for the ekwtamil99uni keyboard. I can't
reproduce the problem, but this change adds additional code that
should prevent the crash from happening.
Fixes#5756.
(cherry picked from commit 3d44b9987d)
Previously the included file replaced the entire description,
including the parameters. With this change the text from the include
file gets added to the beginning of the description.
km-config provides a .desktop file that allows the user to start
the configuration app like any other app. Unfortunately, a recent
change that improved the consistency of the manual pages broke
that because the .desktop file used to call km-config with the
parameter `-i` (plus file if given). With the recent change `-i`
now requires a filename, which caused `km-config` to output an error
and quit. For the user this looked like it didn't do anything.
This change adds the file/url as a new optional positional parameter
while keeping the existing `-i`/`--install` parameter.
This fixes a bug introduced in #3290 where we added using the
language from search. Unfortunately that broke things in a lot of
other places because we didn't test for the empty string.
On local builds we shouldn't upload errors to Sentry. The
`build-utils.sh` script sets the `UPLOAD_SENTRY` environment variable
for that purpose. Also, Sentry doesn't like having an empty string
as pkgversion (which should no longer happen with the rest of this
change, but...)
This fixes typing `n>` with sil_ipa keyboard which no longer output
the expected `ŋ` because pressing the shift key reset the context.
For modifier key presses we now exit `KMX_ProcessEvent::ProcessEvent`
early.
This change also removes a redundant line from engine.c. Clearing
the context happens in `reset_context()` again if necessary.
Fixes#5591.
This change adds a virtual package `keyman-engine` which ibus-keyman
provides. keyman-config can then depend on this virtual package.
This allows to use fcitx instead of ibus if the fcitx-keyman package
provides that virtual package as well.
This change replaces the deprecated `g_type_class_add_private`
and `G_TYPE_INSTANCE_GET_PRIVATE` with `G_DEFINE_TYPE_WITH_PRIVATE`
and the generated method `km_service_get_instance_private`.
This change imports `os` instead of `os.path`. This is the
recommended way. It also reduces confusion whether to use
`os.path.whatever()` or just `path.whatever()`.
Previously uninstalling of a keyboard failed if the directory was
a symlink (e.g. with keyboards from unit tests). This change treats
symlinks differently.
Fixes Sentry issue KEYMAN-LINUX-32.
- **Groovy** is EOL
- llso is not yet capable of processing **Impish** packages because
of an too old version of reprepro (which currently can't be updated
because of an tool old version of the OS). Therefore Jenkins builds
for Impish fail, so this change removes Impish from Jenkins builds.
We continue to build for Impish on Launchpad.
Fixes#5488.
This updates Keyman Core, corresponding tests, and Keyman Engine for
Linux to support deletion of markers through an action, ensuring that
the action queue does not desynchronize with the context.