Commit graph

1873 commits

Author SHA1 Message Date
Steven R. Loomis
f668f6db7c
Merge pull request #7435 from keymanapp/chore/linux/7102-nodejs-docker
chore(linux): Add Node.js to the docker container
2022-10-12 11:03:46 -05:00
Eberhard Beilharz
c891f870b6
fix(linux): Fix make install
Several fixes for building and installing locally.

Fixes #7397. Closes #7398. Closes #7400.
2022-10-12 12:28:46 +02:00
Eberhard Beilharz
1e8e598cd3
chore(linux): Update readme
This change adds separate READMEs for the legacy projects, and
removes mentioning of the legacy projects in the current READMEs.
The motivation is to make it later easier to remove the legacy
projects, as well as reducing the efforts to testing the README with
legacy projects. Since legacy projects aren't maintained anymore
it doesn't make sense to still have them in the regular README,
suggesting that the instructions work for the legacy projects as
well.
2022-10-12 12:28:46 +02:00
Steven R. Loomis
71ed48ba2e chore(linux): Add Node.js to the docker container
- used in feature-ldml

Relates to #7102
2022-10-11 15:57:55 -05:00
Eberhard Beilharz
bcd29634bf
feat(linux): Address code review comments
Co-authored-by: Marc Durdin <marc@durdin.net>
2022-10-11 18:44:30 +02:00
Eberhard Beilharz
908dfbeefb
feat(linux): Optimize if surrounding text is supported
Only send fake event if client does not support surrounding text.
2022-10-11 18:44:30 +02:00
Eberhard Beilharz
e6601f205c
feat(linux): match state of original event when creating fake event
We forward a fake event for both keydown and keyup. This change
will set the flag on the fake event so that we get keydown and keyup.
This is probably not technically necessary, but it helps in
debugging because you can then see that both fake events still
belong to the same keypress.
2022-10-11 18:44:30 +02:00
Eberhard Beilharz
dba2002287
feat(linux): Still support older ibus versions
If we're dealing with an older ibus version that doesn't have the
necessary patches we fall back to the old behaviour. Otherwise
we use the new output reordering.
2022-10-11 18:44:29 +02:00
Eberhard Beilharz
e1d4169eeb
feat(linux): Optimizations 2022-10-11 18:44:29 +02:00
Eberhard Beilharz
18d0711ff3
fix(linux): Fix reordering of output
This change implements a commit queue which allows to control the
order of the output. This ensures that any backspace we generate
will be processed before the character we're adding.

Requires changes in ibus (surrounding text fix (see #7072) and
prefilter change)

Fixes #1489, #4028, #4029, #4030, #4505, #5510, #6639
2022-10-11 18:44:28 +02:00
Eberhard Beilharz
efbfaa1be4
chore(linux): Cleanup unnecessary surrogate check
Previously `process_unicode_char_action` checked for
`action_item->character` being a surrogate. This should never happen
because `action_item->character` is a 32-bit character. This change
removes the unnecessary check and the `keyman->firstsurrogate` field.

Fixes #6385.
2022-10-04 19:24:58 +02:00
Marc Durdin
7e9f9ce86f
Merge pull request #7311 from keymanapp/chore/core/epic-ldml/fixup-kmc-outfile-param-in-tests
chore(core): `kmc --outFile` to `kmc --out-file` (and `--` rider) 🙀
2022-09-20 15:03:37 +10:00
Marc Durdin
55f302d929
Merge pull request #7322 from keymanapp/chore/merge-master-to-feature-ldml
chore: merge master into feature-ldml 🙀
2022-09-20 13:42:40 +10:00
Marc Durdin
11d63ef1e2 chore(linux): more build.sh updates 2022-09-20 10:57:57 +10:00
Marc Durdin
736db7179c feat(common): support -- for build scripts
Allows use of `./build.sh configure -- --param-one=foo ...`.

Updates Core build to support `--` (including build.bat wrapper for
Windows builds). Fixes Linux debian rules to pass additional
parameters in with this format again, and adds `:arch` to only build
current architecture, not wasm as well...

Note that when using `--` you should typically avoid multiple actions in
a single command, as each action may interpret the additional parameters
differently!
2022-09-20 09:51:31 +10:00
Marc Durdin
fce1db65e9 chore(core): update debian build 2022-09-19 14:15:05 +10:00
Eberhard Beilharz
af6c6db49a
chore(linux): Remove unused IBusLookupTable 2022-09-15 18:53:44 +02:00
Eberhard Beilharz
71f41b0c80
Merge pull request #7284 from keymanapp/fix/linux/7275-error
fix(linux): Fix ignored error
2022-09-14 10:35:58 +02:00
Eberhard Beilharz
34b8e136b0
fix(linux): Fix ignored error
Previously we ignored an error that showed in the build logs
because the eval line got executed before calling reconf.sh which
created the version file. I think despite this error things worked,
but it didn't look nice to have and ignore a build error in the
build log.

Fixes #7275.
2022-09-13 16:01:10 +02:00
Eberhard Beilharz
e6403c3092
chore(linux): Update debian changelog
(cherry picked from commit 6c31e9ed83)
2022-09-13 11:20:43 +02:00
Marc Durdin
3fd9df5277 chore(core): Merge branch 'feature-ldml' into chore/core/7247-use-builder-for-build-sh 2022-09-13 07:25:10 +10:00
Marc Durdin
e67b90cd83 chore(linux): missed a cd statement 2022-09-13 07:16:58 +10:00
Marc Durdin
5adac5b683 chore(linux): restore meson configure step for install 2022-09-13 06:37:58 +10:00
Marc Durdin
9be0e6f553 chore(linux): clean core and reconfigure as required 2022-09-13 06:16:07 +10:00
Marc Durdin
6987a170c0 chore(core): fixup paths for linux build 2022-09-12 17:22:21 +10:00
Marc Durdin
74a6c65710
Merge branch 'feature-ldml' into chore/merge-master-into-feature-ldml 2022-09-12 15:24:19 +10:00
Marc Durdin
854ace08fc chore(linux): fix typos 2022-09-12 15:19:43 +10:00
Marc Durdin
7173715372 chore(linux): core:arch in reconf.sh also 2022-09-12 11:11:29 +10:00
Marc Durdin
85dfb95563 chore(linux): add arch param for core build 2022-09-12 10:15:25 +10:00
Marc Durdin
91d375ac81 chore(core): use builder_ for build.sh
Refactoring of build.sh to use the builder_ functions. The script should
now be a lot cleaner. Usage is available with `core/build.sh --help`

Targets are :x86, :x64, :wasm, :arch (linux/mac).

Supports additional requirements of Linux build (--target-path,
--configure).

By default will attempt to build all available targets.

Actions are: clean, configure, build, test, install, uninstall.

The install and uninstall actions only work for linux and mac targets at
present.
2022-09-12 09:56:32 +10:00
Marc Durdin
279960ff40
Merge pull request #7246 from keymanapp/chore/merge-master-into-feature-ldml
chore: merge master into feature-ldml 🙀
2022-09-09 07:56:57 +10:00
Marc Durdin
f836574cbc chore: use keyman.com instead of keyman-staging.com
Fixes #7227.

We want to use keyman.com for now even for alpha builds, as
keyman-staging.com is going to be used for transition to Docker-based
hosting, and it will be problematic to try and share that process with
alpha builds.
2022-09-08 14:32:39 +10:00
Eberhard Beilharz
9d1004b9ec
chore(linux): Fix ibus-keyman.postinst script
When installing ibus-keyman it could happen that we got an (ignored)
error "user name does not exist". This change tries to work around
this problem.
2022-09-02 18:05:52 +02:00
Marc Durdin
36b7dcc46a
Merge pull request #7174 from keymanapp/chore/merge-master-into-feature-ldml
chore: merge master into feature-ldml 🙀
2022-08-31 17:04:25 -05:00
Eberhard Beilharz
aa55fc2571
Merge pull request #7147 from keymanapp/fix/linux/jenkins.sh
fix(linux): Allow downgrades for installing build deps
2022-08-30 00:26:17 +02:00
Eberhard Beilharz
54a314df0e
Merge pull request #7145 from keymanapp/chore/linux/cherry-pick/changelog
chore(linux): Update debian changelog 🍒
2022-08-30 00:23:23 +02:00
Marc Durdin
655c872dc8 chore: Merge branch 'master' into chore/merge-master-feature-ldml 2022-08-30 06:31:04 +10:00
Marc Durdin
895ce930a0
Merge pull request #6993 from keymanapp/chore/core/rename-json-source
chore(core): rename json.hpp to jsonpp.hpp 🛩
2022-08-29 14:48:32 -05:00
Eberhard Beilharz
fc3c991293
fix(linux): Allow downgrades for installing build deps
When install the keyman-build-deps_*.deb file it can happen that
we end up with a lower version number than what we previously
built. This change allows downgrades so that the build dependencies
can be installed.
2022-08-29 19:06:33 +02:00
Eberhard Beilharz
72b9fa3d21
chore(linux): Update debian changelog
(cherry picked from commit f2b1277166)
2022-08-29 15:14:33 +02:00
Steven R. Loomis
4816e590cf feat(linux): Dockerfile for linux builder
- add Dockerfile in linux/Dockerfile, referencing linux/debian/control
- add docs in docs/build/linux-ubuntu.md

Fixes: #7102
2022-08-26 17:08:56 -05:00
Eberhard Beilharz
7169723d54
fix(linux): Remove wrong ok_for_single_backspace method
The implementation of `ok_for_single_backspace` checked the current
action_item multiple times. However, we already know that that
item is `KM_KBP_IT_BACK` because the only place this method gets
called is from the `process_backspace_action` method. So basically
this method always returns `FALSE`. "Fixing" this method to check
the next action_items makes things fail.

Removing this method since it doesn't do anything except burn
processing cycles...

Fixes #5614.
2022-08-25 18:38:06 +02:00
Marc Durdin
e6ff47f2b3 chore: Merge branch 'master' into feature-ldml 2022-08-24 04:21:21 +10:00
Eberhard Beilharz
7d449a5534
Merge pull request #7060 from keymanapp/chore/linux/improve_include
chore(linux): Refactor `jenkins.sh`
2022-08-15 09:32:22 +02:00
Steven R. Loomis
e8dff5cf4e feat(core): add event_flags to process_event #7046
- use a constant, KM_KBP_EVENT_FLAG_DEFAULT for 0
- update pascal and python
- update linux and windows
2022-08-12 09:58:58 -05:00
Marc Durdin
139b26e4a5 chore(linux): update tar ignore for common folder 2022-08-12 11:12:27 +02:00
Marc Durdin
e30871f01e chore(linux): add common/include to further paths 2022-08-11 14:56:46 +02:00
Marc Durdin
600f6bfec4 chore(linux): update include paths 2022-08-11 13:18:28 +02:00
Eberhard Beilharz
16082ff2ae
chore(linux): Refactor jenkins.sh
- use standard Keyman include scripts
- remove package build support for legacy projects
- install dependencies from `debian/control` file instead of
  maintaining a separate list
2022-08-11 12:34:33 +02:00
Eberhard Beilharz
7cf2b0c924
Merge pull request #7056 from keymanapp/chore/linux/packaging
chore(linux): Adjust Linux source package to restructured code
2022-08-09 15:42:33 +02:00