Commit graph

27982 commits

Author SHA1 Message Date
Joshua A. Horton
fa2be938d9 fix(web): drops unused 'menuEvent' and associated dead branch 2024-05-29 08:48:01 +07:00
Joshua A. Horton
bdbf94bd47 chore(web): replaces a couple of 'var's 2024-05-29 08:42:39 +07:00
Joshua Horton
7008a3972e chore(mac): replaces more 'typeset' uses 2024-05-29 08:28:18 +07:00
Joshua Horton
12cb94c5a3
change(mac): Apply suggestions from code review
Co-authored-by: Marc Durdin <marc@durdin.net>
2024-05-29 08:26:45 +07:00
Eberhard Beilharz
8dc30c9d28
fix(web): Don't apply suggestion unless fully configured
We can't really apply a suggestion unless we have the configuration object
(that provides the context).

Fixes: #11593
Fixes: KEYMAN-WEB-FX
2024-05-28 20:55:35 +02:00
Dr Mark C. Sinclair
2b313cb1c9 chore(developer): add initial GetXStringImpl test 2024-05-28 16:42:46 +01:00
Eberhard Beilharz
4d4b10fc95
fix(linux): Don't clean workdir after checkout in API verification
Set the option for the Checkout step to not  run `git clean` after checkout
because that gets rid of the artifacts we previously restored.
2024-05-28 16:32:05 +02:00
Eberhard Beilharz
c8d8e4187a
Merge pull request #11571 from keymanapp/fix/linux/apiverification
fix(linux): Restore artifacts for API verification in the correct job
2024-05-28 15:02:36 +02:00
Dr Mark C. Sinclair
4b35c815dd chore(developer): add additional case to GetRHS test 2024-05-28 11:53:41 +01:00
Dr Mark C. Sinclair
ec06107fcc chore(developer): add initial GetRHS test 2024-05-28 10:23:34 +01:00
Dr Mark C. Sinclair
9f4dbf8251 chore(developer): Merge branch 'master' into test/developer/kmcmplib-compiler-unit-tests 2024-05-28 10:06:18 +01:00
Marc Durdin
951eb571fe chore(developer): rename Default_DefaultProjectPath to Get_Initial_DefaultProjectPath 2024-05-28 14:39:07 +07:00
Marc Durdin
1826c13f35 fix(developer): make top row of Character Map 1 pixel to avoid DIV/0 in gestures
An apparent issue in the Grid control in Delphi is that if the top row
is zero pixels high (hiding it), a pan gesture on touchscreen causes an
EDivByZero. This patch works around the issue by making the top row 1
pixel high.

Fixes: #11589
Fixes: KEYMAN-DEVELOPER-1C3
Fixes: KEYMAN-WINDOWS-43C
2024-05-28 14:25:48 +07:00
Marc Durdin
dfc90de81d fix(developer): handle editor initializing after debugger when setting execution point
Fixes: #11586
Fixes: KEYMAN-DEVELOPER-1K7
2024-05-28 13:53:04 +07:00
Marc Durdin
222ff6a182 change(common): add extra commit message hints
These changes come out of discussion in the team; we want to make use of
git trailers and improve the quality of our commit messages. Starting by
adding more hints to the commit suggestions. Includes some minor cleanup
of the hooks, and hopefully also improves tests so that they don't
interfere with interactions with non-Keyman repos.

Note: the scopes list may need maintenance as the list still includes
sub-scopes and 'oem'.
2024-05-28 10:57:46 +07:00
Marc Durdin
9f5141b18c fix(developer): correct the inference of default hint from flicks
There were two problems here:
* An undeclared variable `source`
* The `flick` parameter is an array, not an object, so indexing by
  direction is invalid

Fixes: #11581
Fixes: KEYMAN-DEVELOPER-1YW
2024-05-28 09:49:38 +07:00
Joshua A. Horton
2503dfa3a8 fix(web): headless recorder unhandled paths, invalid test-sequence reference 2024-05-28 09:40:50 +07:00
Joshua A. Horton
903d214b43 fix(web): null guard missing debug info when reporting to Sentry
Fixes #11548.
2024-05-28 08:20:35 +07:00
Marc Durdin
5c40ec9878 fix(developer): use correct variable when fixing up flick and multitap in Layer Properties dialog
Fixes: #11574
Fixes: KEYMAN-DEVELOPER-1GC
2024-05-28 06:54:47 +07:00
Marc Durdin
193250db71 fix(developer): save touch layout editor selection when loading state
Key selection was left in a corrupted state in `builder.loadState()`, on
first load of the touch layout editor, because the selection was not
restored after calling `prepareLayer()`.

This only happens on first load because after first load, the selection
will have been saved to the state (which is kept in the backend,
associated with the instance of the editor), so pressing F5 to reload
the page will not reproduce the issue.

Fixes: #11573
Fixes: KEYMAN-DEVELOPER-1Z8
2024-05-28 06:46:48 +07:00
Steven R. Loomis
403d342e10 test(core): clarify output of test_unicode
- group output by functional area

#10183
2024-05-27 16:42:11 -05:00
Eberhard Beilharz
32bc9e7833
fix(linux): Restore artifacts for API verification in the correct job
Previously we had an extra job where we setup the environment and
restored the artifacts. However, the artifacts then were no longer
available in the next job, `api_verification`. Instead of restoring
the artifacts a second time this change squashes the two jobs. This will
hopefully fix the API verification.
2024-05-27 19:18:11 +02:00
Steven R. Loomis
7d9b1a1ed1
Merge pull request #11520 from keymanapp/feat/core/9467-devolve-norm-to-js2-epic-ldml
feat(core): change normalize_nfd() to use JS native call instead of ICU on wasm 🙀
2024-05-27 10:26:32 -05:00
Steven R. Loomis
ab7fd5ee37
Merge pull request #11519 from keymanapp/feat/core/9467-devolve-regex-to-js-epic-ldml
refactor(core): prepare normalization code to call into JS under WASM 🙀
2024-05-27 10:25:50 -05:00
Eberhard Beilharz
710567590f
Merge pull request #11536 from keymanapp/fix/linux/apiverification
chore(linux): Debugging API verification
2024-05-27 15:31:57 +02:00
Steven R. Loomis
948f979b88
Merge branch 'feat/core/9467-devolve-regex-to-js-epic-ldml' into feat/core/9467-devolve-norm-to-js2-epic-ldml 2024-05-27 08:30:19 -05:00
Steven R. Loomis
88af4f588c
Merge branch 'master' into feat/core/9467-devolve-regex-to-js-epic-ldml 2024-05-27 08:30:08 -05:00
Marc Durdin
bd01d4b72a
Merge branch 'master' into chore/common/8399-cleanup-meson-warnings 2024-05-27 20:26:54 +07:00
Steven R. Loomis
1700953351
Merge pull request #11418 from keymanapp/chore/common/10183-unicode-version
test(core): verify Unicode and ICU versions cross-platform 🙀
2024-05-27 08:25:20 -05:00
Marc Durdin
b1643bd6cd
Merge pull request #11565 from keymanapp/chore/run-sourcepackage-job-on-24.04
chore(linux): run deb-package sourcepackage job on Ubuntu 24.04
2024-05-27 20:25:06 +07:00
Eberhard Beilharz
8ae5090e6c
fix(linux): Ignore API verification check until it is working
This temporary change will always set the result to SUCCESS so as not
to block PRs. Once we get the API verification working we should undo
these changes again.
2024-05-27 15:06:40 +02:00
sgschantz
171cbc34e2 fix(ios): prevent crash by removing incorrect cast in log statement
when writing the fileUrl to the log, a variable was miscast
causing the app to crash -- remove cast and return absoluteString
for fileUrl
Fixes #11567
2024-05-27 16:10:33 +07:00
Marc Durdin
1c5d0c58e6 chore(linux): run deb-package sourcepackage job on Ubuntu 24.04
Ubuntu 22.04 has meson 0.61; 24.04 has meson 1.3, so updated the
sourcepackage step in deb-packaging to 24.04 to meet min reqs.
2024-05-27 15:10:08 +07:00
Marc Durdin
8efba7186e fix(developer): handle missing data in .kps <Keyboard>
Handles when `<Version/>`, `<Name/>`, or `<ID/>` elements are missing
from `<Keyboard>` elements in the .kps file in kmc-package. Adds a unit
test.

Fixes: #11562
Fixes: KEYMAN-DEVELOPER-1YY
2024-05-27 15:04:53 +07:00
Marc Durdin
15acd713fb fix(developer): handle invalid project file when scanning for owner project
Also updates the only other place where a project file is loaded like
this, in the project renderer, and handles it too (this scenario is
less likely to happen because the project file must already have been
loaded in order to be presented in the UI).

Fixes: #11557
Fixes: KEYMAN-DEVELOPER-1Z2
2024-05-27 12:46:49 +07:00
Marc Durdin
59a907ee04 fix(developer): handle invalid default project path in options
If a relative or otherwise invalid path is given for `default project
path` in .keymandeveloper/options.json, then this will reset the path
to the default of `%Documents%/Keyman Developer/Projects`.

Fixes: #11554
Fixes: KEYMAN-DEVELOPER-1ZB
2024-05-27 12:14:53 +07:00
Marc Durdin
79ac9208cf
Merge pull request #11527 from keymanapp/chore/common/labels
chore(common): update labels to include change, style
2024-05-27 10:59:27 +07:00
Marc Durdin
6d2164f1e6 fix(developer): ensure folder for MRU list is always created
This arises if `%AppData%/Keyman/Keyman Developer` folder is missing.
It is sporadic because most times, Keyman Developer Server wins a
startup race and creates the folder before this code is ever reached.

Fixes: #11551
Fixes: KEYMAN-DEVELOPER-1MY
2024-05-27 10:50:58 +07:00
Joshua A. Horton
512fd34797 chore(web): Merge branch 'master' into fix/web/early-webview-kbd-activation 2024-05-27 09:42:09 +07:00
Marc Durdin
67484cb5d5 fix(developer): handle unsupported return statement in match and nomatch in web compiler
The `return` statement is unsupported in the web compiler. This is
documented, but the problem here was that the `nomatch` and `match`
metarules have no corresponding `fkp` structure, so that caused a fatal
error in the compiler if these were used in combination, e.g.

    nomatch > return

Fixes: #11545
2024-05-27 09:38:46 +07:00
Joshua A. Horton
e7b0dd1dad chore(web): cleans out redundant tsconfig setting 2024-05-27 09:21:06 +07:00
Joshua A. Horton
2c79db4cb5 chore(web): Merge branch 'master' into chore/web/update-typescript 2024-05-27 09:20:01 +07:00
Shawn Schantz
b068f94537
Merge pull request #11515 from keymanapp/fix/mac/10997-adopt-unified-logging
change(mac): adopt unified logging APIs
2024-05-27 09:11:45 +07:00
Joshua Horton
e49d26ad9d change(mac): relocates one shell var definition 2024-05-27 09:04:58 +07:00
sgschantz
1d5ef914ce fix(mac): adopt unified logging
address review comments
2024-05-27 08:58:25 +07:00
Joshua Horton
45e0d875b3 fix(mac): -e to check if dir exists, as -f doesn't match against dirs 2024-05-27 08:48:26 +07:00
Joshua Horton
9c4eb99a3a fix(mac): non --debug test references 'release' artifacts 2024-05-27 08:42:10 +07:00
Marc Durdin
e9175de00f fix(developer): test existence of ngrok.exe before atttempting to start
Fixes the scenario where the `%AppData%\Keyman\Keyman Developer\Server\bin`
folder exists, but ngrok.exe is not in the folder, which caused Keyman
Developer Server to crash.

Fixes: #11542
Fixes: KEYMAN-DEVELOPER-1JE
2024-05-27 08:21:13 +07:00
Marc Durdin
d1b45d396d
Merge pull request #11540 from keymanapp/chore/merge-master-into-windows-updates
chore: merge master into windows-updates
2024-05-27 06:46:29 +07:00
Steven R. Loomis
5d420248eb feat(core): move more normalization logic into JS
- major redo of actions_normalize - into UTF-32 and not using ICU directly
- add some utilities: u32len, u32dup, context_items_from_utf32

#9467
2024-05-24 18:20:30 -05:00