mirror of
https://github.com/keymanapp/keyman.git
synced 2026-09-21 07:07:39 +00:00
[Windows] Fixes #1600. Keyman now handles backspace correctly again for SMP characters in TSF-aware apps
This commit is contained in:
parent
c08cb38970
commit
ffebb60a92
2 changed files with 19 additions and 0 deletions
|
|
@ -281,6 +281,13 @@ BOOL ProcessGroup(LPGROUP gp)
|
|||
fOutputKeystroke = TRUE; // I4933
|
||||
return FALSE; // I4933
|
||||
}
|
||||
if (Uni_IsSurrogate1(*pdeletecontext) && Uni_IsSurrogate2(*(pdeletecontext+1))) {
|
||||
// 2 backspaces to delete both parts of surrogate pair
|
||||
// This only needs to be done for non-legacy apps as legacy apps
|
||||
// will receive a BKSP WM_KEYDOWN event which results in deleting
|
||||
// both parts in one action
|
||||
_td->app->QueueAction(QIT_BACK, BK_BACKSPACE);
|
||||
}
|
||||
}
|
||||
_td->app->QueueAction(QIT_BACK, BK_BACKSPACE); // I4933
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,4 +4,16 @@ keyman-debug-etw.man will be installed with Keyman Engine so that debug log file
|
|||
Microsoft Message Analyzer. You can import the layout file keyman-debug-etw.asset into Microsoft Message Analyzer
|
||||
to provide a good default layout for Keyman log files.
|
||||
|
||||
To manually install the provider, run:
|
||||
|
||||
wevtutil im keyman-debug-etw.man
|
||||
|
||||
To uninstall it (a good idea often before installing):
|
||||
|
||||
wevtutil um keyman-debug-etw.man
|
||||
|
||||
You may need to manually edit the file to add the paths for keyman32.dll, e.g.:
|
||||
|
||||
<provider name="Keyman-Debug-ETWProvider" guid="{DA621615-E08B-4283-918E-D2502D3757AE}" symbol="ProviderGuid" message="$(string.Provider.Name)" messageFileName="C:\Program Files (x86)\Common Files\Keyman\Keyman Engine\keyman32.dll" resourceFileName="C:\Program Files (x86)\Common Files\Keyman\Keyman Engine\keyman32.dll">
|
||||
|
||||
Debug log files are written to %LOCAL_APP_DATA%\Keyman\Diag.
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue