| Index: content/browser/android/content_view_core_impl.h
|
| diff --git a/content/browser/android/content_view_core_impl.h b/content/browser/android/content_view_core_impl.h
|
| index d6b7a1a5d2f13c3cfec0ba2b3d083fe0363a5809..57312e2688b6435946af908d602807d77f296d6b 100644
|
| --- a/content/browser/android/content_view_core_impl.h
|
| +++ b/content/browser/android/content_view_core_impl.h
|
| @@ -14,6 +14,7 @@
|
| #include "base/i18n/rtl.h"
|
| #include "base/memory/scoped_ptr.h"
|
| #include "base/process/process.h"
|
| +#include "content/browser/renderer_host/input/gesture_event_queue.h"
|
| #include "content/browser/renderer_host/render_widget_host_view_android.h"
|
| #include "content/browser/web_contents/web_contents_impl.h"
|
| #include "content/public/browser/android/content_view_core.h"
|
| @@ -37,7 +38,8 @@ struct MenuItem;
|
| // TODO(jrg): this is a shell. Upstream the rest.
|
| class ContentViewCoreImpl : public ContentViewCore,
|
| public NotificationObserver,
|
| - public WebContentsObserver {
|
| + public WebContentsObserver,
|
| + public GestureEventQueueClient {
|
| public:
|
| static ContentViewCoreImpl* FromWebContents(WebContents* web_contents);
|
| ContentViewCoreImpl(JNIEnv* env,
|
| @@ -95,11 +97,12 @@ class ContentViewCoreImpl : public ContentViewCore,
|
| JNIEnv* env, jobject obj) const;
|
| jboolean IsIncognito(JNIEnv* env, jobject obj);
|
| void SendOrientationChangeEvent(JNIEnv* env, jobject obj, jint orientation);
|
| - jboolean SendTouchEvent(JNIEnv* env,
|
| - jobject obj,
|
| - jlong time_ms,
|
| - jint type,
|
| - jobjectArray pts);
|
| + void OnTouchEventHandlingBegin(JNIEnv* env,
|
| + jobject obj,
|
| + jlong time_ms,
|
| + jint type,
|
| + jobjectArray pts);
|
| + void OnTouchEventHandlingEnd(JNIEnv* env, jobject obj);
|
| jboolean SendMouseMoveEvent(JNIEnv* env,
|
| jobject obj,
|
| jlong time_ms,
|
| @@ -270,9 +273,8 @@ class ContentViewCoreImpl : public ContentViewCore,
|
|
|
| bool HasFocus();
|
| void ConfirmTouchEvent(InputEventAckState ack_result);
|
| - void UnhandledFlingStartEvent();
|
| + void UnhandledFlingStartEvent(float vx, float vy);
|
| void OnScrollUpdateGestureConsumed();
|
| - void HasTouchEventHandlers(bool need_touch_events);
|
| void OnSelectionChanged(const std::string& text);
|
| void OnSelectionBoundsChanged(
|
| const ViewHostMsg_SelectionBounds_Params& params);
|
| @@ -332,6 +334,10 @@ class ContentViewCoreImpl : public ContentViewCore,
|
| // WebContentsObserver implementation.
|
| virtual void RenderViewReady() OVERRIDE;
|
|
|
| + // GestureEventQueueClient implementation.
|
| + virtual void ForwardGestureEvent(
|
| + const blink::WebGestureEvent& event) OVERRIDE;
|
| +
|
| // --------------------------------------------------------------------------
|
| // Other private methods and data
|
| // --------------------------------------------------------------------------
|
| @@ -353,6 +359,7 @@ class ContentViewCoreImpl : public ContentViewCore,
|
| void DeleteScaledSnapshotTexture();
|
|
|
| void SendGestureEvent(const blink::WebGestureEvent& event);
|
| + void SendSyntheticGestureEvent(const blink::WebGestureEvent& event);
|
|
|
| // Update focus state of the RenderWidgetHostView.
|
| void SetFocusInternal(bool focused);
|
| @@ -392,6 +399,11 @@ class ContentViewCoreImpl : public ContentViewCore,
|
|
|
| bool geolocation_needs_pause_;
|
|
|
| + GestureEventQueue gesture_event_queue_;
|
| + bool handling_touch_event_;
|
| + blink::WebTouchEvent pending_touch_event_;
|
| + GestureEventPacket pending_gesture_packet_;
|
| +
|
| DISALLOW_COPY_AND_ASSIGN(ContentViewCoreImpl);
|
| };
|
|
|
|
|