Commit graph

199 commits

Author SHA1 Message Date
Eberhard Beilharz
52bb859817
chore(linux): Rename (lib)kmnkbp to (lib)keymancore 2023-10-19 10:35:09 +02:00
Eberhard Beilharz
337018a24b
chore(linux): Add missing tests
This adds (and fixes) two tests that were previously left out by
accident.
2023-10-17 20:29:28 +02:00
Eberhard Beilharz
0eb5065bf4
chore(linux): Unnecessary to check for NULL before calling g_free
`g_free` will return if the parameter is NULL, so we don't have to
check for that.

See glib [documentation](https://docs.gtk.org/glib/func.free.html).
2023-10-16 18:24:56 +02:00
Eberhard Beilharz
b0dd74ca59
feat(linux): Ignore invalid values in custom keyboards list 🏘️ 2023-10-12 18:31:42 +02:00
Eberhard Beilharz
8e1ee9ea7b
feat(linux): Allow loading of keyboards with arbitrary language 🏘️
Part of #8598.
2023-10-12 18:31:42 +02:00
Eberhard Beilharz
2a7d1758ae
feat(linux): Store user-added keyboards in GSettings 🏘️ 2023-10-12 18:31:41 +02:00
Eberhard Beilharz
7bab603b5b
refactor(linux): Simplify adding keyboard
Before we add a keyboard we check if we already added this keyboard
(in a different area). If we did (with the same or newer version) we
skip this keyboard. This change now immediately returns whereas previously
we set a flag and then didn't execute the rest of the method.
2023-10-10 18:00:05 +02:00
Eberhard Beilharz
22126a0eef
refactor(linux): Use auto cleanup 2023-10-10 15:52:51 +02:00
Marc Durdin
db76e2541d chore: rename KM_KBP_ to KM_CORE_ 2023-10-09 14:53:22 +07:00
Marc Durdin
ba5f18defd chore: rename km_kbp_ to km_core_ 2023-10-09 14:53:13 +07:00
Marc Durdin
906a0a2ed7 chore: fix typo 2023-10-09 14:41:01 +07:00
Marc Durdin
4ef18f5e29 chore(core): rename keyboardprocessor.h to keyman_core_api.h
Fixes #9721.

Also tweaks some documentation references to keyboardprocessor, but does
not touch those relating to debian/control.
2023-10-09 14:21:01 +07:00
Eberhard Beilharz
4ab6031d0b
chore(linux): Address code review comments 2023-09-29 10:07:11 +02:00
Eberhard Beilharz
3812a1da3b
refactor(linux): Add more tests for keymanutil.c 🏘️ 2023-09-28 17:25:11 +02:00
Eberhard Beilharz
08f0b4dfed
chore(linux): Extract free_info method in kmpdetails.c 🏘️
Also add guard to kmpdetails.h.
2023-09-28 13:18:59 +02:00
Eberhard Beilharz
1b5a86607d
chore(linux): Check that background processes are still running
Before we run a test we now check that ibus and the other processes
we need are still running. If not we run test setup again.

Maybe fix #9570.
2023-09-25 18:55:54 +02:00
Eberhard Beilharz
89eab5e0ee
chore(linux): Don't crash if error is not set 2023-09-21 10:25:48 +02:00
Eberhard Beilharz
a03eca3d81
refactor(linux): Rename defines to clarify purpose 🏘️ 2023-09-18 19:00:29 +02:00
Eberhard Beilharz
7c7d46720c
chore(linux): Split startup process
This change improves the startup method so that it will also work
if ibus hasn't started yet. Also fixes two memory leaks.
2023-09-15 16:58:34 +02:00
Eberhard Beilharz
71c6bfb960
refactor(linux): Reformat file 2023-09-14 11:31:29 +02:00
Eberhard Beilharz
5a03371052
fix(linux): Get name, not version 2023-08-03 17:04:17 +02:00
Eberhard Beilharz
aac11a2c1e
chore(linux): Fix memory leaks 2023-08-03 17:04:16 +02:00
Eberhard Beilharz
81f46e1a6d
feat(linux): Minimize tags before adding keyboards
This ensures that bcp47 language tags are in a form the OS
understands.
2023-07-19 16:20:27 +02:00
Eberhard Beilharz
bc4b1fd19f
chore(linux): Remove do-nothing option --verbose
`ibus-engine-keyman` accepted a `--verbose` and `-v` command line
option which didn't do anything. Instead this change adds a comment
explaining how to get more verbose output.
2023-07-18 20:21:26 +02:00
Eberhard Beilharz
749112660d
chore(linux): Move some files to keyman-config
Some of the configuration files are useful for other distributions
as well. So this change moves them out of `debian/` to
`linux/keyman-config` so that they will be included in the source
tar ball.

Also remove zero-width space from one file.

Closes #8880.
2023-06-05 15:24:41 +02:00
Eberhard Beilharz
1823e1febb
feat(linux): Address code review comments 2023-05-23 11:48:58 +02:00
Eberhard Beilharz
ab25157364
feat(linux): Refactor to benefit from C++ RAII
Also apply changes from code review comments.
2023-05-22 19:51:45 +02:00
Eberhard Beilharz
c2e6fe23bd
feat(linux): Client side 2023-05-15 09:13:58 +02:00
Eberhard Beilharz
a7630a0265
fix(linux): Fix linux tests 2023-05-05 10:55:45 +02:00
Eberhard Beilharz
c20531b08a
chore(linux): Log error 2023-03-06 16:00:43 +01:00
Eberhard Beilharz
a26caa4d18
feat(linux): Add DBus method SendText
This new DBus method allows an OSK to output a junk of text.
2023-03-06 16:00:43 +01:00
Eberhard Beilharz
02b36a8d8d
Merge pull request #8294 from keymanapp/fix/linux/debian
fix(linux): Fix debian postinst script
2023-02-28 15:02:30 +01:00
Eberhard Beilharz
efe94598ac
fix(linux): Fix setting libexecdir
Follow-up of the move to meson.
2023-02-23 17:43:09 +01:00
Marc Durdin
e645b8665f chore: Merge branch 'feature-ldml' into chore/A17S7-master-to-feature-ldml
* core/build.sh -- accept feature-ldml changes (remove call to get_builder_OS)
* developer/src/kmlmc/build.sh -- delete file
*	linux/debian/rules -- accept master changes, fixup call to core/build.sh
*	linux/ibus-keyman/tests/Makefile.am -- accept master changes, fixup call to core/build.sh
*	linux/scripts/build.sh -- accept master changes, fixup call to core/build.sh
*	linux/scripts/reconf.sh -- accept master changes
2023-02-22 08:00:08 +07:00
Eberhard Beilharz
4d3755770c
fix(linux): Collect consecutive backspaces
When using Wayland `im-wayland.so` (which is part of libgtk) gets
loaded into the client app instead of `im-ibus.so`. This means that
our ordered output doesn't work with Wayland.

This change works around a problem with keyboards that use multiple
consecutive backspace actions. Because method calls get processed
asynchronously some backspaces get lost. In clients that support
surrounding text we can count the consecutive backspaces and then
do one call to delete surrounding text with the appropriate number
of characters.

This can be tested with "Khmer Angkor" keyboard by typing `xEjmr`,
or with "Vedic Sanskrit Devanagari Phonetic (ITRANS)" keyboard by
typing `shrI`.

Part of #4273.
2023-02-20 18:47:51 +01:00
Eberhard Beilharz
958b7db068
chore(linux): Remove autotools related files 2023-02-14 09:51:46 +01:00
Steven R. Loomis
db272e08e7 Merge remote-tracking branch 'upstream/master' into chore/merge-master-20230210-epic-ldml 2023-02-10 11:01:27 -06:00
Eberhard Beilharz
182acf21a4
chore(linux): Fix installation
Also update README.md.
2023-02-08 17:10:36 +01:00
Steven R. Loomis
ae45295dc6 Merge remote-tracking branch 'upstream/master' into chore/merge-master-a17s5-REDO-epic-ldml 2023-02-03 16:53:35 -06:00
Eberhard Beilharz
e937e1395c
chore(linux): Address code review comments
- make use of new meson features
- some refactoring
2023-02-03 10:11:11 +01:00
Eberhard Beilharz
0367df8652
chore(linux): Fix a few bugs in meson scripts 2023-02-02 19:06:55 +01:00
Eberhard Beilharz
c176ebc6af
chore(linux): Address code review comments 2023-01-31 17:38:29 +01:00
Eberhard Beilharz
eb076c08c8
chore(linux): Build with meson instead of autotools
This change introduces meson for building ibus-keyman instead of
autotools.

Closes #5981.
2023-01-30 16:32:38 +01:00
Eberhard Beilharz
ffc59553e2
Merge pull request #8102 from keymanapp/chore/linux/legacy
chore(linux): Remove legacy projects
2023-01-27 15:56:42 +01:00
Eberhard Beilharz
f2cfccb572
chore(linux): Fix warnings
This warnings showed up when building with Meson.
2023-01-26 16:58:27 +01:00
Eberhard Beilharz
ea059df541
chore(linux): Remove legacy projects
This change removes the KMFL legacy projects. They are still
available in the stable-16 branch if we need them.

Also removed some shellcheck warnings.
2023-01-26 11:51:13 +01:00
Eberhard Beilharz
d20812d043
Merge pull request #8036 from TheSchlunz/TheSchlunz/issue7540
chore(linux): log failures to `km_kbp_context_clear(context)`
2023-01-19 11:46:49 +01:00
Eberhard Beilharz
4f19ea690f
Merge pull request #8037 from TheSchlunz/TheSchlunz/issue7541
chore(linux): use faster zero-length string check
2023-01-19 11:41:24 +01:00
Kevin Schluensen
28baf30135 Add status output 2023-01-18 18:27:37 +01:00
Kevin Schluensen
c7dedf6643 chore(linux): use faster zero-length string check
Fixes #7541
2023-01-18 13:06:16 +01:00