Commit graph

1036 commits

Author SHA1 Message Date
Eberhard Beilharz
cdee19e953
chore(linux): Add integration tests for ibus-keyman
This change adds integration/regression tests for ibus-keyman. It
re-uses the unit tests that we have for core.

Also modifies one test so that the context doesn't use characters
used in the keyboard. This makes it easier to setup in ibus-keyman
tests.
2021-11-04 09:22:28 +01:00
Eberhard Beilharz
db5b9db23b
refactor(linux): Remove unused variables 2021-11-03 19:05:43 +01:00
Eberhard Beilharz
29451ac5e8
chore(linux): Extract keycode_to_vk[] to separate header file
This will allow to use the array in unit tests.

# Keyman Conventional Commit suggestions:
# - Consider appending the text ". Fixes #5613" to your commit message.
2021-10-29 18:22:56 +02:00
Eberhard Beilharz
b4208c90b8
chore(linux): Set correct version number on ibus component 2021-10-28 10:36:23 +02:00
Darcy Wong
c5005728da Merge remote-tracking branch 'origin/master' into chore/common/crowdin-ha 2021-10-16 16:03:29 +07:00
Marc Durdin
024a36da9f
Merge pull request #5787 from keymanapp/chore/sentry-io
chore: sentry.io dsn 👮‍♂️
2021-10-06 07:32:43 +11:00
Marc Durdin
c951b35083 chore(linux): use secret in legacy sentry setup 2021-10-05 09:30:17 +11:00
Eberhard Beilharz
003d7810fd
chore(linux): Update changelog files for 14.0.282
This updates the changelog files to match what got uploaded into
Debian unstable (sid).

(cherry picked from commit b531ea187c)

# Conflicts:
#	common/core/desktop/debian/changelog
#	linux/debian/changelog
#	linux/ibus-keyman/debian/changelog
2021-10-04 17:35:07 +02:00
Eberhard Beilharz
41c6f6940b
Merge pull request #5758 from keymanapp/fix/linux/cherry/5756
fix(linux): Don't crash displaying keyboard details 🍒
2021-10-04 12:22:26 +02:00
Eberhard Beilharz
ad80128ded
Merge pull request #5755 from keymanapp/fix/linux/cherry/5753
fix(linux): Don't crash with non-keyboard package file 🍒
2021-10-04 12:21:39 +02:00
Marc Durdin
3219b44624 chore: sentry.io dsn 2021-10-04 15:01:36 +11:00
Eberhard Beilharz
1fd26dcf88
fix(linux): Fix debian package script 2021-09-29 12:35:19 +02:00
Darcy Wong
ef1be0cecb chore(common): Check in crowdin strings for Hausa 2021-09-29 10:47:56 +07:00
Eberhard Beilharz
6f31014ba0
fix(linux): Don't crash displaying keyboard details
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)
2021-09-27 17:43:51 +02:00
Eberhard Beilharz
ed1746d3d0
fix(linux): Don't crash with non-keyboard package file
If a user tries to a install a model .kmp file, we now display a
message box instead of crashing.

Fixes #5753.

(cherry picked from commit 98e1269ae2)
2021-09-27 17:07:35 +02:00
Darcy Wong
d089b962af chore(common): Check in crowdin strings for Shuwa Latin 2021-09-21 14:42:58 +07:00
Darcy Wong
349ed55840 chore(common): Update strings
* also includes untranslated strings (fallback to English)
2021-09-16 08:29:29 +07:00
Darcy Wong
091628aed2 chore(common): Update additional strings 2021-09-14 06:08:13 +07:00
Darcy Wong
42197c896b chore(common): Check in crowdin strings for simplified Chinese 2021-09-13 12:16:58 +07:00
Eberhard Beilharz
df156672a3
Merge pull request #5655 from keymanapp/fix/linux/language
fix(linux): Use first keyboard language if none given
2021-09-01 09:05:47 +02:00
Eberhard Beilharz
27cede213c
fix(linux): Fix km-config man page
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.
2021-08-31 08:26:07 +02:00
Eberhard Beilharz
8eb2a3c738
fix(linux): Fix launch of km-config
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.
2021-08-31 08:26:07 +02:00
Eberhard Beilharz
fe0e423433
fix(linux): Use first keyboard language if none given
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.
2021-08-27 11:04:42 +02:00
Eberhard Beilharz
5a3ef13ddd
chore(linux): Update changelog files
This updates the changelog files to match what got uploaded into
Debian unstable (sid).
2021-08-25 17:06:24 +02:00
Eberhard Beilharz
d8ec847b6a
Merge pull request #5623 from keymanapp/chore/linux/sentry
chore(linux): Fix uploading to Sentry
2021-08-25 15:05:48 +02:00
Eberhard Beilharz
690dc81514
chore(linux): Improve debian package script
- allow to specify distribution

(cherry picked from commit aa8a0547e8)
2021-08-23 18:38:17 +02:00
Eberhard Beilharz
c3540e9f37
chore(linux): Fix uploading to Sentry
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...)
2021-08-23 16:24:13 +02:00
Eberhard Beilharz
105fe50597
fix(linux): Fix uploading to launchpad for legacy projects 2021-08-20 10:58:04 +02:00
Eberhard Beilharz
76956bab4f
Merge pull request #5601 from keymanapp/fix/linux/issue-5591
fix(linux): Fix lost context after pressing K_SHIFT 🚧
2021-08-20 10:53:00 +02:00
Eberhard Beilharz
52608d39b9
fix(linux): Fix uploading to launchpad
Follow-up of #5536.
2021-08-19 11:56:10 +02:00
Eberhard Beilharz
f0c3280517
fix(linux): Fix lost context after pressing K_SHIFT
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.
2021-08-18 19:26:45 +02:00
Eberhard Beilharz
163874b81d
Merge pull request #5585 from keymanapp/fix/linux/5584-badimage
fix(linux): Handle corrupt icon file
2021-08-17 11:43:58 +02:00
Eberhard Beilharz
c8049a0cd2
fix(linux): Handle corrupt icon file
Fixes #5584.
2021-08-16 15:55:36 +02:00
Eberhard Beilharz
a98300f769
fix(linux): Fix failing tests 2021-08-16 11:56:05 +02:00
Eberhard Beilharz
58742b1a46
fix(linux): Check for valid zip file in km-package-install as well 2021-08-16 11:03:23 +02:00
Eberhard Beilharz
d48b5194e1
fix(linux): Check for valid kmp file
Before trying to install we now check if it's a valid zip file.
This fixes #5575.
2021-08-16 10:58:50 +02:00
Eberhard Beilharz
5e6de93e42
Merge pull request #5565 from keymanapp/docs/linux/ibus
docs(linux): Fix readme for ibus-keyman
2021-08-09 08:14:40 +02:00
Eberhard Beilharz
3f9c1a380a
docs(linux): Fix readme for ibus-keyman
Turns out setting `KEYMAN_PROC_CFLAGS` isn't sufficient to use header
files from source repo.
2021-08-06 16:55:02 +02:00
Eberhard Beilharz
c9497fd494
feat(common/core): Implement shiftFreesCaps and capsOnOnly 2021-08-06 16:13:58 +02:00
Eberhard Beilharz
cfeb9e820e
chore(linux): Implement Linux side of caps-lock action processing 2021-08-06 12:20:23 +02:00
Eberhard Beilharz
dabfea57ab
Merge pull request #5536 from keymanapp/chore/linux/5022-debian
chore(linux): Consolidate Debian source packages 📦
2021-08-06 12:02:54 +02:00
Eberhard Beilharz
43c920fec3
chore(linux): fix ibus-keyman test 2021-08-06 11:25:01 +02:00
Eberhard Beilharz
46e6d20f35
refactor(linux): Move KMFL to linux/legacy 2021-08-06 11:25:01 +02:00
Eberhard Beilharz
34b0932173
chore(linux): Depend on keyman-engine
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.
2021-08-06 11:25:00 +02:00
Eberhard Beilharz
3d10e6100f
chore(linux): Remove no longer needed debian directories
The previous commit created a consolidated toplevel `debian`
directory.
2021-08-06 11:25:00 +02:00
Eberhard Beilharz
79f92a150c
chore(linux): Consolidate Debian source packages
This change consolidates the Debian packages into a single source
package, with the exception of the legacy KMFL packages.

Fixes #5022.
2021-08-06 11:25:00 +02:00
Eberhard Beilharz
f08444019b
chore(linux): Remove compiler warning in ibus-keyman
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`.
2021-08-04 16:54:26 +02:00
Eberhard Beilharz
a2950bef7f
refactor(linux): Cleanup import of os.path
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()`.
2021-08-04 12:24:07 +02:00
Eberhard Beilharz
77d0d96480
refactor(linux): Reformat keycode_to_vk table
Also update comment where these values come from.
2021-08-04 12:00:36 +02:00
Eberhard Beilharz
c78800d4d8
fix(linux): Improve uninstallation
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.
2021-08-04 11:24:03 +02:00