Changeset 88282 in webkit


Ignore:
Timestamp:
Jun 7, 2011 4:24:40 PM (13 years ago)
Author:
eae@chromium.org
Message:

2011-06-07 Emil A Eklund <eae@chromium.org>

Reviewed by Eric Seidel.

Change RenderBlock::hitTestContents to IntPoint
https://bugs.webkit.org/show_bug.cgi?id=62170

Covered by existing tests.

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::nodeAtPoint): (WebCore::RenderBlock::hitTestColumns): (WebCore::RenderBlock::hitTestContents):
  • rendering/RenderBlock.h:
Location:
trunk/Source/WebCore
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r88279 r88282  
     12011-06-07  Emil A Eklund  <eae@chromium.org>
     2
     3        Reviewed by Eric Seidel.
     4
     5        Change RenderBlock::hitTestContents to IntPoint
     6        https://bugs.webkit.org/show_bug.cgi?id=62170
     7
     8        Covered by existing tests.
     9
     10        * rendering/RenderBlock.cpp:
     11        (WebCore::RenderBlock::nodeAtPoint):
     12        (WebCore::RenderBlock::hitTestColumns):
     13        (WebCore::RenderBlock::hitTestContents):
     14        * rendering/RenderBlock.h:
     15
    1162011-06-07  Jer Noble  <jer.noble@apple.com>
    217
  • trunk/Source/WebCore/rendering/RenderBlock.cpp

    r88250 r88282  
    39293929        // Hit test contents if we don't have columns.
    39303930        if (!hasColumns()) {
    3931             if (hitTestContents(request, result, pointInContainer, scrolledOffset.width(), scrolledOffset.height(), hitTestAction)) {
     3931            if (hitTestContents(request, result, pointInContainer, toPoint(scrolledOffset), hitTestAction)) {
    39323932                updateHitTestResult(result, pointInContainer - localOffset);
    39333933                return true;
     
    40214021            int finalY = ty + offset.height();
    40224022            if (result.isRectBasedTest() && !colRect.contains(result.rectForPoint(pointInContainer)))
    4023                 hitTestContents(request, result, pointInContainer, finalX, finalY, hitTestAction);
     4023                hitTestContents(request, result, pointInContainer, IntPoint(finalX, finalY), hitTestAction);
    40244024            else
    4025                 return hitTestContents(request, result, pointInContainer, finalX, finalY, hitTestAction) || (hitTestAction == HitTestFloat && hitTestFloats(request, result, pointInContainer, finalX, finalY));
     4025                return hitTestContents(request, result, pointInContainer, IntPoint(finalX, finalY), hitTestAction) || (hitTestAction == HitTestFloat && hitTestFloats(request, result, pointInContainer, finalX, finalY));
    40264026        }
    40274027    }
     
    40304030}
    40314031
    4032 bool RenderBlock::hitTestContents(const HitTestRequest& request, HitTestResult& result, const IntPoint& pointInContainer, int tx, int ty, HitTestAction hitTestAction)
     4032bool RenderBlock::hitTestContents(const HitTestRequest& request, HitTestResult& result, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, HitTestAction hitTestAction)
    40334033{
    40344034    if (childrenInline() && !isTable()) {
    40354035        // We have to hit-test our line boxes.
    4036         if (m_lineBoxes.hitTest(this, request, result, pointInContainer, IntPoint(tx, ty), hitTestAction))
     4036        if (m_lineBoxes.hitTest(this, request, result, pointInContainer, accumulatedOffset, hitTestAction))
    40374037            return true;
    40384038    } else {
     
    40424042            childHitTest = HitTestChildBlockBackground;
    40434043        for (RenderBox* child = lastChildBox(); child; child = child->previousSiblingBox()) {
    4044             IntPoint childPoint = flipForWritingMode(child, IntPoint(tx, ty), ParentToChildFlippingAdjustment);
     4044            IntPoint childPoint = flipForWritingMode(child, accumulatedOffset, ParentToChildFlippingAdjustment);
    40454045            if (!child->hasSelfPaintingLayer() && !child->isFloating() && child->nodeAtPoint(request, result, pointInContainer, childPoint.x(), childPoint.y(), childHitTest))
    40464046                return true;
  • trunk/Source/WebCore/rendering/RenderBlock.h

    r88250 r88282  
    590590   
    591591    virtual bool hitTestColumns(const HitTestRequest&, HitTestResult&, const IntPoint& pointInContainer, int tx, int ty, HitTestAction);
    592     virtual bool hitTestContents(const HitTestRequest&, HitTestResult&, const IntPoint& pointInContainer, int tx, int ty, HitTestAction);
     592    virtual bool hitTestContents(const HitTestRequest&, HitTestResult&, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, HitTestAction);
    593593    bool hitTestFloats(const HitTestRequest&, HitTestResult&, const IntPoint& pointInContainer, int tx, int ty);
    594594
Note: See TracChangeset for help on using the changeset viewer.