WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
[patch]
Patch
bug-108915-20130205214114.patch (text/plain), 21.03 KB, created by
Eunmi Lee
on 2013-02-05 04:44:37 PST
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
Eunmi Lee
Created:
2013-02-05 04:44:37 PST
Size:
21.03 KB
patch
obsolete
>Subversion Revision: 141873 >diff --git a/Source/WebKit2/ChangeLog b/Source/WebKit2/ChangeLog >index c56bf751ec3686ac6b744a6a5bcd7fd48841ecda..039d4aa0af96b8fd59591dc05fd2cfd69f59b0c8 100644 >--- a/Source/WebKit2/ChangeLog >+++ b/Source/WebKit2/ChangeLog >@@ -1,3 +1,43 @@ >+2013-02-05 Eunmi Lee <eunmi15.lee@samsung.com> >+ >+ [EFL][WK2] Add WK2 C API to handle touch event. >+ https://bugs.webkit.org/show_bug.cgi?id=108915 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ Add WKViewHandleTouchEvent() API to handle touch events using C WK2 API >+ and not C++ internals. Additionally, WKTouchEvent and several types are >+ defined to represent touch events as WK style. >+ >+ * Shared/NativeWebTouchEvent.h: >+ (NativeWebTouchEvent): >+ (WebKit::NativeWebTouchEvent::nativeEvent): >+ * Shared/efl/NativeWebTouchEventEfl.cpp: >+ (WebKit::NativeWebTouchEvent::NativeWebTouchEvent): >+ * Shared/efl/WebEventFactory.cpp: >+ (WebKit::typeForTouchEvent): >+ (WebKit::modifiersForWKEvent): >+ (WebKit): >+ (WebKit::WebEventFactory::createWebTouchEvent): >+ * Shared/efl/WebEventFactory.h: >+ (WebEventFactory): >+ * UIProcess/API/C/efl/WKEventEfl.h: Added. >+ * UIProcess/API/C/efl/WKView.cpp: >+ (WKViewHandleTouchEvent): >+ * UIProcess/API/C/efl/WKView.h: >+ * UIProcess/API/efl/EwkView.cpp: >+ (EwkView::handleTouchEvent): >+ (EwkView::feedTouchEvents): >+ * UIProcess/API/efl/EwkView.h: >+ (EwkView): >+ * UIProcess/API/efl/ewk_view.cpp: >+ (ewk_view_feed_touch_event): >+ * UIProcess/efl/WebView.cpp: >+ (WebKit::WebView::handleTouchEvent): >+ (WebKit): >+ * UIProcess/efl/WebView.h: >+ (WebView): >+ > 2013-02-04 Gwang Yoon Hwang <ryumiel@company100.net> > > Coordinated Graphics : disconnectCustomFilterProgram does not do anything. >diff --git a/Source/WebKit2/Shared/NativeWebTouchEvent.h b/Source/WebKit2/Shared/NativeWebTouchEvent.h >index c63d1cf0705bca1ea54d384f3f0f5bc8311ad62a..8fca860766b05c9c9507ca171fccd65ec03c10e5 100644 >--- a/Source/WebKit2/Shared/NativeWebTouchEvent.h >+++ b/Source/WebKit2/Shared/NativeWebTouchEvent.h >@@ -31,9 +31,7 @@ > #if PLATFORM(QT) > #include <QTouchEvent> > #elif PLATFORM(EFL) >-#include "ewk_touch.h" >-#include <Evas.h> >-#include <WebCore/AffineTransform.h> >+#include "WKEventEfl.h" > #endif > > namespace WebKit { >@@ -43,16 +41,20 @@ public: > #if PLATFORM(QT) > explicit NativeWebTouchEvent(const QTouchEvent*, const QTransform& fromItemTransform); > #elif PLATFORM(EFL) >- NativeWebTouchEvent(Ewk_Touch_Event_Type, const Eina_List*, const Evas_Modifier*, const WebCore::AffineTransform& toWebContent, const WebCore::AffineTransform& toDeviceScreen, double timestamp); >+ NativeWebTouchEvent(const WKTouchEvent&); > #endif > > #if PLATFORM(QT) > const QTouchEvent* nativeEvent() const { return &m_nativeEvent; } >+#elif PLATFORM(EFL) >+ const WKTouchEvent* nativeEvent() const { return &m_nativeEvent; } > #endif > > private: > #if PLATFORM(QT) > const QTouchEvent m_nativeEvent; >+#elif PLATFORM(EFL) >+ const WKTouchEvent m_nativeEvent; > #endif > }; > >diff --git a/Source/WebKit2/Shared/efl/NativeWebTouchEventEfl.cpp b/Source/WebKit2/Shared/efl/NativeWebTouchEventEfl.cpp >index 72796835a6647b0272def23ee6c20b18139a9165..ffb61c5cdcb91666fc2c3003bc5db5478af6e94a 100644 >--- a/Source/WebKit2/Shared/efl/NativeWebTouchEventEfl.cpp >+++ b/Source/WebKit2/Shared/efl/NativeWebTouchEventEfl.cpp >@@ -32,8 +32,9 @@ > > namespace WebKit { > >-NativeWebTouchEvent::NativeWebTouchEvent(Ewk_Touch_Event_Type type, const Eina_List* points, const Evas_Modifier* modifiers, const WebCore::AffineTransform& toWebContent, const WebCore::AffineTransform& toDeviceScreen, double timestamp) >- : WebTouchEvent(WebEventFactory::createWebTouchEvent(type, points, modifiers, toWebContent, toDeviceScreen, timestamp)) >+NativeWebTouchEvent::NativeWebTouchEvent(const WKTouchEvent& event) >+ : WebTouchEvent(WebEventFactory::createWebTouchEvent(event)) >+ , m_nativeEvent(event) > { > } > >diff --git a/Source/WebKit2/Shared/efl/WebEventFactory.cpp b/Source/WebKit2/Shared/efl/WebEventFactory.cpp >index b9992508438d70f14f1139a941344000ab98cce4..db419d9322f172cc883d02297b5f7676a0c106a6 100644 >--- a/Source/WebKit2/Shared/efl/WebEventFactory.cpp >+++ b/Source/WebKit2/Shared/efl/WebEventFactory.cpp >@@ -28,6 +28,7 @@ > #include "WebEventFactory.h" > > #include "EflKeyboardUtilities.h" >+#include "WKSharedAPICast.h" > #include <WebCore/AffineTransform.h> > #include <WebCore/Scrollbar.h> > >@@ -205,43 +206,56 @@ WebKeyboardEvent WebEventFactory::createWebKeyboardEvent(const Evas_Event_Key_Up > } > > #if ENABLE(TOUCH_EVENTS) >-static inline WebEvent::Type typeForTouchEvent(Ewk_Touch_Event_Type type) >+static inline WebEvent::Type typeForTouchEvent(WKTouchEventType type) > { >- if (type == EWK_TOUCH_START) >+ if (type == kWKTouchEventTypeTouchStart) > return WebEvent::TouchStart; >- if (type == EWK_TOUCH_MOVE) >+ if (type == kWKTouchEventTypeTouchMove) > return WebEvent::TouchMove; >- if (type == EWK_TOUCH_END) >+ if (type == kWKTouchEventTypeTouchEnd) > return WebEvent::TouchEnd; >- if (type == EWK_TOUCH_CANCEL) >+ if (type == kWKTouchEventTypeTouchCancel) > return WebEvent::TouchCancel; > > return WebEvent::NoType; > } > >-WebTouchEvent WebEventFactory::createWebTouchEvent(Ewk_Touch_Event_Type type, const Eina_List* points, const Evas_Modifier* modifiers, const AffineTransform& toWebContent, const AffineTransform& toDeviceScreen, double timestamp) >+static WebEvent::Modifiers modifiersForWKEvent(unsigned modifiers) >+{ >+ unsigned result = 0; >+ >+ if (modifiers & kWKEventModifiersShiftKey) >+ result |= WebEvent::ShiftKey; >+ if (modifiers & kWKEventModifiersControlKey) >+ result |= WebEvent::ControlKey; >+ if (modifiers & kWKEventModifiersAltKey) >+ result |= WebEvent::AltKey; >+ if (modifiers & kWKEventModifiersMetaKey) >+ result |= WebEvent::MetaKey; >+ >+ return static_cast<WebEvent::Modifiers>(result); >+} >+ >+WebTouchEvent WebEventFactory::createWebTouchEvent(const WKTouchEvent& event) > { > Vector<WebPlatformTouchPoint> touchPoints; > WebPlatformTouchPoint::TouchPointState state; >- const Eina_List* list; >- void* item; >- EINA_LIST_FOREACH(points, list, item) { >- Ewk_Touch_Point* point = static_cast<Ewk_Touch_Point*>(item); >- >- switch (point->state) { >- case EVAS_TOUCH_POINT_UP: >+ for (unsigned i = 0; i < event.numTouchPoints; ++i) { >+ const WKTouchPoint& point = event.touchPoints[i]; >+ switch (point.state) { >+ case kWKTouchPointStateTouchReleased: > state = WebPlatformTouchPoint::TouchReleased; > break; >- case EVAS_TOUCH_POINT_MOVE: >+ case kWKTouchPointStateTouchMoved: > state = WebPlatformTouchPoint::TouchMoved; > break; >- case EVAS_TOUCH_POINT_DOWN: >+ case kWKTouchPointStateTouchPressed: > state = WebPlatformTouchPoint::TouchPressed; > break; >- case EVAS_TOUCH_POINT_STILL: >+ case kWKTouchPointStateTouchStationary: > state = WebPlatformTouchPoint::TouchStationary; > break; >- case EVAS_TOUCH_POINT_CANCEL: >+ case kWKTouchPointStateTouchCancelled: > state = WebPlatformTouchPoint::TouchCancelled; > break; > default: >@@ -249,11 +263,10 @@ WebTouchEvent WebEventFactory::createWebTouchEvent(Ewk_Touch_Event_Type type, co > continue; > } > >- IntPoint pos(point->x, point->y); >- touchPoints.append(WebPlatformTouchPoint(point->id, state, toDeviceScreen.mapPoint(pos), toWebContent.mapPoint(pos))); >+ touchPoints.append(WebPlatformTouchPoint(point.id, state, toIntPoint(point.screenPosition), toIntPoint(point.position), toIntSize(point.radius), point.rotationAngle, point.force)); > } > >- return WebTouchEvent(typeForTouchEvent(type), touchPoints, modifiersForEvent(modifiers), timestamp); >+ return WebTouchEvent(typeForTouchEvent(event.type), touchPoints, modifiersForWKEvent(event.modifiers), event.timestamp); > } > #endif > >diff --git a/Source/WebKit2/Shared/efl/WebEventFactory.h b/Source/WebKit2/Shared/efl/WebEventFactory.h >index e444db29d52384022041e5db8d2440c30d823e80..3abad70e2f2db9704d163171b760c9168cae9371 100644 >--- a/Source/WebKit2/Shared/efl/WebEventFactory.h >+++ b/Source/WebKit2/Shared/efl/WebEventFactory.h >@@ -26,8 +26,8 @@ > #ifndef WebEventFactory_h > #define WebEventFactory_h > >+#include "WKEventEfl.h" > #include "WebEvent.h" >-#include "ewk_touch.h" > #include <Evas.h> > #include <WebCore/AffineTransform.h> > >@@ -42,7 +42,7 @@ public: > static WebKeyboardEvent createWebKeyboardEvent(const Evas_Event_Key_Down*); > static WebKeyboardEvent createWebKeyboardEvent(const Evas_Event_Key_Up*); > #if ENABLE(TOUCH_EVENTS) >- static WebTouchEvent createWebTouchEvent(Ewk_Touch_Event_Type, const Eina_List*, const Evas_Modifier*, const WebCore::AffineTransform&, const WebCore::AffineTransform&, double timestamp); >+ static WebTouchEvent createWebTouchEvent(const WKTouchEvent&); > #endif > }; > >diff --git a/Source/WebKit2/UIProcess/API/C/efl/WKEventEfl.h b/Source/WebKit2/UIProcess/API/C/efl/WKEventEfl.h >new file mode 100644 >index 0000000000000000000000000000000000000000..3958ce9de26966c604dafc1cdb110df52a523407 >--- /dev/null >+++ b/Source/WebKit2/UIProcess/API/C/efl/WKEventEfl.h >@@ -0,0 +1,81 @@ >+/* >+ * Copyright (C) 2013 Samsung Electronics. All rights reserved. >+ * Copyright (C) 2012-2013 Nokia Corporation and/or its subsidiary(-ies). >+ * >+ * Redistribution and use in source and binary forms, with or without >+ * modification, are permitted provided that the following conditions >+ * are met: >+ * 1. Redistributions of source code must retain the above copyright >+ * notice, this list of conditions and the following disclaimer. >+ * 2. Redistributions in binary form must reproduce the above copyright >+ * notice, this list of conditions and the following disclaimer in the >+ * documentation and/or other materials provided with the distribution. >+ * >+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' >+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, >+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR >+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS >+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR >+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF >+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS >+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN >+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) >+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF >+ * THE POSSIBILITY OF SUCH DAMAGE. >+ */ >+ >+#ifndef WKEventEfl_h >+#define WKEventEfl_h >+ >+#include <WebKit2/WKBase.h> >+#include <WebKit2/WKEvent.h> >+#include <WebKit2/WKGeometry.h> >+ >+#ifdef __cplusplus >+extern "C" { >+#endif >+ >+enum WKTouchEventType { >+ kWKTouchEventTypeTouchStart, >+ kWKTouchEventTypeTouchMove, >+ kWKTouchEventTypeTouchEnd, >+ kWKTouchEventTypeTouchCancel >+}; >+typedef WKTouchEventType WKTouchEventType; >+ >+enum WKTouchPointState { >+ kWKTouchPointStateTouchReleased, >+ kWKTouchPointStateTouchPressed, >+ kWKTouchPointStateTouchMoved, >+ kWKTouchPointStateTouchStationary, >+ kWKTouchPointStateTouchCancelled >+}; >+typedef WKTouchPointState WKTouchPointState; >+ >+struct WKTouchPoint { >+ unsigned id; >+ WKTouchPointState state; >+ WKPoint position; >+ WKPoint screenPosition; >+ WKSize radius; >+ float rotationAngle; >+ float force; >+}; >+typedef struct WKTouchPoint WKTouchPoint; >+ >+enum { kWKMaximumTouchPointsPerTouchEvent = 5 }; >+ >+struct WKTouchEvent { >+ WKTouchEventType type; >+ WKEventModifiers modifiers; >+ double timestamp; >+ unsigned numTouchPoints; >+ WKTouchPoint touchPoints[kWKMaximumTouchPointsPerTouchEvent]; >+}; >+typedef struct WKTouchEvent WKTouchEvent; >+ >+#ifdef __cplusplus >+} >+#endif >+ >+#endif /* WKEventEfl_h */ >diff --git a/Source/WebKit2/UIProcess/API/C/efl/WKView.cpp b/Source/WebKit2/UIProcess/API/C/efl/WKView.cpp >index 9c1d31d4ba3d86b8f7f680775e623cd09a3b33a2..98cd73c300aabcb29b42d11519a043cf893d8396 100644 >--- a/Source/WebKit2/UIProcess/API/C/efl/WKView.cpp >+++ b/Source/WebKit2/UIProcess/API/C/efl/WKView.cpp >@@ -80,3 +80,8 @@ WKImageRef WKViewCreateSnapshot(WKViewRef viewRef) > EwkView* ewkView = EwkView::fromEvasObject(toImpl(viewRef)->evasObject()); > return WKImageCreateFromCairoSurface(ewkView->takeSnapshot().get(), 0 /* options */); > } >+ >+void WKViewHandleTouchEvent(WKViewRef viewRef, const WKTouchEvent* touchEvent) >+{ >+ toImpl(viewRef)->handleTouchEvent(*touchEvent); >+} >diff --git a/Source/WebKit2/UIProcess/API/C/efl/WKView.h b/Source/WebKit2/UIProcess/API/C/efl/WKView.h >index d5b432d8ea13154287fa8d4a87c48b40b8d22f1a..fac1d7a7cc0bb28951142c83b3ac7f33029a39d0 100644 >--- a/Source/WebKit2/UIProcess/API/C/efl/WKView.h >+++ b/Source/WebKit2/UIProcess/API/C/efl/WKView.h >@@ -21,6 +21,7 @@ > #define WKView_h > > #include <WebKit2/WKBase.h> >+#include <WebKit2/WKEventEfl.h> > > #if USE(EO) > typedef struct _Eo Evas; >@@ -52,6 +53,8 @@ WK_EXPORT Evas_Object* WKViewGetEvasObject(WKViewRef); > > WK_EXPORT WKImageRef WKViewCreateSnapshot(WKViewRef); > >+WK_EXPORT void WKViewHandleTouchEvent(WKViewRef, const WKTouchEvent*); >+ > #ifdef __cplusplus > } > #endif >diff --git a/Source/WebKit2/UIProcess/API/efl/EwkView.cpp b/Source/WebKit2/UIProcess/API/efl/EwkView.cpp >index 046694d74f4f9099420821dc38fd286a34210077..68ebc78eb1d47d7b03e6c62ebbec72898bd47cac 100644 >--- a/Source/WebKit2/UIProcess/API/efl/EwkView.cpp >+++ b/Source/WebKit2/UIProcess/API/efl/EwkView.cpp >@@ -956,6 +956,66 @@ void EwkView::onMouseMove(void* data, Evas*, Evas_Object*, void* eventInfo) > } > > #if ENABLE(TOUCH_EVENTS) >+void EwkView::handleTouchEvent(Ewk_Touch_Event_Type type, const Eina_List* points, const Evas_Modifier* modifiers) >+{ >+ EINA_SAFETY_ON_NULL_RETURN(points); >+ >+ WKTouchEvent touchEvent; >+ touchEvent.type = static_cast<WKTouchEventType>(type); >+ touchEvent.timestamp = ecore_time_get(); >+ touchEvent.numTouchPoints = eina_list_count(points); >+ >+ touchEvent.modifiers = 0; >+ if (evas_key_modifier_is_set(modifiers, "Shift")) >+ touchEvent.modifiers |= kWKEventModifiersShiftKey; >+ if (evas_key_modifier_is_set(modifiers, "Control")) >+ touchEvent.modifiers |= kWKEventModifiersControlKey; >+ if (evas_key_modifier_is_set(modifiers, "Alt")) >+ touchEvent.modifiers |= kWKEventModifiersAltKey; >+ if (evas_key_modifier_is_set(modifiers, "Meta")) >+ touchEvent.modifiers |= kWKEventModifiersMetaKey; >+ >+ const Eina_List* list; >+ void* item; >+ double x; >+ double y; >+ unsigned index = 0; >+ EINA_LIST_FOREACH(points, list, item) { >+ Ewk_Touch_Point* point = static_cast<Ewk_Touch_Point*>(item); >+ WKTouchPoint& wkTouchPoint = touchEvent.touchPoints[index++]; >+ >+ wkTouchPoint.id = point->id; >+ transformFromScene().map(point->x, point->y, x, y); >+ wkTouchPoint.position = WKPointMake(x, y); >+ transformToScreen().map(point->x, point->y, x, y); >+ wkTouchPoint.screenPosition = WKPointMake(x, y); >+ wkTouchPoint.radius = WKSizeMake(0, 0); >+ wkTouchPoint.rotationAngle = 0; >+ wkTouchPoint.force = 0; >+ >+ switch (point->state) { >+ case EVAS_TOUCH_POINT_UP: >+ wkTouchPoint.state = kWKTouchPointStateTouchReleased; >+ break; >+ case EVAS_TOUCH_POINT_MOVE: >+ wkTouchPoint.state = kWKTouchPointStateTouchMoved; >+ break; >+ case EVAS_TOUCH_POINT_DOWN: >+ wkTouchPoint.state = kWKTouchPointStateTouchPressed; >+ break; >+ case EVAS_TOUCH_POINT_STILL: >+ wkTouchPoint.state = kWKTouchPointStateTouchStationary; >+ break; >+ case EVAS_TOUCH_POINT_CANCEL: >+ default: >+ wkTouchPoint.state = kWKTouchPointStateTouchCancelled; >+ break; >+ } >+ } >+ >+ WKViewHandleTouchEvent(wkView(), &touchEvent); >+} >+ > void EwkView::feedTouchEvents(Ewk_Touch_Event_Type type) > { > Ewk_View_Smart_Data* sd = smartData(); >@@ -973,7 +1033,7 @@ void EwkView::feedTouchEvents(Ewk_Touch_Event_Type type) > points = eina_list_append(points, point); > } > >- ewk_view_feed_touch_event(m_evasObject, type, points, evas_key_modifier_get(sd->base.evas)); >+ handleTouchEvent(type, points, evas_key_modifier_get(sd->base.evas)); > > void* data; > EINA_LIST_FREE(points, data) >diff --git a/Source/WebKit2/UIProcess/API/efl/EwkView.h b/Source/WebKit2/UIProcess/API/efl/EwkView.h >index 87165bc8856871394b4c0c4ccb9a02754f5a8216..f55cb797f81b27affb182d4d7e060709251f2f22 100644 >--- a/Source/WebKit2/UIProcess/API/efl/EwkView.h >+++ b/Source/WebKit2/UIProcess/API/efl/EwkView.h >@@ -148,6 +148,7 @@ public: > #if ENABLE(TOUCH_EVENTS) > bool touchEventsEnabled() const { return m_touchEventsEnabled; } > void setTouchEventsEnabled(bool enabled); >+ void handleTouchEvent(Ewk_Touch_Event_Type, const Eina_List* points, const Evas_Modifier*); > #endif > > void setCursor(const WebCore::Cursor& cursor); >diff --git a/Source/WebKit2/UIProcess/API/efl/ewk_view.cpp b/Source/WebKit2/UIProcess/API/efl/ewk_view.cpp >index d6181b8b0775762a3bdcdfe126535118004490b2..b8d4ed6a28729754fb9a0540daa89ea68983ab7a 100644 >--- a/Source/WebKit2/UIProcess/API/efl/ewk_view.cpp >+++ b/Source/WebKit2/UIProcess/API/efl/ewk_view.cpp >@@ -53,6 +53,7 @@ > #include "ewk_view_private.h" > #include <Ecore_Evas.h> > #include <WebKit2/WKPageGroup.h> >+#include <WebKit2/WKView.h> > #include <wtf/UnusedParam.h> > #include <wtf/text/CString.h> > >@@ -827,7 +828,7 @@ Eina_Bool ewk_view_feed_touch_event(Evas_Object* ewkView, Ewk_Touch_Event_Type t > EWK_VIEW_SD_GET_OR_RETURN(ewkView, smartData, false); > EWK_VIEW_IMPL_GET_BY_SD_OR_RETURN(smartData, impl, false); > >- impl->page()->handleTouchEvent(NativeWebTouchEvent(type, points, modifiers, impl->transformFromScene(), impl->transformToScreen(), ecore_time_get())); >+ impl->handleTouchEvent(type, points, modifiers); > > return true; > #else >diff --git a/Source/WebKit2/UIProcess/efl/WebView.cpp b/Source/WebKit2/UIProcess/efl/WebView.cpp >index c1b1ff6f1fb508a53a454c557e7622bed645f299..64c03df8a210a63d2f46a6401052342b2b8ad11b 100644 >--- a/Source/WebKit2/UIProcess/efl/WebView.cpp >+++ b/Source/WebKit2/UIProcess/efl/WebView.cpp >@@ -74,4 +74,9 @@ void WebView::resumeActiveDOMObjectsAndAnimations() > m_webPageProxy->resumeActiveDOMObjectsAndAnimations(); > } > >+void WebView::handleTouchEvent(const WKTouchEvent& touchEvent) >+{ >+ m_webPageProxy->handleTouchEvent(NativeWebTouchEvent(touchEvent)); >+} >+ > } // namespace WebKit >diff --git a/Source/WebKit2/UIProcess/efl/WebView.h b/Source/WebKit2/UIProcess/efl/WebView.h >index e1e766dfd1f006a63938467d32752002c817a856..41126b76bbf01831b98dc0b3d091bd696c79441d 100644 >--- a/Source/WebKit2/UIProcess/efl/WebView.h >+++ b/Source/WebKit2/UIProcess/efl/WebView.h >@@ -28,6 +28,7 @@ > > #include "APIObject.h" > #include "PageClient.h" >+#include "WKEventEfl.h" > #include "WebContext.h" > #include "WebPageGroup.h" > #include "WebPageProxy.h" >@@ -49,6 +50,7 @@ public: > void setThemePath(WKStringRef); > void suspendActiveDOMObjectsAndAnimations(); > void resumeActiveDOMObjectsAndAnimations(); >+ void handleTouchEvent(const WKTouchEvent&); > > // FIXME: Remove when possible. > Evas_Object* evasObject() { return m_evasObject; } >diff --git a/Tools/ChangeLog b/Tools/ChangeLog >index 621e5cbe7d5f99b37baaf06863d5649eb4a214a1..c77867c4af3344ad0bff92a6982e059ffbc92ca8 100644 >--- a/Tools/ChangeLog >+++ b/Tools/ChangeLog >@@ -1,3 +1,15 @@ >+2013-02-05 Eunmi Lee <eunmi15.lee@samsung.com> >+ >+ [EFL][WK2] Add WK2 C API to handle touch event. >+ https://bugs.webkit.org/show_bug.cgi?id=108915 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ Add "-readability/enum_casing" for WebKit2 C APIs because we use word >+ which starts with non-capital letter 'k' for types of enums. >+ >+ * Scripts/webkitpy/style/checker.py: >+ > 2013-02-04 Alan Cutter <alancutter@chromium.org> > > EWS bots don't remove untracked files after processing a patch >diff --git a/Tools/Scripts/webkitpy/style/checker.py b/Tools/Scripts/webkitpy/style/checker.py >index 97413dbd51b3ec5cadc8a10bcfcd9dd92cf97b51..ad5416e904acb3340ed808de9af07ba18de9c06d 100644 >--- a/Tools/Scripts/webkitpy/style/checker.py >+++ b/Tools/Scripts/webkitpy/style/checker.py >@@ -222,11 +222,14 @@ _PATH_RULES_SPECIFIER = [ > ([# The WebKit2 C API has names with underscores and whitespace-aligned > # struct members. Also, we allow unnecessary parameter names in > # WebKit2 APIs because we're matching CF's header style. >+ # Additionally, we use word which starts with non-capital letter 'k' >+ # for types of enums. > "Source/WebKit2/UIProcess/API/C/", > "Source/WebKit2/Shared/API/c/", > "Source/WebKit2/WebProcess/InjectedBundle/API/c/"], > ["-readability/naming", > "-readability/parameter_name", >+ "-readability/enum_casing", > "-whitespace/declaration"]), > ([# These files define GObjects, which implies some definitions of > # variables and functions containing underscores.
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 108915
:
186596
|
186600
|
186764
|
186833
|
187241
|
188794
|
189221
|
190669
|
190671
|
192232
|
192913
|
193064
|
193543
|
193733
|
199797
|
205562