Replace ewk API for vibration API
authorJihoon Chung <jihoon.chung@samsung.com>
Mon, 21 Jan 2013 06:08:42 +0000 (15:08 +0900)
committerJihoon Chung <jihoon.chung@samsung.com>
Mon, 21 Jan 2013 10:29:11 +0000 (19:29 +0900)
[Issue#] N/A
[Problem] N/A
[Cause] N/A
[Solution] Replace ewk API for vibration API
[SCMRequest] N/A

Change-Id: I62a4dc339bf9d012d4ccf4203996146810d78ce3

src/view/webkit/view_logic.cpp
src/view/webkit/view_logic.h

index 024e05f..3eacf27 100644 (file)
@@ -118,9 +118,6 @@ std::map<const std::string, const Evas_Smart_Cb> ViewLogic::m_ewkCallbacksMap =
     {"notification,show", &ViewLogic::notificationShowCallback},
     {"notification,cancel", &ViewLogic::notificationCancelCallback},
     {"notification,permission,request", &ViewLogic::notificationPermissionRequestCallback},
-    // EWK Vibration Callback
-    {"vibration,vibrate", &ViewLogic::vibrationVibrateCallback},
-    {"vibration,cancel", &ViewLogic::vibrationCancelCallback},
 
     {"database,quota,exceeded", &ViewLogic::databaseUsagePermissionRequestCallback},
     {"filesystem,permission,request", &ViewLogic::fileSystemPermissionRequestCallback},
@@ -480,6 +477,12 @@ void ViewLogic::initializeEwkContext(Ewk_Context* newEwkContext)
         didStartDownloadCallback,
         this);
 
+    ewk_context_vibration_client_callbacks_set(
+        newEwkContext,
+        vibrationVibrateCallback,
+        vibrationCancelCallback,
+        this);
+
     // set to member value
     m_ewkContext = newEwkContext;
 }
@@ -1263,27 +1266,16 @@ void ViewLogic::notificationPermissionRequestCallback(
     return;
 }
 
-void ViewLogic::vibrationVibrateCallback(
-        void* data,
-        Evas_Object* /*obj*/,
-        void* eventInfo)
+void ViewLogic::vibrationVibrateCallback(uint64_t time, void* data)
 {
     LogDebug("vibrationVibrateCallback called");
     Assert(data);
     ViewLogic* This = static_cast<ViewLogic*>(data);
-
-    Assert(eventInfo);
-    const long vibrationTime = *(static_cast<const long*>(eventInfo));
-
-    This->m_vibrationSupport->startVibration(vibrationTime);
-
+    This->m_vibrationSupport->startVibration(static_cast<long>(time));
     return;
 }
 
-void ViewLogic::vibrationCancelCallback(
-        void* data,
-        Evas_Object* /*obj*/,
-        void* /*eventInfo*/)
+void ViewLogic::vibrationCancelCallback(void* data)
 {
     LogDebug("vibrationCancelCallback called");
     Assert(data);
index fe85963..f90a182 100644 (file)
@@ -180,14 +180,8 @@ class ViewLogic : public ViewModule::IViewModule
             void* eventInfo);
 
     // EWK Vibration Callback
-    static void vibrationVibrateCallback(
-            void* data,
-            Evas_Object* obj,
-            void* eventInfo);
-    static void vibrationCancelCallback(
-            void* data,
-            Evas_Object* obj,
-            void* eventInfo);
+    static void vibrationVibrateCallback(uint64_t time, void* data);
+    static void vibrationCancelCallback(void* data);
 
     // EWK Orientation Callback
     static Eina_Bool orientationLockCallback(