| Index: cc/layer_tree_host_impl.cc
|
| diff --git a/cc/layer_tree_host_impl.cc b/cc/layer_tree_host_impl.cc
|
| index f6b753915070bb426cf9fcb728db7a9f9d36ec29..f5ca6aa86132aadfe72eb4af65a1733f35aa7522 100644
|
| --- a/cc/layer_tree_host_impl.cc
|
| +++ b/cc/layer_tree_host_impl.cc
|
| @@ -357,10 +357,13 @@ bool LayerTreeHostImpl::haveTouchEventHandlersAt(const gfx::Point& viewportPoint
|
|
|
| // First find out which layer was hit from the saved list of visible layers
|
| // in the most recent frame.
|
| - LayerImpl* layerImplHitByPointInTouchHandlerRegion = LayerTreeHostCommon::findLayerThatIsHitByPointInTouchHandlerRegion(deviceViewportPoint, m_renderSurfaceLayerList);
|
| + LayerImpl* layerImpl = LayerTreeHostCommon::findLayerThatIsHitByPoint(deviceViewportPoint, m_renderSurfaceLayerList);
|
|
|
| - if (layerImplHitByPointInTouchHandlerRegion)
|
| - return true;
|
| + // Walk up the hierarchy and look for a layer with a touch event handler region that the given point hits.
|
| + for (; layerImpl; layerImpl = layerImpl->parent()) {
|
| + if (LayerTreeHostCommon::layerHasTouchEventHandlersAt(deviceViewportPoint,layerImpl))
|
| + return true;
|
| + }
|
|
|
| return false;
|
| }
|
|
|