Commit graph

6178 commits

Author SHA1 Message Date
jahorton
c822e61fc4 change(lmlayer): Fixes a few of the 'draft' tweaks to logging from previous commits of this PR 2019-11-21 08:58:43 +07:00
jahorton
689a5c5502 feat(lmlayer): adds basic error reporting from worker 2019-11-20 10:34:57 +07:00
jahorton
cf52b38a1e change(android): gets API 23 working again, but not 19 or 21 (yet) 2019-11-18 16:36:14 +07:00
Marc Durdin
086a52236b
Merge pull request #2343 from keymanapp/fix/developer/stable/2199-kmcomp-merge-platform-support
fix(developer): keyboard_info merge mobile wrong 🍒
2019-11-18 13:54:50 +11:00
Marc Durdin
4150f3d5ec
Update history.md 2019-11-18 08:59:07 +11:00
Marc Durdin
d4edfaa5a4 chore(developer): history.md 2019-11-15 13:50:29 +11:00
Marc Durdin
0cfb842b06 fix(developer): keyboard_info merge mobile wrong
The .keyboard_info merge of `platformSupport` would not always give the
right result, for .js keyboards. We have a certain lack of information
in the .js which makes it a little tricky to determine precisely what
the set of supported platforms are. Thus, if we find a .js within a
.kmp, we'll assume it supports mobile; if we find a .js by itself,
we'll assume it supports web. (Thus, a keyboard that builds a .js
is assumed to always support web -- but not necessarily mobile now).

Some keyboards that have incorrectly added a .js into a package, e.g.
sil_cipher_music, will be marked as supporting mobile even though they
don't. The correct fix here is to remove the .js from the package for
that keyboard.
2019-11-15 13:49:52 +11:00
Marc Durdin
fefe4f0ec7
Merge pull request #2340 from keymanapp/fix/windows/stable/2314-focus-incorrect-for-cef
fix(windows): focus is incorrect for CEF 🍒
2019-11-15 13:45:35 +11:00
Marc Durdin
86b168d339
Merge pull request #2341 from keymanapp/fix/windows/stable/2270-on-screen-keyboard-position-wrong
fix(windows): OSK restores to wrong monitor 🍒
2019-11-15 13:45:26 +11:00
Marc Durdin
fb29d5ba59 chore(windows): history.md 2019-11-15 11:12:54 +11:00
Marc Durdin
b31baa4f9f fix(windows): OSK restores to wrong monitor
If the On Screen Keyboard was closed when on a monitor other than the
primary monitor, it would restore to the primary monitor in the top-
left corner instead of the previous location.

This fix allows the OSK to be restored to another monitor, but still
avoids positioning the window off screen if the monitor has been
disconnected.

Fixes #2270.
2019-11-15 11:11:49 +11:00
Marc Durdin
bdd2cb9034 chore(developer): history.md 2019-11-15 11:08:00 +11:00
Marc Durdin
3d198d213f fix(windows): focus is incorrect for CEF
The focus code paths for Chromium frames (CEF4Delphi) were incorrect.
The return value for preventing focus on navigation events was
inverted, and then other code was attempting to work around this
inversion, wrongly. Fixed the root issue of the inverted test (it would
help if the parameter cefSetFocus was known as `Handled` rather than
`Result`!) and then the remaining code pathways became far simpler.

Fixes #2314.
2019-11-15 11:06:08 +11:00
Marc Durdin
246afc5656
Merge pull request #2317 from keymanapp/ios-cherrypick-2299
fix(ios): System keyboard popup-key positioning confinement 🍒
2019-11-13 07:17:51 +11:00
Marc Durdin
80d292454c
Merge pull request #2318 from keymanapp/ios-cherrypick-2301
fix(ios): Fixes bad initialization of system keyboard width
2019-11-13 07:17:01 +11:00
Marc Durdin
51bd89d0ef
Merge pull request #2324 from keymanapp/fix/windows/cherrypick/2147-exception-closing-keyman
fix(windows): Keyman crash and interop with Metro-style apps 🍒
2019-11-13 07:09:57 +11:00
Marc Durdin
aa3abb2ed7
Merge pull request #2288 from keymanapp/web-2209-cherry-mnemonic-code-handling
cherry(web): Fixes mnemonic code handling issues
2019-11-13 07:09:42 +11:00
Marc Durdin
b8847c79a9
Merge pull request #2283 from keymanapp/web-2267-cherry-detect-ios-spoofs
cherry(web): iOS-Safari user agent spoof detection
2019-11-13 07:09:19 +11:00
Marc Durdin
971003bf2d
Merge pull request #2284 from keymanapp/web-2261-cherry-nul-context-replacement
cherry(web): Bounds-check on context deletion from keyboard rules
2019-11-13 07:08:42 +11:00
Marc Durdin
cd6a8ddf52 chore(windows): history.md 2019-11-12 16:49:00 +11:00
Marc Durdin
eb13e26b1e fix(windows): Keyman was not working with Skype
Fixes #1680. This issue arose only on some systems where
permissions for Keyman registry keys were not being
set correctly.
2019-11-12 16:44:26 +11:00
Marc Durdin
e91f29ee03 chore(windows): unreferenced param in release build 2019-11-12 16:42:01 +11:00
Marc Durdin
35584b669b chore(developer): tidy up from review comments 2019-11-12 16:42:01 +11:00
Marc Durdin
a8dcf173e1 fix(windows): tweak preprocessor conditional 2019-11-12 16:42:01 +11:00
Marc Durdin
805c640802 fix(windows): Keyman was crashing sporadically
Fixes #2147.

This potentially addresses the issues reported in #2147 where Keyman
would crash due to a race condition as a critical section was not
deleted before attempting to recreate it.

Some logging has been added for debugging these issues.

Also fixes memory leaks and another race on startup relating to loading
the taskbar icon.

There are still some known memory leaks because DLL_THREAD_DETACH is
not called for all threads before keyman32.dll is unloaded, so those
threads don't get the opportunity to clean themsselves up. However, the
key danger with the csGlobals critical section has been addressed.
2019-11-12 16:42:00 +11:00
Darcy Wong
f25633fe24 chore(ios): Update history.md 2019-11-11 13:09:09 +07:00
Darcy Wong
1847f761e4 fix(ios): Cherry-pick #2301 for stable-12.0
Fixes #2260 for stable-12.0

These changes ensure that the Swift side of the keyboard can provided the KMW side with an initial width, bypassing the need for the failing `window.orientation` check (which was used to produce said initial width).
2019-11-11 12:02:07 +07:00
Darcy Wong
5728c410fb fix(ios): Cherry-pick #2306 to stable-12.0
Fixes #2299 for 12.0 stable
2019-11-11 11:54:34 +07:00
Marc Durdin
65deb74455
Merge pull request #2282 from keymanapp/ios-cherry-toolchain-update
cherry(iOS):  Toolchain update
2019-11-11 15:34:34 +11:00
jahorton
e49e6ab11a fix(web): fixes mnemonic code handling issues 2019-11-04 14:47:02 +07:00
jahorton
32a96ee260 fix(ios): disables dark mode b/c incompatibilities 2019-11-04 09:06:47 +07:00
jahorton
b4cf5de51d change(ios): launch splash uses storyboard, includes 'dark' version 2019-11-04 09:06:47 +07:00
jahorton
83f8e82415 fix(ios): build.sh -no-codesign for new build sys 2019-11-04 09:06:47 +07:00
jahorton
7405638b9c fix(ios): popover alignments, cancellation 2019-11-04 09:06:46 +07:00
jahorton
bf39c854ed fix(ios): most of the new Swift 5 deprecations 2019-11-04 09:06:46 +07:00
jahorton
854fc6d3ba change(ios): disables Mac Catalyst build target 2019-11-04 09:06:46 +07:00
jahorton
7d9c687094 change(ios): updates build; drops legacy build sys 2019-11-04 09:06:46 +07:00
jahorton
21bb483add change(ios): Swift 4 -> Swift 5 base conversion 2019-11-04 09:06:45 +07:00
jahorton
2a9171b8f5 fix(web): Almost broke Chrome debug on macOS 2019-11-04 08:40:18 +07:00
jahorton
581b66f228 fix(web): Fixes #2267 - iOS-Safari user agent spoof detection 2019-11-04 08:40:18 +07:00
Joshua A. Horton
6a16b45b63 feat(web): bounds check unit test 2019-11-04 08:27:35 +07:00
Joshua A. Horton
94b10a0e76 fix(web): Adds bounds-check in output targets 2019-11-04 08:27:35 +07:00
Joshua A. Horton
147e6add43 fix(web): Fixes #2261, filters nul when deleting context 2019-11-04 08:27:35 +07:00
Darcy Wong
466b68e83a
Merge pull request #2255 from keymanapp/android-disable-dictionary-on-password
fix: Temporarily disable dictionary when entering password field
2019-10-30 09:59:00 +07:00
Darcy Wong
0cfd8a437c fix(android): Separate getter / setter of KMManager.KMManager
Per review comment, separate getter and setter of state variable.
Also renamed mayProtect typos to mayPredict
2019-10-29 14:33:15 +07:00
Darcy Wong
17173e2388 chore: Update history.md 2019-10-29 11:37:20 +07:00
Darcy Wong
6f6df3bb85 fix(android): override mayPredict when entering password field 2019-10-29 11:02:24 +07:00
Darcy Wong
0f1b2d8d3c fix(android): Add null check for re-registering dictionary 2019-10-28 15:54:38 +07:00
Darcy Wong
cf03959971 fix: #2251 Temporarily disable dictionary when entering password fields 2019-10-28 13:59:18 +07:00
Darcy Wong
5ddbf4aa48
Merge pull request #2242 from keymanapp/android-lm-version-key
[Android][Stable] Also use the lexical model package version for generating Dataset
2019-10-25 14:02:21 +07:00