Do not set the focus as "false" from webcore operation
authorTaeyun An <ty.an@samsung.com>
Wed, 3 Jul 2013 05:51:32 +0000 (14:51 +0900)
committerTaeyun An <ty.an@samsung.com>
Wed, 3 Jul 2013 05:51:32 +0000 (14:51 +0900)
[Title] Do not set the focus as "false" from webcore operation
[Issue#] N_SE-43735
[Problem] Back key H/W key is not working after tap on tab from host keyboard
[Cause] webview object is unfocused from tab key
[Solution] Do not set the focus as "false" from webcore operation

Change-Id: Idfc737a4a5fd2accb4443e8fc7931db263d89bbb

Source/WTF/wtf/Platform.h
Source/WebKit2/UIProcess/efl/PageUIClientEfl.cpp

index 4588963..f8c6503 100755 (executable)
@@ -820,6 +820,8 @@ com) : Patch to do not adjust cover rect as fixed pixel size*/
 
 #define ENABLE_TIZEN_HW_MORE_BACK_KEY 1 /* Jongseok Yang(js45.yang@samsung.com), Kwangyong Choi (ky0.choi@samsung.net) : Add support for HW more/back keys */
 
+#define ENABLE_TIZEN_TAKE_FOCUS 1 /* Jongseok Yang(js45.yang@samsung.com) : The focus should be controled by outside of webview object because EFL guarantees the focus control just for elemenatry */
+
 #endif /* OS(TIZEN) */
 
 /* ==== OS() - underlying operating system; only to be used for mandated low-level services like 
index 7f544ec..6dd40c5 100755 (executable)
@@ -141,11 +141,17 @@ void PageUIClientEfl::focus(WKPageRef, const void* clientInfo)
 
 void PageUIClientEfl::unfocus(WKPageRef, const void* clientInfo)
 {
+#if ENABLE(TIZEN_TAKE_FOCUS)
+    return;
+#endif
     evas_object_focus_set(toPageUIClientEfl(clientInfo)->m_viewImpl->view(), false);
 }
 
 void PageUIClientEfl::takeFocus(WKPageRef, WKFocusDirection, const void* clientInfo)
 {
+#if ENABLE(TIZEN_TAKE_FOCUS)
+    return;
+#endif
     // FIXME: this is only a partial implementation.
     evas_object_focus_set(toPageUIClientEfl(clientInfo)->m_viewImpl->view(), false);
 }