Commit graph

27982 commits

Author SHA1 Message Date
Marc Durdin
49cae15718 chore(windows): update JWA Makefiles 2022-06-06 08:13:38 +10:00
Marc Durdin
fc7917cdca chore(windows): move JWA to common 2022-06-06 08:13:37 +10:00
Marc Durdin
87ad92ac4c chore(windows): remove extraneous JWA files 2022-06-06 08:13:35 +10:00
Marc Durdin
6ab5a76b74 chore(windows): restore jwa build for this branch 2022-06-06 08:13:09 +10:00
Marc Durdin
42e1ec83e2 chore(windows): update JEDI makefiles 2022-06-06 07:52:25 +10:00
Marc Durdin
c863ce59b7 chore(developer): move JCL and JVCL files to developer 2022-06-06 07:44:19 +10:00
Marc Durdin
6992943859 chore(windows): remove further extraneous JCL and JVCL files 2022-06-06 07:42:19 +10:00
Marc Durdin
0a8d106ab0 chore(windows): remove extraneous JVCL files 2022-06-06 07:40:02 +10:00
Marc Durdin
8e7200f799 chore(windows): delete extraneous JVCL files 2022-06-06 07:33:20 +10:00
Marc Durdin
96706158ce chore(windows): delete extraneous JCL files 2022-06-06 07:30:40 +10:00
Marc Durdin
9066b47320 chore(windows): extract TJCLMapScanner down to separate unit
TJCLMapScanner was the only class used in the entire JCL, in a
build-time project (sentrytool). For now, I have copied this class plus
its handful of dependent functions into Keyman.System.JclMapScanner so
that we can remove 3381 files from the repository.

We do not plan to use JCL in the future.
2022-06-06 07:05:47 +10:00
Marc Durdin
09d3425118 chore(developer): add .hpp files 2022-06-05 15:49:47 +10:00
Marc Durdin
21a9212fae chore(windows): move json-schema-validator to developer 2022-06-05 15:35:38 +10:00
Marc Durdin
8fa66f0b3e chore(windows): move scfontcombobox to developer 2022-06-05 15:24:21 +10:00
Marc Durdin
6d9b17e85f chore(developer): clean up build-tools dependency build 2022-06-05 09:15:07 +10:00
Marc Durdin
6340a59d8e chore(web): add BrowserStack to command-line 2022-06-05 08:33:42 +10:00
Marc Durdin
8a25e5434c chore(developer): update mbcolor build 2022-06-05 08:13:58 +10:00
Marc Durdin
fe3efc7b05 chore(windows): move mbcolor files to dev 2022-06-05 08:08:49 +10:00
Marc Durdin
f521b6ce19 chore(web): switch on additional BrowserStack reporting
Per support case with BrowserStack, am turning on deeper
reporting for BrowserStack-based testing in karma.
2022-06-05 07:53:20 +10:00
Marc Durdin
949f2cf403 chore: add 14.0 entries to beta HISTORY.md 2022-06-05 07:11:31 +10:00
Marc Durdin
958fbd3e40 fix(android): check index validity in getCurrentKeyboardInfo
This fixes crash reported as #6703. This issue was first reported in
14.0.282-stable. I have done a careful review of changes in 14.0.282
(and 14.0.281) but have been unable to find any changes that could have
bearing on this.

The basic issue is that there appears to be some circumstances where
`KMManager` thinks that it has a keyboard loaded (ref
`SystemKeyboardLoaded` variable), but `KMKeyboard.currentKeyboard` is
still `null`.

The crash has been reported for only a very small set of users, 119 at
time of fix, but average reports per user is over 100. As is usual with
this type of thing, a small fraction of those users are reporting the
majority of crashes. I have not found any real commonality across the
error reports -- they are geographically dispersed, across multiple
device types and Android versions.

Note that this addresses the error at hand but as I am unable to
reproduce the issue, does not necessarily address the root problem, so
there may still be other issues reported even after this is fixed.

A longer-term refactor would eliminate `SystemKeyboardLoaded` because
from what I can tell, we should always be able to determine that from
the state of `KMKeyboard.currentKeyboard`. However, the state
entanglement is a lot deeper than just those two variables, with cross
references to keyboard indexes between `KMManager` and `KMKeyboard`
which need to be resolved (`KMKeyboard` should *never* refer to
`KMManager`).
2022-06-05 06:46:39 +10:00
Marc Durdin
b69872d589 fix(android): move hardware keystroke flag to JS module 2022-06-04 08:44:24 +10:00
Keyman Server
bd35942d4d
Merge pull request #6702 from keymanapp/auto/version-beta-15.0.258
auto: increment beta version to 15.0.258
2022-06-04 04:03:21 +10:00
Keyman Build Agent
d1576e6717 auto: increment beta version to 15.0.258 2022-06-03 14:02:30 -04:00
Marc Durdin
3766eac305
Merge pull request #6691 from keymanapp/fix/developer/install-keyboard-quote-kmshell-path
fix(developer): install keyboard call should quote kmshell.exe path
2022-06-03 09:45:39 +10:00
Marc Durdin
deb6695ea0
Merge pull request #6696 from keymanapp/fix/developer/kmcomp-package-compiler-race-condition
fix(developer): kmcomp package compiler race condition
2022-06-03 09:42:24 +10:00
Marc Durdin
48a4d8c2ec fix(developer): kmcomp package compiler race condition
Fixes a race condition when compiling multiple packages, where the
temp path may be re-used before the compiler has finished with it.

To take advantage of this fix, I wanted to make sure I was using the
right kmcomp.exe when building unit tests for Keyman Core. This
uncovered a couple of other things:

* Updates Keyman Core build infrastructure to use the current kmcomp.exe
  rather than a system-installed one.
* Corrects a bug that was identified by the 15.0 version of kmcomp in
  one unit test (duplicate `&NAME` stores -- the meson test script
  prepends a `&NAME` store to each source file during build).

@keymanapp-test-bot skip
2022-06-02 14:37:01 +10:00
Marc Durdin
de87a5199b chore(windows): update dcpcrypt proj refs 2022-06-02 10:39:26 +10:00
Marc Durdin
d74e70b7f1 chore(windows): move dcpcrypt to common/windows 2022-06-02 10:38:29 +10:00
Marc Durdin
630fe15afa chore(windows): remove obsolete projects 2022-06-02 08:52:17 +10:00
Marc Durdin
4992472561 chore(windows): update dcpcrypt refs 2022-06-02 08:51:58 +10:00
Marc Durdin
28346ebfab chore(windows): remove old dcpcrypt units 2022-06-02 08:50:39 +10:00
Keyman Server
8980e889f9
Merge pull request #6693 from keymanapp/auto/version-beta-15.0.257
auto: increment beta version to 15.0.257
2022-06-02 04:03:04 +10:00
Keyman Build Agent
99add57dda auto: increment beta version to 15.0.257 2022-06-01 14:02:17 -04:00
Darcy Wong
da507b77c2
Merge pull request #6650 from keymanapp/chore/common/crowdin-es-419-with-mac
chore(android,ios,mac): Update crowdin strings for Spanish (Latin America)
2022-06-01 19:49:17 +07:00
jahorton
ad60fe8c92 chore(web): addresses PR review comments 2022-06-01 13:08:20 +07:00
Marc Durdin
8fe7234e1d
fix(developer): install keyboard call should quote kmshell.exe path 2022-06-01 15:33:44 +10:00
Marc Durdin
3f28e01024 chore(windows): remove unused regexpr package 2022-06-01 15:28:38 +10:00
jahorton
92d1c10209 fix(web): osk display-state setting tracking 2022-06-01 12:24:22 +07:00
Marc Durdin
5768353a1d chore(windows): remove delphiprojectmanager
This is no longer used in builds, so remove it.
2022-06-01 14:19:13 +10:00
jahorton
8ce04b0951 fix(web): fixes float ui osk-display issues 2022-06-01 10:50:54 +07:00
jahorton
a83b4010f7 fix(web): toolbar did not note ui activation 2022-06-01 10:50:47 +07:00
Marc Durdin
038c6d6e5c chore(developer): move browse4folder to Developer source
browse4folder is used only by Keyman Developer IDE.
2022-06-01 13:48:40 +10:00
jahorton
fbbba03acc fix(web): prevents overminification of .osk for float, toolbar 2022-06-01 08:40:12 +07:00
Marc Durdin
978af022b4 chore(windows): cleanup kmxfonts resource refs
I needed to update a few other bits and pieces for it to build;
but worth doing in any case.
2022-06-01 08:16:44 +10:00
Marc Durdin
fbdfa5ca6f chore(windows): update project resource references 2022-06-01 06:59:29 +10:00
Marc Durdin
ce1cf9d56a chore(windows): update resource references 2022-06-01 06:56:43 +10:00
Marc Durdin
6cc66f1c3d chore(windows): delete unused resources 2022-06-01 06:56:26 +10:00
Marc Durdin
517f9bb687 chore(windows): move resources from global/res 2022-06-01 06:56:05 +10:00
Marc Durdin
418bbdc022 chore(windows): remove unused legacy folders 2022-06-01 06:18:40 +10:00