Currently U+007F DELETE is not treated as control characters in Editor::SetRepresentations() and EditView::DrawCarets().
In EditView::DrawCarets() it cause block caret not shown.
The iscntrl() function in ScintillaWin/WM_CHAR can be replaced with IsControlCharacter() (for C0 only).
Fusing the two calls into a template appears less type-safe to me as it leads to the need to type cast the argument in EditView. The natural home for IsControlCharacter would be in CharacterSet.h where there are similar functions like IsLowerCase that take int arguments.
Is there any way to generate a DELETE for WM_CHAR? I tried disabling the key bindings for the VK_DELETE but it appears to never go to WM_CHAR.
Last edit: Neil Hodgson 2020-07-09
It seems only Backspace (wParam=8) and Enter (wParam=13) goes into WM_CHAR with lastKeyDownConsumed=true.
Removed the limitation in WM_CHAR, IsControlCharacter() is moved into anonymous namespace.
Committed representation with [b0355e].
Changed IsControlCharacter with [16e865] but retained int argument as that is the convention defined by ctype.h for char classification functions.
Did not change WM_CHAR as the lifetime of values assigned to lastKeyDownConsumed is unbounded and WM_CHAR may be used by snippet or macro programs or features.
Related
Commit: [16e865]
Commit: [b0355e]
Committed representation with [b0355e].
Changed IsControlCharacter with [16e865] but retained int argument as that is the convention defined by ctype.h for char classification functions.
Did not change WM_CHAR as the lifetime of values assigned to lastKeyDownConsumed is unbounded and WM_CHAR may be used by snippet or macro programs or features.
Related
Commit: [16e865]
Commit: [b0355e]
Committed representation with [b0355e].
Changed IsControlCharacter with [16e865] but retained int argument as that is the convention defined by ctype.h for char classification functions.
Did not change WM_CHAR as the lifetime of values assigned to lastKeyDownConsumed is unbounded and WM_CHAR may be used by snippet or macro programs or features.
Related
Commit: [16e865]
Commit: [b0355e]