From: SangYong Park Date: Tue, 22 Oct 2013 07:31:20 +0000 (+0900) Subject: Fix input picker raising issue X-Git-Tag: 2.2.1_release~34 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=b74b4953794b212f170b74fae54985db94ab2e95;p=framework%2Fweb%2Fwebkit-efl.git Fix input picker raising issue [Title] Fix input picker raising issue [Issue#] N_SE-54357 [Problem] Input picker did not raise on second time by host keyboard [Cause] Input picker state did not be cleared on first time. [Solution] Clear input picker state when input picker was closed. Change-Id: I39c16b736f0b7634661f26f3ef99186b460ce0b1 --- diff --git a/Source/WebKit2/UIProcess/efl/InputMethodContextEfl.cpp b/Source/WebKit2/UIProcess/efl/InputMethodContextEfl.cpp index 7126c8c..9ed31d47 100755 --- a/Source/WebKit2/UIProcess/efl/InputMethodContextEfl.cpp +++ b/Source/WebKit2/UIProcess/efl/InputMethodContextEfl.cpp @@ -421,7 +421,7 @@ void InputMethodContextEfl::handleKeyDownEvent(const Evas_Event_Key_Down* downEv const EditorState& state = m_viewImpl->page()->editorState(); - if (!m_isLastKeyEventFiltered && !m_approximateSurroundingText.isNull() && !state.hasComposition) + if (!m_isLastKeyEventFiltered && !m_approximateSurroundingText.isNull()) ecore_imf_context_cursor_position_set(m_context.get(), m_approximateCursorPosition); if (m_fakeKeyEventTimer.isActive()) @@ -468,7 +468,7 @@ void InputMethodContextEfl::updateTextInputState() m_approximateSurroundingText = String(); - if (m_context && !editor.hasComposition) + if (m_context) ecore_imf_context_cursor_position_set(m_context.get(), editor.cursorPosition); } @@ -764,8 +764,9 @@ void InputMethodContextEfl::hideIMFContext() #endif m_inputPickerType = -1; + m_focused = false; - if (!m_context || !m_focused) + if (!m_context) return; if (evas_object_focus_get(m_viewImpl->view())) { @@ -774,7 +775,6 @@ void InputMethodContextEfl::hideIMFContext() ecore_imf_context_focus_out(m_context.get()); } - m_focused = false; revertIMFContext(); }