Commit graph

29989 commits

Author SHA1 Message Date
Darcy Wong
7fba5b25e4
Merge pull request #13667 from keymanapp/fix/android/banner-tablets
fix(android): Adjust keyboard and banner height for 7" tablet landscape
2025-04-04 22:34:20 +07:00
Darcy Wong
7488b2902f
Merge pull request #13655 from keymanapp/fix/android/banner-xhdpi
fix(android): adjust keyboard and banner height for xhdpi portrait
2025-04-04 22:34:01 +07:00
Darcy Wong
935d7284ef
Merge pull request #13651 from keymanapp/fix/android/banner-heights
fix(android): Adjust keyboard and banner heights for mdpi and hdpi devices
2025-04-04 22:33:38 +07:00
Eberhard Beilharz
092b5e7001
Merge pull request #13660 from keymanapp/chore/web/logerror
chore(web): improve error logging in predictive-text worker message validation

Previously logging an error resulted in two Sentry issues to be created. This change now combines the log message and the error into one call to `console.error`, thus resulting in only one Sentry issue being created.
2025-04-04 08:58:37 +02:00
Eberhard Beilharz
565f1b4dec
Merge pull request #13648 from keymanapp/fix/linux/13647_kbd-details
fix(linux): fix crash if kmp doesn't have name field

Fixes: #13647
Fixes: KEYMAN-LINUX-80
2025-04-04 08:57:49 +02:00
Joshua Horton
3a99ffe140
Merge pull request #13652 from keymanapp/docs/web/better-serialization-motivation
docs(web): improve section on motivation for gesture input serialization
2025-04-04 13:16:24 +07:00
Joshua Horton
1a79fd2b1e
Merge pull request #13631 from keymanapp/fix/ios/keyboard-height-slide-dismissal
fix(ios): slide dismissal of keyboard-height adjuster will properly resize the keyboard
2025-04-04 08:17:43 +07:00
Joshua Horton
7a1acc4968
Merge pull request #13630 from keymanapp/fix/ios/keyboard-over-menu-on-reentry
fix(ios): prevent re-display of keyboard when re-entering app to its menus
2025-04-04 08:17:35 +07:00
Darcy Wong
8cc35dfdf3 fix(android): Adjust keyboard and banner height for 7" tablet 2025-04-04 07:42:54 +07:00
Keyman Server
5cbc857cdf
Merge pull request #13665 from keymanapp/auto/version-beta-18.0.228
auto: increment beta version to 18.0.228
2025-04-03 11:04:18 -07:00
Keyman Build Agent
a59009bdbd auto: increment beta version to 18.0.228 2025-04-03 14:03:40 -04:00
Eberhard Beilharz
c1683b4be2
chore(web): improve error logging
Previously logging an error resulted in two Sentry issues to be created.
This change now combines the log message and the error into one call to
`console.error`, thus resulting in only one Sentry issue being created.
2025-04-03 16:35:09 +02:00
Eberhard Beilharz
d1b74d0175
chore(linux): fall back to package id
This change addresses a code review comment. In the case where the kmp
doesn't contain a name, we now use the `packageID` instead.
2025-04-03 15:56:07 +02:00
Joshua Horton
e9cd0dda9c docs(web): addresses concerns from recent ermshiperete review 2025-04-03 15:42:40 +07:00
Eberhard Beilharz
6d39ab0b06
Merge pull request #13625 from keymanapp/fix/linux/13590_arrow-keys
fix(linux): allow unhandled keys to pass through to compliant apps

This change fixes a bug introduced in #13372. Before that engine.c determined if keys are handled or not. For keys that we didn't handle we returned FALSE. However, that didn't allow the Core to adjust the context where necessary, so #13372 moved that to Core. However, this caused ibus_keyman_engine_process_key_event to return TRUE even if we didn't handle the key. Instead we called ibus_engine_forward_key_event with the non-handled key. This worked in most applications, but not in the Text Editor.

This change now does no longer call ibus_engine_forward_key_event for compliant apps but instead returns FALSE from ibus_keyman_engine_process_key_event for unhandled keys, allowing the app to see and act on the key event.

An 'unhandled' key here is a key that doesn't match a rule in the keyboard and isn't a character key. Core returns a QIT_EMIT_KEYSTROKE action for that key.

Fixes: #13590
2025-04-03 10:26:27 +02:00
Darcy Wong
3d127f0f7d docs(android): Update table documentation 2025-04-03 11:12:35 +07:00
Darcy Wong
de0e8faf0e fix(android): Add keyboard and banner dimensions for xhdpi portrait 2025-04-03 11:03:28 +07:00
Darcy Wong
b5e30b7c83 docs(android): Update table 2025-04-03 09:55:33 +07:00
Darcy Wong
3ee17bf421 chore(android): Merge remote-tracking branch 'origin/beta' into fix/android/banner-heights
# Keyman Conventional Commit suggestions:
#
# - Link to a Sentry issue with git trailer:
#     Fixes: _MODULE_-_ID_
# - Give credit to co-authors:
#     Co-authored-by: _Name_ <_email_>
# - Use imperative, present tense ('attach' not 'attaches', 'attached' etc)
# - Don't include a period at the end of the title
# - Always include a blank line before trailers
# - More: https://github.com/keymanapp/keyman/wiki/Pull-Request-and-Commit-workflow-notes
2025-04-03 09:46:46 +07:00
Darcy Wong
52f97d094f
Merge pull request #13645 from keymanapp/fix/android/adjust-height-back
fix(android): Add back button to "Adjust Keyboard Height "menu
2025-04-03 09:45:58 +07:00
Darcy Wong
e9d70fb15a
Merge pull request #13635 from keymanapp/cherrypick/android/13578-adjust-keyboard-height
fix(android): Move responsibility for setting keyboard height preference 🍒
2025-04-03 09:45:28 +07:00
Darcy Wong
231d9e3b6b
Merge branch 'beta' into cherrypick/android/13578-adjust-keyboard-height 2025-04-03 09:44:29 +07:00
Shawn Schantz
114a7479a3
Merge pull request #13550 from keymanapp/fix/mac/13465-word-table-output
fix(mac): reevaluate API compliance for each change in context
2025-04-03 09:40:09 +07:00
Joshua Horton
a2f57c0cf6 docs(web): improve section on motivation for gesture input serialization
Addresses a PR comment by mcdurdin on #13597 (at https://github.com/keymanapp/keyman/pull/13597#discussion_r2023971170) in regard to the motivation for gesture input serialization.

> I just don't understand how the problem described here can arise -- unless we are introducing deferral with promises -- but even then, if we consistently defer every incoming event with a promise, then the order would still be automatically enforced.

In particular, this aims to clarify how the macrotask queue gets involved and can interfere with the ordering of promises.
2025-04-03 09:05:37 +07:00
Darcy Wong
376fbc1515 fix(android): Add hdpi dimensions 2025-04-03 08:26:07 +07:00
Darcy Wong
a392242923 fix(android): Adjust baseline heights for landscape
values-land/dimens.xml tested with 5.1" WVGA emulator
2025-04-03 07:05:38 +07:00
Marc Durdin
da5b05a195
Merge pull request #13640 from keymanapp/fix/developer/13600-follow-remove-redundant-lm-fields-from-kps
fix(developer): remove redundant Name and RTL fields from .kps `LexicalModel`
2025-04-03 05:40:32 +07:00
Marc Durdin
a4f33caf65
Merge pull request #13600 from keymanapp/fix/developer/13576-13593-remove-redundant-keyboard-fields-from-kps
fix(developer): remove redundant keyboard fields from .kps
2025-04-03 05:40:18 +07:00
Keyman Server
cda8398398
Merge pull request #13649 from keymanapp/auto/version-beta-18.0.227
auto: increment beta version to 18.0.227
2025-04-02 11:03:41 -07:00
Keyman Build Agent
a13205f1a2 auto: increment beta version to 18.0.227 2025-04-02 14:03:01 -04:00
Eberhard Beilharz
5df36c05a4
fix(linux): fix crash if kmp doesn't have name field
Fixes: #13647
Fixes: KEYMAN-LINUX-80
2025-04-02 18:20:11 +02:00
Eberhard Beilharz
d08f4b17f4
Merge pull request #13637 from keymanapp/docs/linux/engine
docs(linux): add function headers for some of the engine methods
2025-04-02 09:00:01 +02:00
Darcy Wong
4d4508d4c7
Merge pull request #13595 from keymanapp/chore/crowdin/mon
chore(common): Update crowdin strings for Mon
2025-04-02 10:38:41 +07:00
Darcy Wong
3abe596361 fix(android): Add back button to "Adjust Keyboard Height "menu
Add back button and callback handler
2025-04-02 10:19:29 +07:00
Darcy Wong
e894f79880
Merge pull request #13592 from keymanapp/fix/android/430dpi
fix(android): Add dimensions for 320+dpi phones in landscape
2025-04-02 08:41:00 +07:00
Joshua Horton
d6dc759ee7
Merge pull request #13597 from keymanapp/docs/web/gesture-input-serialization
docs(web): document input-serialization aspects of gesture processing
2025-04-02 08:31:34 +07:00
Joshua Horton
c8e8c1320c
Merge pull request #13587 from keymanapp/docs/web/gesture-modeling-and-processing
docs(web): document internals for gesture modeling and processing
2025-04-02 08:31:22 +07:00
Joshua Horton
a514569596 change(ios): rename doneClicked -> settingsDismissed 2025-04-02 08:24:41 +07:00
Marc Durdin
0f05da957f fix(developer): remove redundant Name and RTL fields from .kps LexicalModel
Follows on from the similar changes to `Keyboard` fields in #13600. This
deprecates the `RTL` and `Name` fields. `RTL` was never used. `Name` was
written but never presented to end users, so effectively irrelevant.
`Name` also was present in `File.Description` (already deprecated) for
the corresponding model.js _and_ `Info.Name`, so doubly redundant.

Also updates the schema documentation to mark the deprecated fields.

Relates-to: #13600
2025-04-02 05:39:09 +07:00
Keyman Server
89742b853c
Merge pull request #13639 from keymanapp/auto/version-beta-18.0.226
auto: increment beta version to 18.0.226
2025-04-01 11:03:56 -07:00
Keyman Build Agent
911c8f082e auto: increment beta version to 18.0.226 2025-04-01 14:03:18 -04:00
Eberhard Beilharz
659e844f83
docs(linux): add function headers for some of the engine methods 2025-04-01 16:46:18 +02:00
Eberhard Beilharz
ac6b521583
docs(linux): clarify the newly added return values
Addresses code review comments.
2025-04-01 16:44:29 +02:00
Eberhard Beilharz
9147bdb689
Merge pull request #13624 from keymanapp/refactor/linux/warning
refactor(linux): remove warning if no custom keyboards exist

If the dconf setting for custom keyboards doesn't exist, i.e. we never saved custom keyboards before, the previous code resulted in a warning showing up: `(ibus-engine-keyman:4276): GLib-CRITICAL **: 14:31:16.030: g_hash_table_lookup: assertion 'hash_table != NULL' failed`.

This PR adds a null check before trying to access the custom keyboards hash table and thus removes the warning.
2025-04-01 12:52:59 +02:00
Darcy Wong
afbe3d00cf fix(android): Update the keyboard height
Per review comment
2025-04-01 14:56:25 +07:00
Joshua Horton
0e055b2e67
Merge pull request #13549 from keymanapp/fix/ios/remove-missing-keyboards
fix(ios): uninstalls keyboards upon failure to load
2025-04-01 14:56:17 +07:00
Joshua Horton
bb51b8e288
Merge pull request #13548 from keymanapp/change/ios/atomic-copy-overwrite
change(ios): prevent file erasure during copyWithOverwrite error state
2025-04-01 14:56:09 +07:00
Marc Durdin
690d62ca3f fix(android): Move responsibility for setting keyboard height preference
Cherrypick of #13578 to beta

Moves responsibility for setting keyboard height preference into `applyKeyboardHeight()`
2025-04-01 14:10:55 +07:00
Joshua Horton
002b7fc03b docs(ios): tweaks code comment for clarity 2025-04-01 12:53:07 +07:00
Joshua Horton
2e300fcbba fix(ios): slide dismissal of keyboard-height adjuster did not resize keyboard
Fixes: #13443

Slide-dismissal of the settings menu, and of the keyboard-height setting view in particular, should apply changes after dismissal... not only after backing out via navigation buttons.

Certain aspects of the iOS API didn't make it easy, though.  After some searching, I found that "presentation controllers" and related can be leveraged to ensure we can detect Settings menu dismissal.  With that detection in place, we can use the same method that's been working fine for us when backing out of Settings via button.  This also ensures the keyboard will immediately display after dismissal, too!
2025-04-01 10:58:24 +07:00