From: hyun lee Date: Tue, 9 Jul 2013 02:54:39 +0000 (+0900) Subject: Fix for issue X-Git-Tag: submit/tizen_2.2/20130714.153306~14 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=640c5467cdcc8d69173120dfde00f023f946b68e;p=framework%2Fosp%2Fweb.git Fix for issue Change-Id: Ia5e8202cceaffaacee73c37a0d7b749c1a5f3e8d Signed-off-by: hyun lee --- diff --git a/src/controls/FWebCtrl_GestureState.cpp b/src/controls/FWebCtrl_GestureState.cpp index eb47299..7b43683 100644 --- a/src/controls/FWebCtrl_GestureState.cpp +++ b/src/controls/FWebCtrl_GestureState.cpp @@ -319,13 +319,16 @@ _FlickGestureState::OnTouchMoved(const _Control& source, const _TouchInfo& touch bool _FlickGestureState::OnTouchReleased(const _Control& source, const _TouchInfo& touchInfo) { - const Ewk_View_Smart_Data* pSmartData = static_cast(evas_object_smart_data_get( __pWebCore->GetWebNativeNode())); + const Ewk_View_Smart_Data* pSmartData = static_cast(evas_object_smart_data_get(__pWebCore->GetWebNativeNode())); SysAssertf(pSmartData, "Failed to get webkit smart data."); Ewk_Event_Gesture gestureEvent; Point absPoint(_CoordinateSystemUtils::ConvertToInteger(__pWebCore->GetAbsoluteCoordinate(touchInfo.GetCurrentPosition()))); + SetGestureEvent(gestureEvent, EWK_GESTURE_PAN, absPoint, Point(0, 0), 0.0, 0); + pSmartData->api->gesture_end(const_cast(pSmartData), &gestureEvent); + SetGestureEvent(gestureEvent, EWK_GESTURE_FLICK, absPoint, __velocity, 0, 0); pSmartData->api->gesture_start(const_cast(pSmartData), &gestureEvent); diff --git a/src/controls/FWebCtrl_Web.cpp b/src/controls/FWebCtrl_Web.cpp index 4ec2e87..9b55a6b 100644 --- a/src/controls/FWebCtrl_Web.cpp +++ b/src/controls/FWebCtrl_Web.cpp @@ -144,14 +144,27 @@ _WebAccessibilityListener::OnAccessibilityFocusIn(const _AccessibilityContainer& bool _WebAccessibilityListener::OnAccessibilityFocusOut(const _AccessibilityContainer& control, const _AccessibilityElement& element) { - return true; + Ewk_View_Smart_Data* pSmartData = static_cast(evas_object_smart_data_get(__pView)); + SysAssertf(pSmartData, "Failed to get webkit smart data."); + + Elm_Access_Action_Info* pActionInfo = new Elm_Access_Action_Info(); + SysTryReturn(NID_WEB_CTRL, pActionInfo, false, E_OUT_OF_MEMORY, "[%s] Memory Allocation failed.", GetErrorMessage(E_OUT_OF_MEMORY)); + + bool result = false; + + pActionInfo->action_type = ELM_ACCESS_ACTION_UNHIGHLIGHT; + + result = pSmartData->api->screen_reader_action_execute(pSmartData, pActionInfo); + delete pActionInfo; + + return result; } bool _WebAccessibilityListener::OnAccessibilityActionPerformed(const _AccessibilityContainer& control, const _AccessibilityElement& element) { - const Ewk_View_Smart_Data* pSmartData = static_cast(evas_object_smart_data_get(__pView)); + Ewk_View_Smart_Data* pSmartData = static_cast(evas_object_smart_data_get(__pView)); SysAssertf(pSmartData, "Failed to get webkit smart data."); Elm_Access_Action_Info* pActionInfo = new Elm_Access_Action_Info(); @@ -161,7 +174,7 @@ _WebAccessibilityListener::OnAccessibilityActionPerformed(const _AccessibilityCo pActionInfo->action_type = ELM_ACCESS_ACTION_ACTIVATE; - result = pSmartData->api->screen_reader_action_execute(const_cast(pSmartData), pActionInfo); + result = pSmartData->api->screen_reader_action_execute(pSmartData, pActionInfo); delete pActionInfo; return result; @@ -213,7 +226,7 @@ _WebAccessibilityFocusHandler::~_WebAccessibilityFocusHandler(void) bool _WebAccessibilityFocusHandler::OnMoveFocus(Tizen::Ui::_AccessibilityFocusDirection direction) { - const Ewk_View_Smart_Data* pSmartData = static_cast(evas_object_smart_data_get(__pView)); + Ewk_View_Smart_Data* pSmartData = static_cast(evas_object_smart_data_get(__pView)); SysAssertf(pSmartData, "Failed to get webkit smart data."); Elm_Access_Action_Info* pActionInfo = new Elm_Access_Action_Info(); @@ -223,15 +236,19 @@ _WebAccessibilityFocusHandler::OnMoveFocus(Tizen::Ui::_AccessibilityFocusDirecti if (direction == Tizen::Ui::_ACCESSIBILITY_FOCUS_DIRECTION_PREVIOUS) { - pActionInfo->action_type = ELM_ACCESS_ACTION_HIGHLIGHT_PREV; + pActionInfo->action_type = ELM_ACCESS_ACTION_HIGHLIGHT; + + pActionInfo->action_by = ELM_ACCESS_ACTION_HIGHLIGHT_PREV; - result = pSmartData->api->screen_reader_action_execute(const_cast(pSmartData), pActionInfo); + result = pSmartData->api->screen_reader_action_execute(pSmartData, pActionInfo); } else if (direction == Tizen::Ui::_ACCESSIBILITY_FOCUS_DIRECTION_NEXT) { - pActionInfo->action_type = ELM_ACCESS_ACTION_HIGHLIGHT_NEXT; + pActionInfo->action_type = ELM_ACCESS_ACTION_HIGHLIGHT; + + pActionInfo->action_by = ELM_ACCESS_ACTION_HIGHLIGHT_NEXT; - result = pSmartData->api->screen_reader_action_execute(const_cast(pSmartData), pActionInfo); + result = pSmartData->api->screen_reader_action_execute(pSmartData, pActionInfo); } delete pActionInfo; @@ -242,7 +259,7 @@ _WebAccessibilityFocusHandler::OnMoveFocus(Tizen::Ui::_AccessibilityFocusDirecti bool _WebAccessibilityFocusHandler::OnMoveFocus(const Tizen::Graphics::Point& point) { - const Ewk_View_Smart_Data* pSmartData = static_cast(evas_object_smart_data_get(__pView)); + Ewk_View_Smart_Data* pSmartData = static_cast(evas_object_smart_data_get(__pView)); SysAssertf(pSmartData, "Failed to get webkit smart data."); Elm_Access_Action_Info* pActionInfo = new Elm_Access_Action_Info(); @@ -254,7 +271,7 @@ _WebAccessibilityFocusHandler::OnMoveFocus(const Tizen::Graphics::Point& point) pActionInfo->x = point.x; pActionInfo->y = point.y; - result = pSmartData->api->screen_reader_action_execute(const_cast(pSmartData), pActionInfo); + result = pSmartData->api->screen_reader_action_execute(pSmartData, pActionInfo); delete pActionInfo; return result; diff --git a/src/controls/FWebCtrl_WebImpl.cpp b/src/controls/FWebCtrl_WebImpl.cpp index cd8f5ab..1400c76 100755 --- a/src/controls/FWebCtrl_WebImpl.cpp +++ b/src/controls/FWebCtrl_WebImpl.cpp @@ -1823,7 +1823,7 @@ OnWindowObjectFocusGained(void* pUserData, Evas_Object* pWin, void* pEvent_info) _WebImpl* pImpl = reinterpret_cast< _WebImpl* >(pUserData); SysAssertf(pImpl, "Failed to request"); - if (pImpl->IsKeypadOpened() == true && pImpl->IsVisible() == true && pImpl->IsFocused()) + if (pImpl->IsKeypadOpened() == true && pImpl->IsVisible() == true) { _Web* pWebCore = dynamic_cast< _Web* >(&(pImpl->GetCore())); SysAssertf(pWebCore, "Failed to get Web core object");