Commit graph

984 commits

Author SHA1 Message Date
Marc Durdin
261fae7edd chore(windows): fixup devsetup makefile whitespace 2021-12-07 19:31:00 +01:00
Marc Durdin
dee896b4c6 chore(windows): move from Borland make to nmake
While it may be smarter to move to a different build system altogether,
it is also a *lot* more work. This was a fairly minor syntax refresh to
get nmake working with our existing Makefile system. This is now no
longer compatible with Borland make, so you will need to use `nmake` to
build.

The presence of NMAKE.md informs builds systems that nmake should be
used instead of make.
2021-12-06 12:47:31 +04:00
Marc Durdin
bf65ecf82b chore(windows): path fixes for version.rc includes 2021-12-05 17:24:28 +11:00
Marc Durdin
e00ff063c8 chore(windows): version.rc use macros instead of mkver 2021-12-05 17:12:56 +11:00
Marc Durdin
bf42bc4141
Merge pull request #5972 from keymanapp/fix/developer/kmcomp-build-js-message
fix(developer): building kmw keyboard had wrong message callback signature
2021-12-03 08:47:46 +11:00
Marc Durdin
4b3405fef9 fix(developer): debugger crash with empty group
As the array length properties are unsigned integers, taking -1 from
them resulted in an integer overflow when the array was empty. A gotcha
with Delphi-style for loops!
2021-12-02 05:12:52 +11:00
Marc Durdin
b930d8199a chore(developer): tweak language metadata message
Relates to https://community.software.sil.org/t/why-does-the-details-tab-in-keyman-developer-still-refer-to-keyman-10/5612/3
2021-11-29 08:27:21 +11:00
Marc Durdin
d4186b5093
Merge pull request #5971 from keymanapp/chore/developer/move-kcframe
chore(developer): move kcframe into its own folder
2021-11-29 06:38:39 +11:00
Marc Durdin
94cfbae33d
Merge pull request #5923 from keymanapp/fix/developer/5905-debugger-render-on-touch-devices
fix(developer): render OSK nicely on touch devices
2021-11-29 06:37:15 +11:00
Marc Durdin
9fc9d9391e fix(developer): building kmw keyboard had wrong message callback signature
Picked up during #5963 development.

If you ran `kmcomp <file.kmn> <out.js>`, compiler messages were passed
to a function with an incorrect signature, resulting in an exception.
This was a mode that was not widely used, which is why we haven't
picked it up earlier.
2021-11-25 14:37:47 +11:00
Marc Durdin
ac30b280ae chore(developer): move kcframe into its own folder 2021-11-25 14:35:51 +11:00
Marc Durdin
9259ba5827 fix(developer): move web osk beneath text area
Fixes #5926.

This gives space for the popups to appear, even if they are large.
2021-11-18 15:00:44 +11:00
Marc Durdin
68135b9a5e fix(developer): use correct tike icon
Fixes #5924.

I'm not sure when this happened. But it should be right now.
2021-11-17 16:48:42 +11:00
Marc Durdin
5789d39deb fix(developer): render osk nicely on touch devices
Fixes #5905.

Touch devices now use a touch keyboard only in the web debugger.
2021-11-17 15:46:04 +11:00
Marc Durdin
a25b9cd8eb
Merge pull request #5894 from keymanapp/feat/developer/2858-u_xxxx_yyyy
feat(developer): support for U_xxxx_yyyy
2021-11-14 15:47:55 +11:00
Marc Durdin
b9c492a66b feat(developer): validate .kps files during compile
Fixes #5464.

The keyboards repository already has code to validate .xsd files, using
xmllint. This adds the same functionality directly into kmcomp and TIKE.
2021-11-11 14:41:04 +11:00
Marc Durdin
33a2e230f6 chore(developer): enforce file versions for feature 2021-11-11 13:26:56 +11:00
Marc Durdin
66be206d96 feat(developer): support for U_xxxx_yyyy 2021-11-11 13:08:39 +11:00
Marc Durdin
954717c0b2
Merge pull request #5776 from keymanapp/fix/developer/5718-handle-shortcut-keys-in-debugger
fix(developer): handle shortcut keys in debugger
2021-11-11 07:21:54 +11:00
Marc Durdin
024a36da9f
Merge pull request #5787 from keymanapp/chore/sentry-io
chore: sentry.io dsn 👮‍♂️
2021-10-06 07:32:43 +11:00
Marc Durdin
0cf4a3c512
Merge pull request #5723 from keymanapp/feat/developer/touch-layout-testing
feat(developer): touch layout testing 🎩
2021-10-05 17:40:26 +11:00
Marc Durdin
3219b44624 chore: sentry.io dsn 2021-10-04 15:01:36 +11:00
Marc Durdin
6882e97ae0
Merge pull request #5749 from keymanapp/fix/web/2924-variable-stores-and-fat-fingering
fix(web): support variable stores with predictive text
2021-10-02 11:12:34 +10:00
rc-swag
96da136a95
Merge pull request #5443 from keymanapp/feat/windows/keyman-core-integration-2
feat(windows): Keyman Core integration 🥑
2021-09-30 10:54:17 +10:00
Marc Durdin
3a53d662d2 fix(developer): handle shortcut keys in debugger
Fixes #5718.

The debugger memo control will now filter out action shortcut keys such
as Ctrl+A, Ctrl+O, so that the keyboard being debugged can get the first
chance to look at them and handle them if it wishes.

If the keyboard does not handle the keystroke, then a set of editor
shortcut keys will be handled by the debugger, namely:

* Ctrl+A - select all
* Ctrl+C - copy
* Ctrl+V - paste
* Ctrl+X - cut
* Ctrl+Z - undo

Note that undo semantics are a little weird with the debugger, but that
is not related to this fix. By a little weird, I mean that characters
emitted by the keyboard being debugged do not flow into the undo buffer,
so undo often has no effect. I am not planning to fix this idiosyncrasy
at this time.
2021-09-30 07:51:07 +10:00
Marc Durdin
1b16a0d957
Merge pull request #5746 from keymanapp/fix/developer/5702-shift-6-ampersand
fix(developer): move ampersand to shift+7 on touch
2021-09-30 06:09:24 +10:00
Marc Durdin
c0ac074618
Merge pull request #5720 from keymanapp/fix/developer/5327-touch-remove-empty-rows
fix(developer): remove empty touch rows on save
2021-09-29 07:38:31 +10:00
rc-swag
b71fde66f9
Merge branch 'master' into feat/windows/keyman-core-integration-2 2021-09-27 21:40:22 +10:00
Marc Durdin
a65b55e1b5 fix(web): support variable stores with predictive text
Fixes #2924.

When a keyboard includes variable stores, predictive text fat-fingering
tests will no longer affect the variable store values.
2021-09-27 06:54:24 +10:00
Marc Durdin
d4b9f18106 fix(developer): move ampersand to shift+7 on touch
Fixes #5702.

On the phone layout for two templates, ampersand (`&`) was on Shift+6
instead of on Shift+7.
2021-09-24 14:01:24 +10:00
Marc Durdin
eee06e18be chore(developer): cleanup links and display attributes 2021-09-23 14:03:39 +10:00
Marc Durdin
896b922865 chore(developer): refactoring - minor 2021-09-23 13:51:54 +10:00
Marc Durdin
05cefaf9f8 feat(developer): improve look and feel of test view 2021-09-22 11:02:54 +10:00
Marc Durdin
6b39383743 feat(developer): touch layout testing
Adds support for testing touch layouts without requiring use of device
emulation. Uses new InlinedOSKView.

Does not yet add a view within Keyman Developer; this will come shortly.
2021-09-22 11:02:53 +10:00
Marc Durdin
6b8d941f9e chore: add KeymanDeveloperPaths to kmcomp project 2021-09-21 06:45:26 +10:00
Marc Durdin
e6190ee05f fix(developer): run kmlmc from Keyman source path
Makes it possible to run the kmlmc.cmd compiler wrapper script from
Keyman Developer while debugging from source.

Adds a new class `TKeymanDeveloperPaths` which is similar to
`TKeymanPaths`, to provide a future single location for all Keyman
Developer path-related functions. There are a number scattered through
the source at present, e.g. in `RedistFiles.pas`, so this is just a
starting point.
2021-09-21 06:25:35 +10:00
Marc Durdin
ffd66e32e1
Merge pull request #5697 from keymanapp/fix/developer/5013-debugger-ralt-not-working
fix(developer): support chiral modifiers in debugger 🐞
2021-09-20 16:12:47 +10:00
Marc Durdin
41a9e8c26d
Merge pull request #5696 from keymanapp/feat/developer/5695-debugger-track-set-option-value
feat(developer): track changes to option values better in debugger 🐞
2021-09-20 16:12:39 +10:00
Marc Durdin
6de2238a25 fix(developer): remove empty touch rows on save
Fixes #5327.
2021-09-20 09:15:09 +10:00
Marc Durdin
838693d132
Merge pull request #5647 from keymanapp/feat/developer/debugger-keyboard-options
feat(developer): Debugger keyboard options 🐞
2021-09-17 10:11:29 +10:00
Marc Durdin
7295ea9af3
Merge pull request #5640 from keymanapp/feat/developer/debugger-platform-option
feat(developer): Debugger platform option 🐞
2021-09-17 10:10:53 +10:00
Marc Durdin
72e6188192 fix(developer): support chiral modifiers in debugger
The ralt, rctrl, lalt, lctrl modifiers were not working correctly
in the debugger.

Relates to #5013.
2021-09-15 15:55:42 +10:00
Marc Durdin
cec8d11759 feat(developer): track changes to option values better in debugger
Fixes #5695.

When the debugger is in single-step mode, reflects the value of option
stores at the time of the change rather than at the beginning of the
batch.
2021-09-15 15:29:44 +10:00
Marc Durdin
564a8a019a chore(developer): Merge branch 'feat/developer/debugger-platform-option' into feat/developer/debugger-keyboard-options 2021-09-14 14:18:39 +10:00
Marc Durdin
207bf84fd9 fix(developer): iOS platform is touch not hardware 2021-09-14 06:24:37 +10:00
Marc Durdin
4aeb06f98d feat(developer): handle form factor in platform options 2021-09-13 15:51:20 +10:00
Marc Durdin
bab345cb65 chore(developer): Merge branch 'master' into fix/developer/5577-import-from-layout-dirty-flag 2021-09-13 12:27:12 +10:00
Marc Durdin
36c21657e2 fix(developer): ensure file modified after import from layout
Fixes #5577.

This ensures that the touch layout file is marked as modified after
running Import From Layout in Keyman Developer, so that changes are
not lost when you save.
2021-09-10 14:19:47 +10:00
Marc Durdin
986743b05e chore(developer): fixup merge issue 2021-09-10 12:02:16 +10:00
Marc Durdin
8dffc75e00
Merge branch 'feat/developer/debugger-platform-option' into feat/developer/debugger-keyboard-options 2021-09-10 10:48:29 +10:00