Commit graph

2951 commits

Author SHA1 Message Date
Marc Durdin
250fa86634 chore: Merge branch 'master' into chore/beta-to-master-b16s1 2022-11-11 16:12:46 +11:00
Marc Durdin
52c9fde57a
Merge pull request #7667 from keymanapp/fix/windows/base-layout-support-in-core
fix(windows): base layout support in Keyman Core
2022-11-11 06:37:39 +11:00
Marc Durdin
4738b6a514 fix(windows): Improve shutdown robustness
Relates to KEYMAN-WINDOWS-B.

While this doesn't address the root cause of the exception, it should
prevent this unhandled exception, and adds breadcrumbs to help us see
which code path might be triggering the issue.
2022-11-10 16:10:49 +11:00
Marc Durdin
b087d22928 fix(windows): base layout support in Keyman Core
While Keyman Core already supported the base layout flags, they were not
being passed in from Keyman Engine for Windows. This meant that any
rules that used `baselayout` would fail, such as in sil_ipa with AltGr+0
for }

0bf72bed74/release/sil/sil_ipa/source/sil_ipa.kmn (L348-L350)

This patch adds support for the following properties:

* KM_KBP_KMX_ENV_BASELAYOUT: the legacy base layout name, e.g. kbdus.dll
* KM_KBP_KMX_ENV_BASELAYOUTALT: the BCP 47 base layout name, e.g. en-US
* KM_KBP_KMX_ENV_SIMULATEALTGR: whether the user has selected to emulate
  AltGr with Ctrl+Alt, for example on laptops without a right alt key.
* KM_KBP_KMX_ENV_BASELAYOUTGIVESCTRLRALTFORRALT: whether the system base
  layout in use generates Ctrl+RAlt when RAlt is pressed, which can be
  true for many European system layouts. This is necessary when
  associating the keyboard with a European language because the base
  keyboard becomes the language's default keyboard, rather than kbdus.
2022-11-10 11:26:44 +11:00
Marc Durdin
9a76e7a727 fix(windows): Cleanup CEF more correctly in shutdown
Hopefully fixes KEYMAN-WINDOWS-1MR, and probably many related crash
reports. Will monitor on alpha before porting to stable/beta.

This changes the form destruction sequence to make sure that it
doesn't close the form until CEF has been shutdown correctly.
2022-11-09 16:35:27 +11:00
Marc Durdin
10549fdd78 fix(windows): include debug info in kmshell build
Should allow us to get line numbers for kmshell.exe crash reports
2022-11-02 15:52:10 +11:00
Marc Durdin
fc6b496834 chore: update help version and whatsnew 2022-11-01 08:15:57 +11:00
Marc Durdin
d64bf82a35
Merge pull request #7206 from keymanapp/feat/windows/6296/configuration-ui-polish
feat(windows): configuration UI polish
2022-11-01 05:42:39 +11:00
Ross
d34d03d8bd feat(windows): fixed no hotkey boarder over lap
Reduced the css gridbox minium width and increased the overal
configuration windows minimum width.
Also add ms windows styling to add remove pop up.
2022-10-31 15:25:25 +10:00
Darcy Wong
d04893b638
Merge pull request #7558 from keymanapp/chore/help-16-0
chore(common): Update help references from 15.0 to 16.0
2022-10-28 07:32:04 +07:00
rc-swag
3146218fc7
Merge pull request #7546 from keymanapp/feat/windows/keyevent-as-private-wm-user-message
chore(windows): convert `wm_keyman_keyevent` and `wm_keyman_modifierevent` to private `WM_USER` messages
2022-10-28 09:33:14 +10:00
Darcy Wong
df0153f8f9
Merge pull request #7498 from keymanapp/chore/common/crowdin-nl
chore(common): Add crowdin strings for Dutch
2022-10-27 20:25:33 +07:00
Ross
db7c5837f1 feat(windows): Use opacity to reflect disabled keyboard 2022-10-27 22:30:08 +10:00
Ross
dce4304f17 feat(windows): select hotkey link on header stop propgation 2022-10-27 20:51:55 +10:00
Darcy Wong
263b04dce4 fix(windows): Fix language names 2022-10-27 16:18:16 +07:00
Ross
e7f840c5ab feat(windows): new shield icon for elevated config 2022-10-27 16:17:45 +10:00
Ross
74e764cd59 feat(windows): address review comments 2022-10-27 16:06:20 +10:00
Darcy Wong
5cf0ae6d64 chore(common): Update help references from 15.0 to 16.0 2022-10-27 13:05:38 +07:00
rc-swag
51e6dd8543
chore(windows): apply suggestions from code review
Co-authored-by: Marc Durdin <marc@durdin.net>
2022-10-27 09:03:22 +10:00
Ross
102f34ecb0 feat(windows): convert wm keyevent and to private wm user message
wm_keyman_keyevent and wm_keyman_modifierevent have been convert to use
the WM_USER message range and no longer global message
2022-10-26 15:34:12 +10:00
Ross
487b3cad9c feat(windows): Change "None" to "No Hotkey" matching new config
Change the label on the radio button for "Change Hotkey" dialogue
to "No Hotkey" to match the change to the windows configuration.
2022-10-26 11:27:32 +10:00
rc-swag
50a7733814
feat(windows): apply suggestions from code review
Co-authored-by: Eberhard Beilharz <ermshiperete@users.noreply.github.com>
2022-10-25 23:36:23 +10:00
Darcy Wong
1bc6e6a06f chore(common): Update crowdin strings for 16.0 2022-10-25 11:33:44 +07:00
Darcy Wong
081c23c798 chore(common): Add crowdin strings for Dutch 2022-10-20 09:42:56 +07:00
Ross
53ae794877 feat(windows): code style consistency in css 2022-10-20 12:01:55 +10:00
Ross
d4dee04c7f feat(windows): remove hotkey from pop-up. content-frame size
The hotkey option and editing did not need to be on the add remove
languages pop-up.
There size of the contentframe for all the tabs was incorrectly
calculated. The header size was not correct as the header had
padding. This caused the size to be redrawn incorrectly when
a scroll bar was first added.
2022-10-19 15:22:03 +10:00
Ross
f3fdccf602 feat(windows): add modify dialog save state jSON 2022-10-17 15:13:16 +10:00
rc-swag
65696d85f1
fix(windows): review comments for code comment
Co-authored-by: Eberhard Beilharz <ermshiperete@users.noreply.github.com>
2022-10-14 18:33:12 +10:00
rc-swag
b6722f6a0a
fix(windows): Add review suggestions
Co-authored-by: Marc Durdin <marc@durdin.net>
2022-10-14 16:14:51 +10:00
Ross
90eb7c77ec fix(windows): ensure all modifier events go to seralized queue 2022-10-13 13:24:29 +10:00
Ross
a3645dde43 feat(windows): seperate localisation strings
Use a different string id for a button and header
as in other languages they may translate differently
2022-10-11 21:10:11 +10:00
Ross
1d7e0cedc9 feat(windows): Tweaks to layout
- Red Text in Languages if no languages have been added
- Adjust spacing for the keyboard layout buttons to insure the overall
  flex box padding matches the gap between the buttons.
- Remove blue hover from languages
- Add a selection colour for keyboard layout that has focus
- Change Hover colour for buttons
- Tweaks to the appearance of the Add/remove languages pop-up include a close button.
2022-09-29 21:14:28 +10:00
Ross
d2075cdbcc feat(windows): fix localisation for enable/disable 2022-09-28 15:00:05 +10:00
Ross
85ede116b9 feat(windows): address review comments 2022-09-28 11:14:35 +10:00
rc-swag
7ac4dd64b8
feat(windows): address review comments
Co-authored-by: Marc Durdin <marc@durdin.net>
Co-authored-by: Eberhard Beilharz <ermshiperete@users.noreply.github.com>
2022-09-27 14:47:42 +10:00
Marc Durdin
a4ca7968b9 chore(common): make scripts executable and add pre-commit test 2022-09-19 13:59:09 +10:00
Ross
14439e8f5f feat(windows): Revert to XML buttons and remove animation 2022-09-16 21:37:24 +10:00
Ross
485ea5e7d0 feat(windows): add left right arrow for extra details 2022-09-16 17:16:25 +10:00
Ross
f108ea107a feat(windows): add key controls for selection
This has many updates to the layout of the hotkey displays
the css grid also has improvements. It also connects to the arrow keys
and fixes the focus of list items when selecting menu-item tabs
2022-09-16 09:39:24 +10:00
rc-swag
f8a0397fb3
docs(windows): apply review suggestions
Co-authored-by: Marc Durdin <marc@durdin.net>
2022-09-12 10:38:43 +10:00
Ross
e406018267 docs(windows): add steps for using testhost debugging 2022-09-12 10:20:49 +10:00
Marc Durdin
30ccee63e8
Update windows/src/engine/keyman32/tests/keyman-engine-tests/kmprocessactionstests.cpp
Co-authored-by: Eberhard Beilharz <ermshiperete@users.noreply.github.com>
2022-09-10 06:20:48 +10:00
Ross
fc57b3d8e4 fix(windows): fix includes and dep for unit test proj
Also add a test for surrogate backspace
2022-09-09 16:10:57 +10:00
Ross
90851ad311 fix(windows): TSF apps delete all of smp
When the windows platform recieves the action for a backspace
it will check to see if the character being delete is a surrogate
pair. If it is and the app is TSF aware app it will need to backspace
twice to remove both parts of the surrogate pair. For legacy apps this
is not required.
2022-09-08 22:28:35 +10:00
Ross
44054fbecc feat(windows): WIP hotkey indexing works and some style changes 2022-09-08 14:00:33 +10:00
Ross
5c50519824 feat(windows): WIP all css js mods 2022-08-31 22:30:15 +10:00
Ross
04a0f5a32f fix: grammar and typos 2022-08-22 13:42:31 +10:00
Ross
ecad0209cb fix: Add invalidate context action to non-updatable parse
Rename ProcessActionsTestParse to NonUpdatable parse. It does
more then just test. Add handling for the invalidate context action
to this parse, so that if we emit a keystroke we invalidate the context
2022-08-22 11:51:01 +10:00
Ross
f2fe3b1693 fix: remove saving and restoring context kbd options
Remove the saving of context and keyboard options
on the non updateable call to process hook.

The windows Text Input Processor calls twice one call
is not updateable. With the core integeration we run
the processor only once, preserving the actions and
context to be applied on the updatable call.
2022-08-17 11:39:16 +10:00
Marc Durdin
b1b097b659 chore(windows): update include paths 2022-08-11 14:30:15 +02:00