keymanapp / keymanapp/keyman

feat(ios): set initial keyboard before internal engine initialization

Open
#10,044 1 comment 0 reactions 0 assignees View on GitHub
feat ios/
Dominant language
Pascal
Stars
534
Forks
143
Avg merge
2d 10h
Merged PRs (30d)
113

Description

Regarding these newly-introduced lines from #10022:

https://github.com/keymanapp/keyman/blob/7c9061e869be3b52c19f1d13d82d29189b04699a/android/KMEA/app/src/main/assets/android-host.js#L35-L38

> Uses the function defined within this PR within the Java `KMKeyboardJSHandler` class. See other comment (re https://developer.apple.com/documentation/webkit/wkscriptmessagehandlerwithreply) on how this _could_ look for iOS if we wanted to go that route.
>
> That said, I don't see the problem this PR addresses on my personal iOS device. So, adopting this code for use on iOS can probably be low-priority for now.

_Originally posted by @jahorton in https://github.com/keymanapp/keyman/pull/10022#discussion_r1401443498_

In other words, if we want the keyboard host-page to be able to query for the initial keyboard stub before initializing the Web engine, that _is_ possible with iOS 14.0+ by utilizing the https://developer.apple.com/documentation/webkit/wkscriptmessagehandlerwithreply method on `WKWebView`s.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.