Replace geolocation API
authorJihoon Chung <jihoon.chung@samsung.com>
Wed, 6 Mar 2013 07:22:46 +0000 (16:22 +0900)
committerJihoon Chung <jihoon.chung@samsung.com>
Fri, 8 Mar 2013 04:29:06 +0000 (13:29 +0900)
[Issue#] N/A
[Problem] N/A
[Cause] Webkit API for geolocation is changed
[Solution] Replace webkit API for geolocation
[SCMRequest] must imported with webkit packages

Change-Id: I48fe91f12a7bf274b9086aa12c8f6ea955bfc03c

src/view/webkit/view_logic.cpp
src/view/webkit/view_logic_geolocation_support_webkit2.cpp

index 2bbe9b1..ac72511 100644 (file)
@@ -119,7 +119,7 @@ std::map<const std::string,
     // WKPageFormClient
     { "form,submit", &ViewLogic::formSubmitCallback },
     // EWK Geolocation Callback
-    { "request,geolocation,permission",
+    { "geolocation,permission,request",
       &ViewLogic::geolocationPermissionRequestCallback },
     // EWK Notification Callback
     { "notification,show", &ViewLogic::notificationShowCallback },
@@ -1191,16 +1191,14 @@ void ViewLogic::geolocationPermissionRequestCallback(
     Assert(data);
     ViewLogic* This = static_cast<ViewLogic*>(data);
     Assert(eventInfo);
-    Ewk_Geolocation_Permission_Data* permissionRequest =
-        static_cast<Ewk_Geolocation_Permission_Data*>(eventInfo);
+    Ewk_Geolocation_Permission_Request* permissionRequest =
+        static_cast<Ewk_Geolocation_Permission_Request*>(eventInfo);
 
     if (This->m_securityOriginSupport->isNeedPermissionCheck(
             SecurityOriginDB::FEATURE_GEOLOCATION)
         == WrtDB::SETTINGS_TYPE_OFF)
     {
-        ewk_geolocation_permission_request_allow_set(
-            ewk_geolocation_permission_request_get(permissionRequest),
-            EINA_FALSE);
+        ewk_geolocation_permission_request_set(permissionRequest, EINA_FALSE);
         return;
     }
     ViewModule::GeolocationSupport::Webkit2::geolocationPermissionRequest(
index 853ab16..9729833 100644 (file)
@@ -72,8 +72,8 @@ void popupCallback(void* data, Evas_Object* obj, void* /*eventInfo*/)
     LogDebug("popupCallback");
     Assert(data);
     PermissionData* permData = static_cast<PermissionData*>(data);
-    Ewk_Geolocation_Permission_Data* permissionRequest =
-        static_cast<Ewk_Geolocation_Permission_Data*>(permData->m_data);
+    Ewk_Geolocation_Permission_Request* permissionRequest =
+        static_cast<Ewk_Geolocation_Permission_Request*>(permData->m_data);
 
     Evas_Object* popup = getPopup(obj);
     Result result = getResult(obj);
@@ -85,9 +85,7 @@ void popupCallback(void* data, Evas_Object* obj, void* /*eventInfo*/)
     Eina_Bool ret =
         (result == RESULT_ALLOW_ALWAYS || result == RESULT_ALLOW_ONCE) ?
         EINA_TRUE : EINA_FALSE;
-    ewk_geolocation_permission_request_allow_set(
-        ewk_geolocation_permission_request_get(permissionRequest),
-        ret);
+    ewk_geolocation_permission_request_set(permissionRequest, ret);
     delete permData;
     evas_object_hide(popup);
     evas_object_del(popup);
@@ -102,8 +100,8 @@ void geolocationPermissionRequest(
     LogDebug("geolocationPermissionRequest called");
     Assert(securityOriginDAO);
     Assert(data);
-    Ewk_Geolocation_Permission_Data* permissionRequest =
-        static_cast<Ewk_Geolocation_Permission_Data*>(data);
+    Ewk_Geolocation_Permission_Request* permissionRequest =
+        static_cast<Ewk_Geolocation_Permission_Request*>(data);
     const Ewk_Security_Origin* ewkOrigin =
         ewk_geolocation_permission_request_origin_get(
             permissionRequest);
@@ -120,18 +118,16 @@ void geolocationPermissionRequest(
     Result result = securityOriginDAO->getResult(securityOriginData);
     if (RESULT_ALLOW_ONCE == result || RESULT_ALLOW_ALWAYS == result) {
         LogDebug("allow");
-        ewk_geolocation_permission_request_allow_set(
-            ewk_geolocation_permission_request_get(permissionRequest),
-            EINA_TRUE);
+        ewk_geolocation_permission_request_set(permissionRequest, EINA_TRUE);
         return;
     } else if (RESULT_DENY_ONCE == result || RESULT_DENY_ALWAYS == result) {
         LogDebug("deny");
-        ewk_geolocation_permission_request_allow_set(
-            ewk_geolocation_permission_request_get(permissionRequest),
-            EINA_FALSE);
+        ewk_geolocation_permission_request_set(permissionRequest, EINA_FALSE);
         return;
     }
 
+    ewk_geolocation_permission_request_suspend(permissionRequest);
+
     // ask to user
     PermissionData* permissionData =
         new PermissionData(securityOriginDAO,