Joshua A. Horton
32e7d9a5d7
chore(web): changes per PR review
2023-12-01 11:49:00 +07:00
Marc Durdin
39b7c882a3
feat(developer): Multi-process model for projects 🦕
...
This is a bit of an omnibus commit, apologies for that. This commit
moves Keyman Developer to a proper multi-process model, where editing
files from multiple projects is handled much more cleanly, with each
project loaded in a separate process.
Files that are edited outside of a project structure are loaded into a
'temporary project' in a single process, which provides a pathway for
existing users who may have legacy files outside the normal Keyman
Developer project model.
There are several components to this:
1. Inter-process communication (Multiprocess, CopyDataHelper units and
multiprocess test project). These modules establish a method of
enumerating running Keyman Developer instances (with EnumWindow),
recording relevant metadata for each instance (by thread id) in the
registry (registry used because it manages contention without
additional effort from us), and communicating between processes with
WM_COPYDATA.
2. Command-line parsing (TikeCommandLine). Determines project ownership
(ProjectOwningFile) for each filename passed on the command-line, and
passes these over to existing instances of Keyman Developer that have
that project loaded, or starts new instances as needed.
3. Temporary project management. Mostly in ProjectUI.
Also, moved GlobalProjectStateWnd management out of ProjectFile.pas and
into Project.pas, alongside other global project variables.
A follow-up will add functionality to determine if a file opened within
the Keyman Developer UI should open in the same instance or in a
separate instance (see TfrmKeymanDeveloper.OpenFileInProject). This will
use the same methodology as TikeCommandLine does now, so may involve
further refactoring.
This commit establishes the idea of 'keyman.kpj' as a future default
filename for Keyman Developer projects, but does not enable it, in
ProjectOwningFile. It is planned to introduce this fixed filename in
version 18.0 (see #10113 ).
2023-12-01 11:48:09 +07:00
Joshua A. Horton
d720bd9ade
fix(web): font style retrieval for suggestion-width calcs
2023-12-01 10:59:45 +07:00
Joshua A. Horton
5fd0cebdcb
fix(web): z-index issues - suggestions were above keytips and subkeys
2023-12-01 09:42:52 +07:00
Joshua A. Horton
5feb623d3e
chore(web): Merge branch 'master' into feat/web/fancy-suggestion-banner
2023-12-01 09:14:07 +07:00
Joshua Horton
8e272d8d55
Merge pull request #10061 from keymanapp/fix/android/banner-event-loop
...
fix(android): no suggestions available when swapping pred-text target language ✨
2023-12-01 09:13:01 +07:00
Joshua Horton
19d3d7c20c
Merge pull request #10022 from keymanapp/change/android/flishy-flashy-mitigation-2
...
change(android): smoother keyboard initialization ✨
2023-12-01 09:12:50 +07:00
Joshua Horton
f7f5952742
Merge pull request #10017 from keymanapp/change/android/flishy-flashy-mitigation
...
change(android): flishy flashy mitigation, round 1 ✨
2023-12-01 09:12:38 +07:00
Joshua A. Horton
db99a87c77
chore(web): Merge branch 'master' into feat/web/fancy-suggestion-banner
2023-12-01 08:31:23 +07:00
Joshua A. Horton
5ae42bf4bd
chore(web): better code brevity per review
2023-12-01 08:19:04 +07:00
Joshua A. Horton
3035c55b2f
chore(web): removes older duplicated kbd script file
2023-12-01 08:10:36 +07:00
rc-swag
864f378844
Merge pull request #10065 from keymanapp/chore/windows/10052/remove-cached-context
...
chore(windows): removed cached context windows engine
2023-12-01 08:33:32 +10:00
Eberhard Beilharz
8875dffbab
fix(web): Properly detach from events during detach
2023-11-30 19:49:13 +01:00
Keyman Server
d53ff43a4a
Merge pull request #10110 from keymanapp/auto/version-master-17.0.221
...
auto: increment master version to 17.0.221
2023-12-01 01:03:06 +07:00
Keyman Build Agent
396170d621
auto: increment master version to 17.0.221
2023-11-30 13:02:33 -05:00
Eberhard Beilharz
688f9f34d9
chore(linux): Add support for loong64 architecture
...
Closes Debian bug
[#1057134 ](https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1057134 ).
(cherry picked from commit f50eccc4c0 )
2023-11-30 18:01:18 +01:00
Sabine
5f857de3d8
feat(linux): mcompile fill rgkey with deadkey
2023-11-30 17:40:02 +01:00
Sabine
3d0980103b
feat(linux): mcompile leave rgkey; use SC; sort by VK_US (instead of VK_DE)
2023-11-30 14:40:08 +01:00
Sabine
aec220dfaa
feat(linux): mcompile tidy up
2023-11-30 11:33:37 +01:00
Sabine
df64c563c3
feat(linux): mcompile deadkeys: open DoConvert- "if(bDeadkeyConversion) {// I4552..."
2023-11-30 11:08:21 +01:00
Joshua A. Horton
f7058259c8
fix(web): test-keyboard patchup
2023-11-30 14:41:46 +07:00
rc-swag
51a462cff2
chore(windows): Merge branch 'master' into chore/windows/10052/remove-cached-context
2023-11-30 17:26:09 +10:00
rc-swag
0f18844669
Merge pull request #10101 from keymanapp/fix/check-empty-string-all-compiliers
...
fix(core): check for null termination
2023-11-30 17:24:38 +10:00
Joshua A. Horton
a475fda323
fix(web): right, modipressable multitaps don't get previews; null-guard needed
2023-11-30 14:21:32 +07:00
Joshua A. Horton
7203479685
refactor(web): mild refactor of bits from last commit
2023-11-30 14:01:57 +07:00
Joshua A. Horton
3f911edf3d
feat(web): multitap preview fade animation
2023-11-30 13:45:57 +07:00
Joshua A. Horton
68cad104cc
feat(web): core multitap preview implementation
2023-11-30 13:45:57 +07:00
Joshua A. Horton
aa72c8d712
chore(web): Merge branch 'feature-gestures' into change/web/floating-tablet-preview
2023-11-30 13:45:20 +07:00
Joshua Horton
907b688574
Merge pull request #10080 from keymanapp/chore/web/final-subsegmentation-removal
...
chore(web): final subsegmentation removal 🐵
2023-11-30 13:44:13 +07:00
Joshua Horton
bc592c80c0
Merge pull request #10079 from keymanapp/chore/web/gesture-stats-simplification
...
chore(web): gesture stats simplification 🐵
2023-11-30 13:44:04 +07:00
Joshua Horton
1279d1453b
Merge pull request #10063 from keymanapp/feat/web/orientable-keytip
...
feat(web): orientable key-tip for better flick-preview visibility 🐵
2023-11-30 13:43:55 +07:00
Joshua A. Horton
4f19b4cd1e
change(web): floating tablet key-previews, hosted by layer-independent element
2023-11-30 13:01:10 +07:00
rc-swag
d5963e05b6
fix: check for null termination
...
Determine the best way to check for null termination all compilers
2023-11-30 14:31:18 +10:00
rc-swag
35064073c1
chore(windows): Merge branch 'master' into chore/windows/10052/remove-cached-context
2023-11-30 13:58:19 +10:00
rc-swag
5351abbbff
Merge pull request #10098 from keymanapp/fix/core/set-if-needed-handles-cleared-cache
...
fix(core): set_if_needed updates an empty cached context
2023-11-30 13:56:53 +10:00
rc-swag
9e1f73573e
fix(core): review comments
...
Co-authored-by: Marc Durdin <marc@durdin.net>
2023-11-30 13:56:01 +10:00
rc-swag
6820f36f7d
fix(core): set_if_needed updates a empty cached context
...
In the case when the cached context had been cleared the
km_core_state_context_set_if_needed call would just compare
the null terminations of both strings and not set the cached
context to the application context.
2023-11-30 13:09:22 +10:00
rc-swag
63e4371513
chore(windows): fix argument passed into to km_core_state_context_set_if_needed
2023-11-30 12:51:52 +10:00
Joshua A. Horton
8ff64d09d7
chore(android): simple host-page force-reset after kbd updates
2023-11-30 09:41:02 +07:00
Joshua A. Horton
977ad9cfbf
change(web): adds CSS type based on 'top' | 'bottom' custom type
2023-11-30 08:29:15 +07:00
Joshua A. Horton
41c0a9b2f2
change(web): 'up' | 'down' as to 'top' | 'bottom' custom type
2023-11-30 08:28:53 +07:00
Steven R. Loomis
4d22b177af
feat(core): ldml improve key-not-found 🙀
...
- unused nit fix
For: #9451
2023-11-29 14:34:33 -06:00
Steven R. Loomis
95e4a20ca3
Merge branch 'master' into fix/core/9451-key-not-found-epic-ldml
2023-11-29 14:32:05 -06:00
Steven R. Loomis
84cc59c174
feat(core): ldml improve key-not-found 🙀
...
- restructure keyup/keydown code some
- new utility function emit_invalidate_passthrough_keystroke()
For: #9451
2023-11-29 14:29:26 -06:00
Keyman Server
d084538622
Merge pull request #10094 from keymanapp/auto/version-master-17.0.220
...
auto: increment master version to 17.0.220
2023-11-30 01:04:39 +07:00
Keyman Build Agent
5b17b051ce
auto: increment master version to 17.0.220
2023-11-29 13:04:03 -05:00
Eberhard Beilharz
2023360421
fix(web): Don't throw errors after detach
...
Fixes #10031 .
2023-11-29 12:21:32 +01:00
Eberhard Beilharz
de2fb3aeac
Merge pull request #10089 from keymanapp/chore/web/sourcemap
...
fix(web): Also move source map
2023-11-29 09:41:01 +01:00
Eberhard Beilharz
57b20ac033
Merge pull request #10085 from keymanapp/fix/web/tests
...
fix(web): Fix attachment-api tests
2023-11-29 09:40:32 +01:00
Marc Durdin
3ef4dc7f84
Merge pull request #10016 from keymanapp/fix/developer/project-internal-paths
...
fix(developer): projects 2.0 internal path enumeration 🦕
2023-11-29 16:50:25 +11:00