Changeset 173766 in webkit


Ignore:
Timestamp:
Sep 19, 2014 11:43:14 AM (10 years ago)
Author:
Simon Fraser
Message:

Provide a default argument for the most commonly used HitTestRequest variant
https://bugs.webkit.org/show_bug.cgi?id=136653

Reviewed by Darin Adler.

Make the default HitTestRequest flags be ReadOnly | Active | DisallowShadowContent
and change call sites using the default flags to use a HitTestRequest temporary.

Source/WebCore:

  • dom/TreeScope.cpp:

(WebCore::nodeFromPoint):

  • editing/FrameSelection.cpp:

(WebCore::FrameSelection::contains):

  • page/DragController.cpp:

(WebCore::elementUnderMouse):

  • page/EventHandler.cpp:

(WebCore::EventHandler::handleMouseDraggedEvent):
(WebCore::EventHandler::handleMousePressEvent):

  • rendering/HitTestRequest.h:

(WebCore::HitTestRequest::HitTestRequest):

Source/WebKit2:

  • WebProcess/WebPage/ViewGestureGeometryCollector.cpp:

(WebKit::ViewGestureGeometryCollector::collectGeometryForSmartMagnificationGesture):

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::dynamicViewportSizeUpdate):

Location:
trunk/Source
Files:
9 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r173765 r173766  
     12014-09-19  Simon Fraser  <simon.fraser@apple.com>
     2
     3        Provide a default argument for the most commonly used HitTestRequest variant
     4        https://bugs.webkit.org/show_bug.cgi?id=136653
     5
     6        Reviewed by Darin Adler.
     7
     8        Make the default HitTestRequest flags be ReadOnly | Active | DisallowShadowContent
     9        and change call sites using the default flags to use a HitTestRequest temporary.
     10
     11        * dom/TreeScope.cpp:
     12        (WebCore::nodeFromPoint):
     13        * editing/FrameSelection.cpp:
     14        (WebCore::FrameSelection::contains):
     15        * page/DragController.cpp:
     16        (WebCore::elementUnderMouse):
     17        * page/EventHandler.cpp:
     18        (WebCore::EventHandler::handleMouseDraggedEvent):
     19        (WebCore::EventHandler::handleMousePressEvent):
     20        * rendering/HitTestRequest.h:
     21        (WebCore::HitTestRequest::HitTestRequest):
     22
    1232014-09-19  Chris Dumez  <cdumez@apple.com>
    224
  • trunk/Source/WebCore/dom/TreeScope.cpp

    r172796 r173766  
    241241        return nullptr;
    242242
    243     HitTestRequest request(HitTestRequest::ReadOnly | HitTestRequest::Active | HitTestRequest::DisallowShadowContent);
    244243    HitTestResult result(point);
    245     document->renderView()->hitTest(request, result);
     244    document->renderView()->hitTest(HitTestRequest(), result);
    246245
    247246    if (localPoint)
  • trunk/Source/WebCore/editing/FrameSelection.cpp

    r173682 r173766  
    15981598        return false;
    15991599   
    1600     HitTestRequest request(HitTestRequest::ReadOnly | HitTestRequest::Active | HitTestRequest::DisallowShadowContent);
    16011600    HitTestResult result(point);
    1602     document->renderView()->hitTest(request, result);
     1601    document->renderView()->hitTest(HitTestRequest(), result);
    16031602    Node* innerNode = result.innerNode();
    16041603    if (!innerNode || !innerNode->renderer())
  • trunk/Source/WebCore/page/DragController.cpp

    r173687 r173766  
    287287    LayoutPoint point(p.x() * zoomFactor, p.y() * zoomFactor);
    288288
    289     HitTestRequest request(HitTestRequest::ReadOnly | HitTestRequest::Active | HitTestRequest::DisallowShadowContent);
    290289    HitTestResult result(point);
    291     documentUnderMouse->renderView()->hitTest(request, result);
     290    documentUnderMouse->renderView()->hitTest(HitTestRequest(), result);
    292291
    293292    Node* n = result.innerNode();
  • trunk/Source/WebCore/page/EventHandler.cpp

    r173033 r173766  
    841841
    842842    if (m_selectionInitiationState != ExtendedSelection) {
    843         HitTestRequest request(HitTestRequest::ReadOnly | HitTestRequest::Active | HitTestRequest::DisallowShadowContent);
    844843        HitTestResult result(m_mouseDownPos);
    845         m_frame.document()->renderView()->hitTest(request, result);
     844        m_frame.document()->renderView()->hitTest(HitTestRequest(), result);
    846845
    847846        updateSelectionForMouseDrag(result);
     
    17521751    if (mouseEvent.scrollbar()) {
    17531752        const bool wasLastScrollBar = mouseEvent.scrollbar() == m_lastScrollbarUnderMouse.get();
    1754         HitTestRequest request(HitTestRequest::ReadOnly | HitTestRequest::Active | HitTestRequest::DisallowShadowContent);
    1755         mouseEvent = m_frame.document()->prepareMouseEvent(request, documentPoint, platformMouseEvent);
     1753        mouseEvent = m_frame.document()->prepareMouseEvent(HitTestRequest(), documentPoint, platformMouseEvent);
    17561754        if (wasLastScrollBar && mouseEvent.scrollbar() != m_lastScrollbarUnderMouse.get())
    17571755            m_lastScrollbarUnderMouse = nullptr;
     
    17711769        // we'd like to EventHandler::handleMousePressEvent to pass the event to the widget and thus the
    17721770        // event target node can't still be the shadow node.
    1773         if (mouseEvent.targetNode()->isShadowRoot() && isHTMLInputElement(toShadowRoot(mouseEvent.targetNode())->hostElement())) {
    1774             HitTestRequest request(HitTestRequest::ReadOnly | HitTestRequest::Active | HitTestRequest::DisallowShadowContent);
    1775             mouseEvent = m_frame.document()->prepareMouseEvent(request, documentPoint, platformMouseEvent);
    1776         }
     1771        if (mouseEvent.targetNode()->isShadowRoot() && isHTMLInputElement(toShadowRoot(mouseEvent.targetNode())->hostElement()))
     1772            mouseEvent = m_frame.document()->prepareMouseEvent(HitTestRequest(), documentPoint, platformMouseEvent);
    17771773
    17781774        FrameView* view = m_frame.view();
  • trunk/Source/WebCore/rendering/HitTestRequest.h

    r165676 r173766  
    4545    typedef unsigned HitTestRequestType;
    4646
    47     HitTestRequest(HitTestRequestType requestType)
     47    HitTestRequest(HitTestRequestType requestType = ReadOnly | Active | DisallowShadowContent)
    4848        : m_requestType(requestType)
    4949    {
  • trunk/Source/WebKit2/ChangeLog

    r173763 r173766  
     12014-09-19  Simon Fraser  <simon.fraser@apple.com>
     2
     3        Provide a default argument for the most commonly used HitTestRequest variant
     4        https://bugs.webkit.org/show_bug.cgi?id=136653
     5
     6        Reviewed by Darin Adler.
     7
     8        Make the default HitTestRequest flags be ReadOnly | Active | DisallowShadowContent
     9        and change call sites using the default flags to use a HitTestRequest temporary.
     10
     11        * WebProcess/WebPage/ViewGestureGeometryCollector.cpp:
     12        (WebKit::ViewGestureGeometryCollector::collectGeometryForSmartMagnificationGesture):
     13        * WebProcess/WebPage/ios/WebPageIOS.mm:
     14        (WebKit::WebPage::dynamicViewportSizeUpdate):
     15
    1162014-09-19  Daniel Bates  <dabates@apple.com>
    217
  • trunk/Source/WebKit2/WebProcess/WebPage/ViewGestureGeometryCollector.cpp

    r170622 r173766  
    8383        return;
    8484
    85     HitTestRequest request(HitTestRequest::ReadOnly | HitTestRequest::Active | HitTestRequest::DisallowShadowContent);
    8685    IntPoint originInContentsSpace = m_webPage.mainFrameView()->windowToContents(roundedIntPoint(origin));
    8786    HitTestResult hitTestResult = HitTestResult(originInContentsSpace);
    8887
    89     m_webPage.mainFrameView()->renderView()->hitTest(request, hitTestResult);
     88    m_webPage.mainFrameView()->renderView()->hitTest(HitTestRequest(), hitTestResult);
    9089
    9190    if (Node* node = hitTestResult.innerNode()) {
  • trunk/Source/WebKit2/WebProcess/WebPage/ios/WebPageIOS.mm

    r173450 r173766  
    22472247        HitTestResult hitTestResult = HitTestResult(unobscuredContentRectCenter);
    22482248
    2249         if (RenderView* mainFrameRenderView = frameView.renderView()) {
    2250             HitTestRequest request(HitTestRequest::ReadOnly | HitTestRequest::Active | HitTestRequest::DisallowShadowContent);
    2251             mainFrameRenderView->hitTest(request, hitTestResult);
    2252         }
     2249        if (RenderView* mainFrameRenderView = frameView.renderView())
     2250            mainFrameRenderView->hitTest(HitTestRequest(), hitTestResult);
    22532251
    22542252        if (Node* node = hitTestResult.innerNode()) {
Note: See TracChangeset for help on using the changeset viewer.