cocoa: Reset IME when sending composed text

This will send an empty `TEXTEDITING` event that is used to signal the 
end of the composition.
This commit is contained in:
Guldoman 2022-11-01 10:55:17 +01:00 committed by Sam Lantinga
parent 61297f703a
commit 084fa4c3fa
1 changed files with 6 additions and 1 deletions

View File

@ -66,6 +66,11 @@
str = [aString UTF8String]; str = [aString UTF8String];
} }
/* We're likely sending the composed text, so we reset the IME status. */
if ([self hasMarkedText]) {
[self unmarkText];
}
SDL_SendKeyboardText(str); SDL_SendKeyboardText(str);
} }
@ -114,7 +119,7 @@
(int) selectedRange.location, (int) selectedRange.length); (int) selectedRange.location, (int) selectedRange.length);
DEBUG_IME(@"setMarkedText: %@, (%d, %d)", _markedText, DEBUG_IME(@"setMarkedText: %@, (%d, %d)", _markedText,
selRange.location, selRange.length); selectedRange.location, selectedRange.length);
} }
- (void)unmarkText - (void)unmarkText