From 03c4927435cfc0f3e404a12d320402f54a29f5da Mon Sep 17 00:00:00 2001 From: FrankWu100 Date: Fri, 30 Jan 2015 17:22:20 +0800 Subject: [PATCH] Fix IME issue Fix some IME if marked text (select characters) do not send Enter. ex. Chinese, Japenese. --- TelegramTest/TMGrowingTextView.m | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/TelegramTest/TMGrowingTextView.m b/TelegramTest/TMGrowingTextView.m index ee48e5a1..2c44a8b1 100644 --- a/TelegramTest/TMGrowingTextView.m +++ b/TelegramTest/TMGrowingTextView.m @@ -389,11 +389,12 @@ - (BOOL)isControlEnterEvent:(NSEvent *)e { - (BOOL)isEnterEvent:(NSEvent *)e { NSUInteger flags = (e.modifierFlags & NSDeviceIndependentModifierFlagsMask); - BOOL isEnter = (e.keyCode == 0x24); // VK_RETURN -// DLog(@"log %lu", (unsigned long)flags); - //numpad enter fix - if(!isEnter && e.keyCode == 0x4C) - return YES; + // DLog(@"log %lu", (unsigned long)flags); + //numpad enter (0x4C) fix + BOOL isEnter = (e.keyCode == 0x24 || e.keyCode == 0x4C); // VK_RETURN + // Fix some IME if marked text (select characters) do not send Enter. ex. Chinese, Japenese. + if ([self hasMarkedText]) // AppKit NSTextInputClient + return NO; return (flags == 0 || flags == 65536) && isEnter; }