Commit graph

11911 commits

Author SHA1 Message Date
Marc Durdin
f8a49bd0dc fix(developer): kmconvert help match reality
Cherry-pick from #5298.

kmconvert built-in help was missing `-targets`, and the parameter
checking was skipping the last parameter (which only mattered if the
last parameter was `-nologo`, but still...).
2021-06-17 04:46:35 +10:00
Joshua Horton
95996f1c88
Merge pull request #5255 from keymanapp/fix/common/core/web/cherry/build-transform-optimization
fix(common/core/web): optimizes transform construction 🍒
2021-06-10 11:07:36 +07:00
jahorton
cdae04dd2b fix(common/core/web): buildTransformFrom now binary-searches prefix split 2021-06-10 09:10:35 +07:00
jahorton
62710e9db6 feat(common/core/web): adds extra test with much larger text 2021-06-10 09:10:33 +07:00
jahorton
8e9ca33216 feat(common/core/web): adds extra Transcription tests 2021-06-10 09:10:32 +07:00
Joshua Horton
9253b9d54c
Merge pull request #5243 from keymanapp/fix/oem/fv/ios/app-encryption-flag
fix(oem/fv/ios): app encryption flag for app store uploads (14.0)
2021-06-09 12:22:15 +07:00
jahorton
18b5658d75 fix(oem/fv/ios): app encryption flag for app store uploads 2021-06-09 09:11:42 +07:00
Marc Durdin
1c06f32efa
Merge pull request #5231 from keymanapp/feat/android/cherry-pick/5219-play-referrer-library
feat(android): Automatically install keyboard through Play Store 🍒
2021-06-09 07:30:45 +10:00
Marc Durdin
093d957f74 chore(android): address review comments 2021-06-08 19:53:20 +10:00
Darcy Wong
68bef0658d
Merge pull request #5235 from keymanapp/cherrypick/web/5234-pass-kill-browserstack
fix(web): Always pass kill_browserstack 🍒
2021-06-08 09:11:19 +07:00
Darcy Wong
0505b22790 fix(web): Always pass kill_browserstack 2021-06-08 08:17:50 +07:00
Eberhard Beilharz
cb96b4ecb0
Merge pull request #5220 from keymanapp/fix/linux/cherry/packaging
fix(linux): Exclude s390x from package builds for ibus-keyman 🍒
2021-06-07 16:35:30 +02:00
Marc Durdin
84c417e81a feat(android): Automatically install keyboard through Play Store
Resolves #5219.

Uses the Google Play Install Referrer API to automatically discover the
keyboard to install together with Keyman; this keyboard is passed in a
`referrer` parameter to the Play Store page for the Keyman app from the
Keyman website.
2021-06-07 08:10:50 +10:00
Keyman Server
2319786d04
Merge pull request #5223 from keymanapp/auto/version-stable-14.0-14.0.276
auto: increment stable-14.0 version to 14.0.276
2021-06-04 11:59:52 +10:00
Keyman Build Agent
3c23149702 auto: increment stable-14.0 version to 14.0.276 2021-06-03 21:59:09 -04:00
Marc Durdin
357917d162
Merge pull request #5218 from keymanapp/fix/developer/cherry-pick/5216-space-in-regression-test-file
fix(developer): support spaces in regression tests 🍒
2021-06-04 10:59:38 +10:00
Eberhard Beilharz
64b77c98e5 fix(linux): Exclude s390x from package builds for ibus-keyman
ibus-keyman depends on keyman-keyboardprocessor which we don't
build for s390x because we currently don't support big-endian.
We only build for the same architectures as keyman-keyboardprocessor.

(cherry picked from commit f0e2c848c3)
2021-06-03 13:05:53 +02:00
Marc Durdin
28ad0af134 fix(developer): support spaces in regression tests
Fixes #5216.

A `<text>` element in the regression text xml which contained only
whitespace would cause the import to crash as this would be ignored by
the XML parser, leading to a `Null` `nodeValue` for that element. To
solve this, we need to:

1. Use `xml:space="preserve"` attribute on `<text>` elements
2. Update the DTD to allow `xml:space` on `<text>` elements
3. While we are at it, move the DTD from `www.tavultesoft.com` to
   `api.keyman.com`.

See also:
* keymanapp/tavultesoft.com#4
* keymanapp/api.keyman.com#155
2021-06-03 10:07:31 +10:00
Joshua Horton
56dcb7c69b
Merge pull request #5174 from keymanapp/chore/ios/cherry/rename-app-selectors
chore(ios): renames problematic app selectors 🍒
2021-06-01 08:25:41 +07:00
Darcy Wong
ff38ec2934
Merge pull request #5179 from keymanapp/cherrypick/web/5150-sync-s-keyman-com
feat(web): Add script to deploy KeymanWeb release to s.keyman.com 🍒
2021-06-01 06:59:38 +07:00
Eberhard Beilharz
49dc94b4a7
Merge pull request #5204 from keymanapp/fix/linux/cherry/issue-5072
fix(common/core/desktop): Fix failing tests on armhf 🍒
2021-05-31 22:05:22 +02:00
Marc Durdin
537fc594c3
fix(windows): cleanup edge cases in k32_load
Matches work completed in #5169 for Keyman Core, kmx_file.cpp.

While this code will hopefully disappear in 15.0, it's good to make sure
we aren't diverging beforehand.

Also tidies up a couple of other cases in `CopyKeyboard` in Keyman Core.

(cherry picked from commit c9897bb38f)
2021-05-31 15:00:27 +02:00
Eberhard Beilharz
38a747570b
fix(common/core/desktop): Fix failing tests on armhf
This change fixes the FixupKeyboard method. In the .kmx files on
disk array pointers for an empty array point to the end of the file
(one byte after the end of the data structure). When we expand the
pointers in FixupKeyboard this leads to `cgp->dpKeyArray` to point to an
unallocated memory location - this shouldn't matter since we don't
try to read or write at this location if the Key array is empty,
but armhf still seems to raise a SIGBUS, probably because we cast
the value to a `LPKEY`. This change sets `cgp->dpKeyArray` to `NULL`
if we have an empty key array, similar to what's done for the strings.

Closes #5072.

(cherry picked from commit 68706c9451)
2021-05-31 15:00:17 +02:00
Eberhard Beilharz
2c08e484a2
refactor(common/core/desktop): Use StringOffset in FixupKeyboard
(cherry picked from commit 7c78fb0adb)
2021-05-31 15:00:10 +02:00
Eberhard Beilharz
afc9cb07cd
fix(linux): Exclude s390x from package builds
s390x is big-endian which we currently don't support (#5111).

Only build on architectures supported by Debian. This excludes the
following little-endian architectures:
alpha arm ia64 riscv64 sh4 x32 arm64ilp32 mipsn32el
and the following big-endian ones:
avr32 hppa m68k mips mips64 mipsn32 powerpc ppc64 s390 sparc sparc64

See https://wiki.debian.org/SupportedArchitectures
and https://wiki.debian.org/ArchitectureSpecificsMemo

(cherry picked from commit 9c2d30948c)
2021-05-31 15:00:02 +02:00
Darcy Wong
a5023a80eb
Merge pull request #5199 from keymanapp/cherrypick/android/5198-gradlew-exec
fix(android/samples): Set gradlew executable for Tests 🍒
2021-05-31 19:56:17 +07:00
Marc Durdin
6d5e69c48b
Merge pull request #5189 from keymanapp/fix/windows/cherry-pick/avoid-cached-hotkey-state
fix(windows): avoid cached hotkey state 🍒
2021-05-31 21:15:18 +10:00
Darcy Wong
bb06b04668 fix(android/samples): Set gradlew executable for Tests 2021-05-31 09:57:48 +07:00
Marc Durdin
8f04ad9954
Update windows/src/global/delphi/general/Keyman.System.Settings.pas 2021-05-31 11:28:45 +10:00
Marc Durdin
7ffd273184 fix(windows): swap default for flag 2021-05-29 16:15:30 +10:00
Marc Durdin
3d21507193 fix(windows): avoid cached hotkey state 2021-05-29 15:42:10 +10:00
Darcy Wong
bb4be70259 feat(web): Add script to deploy KeymanWeb release to s.keyman.com 2021-05-28 10:17:37 +07:00
Darcy Wong
48c5e2656c
Merge pull request #5177 from keymanapp/cherrypick/android/5145-add-clean-flag
chore(android): Add -clean flag to build script 🍒
2021-05-28 09:55:38 +07:00
Darcy Wong
d5a5d8ab95 chore(android): Add -clean flag to build script 2021-05-28 09:42:22 +07:00
jahorton
16f1a66e6d chore(ios): renames problematic app selectors 2021-05-28 06:33:52 +07:00
Joshua Horton
3d21a35389
Merge pull request #5161 from keymanapp/fix/ios/cherry/upload-prep
fix(ios): artifact upload preparation 🍒
2021-05-28 06:13:26 +07:00
jahorton
458578ecad fix(ios): replaces TC build var 2021-05-27 08:02:19 +07:00
Darcy Wong
94a01afc42
Merge pull request #5152 from keymanapp/cherrypick/web/5136-kill-browserstack
chore(web): Add CI script to kill BrowserStack tunnel 🍒
2021-05-26 11:39:48 +07:00
Darcy Wong
99ac5c7543 chore(web): Add CI script to kill BrowserStack tunnel 2021-05-26 09:54:52 +07:00
Joshua Horton
f24a403195
Merge pull request #5141 from keymanapp/chore/ios/cherry/framework-artifact-upload
chore(ios): artifact prep script now in-repo
2021-05-25 13:28:17 +07:00
Joshua Horton
10563c11a6
Merge pull request #5142 from keymanapp/fix/web/cherry/multi-touch-handling
fix(web): multi touch handling 🍒
2021-05-25 13:28:09 +07:00
jahorton
dc7143a4b5 docs(web): adds requested comment 2021-05-25 11:38:59 +07:00
jahorton
e8e02ad0cc fix(web): better multitouch handling 2021-05-25 11:38:58 +07:00
jahorton
ae979a9665 chore(web): removes diagnostic breadcrumbing 2021-05-25 11:38:57 +07:00
jahorton
4cf95962b3 chore(ios): artifact prep script now in-repo 2021-05-25 11:27:13 +07:00
Joshua Horton
01ca74a304
Merge pull request #5135 from keymanapp/chore/ios/cherry/carthage-consistency
chore(ios): works around wrong-workspace Carthage 0.38 lookup issue
2021-05-24 15:29:56 +07:00
jahorton
eb25638f63 fix(ios): restore use of workaround script 2021-05-24 13:35:31 +07:00
jahorton
455b5f8b72 chore(ios): works around wrong-workspace Carthage 0.38 lookup issue 2021-05-24 12:54:43 +07:00
Marc Durdin
a34b31378a
Merge pull request #5124 from keymanapp/chore/ios/cherry-pick/oem-fv-cert-ref
chore(ios): update fv cert ref 🍒
2021-05-21 11:18:05 +10:00
Marc Durdin
a3e1cf7198 chore(ios): update fv cert ref 2021-05-21 09:48:26 +10:00