0ef794b553
This patch extends D11695 to provide full support for Chinese and Korean input on macOS. Chinese input notes: You can input symbolic characters (such as '! , '$') during Chinese input. The difference from Japanese input is that multiple `insertText` may be called with a single key down (`keyDown` method). This happens when you input a symbolic character (such as '! , '$') during conversion. The conversion is confirmed (`insertText`) and the symbolic character is entered (`insertText`). To solve this problem, I have `result_text` to concatenate the strings and store them in `result`. Korean input notes: Korean does not display a conversion suggestion window. Like Chinese, Korean input may call multiple `insertText` methods. Also, in Korean, the previous confirmation (`setMarkedText` and `insertText`) and the next conversion is processed (`setMarkedText`) may be called simultaneously with a single key down (`keyDown` method). For example: 1. press g ㅎ (`setMarkedText`) 2. press k 하 (`setMarkedText`) 3. press t 앗 (`setMarkedText`) 4. press k 하세 (`setMarkedText`, `insertText`, `setMarkedText`) Fixed so that the `insertText` and the last `setMarkedText` are processed. Also, if a control character (such as Arrow, Enter) is input during Korean input, the conversion will be confirmed (`setMarkedText`, `insertText`) and the original control character will be processed. In other words, if you press the left arrow key while typing in Korean, the cursor will move to the left after the character is confirmed. Therefore, I modified the `keyDown` method so that the `handleKeyEvent` is called again after the `insertText` is processed in the `interpretKeyEvents` method. Differential Revision: https://developer.blender.org/D11699 |
||
---|---|---|
.. | ||
intern | ||
test | ||
CMakeLists.txt | ||
GHOST_C-api.h | ||
GHOST_IContext.h | ||
GHOST_IEvent.h | ||
GHOST_IEventConsumer.h | ||
GHOST_ISystem.h | ||
GHOST_ISystemPaths.h | ||
GHOST_ITimerTask.h | ||
GHOST_IWindow.h | ||
GHOST_IXrContext.h | ||
GHOST_Path-api.h | ||
GHOST_Rect.h | ||
GHOST_Types.h |