Commit graph

16764 commits

Author SHA1 Message Date
Marc Durdin
c07ea36ec2 fix(windows): handle timeout in downloads
Fixes #7708.
2022-11-14 10:35:20 +11:00
Keyman Server
e7175106cf
Merge pull request #7702 from keymanapp/auto/version-beta-16.0.103
auto: increment beta version to 16.0.103
2022-11-13 05:03:25 +11:00
Keyman Build Agent
15221f5f58 auto: increment beta version to 16.0.103 2022-11-12 13:02:23 -05:00
Darcy Wong
d1afadf927
Merge pull request #7700 from keymanapp/chore/android/comment-println
chore(android/app): Remove debugging info on build.gradle
2022-11-12 11:23:55 +07:00
Darcy Wong
2e553c7887 chore(android/app): Remove debugging info on build.gradle 2022-11-12 10:37:32 +07:00
Darcy Wong
71a9a36bd3
Merge pull request #7674 from keymanapp/chore/android/append-tier-to-app-name
fix(android/app): Append tier to app name
2022-11-12 06:52:59 +07:00
Darcy Wong
6c14d6cccf
Update android/KMAPro/kMAPro/build.gradle
Co-authored-by: Marc Durdin <marc@durdin.net>
2022-11-12 06:52:51 +07:00
Marc Durdin
2fb9a3a711
Merge pull request #7692 from keymanapp/fix/windows/7690-avoid-crash-on-end-session
fix(windows): make sure IdStackWindows finalizes after Vcl.Forms
2022-11-12 06:26:17 +11:00
Keyman Server
48592c8b4b
Merge pull request #7696 from keymanapp/auto/version-beta-16.0.102
auto: increment beta version to 16.0.102
2022-11-12 05:03:44 +11:00
Keyman Build Agent
33005b80d8 auto: increment beta version to 16.0.102 2022-11-11 13:03:02 -05:00
Darcy Wong
5ad8af10fe fix(android/app): One more startsWith teak 2022-11-11 14:44:19 +07:00
Darcy Wong
ab02676a4f fix(android/app): Use regex on PR name 2022-11-11 14:30:33 +07:00
Eberhard Beilharz
b3a20f16eb
Merge pull request #7683 from keymanapp/chore/linux/standards
chore(linux): Update Debian standards version
2022-11-11 08:25:56 +01:00
Eberhard Beilharz
f7f2a00f66
Merge pull request #7682 from keymanapp/chore/linux/cherry-pick/beta/changelog
chore(linux): Update debian changelog 🍒
2022-11-11 08:25:44 +01:00
Eberhard Beilharz
0a95247fb3
Merge pull request #7678 from keymanapp/fix/linux/7547_keyboard-icon
fix(linux): Fix keyboard icon in system tray
2022-11-11 08:24:55 +01:00
Darcy Wong
ea45ab7177 fix(android/app): Update use of tag and environment 2022-11-11 13:40:25 +07:00
Marc Durdin
cb9d1589c2 fix(windows): make sure IdStackWindows finalizes after Vcl.Forms
Fixes #7690.

When kmshell.dpr is being shut down by Windows via `WM_ENDSESSION`, the
order of termination of units through `finalization` sections means that
`IdStackWindows` was finalizing while components were still depending on
it, causing a cascade of exceptions resulting eventually in the crash
visible in #7690.

We saw this when there were message loops before `Application.Run` had
ever been called. For example, message box/dialog, ShellExecute (yep...
this can do a `PeekMessage`), `THttpUploader` (which calls
`Application.ProcessMessages`) and probably others.

Ideally, it would be better to always call `Application.Run`, but it is
not safe to call `Application.Run` more than once, because it ends up
adding multiple `DoneApplication` exit procs, which would likely cause
other crashes.

I landed on the somewhat heavy-handed solution of adding
`IdStackWindows` to the start of the project `uses` list, ensuring it is
the last unit to be finalized -- importantly, before `Vcl.Forms`. A
better solution would be to find a way of ensuring that
`Application.Run` is called, just once, in all situations, but this is
likely to be hard to achieve. The shutdown sequence for Delphi apps is
so very, very fragile.
2022-11-11 13:03:47 +11:00
Darcy Wong
1647165e42
Merge pull request #7668 from keymanapp/fix/android/pm-name-not-found
fix(android/engine): Use IME package name if query permission denied
2022-11-11 06:52:45 +07:00
Marc Durdin
c18f1a7e63
Merge pull request #7631 from keymanapp/fix/developer/7628-utf8-urls
fix(developer): URL parameters should be UTF-8
2022-11-11 08:03:00 +11:00
Marc Durdin
52c9fde57a
Merge pull request #7667 from keymanapp/fix/windows/base-layout-support-in-core
fix(windows): base layout support in Keyman Core
2022-11-11 06:37:39 +11:00
Marc Durdin
96a18883e8
Merge pull request #7677 from keymanapp/fix/windows/startup-and-shutdown-robustness
fix(windows): Improve shutdown robustness
2022-11-11 06:37:30 +11:00
Keyman Server
7141226a01
Merge pull request #7685 from keymanapp/auto/version-beta-16.0.101
auto: increment beta version to 16.0.101
2022-11-11 05:03:18 +11:00
Keyman Build Agent
1825b41031 auto: increment beta version to 16.0.101 2022-11-10 13:02:34 -05:00
Eberhard Beilharz
26516e65d8
chore(linux): Update Debian standards version
This removes a warning on the Debian package page
(https://tracker.debian.org/pkg/keyman).
2022-11-10 18:08:23 +01:00
Eberhard Beilharz
33e59ed40e
chore(linux): Update debian changelog
(cherry picked from commit acdb16fd7e)
2022-11-10 17:42:46 +01:00
Darcy Wong
49a6d7fde3 fix(android/app): Tweak regex 2022-11-10 16:56:43 +07:00
Darcy Wong
8824678567 fix(android/app): Avoid calling build-utils again 2022-11-10 16:14:04 +07:00
Darcy Wong
a864e51c05
Merge pull request #7662 from keymanapp/fix/web/index-of-kmw-disabled
fix(web): Add additional checks on className.indexOf
2022-11-10 15:44:16 +07:00
Darcy Wong
aa2efd9fb2
Merge pull request #7676 from keymanapp/chore/android/less-toast-on-stable
chore(android/engine): Don't show Toast errors on stable tier
2022-11-10 15:33:25 +07:00
Darcy Wong
a0f546471f chore(android/app): Revert version.gradle
Keep build-utils code to just KMAPro so it doesn't affect FV Android
2022-11-10 15:27:29 +07:00
Eberhard Beilharz
053ee52281
fix(linux): Fix keyboard icon in system tray
Show the keyboard specific icon in the system tray on Wasta instead
of the generic keyman one.

Fixes #7547.
2022-11-10 09:11:44 +01:00
Eberhard Beilharz
a780cc47f5
Merge pull request #7492 from keymanapp/chore/linux/cherry-pick/changelog
chore(linux): Update debian changelog 🍒
2022-11-10 09:03:40 +01:00
Darcy Wong
81588c9448 fix(android): Fail version.gradle on exception 2022-11-10 15:03:16 +07:00
Darcy Wong
52d45de605 fix(android/app): Use build-utils to populate build info 2022-11-10 14:45:03 +07:00
Marc Durdin
4738b6a514 fix(windows): Improve shutdown robustness
Relates to KEYMAN-WINDOWS-B.

While this doesn't address the root cause of the exception, it should
prevent this unhandled exception, and adds breadcrumbs to help us see
which code path might be triggering the issue.
2022-11-10 16:10:49 +11:00
Marc Durdin
31513d657e fix(developer): handle utf-8 paths safely 2022-11-10 15:26:27 +11:00
Darcy Wong
9645a6c11c fix(android/app): Add tier to version.gradle 2022-11-10 11:23:31 +07:00
Darcy Wong
85877d213a chore(android/engine): Don't show Toast errors on stable tier 2022-11-10 10:49:14 +07:00
Darcy Wong
b53f19dc58 fix(android/app): Append tier to app name 2022-11-10 10:22:17 +07:00
Darcy Wong
33243e3239 chore(android/engine): Apply review comments 2022-11-10 10:20:02 +07:00
Darcy Wong
b2db618ade
Merge pull request #7669 from keymanapp/chore/history-and-versioning
chore: Update history-and-versioning to match history
2022-11-10 10:03:53 +07:00
Darcy Wong
a396b095e0 chore: Update history-and-versioning to match history 2022-11-10 08:26:59 +07:00
Darcy Wong
b7fd1109f3 fix(android/engine): Use IME package name if query permission denied 2022-11-10 07:37:30 +07:00
Darcy Wong
336b06b1a7
Merge pull request #7660 from keymanapp/chore/linux/whatsnew
chore(linux): Update whatsnew
2022-11-10 07:35:51 +07:00
Darcy Wong
77d43c08aa
Update linux/help/about/whatsnew.md
Co-authored-by: Eberhard Beilharz <ermshiperete@users.noreply.github.com>
2022-11-10 07:35:42 +07:00
Marc Durdin
b087d22928 fix(windows): base layout support in Keyman Core
While Keyman Core already supported the base layout flags, they were not
being passed in from Keyman Engine for Windows. This meant that any
rules that used `baselayout` would fail, such as in sil_ipa with AltGr+0
for }

0bf72bed74/release/sil/sil_ipa/source/sil_ipa.kmn (L348-L350)

This patch adds support for the following properties:

* KM_KBP_KMX_ENV_BASELAYOUT: the legacy base layout name, e.g. kbdus.dll
* KM_KBP_KMX_ENV_BASELAYOUTALT: the BCP 47 base layout name, e.g. en-US
* KM_KBP_KMX_ENV_SIMULATEALTGR: whether the user has selected to emulate
  AltGr with Ctrl+Alt, for example on laptops without a right alt key.
* KM_KBP_KMX_ENV_BASELAYOUTGIVESCTRLRALTFORRALT: whether the system base
  layout in use generates Ctrl+RAlt when RAlt is pressed, which can be
  true for many European system layouts. This is necessary when
  associating the keyboard with a European language because the base
  keyboard becomes the language's default keyboard, rather than kbdus.
2022-11-10 11:26:44 +11:00
Keyman Server
b77060ef60
Merge pull request #7666 from keymanapp/auto/version-beta-16.0.100
auto: increment beta version to 16.0.100
2022-11-10 05:03:56 +11:00
Keyman Build Agent
442c028694 auto: increment beta version to 16.0.100 2022-11-09 13:03:09 -05:00
Eberhard Beilharz
38557ccb89
chore(linux): Update debian changelog
(cherry picked from commit 3b3d4e9e7e)
2022-11-09 18:32:49 +01:00
Marc Durdin
3dbd11939f
Merge pull request #7650 from keymanapp/fix/core/7649-emit-keystroke-writing-action-to-wrong-queue
fix(core): emit keystroke was writing to wrong queue
2022-11-09 20:24:26 +11:00