Fix keypad capital issue
authorSangYong Park <sy302.park@samsung.com>
Wed, 24 Apr 2013 12:24:57 +0000 (21:24 +0900)
committerGerrit Code Review <gerrit2@kim11>
Wed, 24 Apr 2013 15:07:04 +0000 (00:07 +0900)
[Title] Fix keypad capital issue
[Issue#] P130422-7286
[Problem] Keypad show in capital instantly.
[Cause] set cursor position 0 before insert text
[Solution] ignore temporary cursor position

Change-Id: I22adac5a1c92186725c39eb23ce8da9d45961ff1

Source/WebKit2/UIProcess/efl/InputMethodContextEfl.cpp
Source/WebKit2/WebProcess/WebPage/efl/WebPageEfl.cpp

index 207b011..6325481 100755 (executable)
@@ -325,13 +325,13 @@ void InputMethodContextEfl::handleKeyDownEvent(const Evas_Event_Key_Down* downEv
 void InputMethodContextEfl::updateTextInputState()
 {
     const EditorState& editor = m_viewImpl->page()->editorState();
+    if (editor.shouldIgnoreCompositionSelectionChange)
+        return;
 
-    if (!editor.shouldIgnoreCompositionSelectionChange) {
-        if (editor.isContentEditable && m_useInputMethod)
-            showIMFContext(editor);
-        else
-            hideIMFContext();
-    }
+    if (editor.isContentEditable && m_useInputMethod)
+        showIMFContext(editor);
+    else
+        hideIMFContext();
 
     if (m_context)
         ecore_imf_context_cursor_position_set(m_context.get(), editor.cursorPosition);
index cfecedc..8da9d30 100755 (executable)
@@ -275,6 +275,10 @@ void WebPage::confirmComposition(const String& compositionString)
         return;
 
     targetFrame->editor()->confirmComposition(compositionString);
+
+#if ENABLE(TIZEN_ISF_PORT)
+    m_page->editorClient()->respondToChangedSelection(targetFrame);
+#endif
 }
 
 void WebPage::setComposition(const String& compositionString, const Vector<WebCore::CompositionUnderline>& underlines, uint64_t cursorPosition)
@@ -312,6 +316,10 @@ void WebPage::setComposition(const String& compositionString, const Vector<WebCo
 #endif
 
     targetFrame->editor()->setComposition(compositionString, underlines, cursorPosition, 0);
+
+#if ENABLE(TIZEN_ISF_PORT)
+    m_page->editorClient()->respondToChangedSelection(targetFrame);
+#endif
 }
 
 void WebPage::cancelComposition()