diff options
| author | Neil Hodgson <nyamatongwe@gmail.com> | 2023-01-14 10:03:54 +1100 |
|---|---|---|
| committer | Neil Hodgson <nyamatongwe@gmail.com> | 2023-01-14 10:03:54 +1100 |
| commit | b7268373ff61c61f0e904de0aef7e9eab704005b (patch) | |
| tree | dca02d73be2634cd7b947d64f5601f9fa5153317 /cocoa | |
| parent | 38b932199b71aeb0f7b28d11c21249bb46cfe8ba (diff) | |
| download | scintilla-mirror-b7268373ff61c61f0e904de0aef7e9eab704005b.tar.gz | |
Bug [#2374]. Fix character input bug where dotless 'i' and some other extended
Latin characters could not be entered.
The change also stops SCI_ASSIGNCMDKEY from working with these characters.
Diffstat (limited to 'cocoa')
| -rw-r--r-- | cocoa/ScintillaCocoa.mm | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/cocoa/ScintillaCocoa.mm b/cocoa/ScintillaCocoa.mm index 0b1693f50..64ea4f874 100644 --- a/cocoa/ScintillaCocoa.mm +++ b/cocoa/ScintillaCocoa.mm @@ -2228,6 +2228,10 @@ bool ScintillaCocoa::KeyboardInput(NSEvent *event) { // Handle each entry individually. Usually we only have one entry anyway. for (size_t i = 0; i < input.length; i++) { const UniChar originalKey = [input characterAtIndex: i]; + // Some Unicode extended Latin characters overlap the Keys enumeration so treat them + // only as and not as command keys. + if (originalKey >= static_cast<UniChar>(Keys::Down) && originalKey <= static_cast<UniChar>(Keys::Menu)) + continue; NSEventModifierFlags modifierFlags = event.modifierFlags; Keys key = KeyTranslate(originalKey, modifierFlags); |
