From 866ff6c9aa6ef8bbde4b29e27e5a555ff4e0bbba Mon Sep 17 00:00:00 2001 From: Jim Chen Date: Tue, 31 Mar 2015 18:20:27 -0400 Subject: [PATCH] Bug 1149172 - Send well-formed IME events; r=esawin --- widget/android/nsWindow.cpp | 23 +++++++++-------------- 1 file changed, 9 insertions(+), 14 deletions(-) diff --git a/widget/android/nsWindow.cpp b/widget/android/nsWindow.cpp index 33ff6c8d3cf..8729d8d7b8e 100644 --- a/widget/android/nsWindow.cpp +++ b/widget/android/nsWindow.cpp @@ -1841,27 +1841,22 @@ nsWindow::OnIMEEvent(AndroidGeckoEvent *ae) InitEvent(event, nullptr); event.mData = ae->Characters(); - if (ae->Action() == AndroidGeckoEvent::IME_COMPOSE_TEXT) { - // Because we're leaving the composition open, we need to - // include proper text ranges to make the editor happy. - TextRange range; - range.mStartOffset = 0; - range.mEndOffset = event.mData.Length(); - range.mRangeType = NS_TEXTRANGE_RAWINPUT; - event.mRanges = new TextRangeArray(); - event.mRanges->AppendElement(range); - } + // Include proper text ranges to make the editor happy. + TextRange range; + range.mStartOffset = 0; + range.mEndOffset = event.mData.Length(); + range.mRangeType = NS_TEXTRANGE_RAWINPUT; + event.mRanges = new TextRangeArray(); + event.mRanges->AppendElement(range); DispatchEvent(&event); } // Don't end composition when composing text. - if (ae->Action() != AndroidGeckoEvent::IME_COMPOSE_TEXT) - { + if (ae->Action() != AndroidGeckoEvent::IME_COMPOSE_TEXT) { WidgetCompositionEvent compositionCommitEvent( - true, NS_COMPOSITION_COMMIT, this); + true, NS_COMPOSITION_COMMIT_AS_IS, this); InitEvent(compositionCommitEvent, nullptr); - compositionCommitEvent.mData = ae->Characters(); DispatchEvent(&compositionCommitEvent); }