| Index: content/browser/renderer_host/render_widget_host_view_android.h
|
| diff --git a/content/browser/renderer_host/render_widget_host_view_android.h b/content/browser/renderer_host/render_widget_host_view_android.h
|
| index 6d05761234387b6cc5b45f4add127a2fd99a8075..3a05e27ae3b71c31e8e12a98212ea313a4eb14d7 100644
|
| --- a/content/browser/renderer_host/render_widget_host_view_android.h
|
| +++ b/content/browser/renderer_host/render_widget_host_view_android.h
|
| @@ -21,6 +21,7 @@
|
| #include "content/browser/renderer_host/image_transport_factory_android.h"
|
| #include "content/browser/renderer_host/ime_adapter_android.h"
|
| #include "content/browser/renderer_host/input/gesture_text_selector.h"
|
| +#include "content/browser/renderer_host/input/touch_selection_controller.h"
|
| #include "content/browser/renderer_host/render_widget_host_view_base.h"
|
| #include "content/common/content_export.h"
|
| #include "gpu/command_buffer/common/mailbox.h"
|
| @@ -67,7 +68,8 @@ class CONTENT_EXPORT RenderWidgetHostViewAndroid
|
| public ui::GestureProviderClient,
|
| public ui::WindowAndroidObserver,
|
| public DelegatedFrameEvictorClient,
|
| - public GestureTextSelectorClient {
|
| + public GestureTextSelectorClient,
|
| + public TouchSelectionControllerClient {
|
| public:
|
| RenderWidgetHostViewAndroid(RenderWidgetHostImpl* widget,
|
| ContentViewCoreImpl* content_view_core);
|
| @@ -212,6 +214,7 @@ class CONTENT_EXPORT RenderWidgetHostViewAndroid
|
| const gfx::Rect rect);
|
|
|
| bool OnTouchEvent(const ui::MotionEvent& event);
|
| + bool OnTouchHandleEvent(const ui::MotionEvent& event);
|
| void ResetGestureDetection();
|
| void SetDoubleTapSupportEnabled(bool enabled);
|
| void SetMultiTouchZoomSupportEnabled(bool enabled);
|
| @@ -229,6 +232,7 @@ class CONTENT_EXPORT RenderWidgetHostViewAndroid
|
| bool HasValidFrame() const;
|
|
|
| void MoveCaret(const gfx::Point& point);
|
| + void HideTextHandles();
|
|
|
| void SynchronousFrameMetadata(
|
| const cc::CompositorFrameMetadata& frame_metadata);
|
| @@ -242,6 +246,16 @@ class CONTENT_EXPORT RenderWidgetHostViewAndroid
|
| const TextSurroundingSelectionCallback& callback);
|
|
|
| private:
|
| + // TouchSelectionControllerClient implementation.
|
| + virtual bool SupportsAnimation() const OVERRIDE;
|
| + virtual void SetNeedsAnimate() OVERRIDE;
|
| + virtual void MoveCaret(const gfx::PointF& position) OVERRIDE;
|
| + virtual void SelectBetweenCoordinates(const gfx::PointF& start,
|
| + const gfx::PointF& end) OVERRIDE;
|
| + virtual void OnSelectionEvent(SelectionEventType event,
|
| + const gfx::PointF& anchor_position) OVERRIDE;
|
| + virtual scoped_ptr<TouchHandleDrawable> CreateDrawable() OVERRIDE;
|
| +
|
| void RunAckCallbacks();
|
|
|
| void DestroyDelegatedContent();
|
| @@ -253,8 +267,6 @@ class CONTENT_EXPORT RenderWidgetHostViewAndroid
|
| void OnFrameMetadataUpdated(
|
| const cc::CompositorFrameMetadata& frame_metadata);
|
| void ComputeContentsSize(const cc::CompositorFrameMetadata& frame_metadata);
|
| - void ResetClipping();
|
| - void ClipContents(const gfx::Rect& clipping, const gfx::Size& content_size);
|
|
|
| void AttachLayers();
|
| void RemoveLayers();
|
| @@ -297,9 +309,13 @@ class CONTENT_EXPORT RenderWidgetHostViewAndroid
|
| void InternalSwapCompositorFrame(uint32 output_surface_id,
|
| scoped_ptr<cc::CompositorFrame> frame);
|
|
|
| - void SetNeedsAnimate();
|
| bool Animate(base::TimeTicks frame_time);
|
|
|
| + void OnContentScrollingChange();
|
| + bool IsContentScrolling() const;
|
| +
|
| + float GetDpiScale() const;
|
| +
|
| // The model object.
|
| RenderWidgetHostImpl* host_;
|
|
|
| @@ -348,6 +364,12 @@ class CONTENT_EXPORT RenderWidgetHostViewAndroid
|
| // Handles gesture based text selection
|
| GestureTextSelector gesture_text_selector_;
|
|
|
| + // Manages selection handle rendering and manipulation.
|
| + // This will always be NULL if |content_view_core_| is NULL.
|
| + scoped_ptr<TouchSelectionController> selection_controller_;
|
| + bool touch_scrolling_;
|
| + size_t potentially_active_fling_count_;
|
| +
|
| bool flush_input_requested_;
|
|
|
| int accelerated_surface_route_id_;
|
|
|