#include "config.h"
#include "GestureRecognizer.h"
+#if ENABLE(TIZEN_DESKTOP_BROWSING)
+#include "NativeWebMouseEvent.h"
+#endif
+
#include <WebCore/IntSize.h>
#include <WebCore/IntPoint.h>
evas_object_del(m_gestureObject);
evas_object_event_callback_del(m_viewWidget, EVAS_CALLBACK_MOUSE_UP, onMouseUp);
+
+#if ENABLE(TIZEN_DESKTOP_BROWSING)
+ evas_object_event_callback_del(m_viewWidget, EVAS_CALLBACK_MOUSE_MOVE, onMouseMove);
+ evas_object_event_callback_del(m_viewWidget, EVAS_CALLBACK_MOUSE_DOWN, onMouseDown);
+#endif
}
void GestureRecognizer::initializeCallbacks()
// add evas callbacks.
evas_object_event_callback_add(m_viewWidget, EVAS_CALLBACK_MOUSE_UP, onMouseUp, this);
+
+#if ENABLE(TIZEN_DESKTOP_BROWSING)
+ evas_object_event_callback_add(m_viewWidget, EVAS_CALLBACK_MOUSE_MOVE, onMouseMove, this);
+ evas_object_event_callback_add(m_viewWidget, EVAS_CALLBACK_MOUSE_DOWN, onMouseDown, this);
+#endif
}
Evas_Event_Flags GestureRecognizer::onTapStart(void* data, void* eventInfo)
return EVAS_EVENT_FLAG_NONE;
}
-void GestureRecognizer::onMouseUp(void* data, Evas*, Evas_Object*, void* eventInfo)
+void GestureRecognizer::onMouseUp(void* data, Evas*, Evas_Object* ewkView, void* eventInfo)
{
Evas_Event_Mouse_Up* event = static_cast<Evas_Event_Mouse_Up*>(eventInfo);
static_cast<GestureRecognizer*>(data)->processScheduledTap(event->canvas.x, event->canvas.y, event->timestamp);
+
+#if ENABLE(TIZEN_DESKTOP_BROWSING)
+ Ewk_View_Smart_Data* smartData = 0;
+ smartData = (Ewk_View_Smart_Data*)evas_object_smart_data_get(ewkView);
+ EwkViewImpl* impl = smartData->priv;
+
+ impl->page()->handleMouseEvent(NativeWebMouseEvent(event, impl->transformFromScene(), impl->transformToScreen()));
+#endif
+}
+
+#if ENABLE(TIZEN_DESKTOP_BROWSING)
+void GestureRecognizer::onMouseDown(void* data, Evas*, Evas_Object* ewkView, void* eventInfo)
+{
+ Evas_Event_Mouse_Down* event = static_cast<Evas_Event_Mouse_Down*>(eventInfo);
+
+ Ewk_View_Smart_Data* smartData = 0;
+ smartData = (Ewk_View_Smart_Data*)evas_object_smart_data_get(ewkView);
+ EwkViewImpl* impl = smartData->priv;
+
+ impl->page()->handleMouseEvent(NativeWebMouseEvent(event, impl->transformFromScene(), impl->transformToScreen()));
+
+}
+
+void GestureRecognizer::onMouseMove(void* data, Evas*, Evas_Object* ewkView, void* eventInfo)
+{
+ Evas_Event_Mouse_Move* event = static_cast<Evas_Event_Mouse_Move*>(eventInfo);
+
+ Ewk_View_Smart_Data* smartData = 0;
+ smartData = (Ewk_View_Smart_Data*)evas_object_smart_data_get(ewkView);
+ EwkViewImpl* impl = smartData->priv;
+
+ impl->page()->handleMouseEvent(NativeWebMouseEvent(event, impl->transformFromScene(), impl->transformToScreen()));
}
+#endif
void GestureRecognizer::startTap(Elm_Gesture_Taps_Info* event)
{