| Index: ui/views/view.h
|
| diff --git a/ui/views/view.h b/ui/views/view.h
|
| index d6158534bfde399184b68eb10278b4aba6af363e..29c8c271e2db96e2ada1dd525b8a6319268e2f6a 100644
|
| --- a/ui/views/view.h
|
| +++ b/ui/views/view.h
|
| @@ -559,12 +559,20 @@ class VIEWS_EXPORT View : public ui::LayerDelegate,
|
| static bool get_use_acceleration_when_possible();
|
|
|
| // Input ---------------------------------------------------------------------
|
| - // The points (and mouse locations) in the following functions are in the
|
| - // view's coordinates, except for a RootView.
|
| + // The points, rects, mouse locations, and touch locations in the following
|
| + // functions are in the view's coordinates, except for a RootView.
|
|
|
| - // Returns the deepest visible descendant that contains the specified point
|
| - // and supports event handling.
|
| - virtual View* GetEventHandlerForPoint(const gfx::Point& point);
|
| + // Convenience functions which calls into GetEventHandler() with
|
| + // a 1x1 rect centered at |point|.
|
| + View* GetEventHandlerForPoint(const gfx::Point& point);
|
| +
|
| + // If point-based targeting should be used, return the deepest visible
|
| + // descendant that contains the center point of |rect|.
|
| + // If rect-based targeting (i.e., fuzzing) should be used, return the
|
| + // closest visible descendant having at least kRectTargetOverlap of
|
| + // its area covered by |rect|. If no such descendant exists, return the
|
| + // deepest visible descendant that contains the center point of |rect|.
|
| + virtual View* GetEventHandlerForRect(const gfx::Rect& rect);
|
|
|
| // Returns the deepest visible descendant that contains the specified point
|
| // and supports tooltips. If the view does not contain the point, returns
|
| @@ -1118,6 +1126,16 @@ class VIEWS_EXPORT View : public ui::LayerDelegate,
|
|
|
| // Input ---------------------------------------------------------------------
|
|
|
| + // Specifies the source of the region used in a hit test.
|
| + // HIT_TEST_SOURCE_MOUSE indicates the hit test is being performed with a
|
| + // single point and HIT_TEST_SOURCE_TOUCH indicates the hit test is being
|
| + // performed with a rect larger than a single point. This value can be used,
|
| + // for example, to add extra padding or change the shape of the hit test mask.
|
| + enum HitTestSource {
|
| + HIT_TEST_SOURCE_MOUSE,
|
| + HIT_TEST_SOURCE_TOUCH
|
| + };
|
| +
|
| // Called by HitTestRect() to see if this View has a custom hit test mask. If
|
| // the return value is true, GetHitTestMask() will be called to obtain the
|
| // mask. Default value is false, in which case the View will hit-test against
|
| @@ -1126,7 +1144,8 @@ class VIEWS_EXPORT View : public ui::LayerDelegate,
|
|
|
| // Called by HitTestRect() to retrieve a mask for hit-testing against.
|
| // Subclasses override to provide custom shaped hit test regions.
|
| - virtual void GetHitTestMask(gfx::Path* mask) const;
|
| + virtual void GetHitTestMask(gfx::Path* mask,
|
| + HitTestSource source = HIT_TEST_SOURCE_MOUSE) const;
|
|
|
| virtual DragInfo* GetDragInfo();
|
|
|
|
|