From b875d194d9799ccc74453292c670fcca892799fa Mon Sep 17 00:00:00 2001 From: Chen Gong Date: Sat, 13 Feb 2021 22:39:38 +0800 Subject: [PATCH] fix(SquirrelInputController): commit raw input when switching to other IME, closes #146 --- SquirrelInputController.m | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/SquirrelInputController.m b/SquirrelInputController.m index 0a55b58f2..8481a3b6a 100644 --- a/SquirrelInputController.m +++ b/SquirrelInputController.m @@ -307,12 +307,13 @@ -(void)deactivateServer:(id)sender -(void)commitComposition:(id)sender { //NSLog(@"commitComposition:"); - // - FIXME: chrome's address bar issues this callback when showing suggestions. - if ([[sender bundleIdentifier] isEqualToString:@"com.google.Chrome"]) - return; - // force committing existing Rime composition - if (_session && rime_get_api()->commit_composition(_session)) { - [self rimeConsumeCommittedText]; + // commit raw input + if (_session) { + const char* raw_input = rime_get_api()->get_input(_session); + if (raw_input) { + [self commitString: @(raw_input)]; + rime_get_api()->clear_composition(_session); + } } }