Commit graph

35011 commits

Author SHA1 Message Date
Joshua Horton
7035aea4a6 fix(web): prevent backspace from clustering with output keys 2026-07-20 13:17:05 -05:00
Joshua Horton
83e8d29f66 docs(web): add model-compositor header
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
2026-07-16 12:59:07 -05:00
Joshua Horton
b0466ff167 Merge branch 'epic/autocorrect' into change/web/merge-master-into-autocorrect-acceptance-prep 2026-07-10 11:11:03 -05:00
Marc Durdin
07daf94555
Merge pull request #16170 from keymanapp/fix/web/16144-define-interfaces-for-imes-in-base
fix(web): define IME interfaces in `KeyboardInterfaceBase`
2026-07-11 00:25:31 +10:00
Marc Durdin
96b0a4b165
Merge pull request #16217 from keymanapp/fix/android/handle-blank-keyboard-tap-properly
fix(android): handle blank keyboard tap properly
2026-07-10 23:55:01 +10:00
Marc Durdin
2b2339d2aa fix(android): restrict fallback tap to document element only
Relates-to: #16170
2026-07-10 15:44:03 +02:00
Marc Durdin
83328c904b fix(web): ensure onmouseleave does not crash if mouseEnterPromise is not set 2026-07-10 15:32:56 +02:00
Joshua Horton
e1d01a2314
Merge pull request #16133 from keymanapp/feat/ios/add-autocorrect-toggle
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
feat(ios): add per-language autocorrect toggle 🚂
2026-07-10 20:14:55 +07:00
Marc Durdin
2b078ce165 fix(android): handle blank keyboard tap properly
Previously, the event handler was attached to body, but in the event of
the keyboard failing to render, the body element will typically be zero
pixels high. Instead, attach the handler to the document itself.
KeymanWeb, when running normally, will handle all touches on the
keyboard elements which take 100% of the real estate. So the document
tap will only be received in the case of an error condition.

Also, add a console error that will be reported to Sentry when user has
error reporting switched on.

Test-bot: skip
2026-07-10 14:08:27 +02:00
Keyman Server
00c213ba4e
Merge pull request #16213 from keymanapp/auto/version-master-19.0.254
auto: increment master version to 19.0.254
2026-07-09 20:04:11 +02:00
Keyman Build Agent
2e3e3474db auto: increment master version to 19.0.254
Test-bot: skip
Build-bot: skip
2026-07-09 13:01:35 -05:00
Joshua Horton
ccb2e7057a fix(ios): further adjust + fix language toggle logic
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
2026-07-09 10:48:00 -05:00
Joshua Horton
f1a6f6efdf change(ios): apply suggestions from review 2026-07-09 10:37:42 -05:00
Joshua Horton
86cf687519 fix(web): correct casing of autocorrect permission property name 2026-07-09 09:57:42 -05:00
Joshua Horton
87b2008c80 Merge branch 'epic/autocorrect' into feat/ios/add-autocorrect-toggle 2026-07-09 09:30:09 -05:00
Joshua Horton
f3e0f0bfd5
Merge pull request #16123 from keymanapp/fix/web/block-keep-autoaccept
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
fix(web): do not auto-select model-matching keep suggestions 🚂
2026-07-09 21:27:09 +07:00
Marc Durdin
528876b42f
Merge pull request #16135 from keymanapp/chore/developer/14838-consolidate-api-extractor
chore(developer): consolidate api-extractor usage in Developer
2026-07-09 18:50:27 +10:00
Marc Durdin
4ab67f5812
Merge pull request #16127 from keymanapp/fix/developer/15217-resync-model-after-device-switch
fix(web): resync model in `set osk()` (as used by Server)
2026-07-09 18:50:11 +10:00
Joshua Horton
3263392908
Merge pull request #16208 from keymanapp/change/web/stop-negation-of-reversion-transition-id
Some checks are pending
Keyman Build Summary / Summarize build status checks (push) Waiting to run
change(web): stop negation of reversion transition IDs 🚂
2026-07-09 01:33:40 +07:00
Keyman Server
d094af0db1
Merge pull request #16212 from keymanapp/auto/version-master-19.0.253
auto: increment master version to 19.0.253
2026-07-08 20:12:46 +02:00
Keyman Build Agent
3369ad8f04 auto: increment master version to 19.0.253
Test-bot: skip
Build-bot: skip
2026-07-08 13:09:59 -05:00
Joshua Horton
21c18a4ca5
change(web): Apply suggestion from code review
Co-authored-by: Marc Durdin <marc@durdin.net>
2026-07-09 00:51:10 +07:00
Joshua Horton
21c43452e0
Merge pull request #16209 from keymanapp/fix/auto-test-cookies-and-paths
fix(web): fixes cookie unit-tests and path for OSK resources during testing
2026-07-09 00:45:43 +07:00
Joshua Horton
a5382b298e
Merge pull request #16148 from keymanapp/change/web/transition-id-nomenclature
change(web): polish documentation, remove Suggestion.transformId in predictive text 🚂
2026-07-09 00:44:10 +07:00
Eberhard Beilharz
fcf8988910
Merge pull request #16188 from keymanapp/fix/android/16187_font
fix(android): differentiate between fontPath and fontUrl in Keyman Engine for Android
2026-07-08 14:35:10 +02:00
Marc Durdin
1aae71e998
Merge pull request #16152 from keymanapp/fix/android/16122-refactor-KMLog
fix(android): refactor `KMLog` - simplification and added resilience
2026-07-08 22:34:21 +10:00
Marc Durdin
34c6beb958
Merge pull request #16176 from keymanapp/chore/16172-remove-deprecated-html-metas
chore: remove deprecated "X-UA-Compatible" and "apple-mobile-web-app-capable" metas
2026-07-08 22:34:00 +10:00
Marc Durdin
c9bfc87828
Merge pull request #16174 from keymanapp/refactor/web/16168-ui-remove-keymanweb-variable
refactor(web): rename `keymanweb` to `keyman` in UI modules
2026-07-08 22:33:48 +10:00
Marc Durdin
e00304ce9c
Merge pull request #16210 from kingsuper195/chore/linux/install-kmp-button-order
chore(linux): reorder buttons on kmp install window
2026-07-08 21:46:18 +10:00
Eberhard Beilharz
71aefb8f47
fix(android): address code review comments
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
Co-authored-by: Marc Durdin <marc@durdin.net>
2026-07-08 11:43:15 +02:00
Peter Durdin
c6db29c454 chore(linux): reorder buttons on kmp install window
Cancel button goes on the left according to GNOME Human Interface Guidelines.

Test-bot: skip
2026-07-08 10:28:21 +02:00
Joshua Horton
267cac21c2 fix(web): refresh model when "Enable predictions" is toggled
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
2026-07-06 17:50:14 -05:00
Joshua Horton
81b0c0b706 fix(web): fixes cookie unit-tests and path for OSK resources during testing
Build-bot: skip build:web
Test-bot: skip
2026-07-06 11:13:24 -05:00
Joshua Horton
4c8f3b031c
Merge pull request #16165 from keymanapp/change/web/edit-token-mapping-types
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
change(web): clarify merge, split edit token-mapping types 🚂
2026-07-06 22:25:09 +07:00
Joshua Horton
94e67290e1 change(web): stop negation of reversion transition IDs
Build-bot: skip build:web
Test-bot: skip
2026-07-06 10:07:15 -05:00
Joshua Horton
56678bee6b Merge branch 'epic/autocorrect' into change/web/transition-id-nomenclature
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
2026-07-06 08:43:45 -05:00
Joshua Horton
cfd731511a fix(web): adjust unit tests that previously auto-selected keep
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
2026-07-06 08:43:09 -05:00
Joshua Horton
a14aca9214 Merge branch 'epic/autocorrect' into fix/web/block-keep-autoaccept 2026-07-06 08:34:02 -05:00
Joshua Horton
6f72c2f75c change(web): drops repeated fields from extended class 2026-07-06 08:28:39 -05:00
Joshua Horton
03c8a4d679 Merge branch 'epic/autocorrect' into feat/ios/add-autocorrect-toggle 2026-07-06 08:21:16 -05:00
Keyman Server
a6747c8ac9
Merge pull request #16194 from keymanapp/auto/A19S32-merge-base-into-autocorrect
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
auto: A19S32 merge master into autocorrect 🚂
2026-07-04 16:02:00 +02:00
Keyman Server
2dfa960f13
Merge branch 'epic/autocorrect' into auto/A19S32-merge-base-into-autocorrect 2026-07-04 13:19:27 +02:00
Eberhard Beilharz
70282bfd5b
fix(android): rename method to getKeyboardTextFontFilenameOnly
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
This addresses a code review comment.
2026-07-03 17:26:05 +02:00
Eberhard Beilharz
1867a7659f
Apply suggestions from code review
Co-authored-by: Marc Durdin <marc@durdin.net>
Co-authored-by: Eberhard Beilharz <ermshiperete@users.noreply.github.com>
2026-07-03 17:23:19 +02:00
Keyman Server
028a741fb1
Merge pull request #16189 from keymanapp/auto/version-master-19.0.252
auto: increment master version to 19.0.252
2026-07-02 20:02:33 +02:00
Keyman Build Agent
048be2f6a8 auto: increment master version to 19.0.252
Test-bot: skip
Build-bot: skip
2026-07-02 13:01:27 -05:00
Eberhard Beilharz
1191e4387f
fix(android): fix setting font
PR #16146 introduced a problem with selecting a different font as
display font so that we always ended up with not setting the font.
This was caused by the font filenames now being a URL (which is necessary
because they get processed by the web engine). However, the Android code
checks for the existence of the font in order to create the typeface,
which only works for local paths.

This PR modifies and simplifies `KMKeyboard.getFontFilename` to return the
full path, renames `KMKeyboard.txtFont` and `KMKeyboard.oskFont` to make
it clearer that they contain a path and not a URL.

Also initialize `KMKeyboard.oskFontPath` with empty string instead of
`null`. This makes it consistent with` txtFontPath` and with the
documented behavior of `KMManager.getKeyboardOskFontFilename()` (which
returns `KMKeyboard.oskFontPath`).

Follows: #16146
Fixes: #16187
Build-bot: release:android
2026-07-02 19:52:35 +02:00
Marc Durdin
db881049e1 fix(developer): move osk banner resync from Server frontend to Web set osk
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
After review, it is better to do the sync of the model banner in
KeymanWeb `set osk()` than in the client of the API. The client should
be able to assign a new OSK and have it "just work" without needing to
attach things to it.

Fixes: #15217
2026-07-02 14:55:46 +02:00
Marc Durdin
948c02ca13 chore(developer): Merge branch 'master' into fix/developer/15217-resync-model-after-device-switch 2026-07-02 14:29:57 +02:00
Marc Durdin
a1bd0987a8
Merge branch 'master' into fix/web/16144-define-interfaces-for-imes-in-base
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
2026-07-02 22:00:39 +10:00