Commit graph

33096 commits

Author SHA1 Message Date
Joshua Horton
620cbb54ab
chore(web): applies code suggestion
Co-authored-by: Marc Durdin <marc@durdin.net>
2022-07-07 08:39:28 +07:00
Marc Durdin
1f5785f61d chore(android): tweak sendError for js errors 2022-07-07 09:52:26 +10:00
Marc Durdin
2bc73c1af0 chore(android): disable sendError for js errors 2022-07-07 09:52:25 +10:00
Marc Durdin
8ba11f608d
Merge pull request #6890 from keymanapp/fix/web/improve-console-error-reporting
fix(web): improve `console.error()` reporting
2022-07-07 09:40:06 +10:00
Keyman Server
d4d9958291
Merge pull request #6903 from keymanapp/auto/version-master-16.0.27
auto: increment master version to 16.0.27
2022-07-07 04:02:45 +10:00
Keyman Build Agent
53262445f8 auto: increment master version to 16.0.27 2022-07-06 14:02:03 -04:00
Joshua A. Horton
a25da20083 Merge branch 'master' into change/web/no-reloads-on-rotation 2022-07-06 14:49:28 +07:00
Eberhard Beilharz
465200ee96
Merge pull request #6894 from keymanapp/fix/linux/6893-postinstall
fix(linux): Fix post-install script
2022-07-06 09:14:24 +02:00
Joshua A. Horton
a1a43f80c1 fix(web): doModifierPress layer handling 2022-07-06 13:20:14 +07:00
Joshua A. Horton
a4b32705d8 fix(web): reverts prior commit, adds related docs 2022-07-06 12:56:09 +07:00
Joshua Horton
b9a47bfaf7
chore(web): Apply suggestions from code review
Co-authored-by: Marc Durdin <marc@durdin.net>
2022-07-06 12:54:06 +07:00
Joshua A. Horton
4489337cd6 change(web): disables touch OSK auto-shift on hardware shift 2022-07-06 12:25:08 +07:00
Marc Durdin
6c39bb8b0b
Merge pull request #6877 from keymanapp/feat/developer/touch-layout-flick-and-multitap
feat(developer): add flick and multitap to touch layout schema and doc 🙊
2022-07-06 15:18:32 +10:00
Marc Durdin
a4a1e269d1
Merge pull request #6856 from keymanapp/feat/developer/keyman-touch-layout-schema
feat(developer): .keyman-touch-layout schema for 15.0 🙊
2022-07-06 15:18:23 +10:00
Marc Durdin
ace3e2c6b0
chore: Apply suggestions from code review
Co-authored-by: Joshua Horton <joshua_horton@sil.org>
2022-07-06 15:15:09 +10:00
Joshua A. Horton
4c0ab7ab1a fix(web): set(layer) should not trigger for hardware keystrokes 2022-07-06 12:11:30 +07:00
Joshua A. Horton
a9d52e42d2 chore(web): unit test fix 2022-07-06 11:55:19 +07:00
Joshua A. Horton
90b7b4ce5f chore(web): reduce layer-change noise 2022-07-06 11:38:20 +07:00
Joshua A. Horton
aba150ddba fix(web): postkeystroke should use the 'context' device, not event device 2022-07-06 11:38:14 +07:00
Marc Durdin
35adc5b970
Merge pull request #6630 from keymanapp/chore/developer/js-to-lmc
chore(developer): rename developer/js to developer/kmlmc 🎢
2022-07-06 05:42:19 +10:00
Marc Durdin
da89fe4b9b
Merge pull request #6866 from keymanapp/fix/developer/show-version-number
fix(developer): Show full version number
2022-07-06 05:41:26 +10:00
Marc Durdin
1ee5aaa63e
Merge pull request #6849 from keymanapp/fix/web/6799-caps-state-only-from-caps-layer-for-touch
fix(web): Maintain separate Caps Lock states for touch and physical
2022-07-06 05:41:18 +10:00
Marc Durdin
a0d6150922
Merge pull request #6865 from keymanapp/fix/developer/6799-readonly-groups-never-emit
fix(developer): readonly groups should never emit output
2022-07-06 05:41:08 +10:00
Marc Durdin
f2d8fd0eae
Merge pull request #6860 from keymanapp/fix/developer/dist-path-for-server
fix(developer): dist path for server 🎢
2022-07-06 05:40:58 +10:00
Marc Durdin
2bdc41892e
Merge pull request #6887 from keymanapp/fix/web/cherry/6885-unbound-handler
fix(web): properly binds 'suggestionApplied' event handler
2022-07-06 05:09:19 +10:00
Keyman Server
d49003a635
Merge pull request #6896 from keymanapp/auto/version-master-16.0.26
auto: increment master version to 16.0.26
2022-07-06 04:02:35 +10:00
Keyman Build Agent
423a5bd5f4 auto: increment master version to 16.0.26 2022-07-05 14:01:58 -04:00
Eberhard Beilharz
1f84299d08
fix(linux): Fix post-install script
This change fixes the ibus-keyman post install script which
previously failed if for whatever reason `SUDO_USER` is not set.

Fixes #6893
2022-07-05 18:14:53 +02:00
Marc Durdin
3977ffda2f fix(web): remove spurious log "No keyboard stubs exist"
This error has been logged for every start of Keyman Engine for Web in
embedded contexts, but nothing bad ever happens. It does not really seem
to be anything we need to worry about. (It may be that the
`setDefaultKeyboard()` call will never return true, but it is still
harmless in any case.)
2022-07-05 15:36:21 +10:00
Marc Durdin
88c7363ab7 fix(ios): only override console object in ios-host if debug enabled 2022-07-05 13:14:39 +10:00
Marc Durdin
10caf08919 fix(web): only report console errors if _enabled 2022-07-05 13:14:20 +10:00
Marc Durdin
f3c091a667
Merge pull request #6891 from keymanapp/chore/web/update-readme
chore(web): update readme
2022-07-05 13:00:53 +10:00
Marc Durdin
c6bb33973c chore(web): update readme 2022-07-05 12:29:13 +10:00
Marc Durdin
0b64871be3 fix(web): improve console.error() reporting
The back story:

Currently Keyman for Android reports errors sent to the console via
`console.error()` into Sentry but sentry-manager itself does not. This
means that Keyman for iPhone and iPad and other users of sentry-manager
do not report these errors. Many of these errors are important.

What's worse is that Keyman for Android's error reporting here (via the
`sendKMWError()` function in Keyman Engine for Android) does not capture
stack traces, and so many of the errors we get do not have enough
information to resolve them.

Furthermore, by having `sendKMWError()` in Keyman for Android, we
capture exceptions and other program errors twice -- once on the web
side, and once on the Java side -- this adds noise to our error
reporting. Sentry also tends to lump many unrelated `sendKMWError()`
events together, so tracking resolution to the errors is painful.

The fix:

This adds a patch to sentry-manager to capture `console.error()` and
`console.warning()` events and report them through Sentry's normal error
reporting, and disables the `sendKMWError()` report (although we leave
the breadcrumb in place for when there are later, related Java errors).
There is a Sentry integration called CaptureConsole, but it does not
support capturing stack traces until v6.14
(https://github.com/getsentry/sentry-javascript/pull/4034). Updating
Sentry to 6.14 or newer is a bigger job (due to ES6 baseline req. etc.)

Note that Keyman for iOS currently has some other stubs in place
overriding the `console.*` functions. These should be removed for
release builds, so that we can use this pattern instead. I will try and
tackle this in a follow-up PR (I will build it on my mac so I can test
it).

A sample error report captured with this mechanism (no sourcemaps here
because this is a -local build):

https://sentry.io/organizations/keyman/issues/3401287467/events/c40fd2cebb7743cc8dfe72e0dd34bf65/?project=5983524

I am proposing we back-port this to 15.0-stable as we are missing a lot
of data in many of our error reports on Android.
2022-07-05 10:57:42 +10:00
Joshua A. Horton
120d48e2af fix(web): bounds detection logic 2022-07-04 10:27:06 +07:00
Joshua A. Horton
124dcc108b fix(web): config field handling 2022-07-04 10:27:06 +07:00
jahorton
aa8730acda fix(web): properly binds 'suggestionApplied' event handler 2022-07-04 09:19:51 +07:00
Keyman Server
05d7775e30
Merge pull request #6883 from keymanapp/auto/version-master-16.0.25
auto: increment master version to 16.0.25
2022-07-03 04:02:49 +10:00
Keyman Build Agent
81c45dd1ed auto: increment master version to 16.0.25 2022-07-02 14:02:10 -04:00
Marc Durdin
939772a670
Merge pull request #6867 from keymanapp/fix/windows/show-version-number
fix(windows): show full version number
2022-07-02 05:51:57 +10:00
Marc Durdin
378e1a341d
Merge pull request #6847 from keymanapp/fix/common/trigger-builds-stable
fix(common): trigger builds correctly for stable builds
2022-07-02 05:51:47 +10:00
Marc Durdin
b2427386f1 feat(developer): tighter spec for .keyman-touch-layout 2022-06-30 14:37:43 +10:00
Marc Durdin
ebfd474d90 feat(developer): add flick and multitap to touch layout schema and doc
Does not tighten the spec for legacy data -- that should probably be a
separate schema file.
2022-06-30 11:43:51 +10:00
Marc Durdin
3d9d6f59dc chore: add documentation for keyman-touch-layout 2022-06-30 11:07:38 +10:00
Keyman Server
613c194bf9
Merge pull request #6872 from keymanapp/auto/version-master-16.0.24
auto: increment master version to 16.0.24
2022-06-30 04:02:37 +10:00
Keyman Build Agent
59b7323fd6 auto: increment master version to 16.0.24 2022-06-29 14:01:52 -04:00
Joshua A. Horton
be28b54954 fix(web): let's get it right this time 2022-06-29 15:26:55 +07:00
Joshua A. Horton
4a10fde758 fix(web): fixed dimension ordering to match CSS style 2022-06-29 15:17:13 +07:00
Joshua Horton
658865d0af
Merge pull request #6854 from keymanapp/fix/web/6853-refresh-layout-undef-guard
fix(web): null-guard for refreshLayout
2022-06-29 13:30:01 +07:00
Joshua Horton
581bda77aa
Merge pull request #6786 from keymanapp/fix/web/6735-sticky-backspace-on-resize
fix(web): clears repeating bksp on keyboard reload ⬅️
2022-06-29 13:28:01 +07:00