Changeset 90515 in webkit


Ignore:
Timestamp:
Jul 6, 2011 4:38:32 PM (13 years ago)
Author:
eae@chromium.org
Message:

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

Reviewed by Eric Seidel.

Switch nodeAtPoint to to new layout types
https://bugs.webkit.org/show_bug.cgi?id=63663

No new tests, no functionality changes.

  • rendering/EllipsisBox.cpp: (WebCore::EllipsisBox::nodeAtPoint):
  • rendering/EllipsisBox.h:
  • rendering/InlineBox.cpp: (WebCore::InlineBox::nodeAtPoint):
  • rendering/InlineBox.h:
  • rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::nodeAtPoint):
  • rendering/InlineFlowBox.h:
  • rendering/InlineTextBox.cpp: (WebCore::InlineTextBox::nodeAtPoint):
  • rendering/InlineTextBox.h:
  • rendering/LayoutTypes.h: (WebCore::toLayoutSize): (WebCore::toLayoutPoint): (WebCore::roundedLayoutPoint): (WebCore::roundedLayoutUnit):
  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::nodeAtPoint):
  • rendering/RenderBlock.h:
  • rendering/RenderBox.cpp: (WebCore::RenderBox::nodeAtPoint):
  • rendering/RenderBox.h:
  • rendering/RenderFrameSet.cpp: (WebCore::RenderFrameSet::nodeAtPoint):
  • rendering/RenderFrameSet.h:
  • rendering/RenderImage.cpp: (WebCore::RenderImage::nodeAtPoint):
  • rendering/RenderImage.h:
  • rendering/RenderInline.cpp: (WebCore::RenderInline::nodeAtPoint):
  • rendering/RenderInline.h:
  • rendering/RenderListBox.cpp: (WebCore::RenderListBox::nodeAtPoint):
  • rendering/RenderListBox.h:
  • rendering/RenderObject.cpp: (WebCore::RenderObject::nodeAtPoint):
  • rendering/RenderObject.h:
  • rendering/RenderTable.cpp: (WebCore::RenderTable::nodeAtPoint):
  • rendering/RenderTable.h:
  • rendering/RenderTableRow.cpp: (WebCore::RenderTableRow::nodeAtPoint):
  • rendering/RenderTableRow.h:
  • rendering/RenderTableSection.cpp: (WebCore::RenderTableSection::nodeAtPoint):
  • rendering/RenderTableSection.h:
  • rendering/RenderText.h: (WebCore::RenderText::nodeAtPoint):
  • rendering/RenderTextControlMultiLine.cpp: (WebCore::RenderTextControlMultiLine::nodeAtPoint):
  • rendering/RenderTextControlMultiLine.h:
  • rendering/RenderTextControlSingleLine.cpp: (WebCore::RenderTextControlSingleLine::nodeAtPoint):
  • rendering/RenderTextControlSingleLine.h:
  • rendering/RenderWidget.cpp: (WebCore::RenderWidget::nodeAtPoint):
  • rendering/RenderWidget.h:
  • rendering/RootInlineBox.cpp: (WebCore::RootInlineBox::nodeAtPoint):
  • rendering/RootInlineBox.h:
  • rendering/svg/RenderSVGForeignObject.cpp: (WebCore::RenderSVGForeignObject::nodeAtFloatPoint): (WebCore::RenderSVGForeignObject::nodeAtPoint):
  • rendering/svg/RenderSVGForeignObject.h:
  • rendering/svg/RenderSVGModelObject.cpp: (WebCore::RenderSVGModelObject::nodeAtPoint):
  • rendering/svg/RenderSVGModelObject.h:
  • rendering/svg/RenderSVGRoot.cpp: (WebCore::RenderSVGRoot::nodeAtPoint):
  • rendering/svg/RenderSVGRoot.h:
  • rendering/svg/RenderSVGText.cpp: (WebCore::RenderSVGText::nodeAtPoint):
  • rendering/svg/RenderSVGText.h:
  • rendering/svg/SVGInlineTextBox.cpp: (WebCore::SVGInlineTextBox::nodeAtPoint):
  • rendering/svg/SVGInlineTextBox.h:
Location:
trunk/Source/WebCore
Files:
48 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r90505 r90515  
     12011-07-06  Emil A Eklund  <eae@chromium.org>
     2
     3        Reviewed by Eric Seidel.
     4       
     5        Switch nodeAtPoint to to new layout types
     6        https://bugs.webkit.org/show_bug.cgi?id=63663
     7
     8        No new tests, no functionality changes.
     9
     10        * rendering/EllipsisBox.cpp:
     11        (WebCore::EllipsisBox::nodeAtPoint):
     12        * rendering/EllipsisBox.h:
     13        * rendering/InlineBox.cpp:
     14        (WebCore::InlineBox::nodeAtPoint):
     15        * rendering/InlineBox.h:
     16        * rendering/InlineFlowBox.cpp:
     17        (WebCore::InlineFlowBox::nodeAtPoint):
     18        * rendering/InlineFlowBox.h:
     19        * rendering/InlineTextBox.cpp:
     20        (WebCore::InlineTextBox::nodeAtPoint):
     21        * rendering/InlineTextBox.h:
     22        * rendering/LayoutTypes.h:
     23        (WebCore::toLayoutSize):
     24        (WebCore::toLayoutPoint):
     25        (WebCore::roundedLayoutPoint):
     26        (WebCore::roundedLayoutUnit):
     27        * rendering/RenderBlock.cpp:
     28        (WebCore::RenderBlock::nodeAtPoint):
     29        * rendering/RenderBlock.h:
     30        * rendering/RenderBox.cpp:
     31        (WebCore::RenderBox::nodeAtPoint):
     32        * rendering/RenderBox.h:
     33        * rendering/RenderFrameSet.cpp:
     34        (WebCore::RenderFrameSet::nodeAtPoint):
     35        * rendering/RenderFrameSet.h:
     36        * rendering/RenderImage.cpp:
     37        (WebCore::RenderImage::nodeAtPoint):
     38        * rendering/RenderImage.h:
     39        * rendering/RenderInline.cpp:
     40        (WebCore::RenderInline::nodeAtPoint):
     41        * rendering/RenderInline.h:
     42        * rendering/RenderListBox.cpp:
     43        (WebCore::RenderListBox::nodeAtPoint):
     44        * rendering/RenderListBox.h:
     45        * rendering/RenderObject.cpp:
     46        (WebCore::RenderObject::nodeAtPoint):
     47        * rendering/RenderObject.h:
     48        * rendering/RenderTable.cpp:
     49        (WebCore::RenderTable::nodeAtPoint):
     50        * rendering/RenderTable.h:
     51        * rendering/RenderTableRow.cpp:
     52        (WebCore::RenderTableRow::nodeAtPoint):
     53        * rendering/RenderTableRow.h:
     54        * rendering/RenderTableSection.cpp:
     55        (WebCore::RenderTableSection::nodeAtPoint):
     56        * rendering/RenderTableSection.h:
     57        * rendering/RenderText.h:
     58        (WebCore::RenderText::nodeAtPoint):
     59        * rendering/RenderTextControlMultiLine.cpp:
     60        (WebCore::RenderTextControlMultiLine::nodeAtPoint):
     61        * rendering/RenderTextControlMultiLine.h:
     62        * rendering/RenderTextControlSingleLine.cpp:
     63        (WebCore::RenderTextControlSingleLine::nodeAtPoint):
     64        * rendering/RenderTextControlSingleLine.h:
     65        * rendering/RenderWidget.cpp:
     66        (WebCore::RenderWidget::nodeAtPoint):
     67        * rendering/RenderWidget.h:
     68        * rendering/RootInlineBox.cpp:
     69        (WebCore::RootInlineBox::nodeAtPoint):
     70        * rendering/RootInlineBox.h:
     71        * rendering/svg/RenderSVGForeignObject.cpp:
     72        (WebCore::RenderSVGForeignObject::nodeAtFloatPoint):
     73        (WebCore::RenderSVGForeignObject::nodeAtPoint):
     74        * rendering/svg/RenderSVGForeignObject.h:
     75        * rendering/svg/RenderSVGModelObject.cpp:
     76        (WebCore::RenderSVGModelObject::nodeAtPoint):
     77        * rendering/svg/RenderSVGModelObject.h:
     78        * rendering/svg/RenderSVGRoot.cpp:
     79        (WebCore::RenderSVGRoot::nodeAtPoint):
     80        * rendering/svg/RenderSVGRoot.h:
     81        * rendering/svg/RenderSVGText.cpp:
     82        (WebCore::RenderSVGText::nodeAtPoint):
     83        * rendering/svg/RenderSVGText.h:
     84        * rendering/svg/SVGInlineTextBox.cpp:
     85        (WebCore::SVGInlineTextBox::nodeAtPoint):
     86        * rendering/svg/SVGInlineTextBox.h:
     87
    1882011-07-06  Adrienne Walker  <enne@google.com>
    289
  • trunk/Source/WebCore/rendering/EllipsisBox.cpp

    r88319 r90515  
    102102}
    103103
    104 bool EllipsisBox::nodeAtPoint(const HitTestRequest& request, HitTestResult& result, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, int lineTop, int lineBottom)
     104bool EllipsisBox::nodeAtPoint(const HitTestRequest& request, HitTestResult& result, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, int lineTop, int lineBottom)
    105105{
    106     IntPoint adjustedLocation = accumulatedOffset + roundedIntPoint(topLeft());
     106    LayoutPoint adjustedLocation = accumulatedOffset + roundedIntPoint(topLeft());
    107107
    108108    // Hit test the markup box.
    109109    if (m_markupBox) {
    110110        RenderStyle* style = m_renderer->style(m_firstLine);
    111         int mtx = adjustedLocation.x() + m_logicalWidth - m_markupBox->x();
    112         int mty = adjustedLocation.y() + style->fontMetrics().ascent() - (m_markupBox->y() + m_markupBox->renderer()->style(m_firstLine)->fontMetrics().ascent());
     111        LayoutUnit mtx = adjustedLocation.x() + m_logicalWidth - m_markupBox->x();
     112        LayoutUnit mty = adjustedLocation.y() + style->fontMetrics().ascent() - (m_markupBox->y() + m_markupBox->renderer()->style(m_firstLine)->fontMetrics().ascent());
    113113        if (m_markupBox->nodeAtPoint(request, result, pointInContainer, IntPoint(mtx, mty), lineTop, lineBottom)) {
    114114            renderer()->updateHitTestResult(result, pointInContainer - IntSize(mtx, mty));
     
    117117    }
    118118
    119     IntRect boundsRect = IntRect(adjustedLocation, IntSize(m_logicalWidth, m_height));
     119    LayoutRect boundsRect(adjustedLocation, LayoutSize(m_logicalWidth, m_height));
    120120    if (visibleToHitTesting() && boundsRect.intersects(result.rectForPoint(pointInContainer))) {
    121         renderer()->updateHitTestResult(result, pointInContainer - toSize(adjustedLocation));
     121        renderer()->updateHitTestResult(result, pointInContainer - toLayoutSize(adjustedLocation));
    122122        if (!result.addNodeToRectBasedTestResult(renderer()->node(), pointInContainer, boundsRect))
    123123            return true;
  • trunk/Source/WebCore/rendering/EllipsisBox.h

    r88319 r90515  
    4141
    4242    virtual void paint(PaintInfo&, const IntPoint&, int lineTop, int lineBottom);
    43     virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, int lineTop, int lineBottom);
     43    virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, int lineTop, int lineBottom);
    4444    void setSelectionState(RenderObject::SelectionState s) { m_selectionState = s; }
    4545    IntRect selectionRect();
  • trunk/Source/WebCore/rendering/InlineBox.cpp

    r89704 r90515  
    225225}
    226226
    227 bool InlineBox::nodeAtPoint(const HitTestRequest& request, HitTestResult& result, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, int /* lineTop */, int /*lineBottom*/)
     227bool InlineBox::nodeAtPoint(const HitTestRequest& request, HitTestResult& result, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, int /* lineTop */, int /*lineBottom*/)
    228228{
    229229    // Hit test all phases of replaced elements atomically, as though the replaced element established its
  • trunk/Source/WebCore/rendering/InlineBox.h

    r88319 r90515  
    128128
    129129    virtual void paint(PaintInfo&, const IntPoint&, int lineTop, int lineBottom);
    130     virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, int lineTop, int lineBottom);
     130    virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, int lineTop, int lineBottom);
    131131
    132132    InlineBox* next() const { return m_next; }
  • trunk/Source/WebCore/rendering/InlineFlowBox.cpp

    r89979 r90515  
    899899}
    900900
    901 bool InlineFlowBox::nodeAtPoint(const HitTestRequest& request, HitTestResult& result, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, int lineTop, int lineBottom)
    902 {
    903     IntRect overflowRect(visualOverflowRect(lineTop, lineBottom));
     901bool InlineFlowBox::nodeAtPoint(const HitTestRequest& request, HitTestResult& result, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, int lineTop, int lineBottom)
     902{
     903    LayoutRect overflowRect(visualOverflowRect(lineTop, lineBottom));
    904904    flipForWritingMode(overflowRect);
    905905    overflowRect.moveBy(accumulatedOffset);
     
    910910    for (InlineBox* curr = lastChild(); curr; curr = curr->prevOnLine()) {
    911911        if ((curr->renderer()->isText() || !curr->boxModelObject()->hasSelfPaintingLayer()) && curr->nodeAtPoint(request, result, pointInContainer, accumulatedOffset, lineTop, lineBottom)) {
    912             renderer()->updateHitTestResult(result, pointInContainer - toSize(accumulatedOffset));
     912            renderer()->updateHitTestResult(result, pointInContainer - toLayoutSize(accumulatedOffset));
    913913            return true;
    914914        }
     
    916916
    917917    // Now check ourselves. Pixel snap hit testing.
    918     IntRect frameRect = roundedFrameRect();
    919     int minX = frameRect.x();
    920     int minY = frameRect.y();
    921     int width = frameRect.width();
    922     int height = frameRect.height();
     918    LayoutRect frameRect = roundedFrameRect();
     919    LayoutUnit minX = frameRect.x();
     920    LayoutUnit minY = frameRect.y();
     921    LayoutUnit width = frameRect.width();
     922    LayoutUnit height = frameRect.height();
    923923
    924924    // Constrain our hit testing to the line top and bottom if necessary.
     
    926926    if (!noQuirksMode && !hasTextChildren() && !(descendantsHaveSameLineHeightAndBaseline() && hasTextDescendants())) {
    927927        RootInlineBox* rootBox = root();
    928         int& top = isHorizontal() ? minY : minX;
    929         int& logicalHeight = isHorizontal() ? height : width;
    930         int bottom = min(rootBox->lineBottom(), top + logicalHeight);
     928        LayoutUnit& top = isHorizontal() ? minY : minX;
     929        LayoutUnit& logicalHeight = isHorizontal() ? height : width;
     930        LayoutUnit bottom = min(rootBox->lineBottom(), top + logicalHeight);
    931931        top = max(rootBox->lineTop(), top);
    932932        logicalHeight = bottom - top;
     
    934934   
    935935    // Move x/y to our coordinates.
    936     IntRect rect(minX, minY, width, height);
     936    LayoutRect rect(minX, minY, width, height);
    937937    flipForWritingMode(rect);
    938938    rect.moveBy(accumulatedOffset);
    939939
    940940    if (visibleToHitTesting() && rect.intersects(result.rectForPoint(pointInContainer))) {
    941         renderer()->updateHitTestResult(result, flipForWritingMode(pointInContainer - toSize(accumulatedOffset))); // Don't add in m_x or m_y here, we want coords in the containing block's space.
     941        renderer()->updateHitTestResult(result, flipForWritingMode(pointInContainer - toLayoutSize(accumulatedOffset))); // Don't add in m_x or m_y here, we want coords in the containing block's space.
    942942        if (!result.addNodeToRectBasedTestResult(renderer()->node(), pointInContainer, rect))
    943943            return true;
  • trunk/Source/WebCore/rendering/InlineFlowBox.h

    r90049 r90515  
    110110    void paintBoxShadow(GraphicsContext*, RenderStyle*, ShadowStyle, const LayoutRect&);
    111111    virtual void paint(PaintInfo&, const IntPoint&, int lineTop, int lineBottom);
    112     virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, int lineTop, int lineBottom);
     112    virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, int lineTop, int lineBottom);
    113113
    114114    virtual RenderLineBoxList* rendererLineBoxes() const;
  • trunk/Source/WebCore/rendering/InlineTextBox.cpp

    r89452 r90515  
    346346}
    347347
    348 bool InlineTextBox::nodeAtPoint(const HitTestRequest&, HitTestResult& result, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, int /* lineTop */, int /*lineBottom*/)
     348bool InlineTextBox::nodeAtPoint(const HitTestRequest&, HitTestResult& result, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, int /* lineTop */, int /*lineBottom*/)
    349349{
    350350    if (isLineBreak())
     
    353353    FloatPoint boxOrigin = locationIncludingFlipping();
    354354    boxOrigin.moveBy(accumulatedOffset);
    355     FloatRect rect(boxOrigin, IntSize(width(), height()));
     355    FloatRect rect(boxOrigin, size());
    356356    if (m_truncation != cFullTruncation && visibleToHitTesting() && rect.intersects(result.rectForPoint(pointInContainer))) {
    357         renderer()->updateHitTestResult(result, flipForWritingMode(pointInContainer - toSize(accumulatedOffset)));
     357        renderer()->updateHitTestResult(result, flipForWritingMode(pointInContainer - toLayoutSize(accumulatedOffset)));
    358358        if (!result.addNodeToRectBasedTestResult(renderer()->node(), pointInContainer, rect))
    359359            return true;
  • trunk/Source/WebCore/rendering/InlineTextBox.h

    r89704 r90515  
    112112protected:
    113113    virtual void paint(PaintInfo&, const IntPoint&, int lineTop, int lineBottom);
    114     virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, int lineTop, int lineBottom);
     114    virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, int lineTop, int lineBottom);
    115115
    116116public:
  • trunk/Source/WebCore/rendering/LayoutTypes.h

    r90485 r90515  
    4747typedef IntRect LayoutRect;
    4848
    49 inline LayoutPoint roundedLayoutPoint(FloatPoint point)
     49inline LayoutPoint roundedLayoutPoint(const FloatPoint& p)
    5050{
    51     return roundedIntPoint(point);
     51    return roundedIntPoint(p);
     52}
     53
     54inline LayoutUnit roundedLayoutUnit(float value)
     55{
     56    return lroundf(value);
     57}
     58
     59inline LayoutSize toLayoutSize(const LayoutPoint& p)
     60{
     61    return LayoutSize(p.x(), p.y());
     62}
     63
     64inline LayoutPoint toLayoutPoint(const LayoutSize& p)
     65{
     66    return LayoutPoint(p.width(), p.height());
    5267}
    5368
  • trunk/Source/WebCore/rendering/RenderBlock.cpp

    r90388 r90515  
    39453945}
    39463946
    3947 bool RenderBlock::nodeAtPoint(const HitTestRequest& request, HitTestResult& result, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, HitTestAction hitTestAction)
    3948 {
    3949     IntPoint adjustedLocation(accumulatedOffset + location());
    3950     IntSize localOffset = toSize(adjustedLocation);
     3947bool RenderBlock::nodeAtPoint(const HitTestRequest& request, HitTestResult& result, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, HitTestAction hitTestAction)
     3948{
     3949    LayoutPoint adjustedLocation(accumulatedOffset + location());
     3950    LayoutSize localOffset = toLayoutSize(adjustedLocation);
    39513951
    39523952    if (!isRenderView()) {
    39533953        // Check if we need to do anything at all.
    3954         IntRect overflowBox = visualOverflowRect();
     3954        LayoutRect overflowBox = visualOverflowRect();
    39553955        overflowBox.moveBy(adjustedLocation);
    39563956        if (!overflowBox.intersects(result.rectForPoint(pointInContainer)))
     
    39683968    bool useOverflowClip = hasOverflowClip() && !hasSelfPaintingLayer();
    39693969    bool useClip = (hasControlClip() || useOverflowClip);
    3970     IntRect hitTestArea(result.rectForPoint(pointInContainer));
     3970    LayoutRect hitTestArea(result.rectForPoint(pointInContainer));
    39713971    bool checkChildren = !useClip || (hasControlClip() ? controlClipRect(adjustedLocation).intersects(hitTestArea) : overflowClipRect(adjustedLocation, IncludeOverlayScrollbarSize).intersects(hitTestArea));
    39723972    if (checkChildren) {
    39733973        // Hit test descendants first.
    3974         IntSize scrolledOffset(localOffset);
     3974        LayoutSize scrolledOffset(localOffset);
    39753975        if (hasOverflowClip()) {
    39763976            scrolledOffset -= layer()->scrolledContentOffset();
     
    39793979        // Hit test contents if we don't have columns.
    39803980        if (!hasColumns()) {
    3981             if (hitTestContents(request, result, pointInContainer, toPoint(scrolledOffset), hitTestAction)) {
     3981            if (hitTestContents(request, result, pointInContainer, toLayoutPoint(scrolledOffset), hitTestAction)) {
    39823982                updateHitTestResult(result, pointInContainer - localOffset);
    39833983                return true;
    39843984            }
    3985             if (hitTestAction == HitTestFloat && hitTestFloats(request, result, pointInContainer, toPoint(scrolledOffset)))
     3985            if (hitTestAction == HitTestFloat && hitTestFloats(request, result, pointInContainer, toLayoutPoint(scrolledOffset)))
    39863986                return true;
    3987         } else if (hitTestColumns(request, result, pointInContainer, toPoint(scrolledOffset), hitTestAction)) {
     3987        } else if (hitTestColumns(request, result, pointInContainer, toLayoutPoint(scrolledOffset), hitTestAction)) {
    39883988            updateHitTestResult(result, pointInContainer - localOffset);
    39893989            return true;
     
    39933993    // Now hit test our background
    39943994    if (hitTestAction == HitTestBlockBackground || hitTestAction == HitTestChildBlockBackground) {
    3995         IntRect boundsRect(adjustedLocation, size());
     3995        LayoutRect boundsRect(adjustedLocation, size());
    39963996        if (visibleToHitTesting() && boundsRect.intersects(result.rectForPoint(pointInContainer))) {
    39973997            updateHitTestResult(result, flipForWritingMode(pointInContainer - localOffset));
  • trunk/Source/WebCore/rendering/RenderBlock.h

    r90388 r90515  
    305305    virtual void adjustInlineDirectionLineBounds(int /* expansionOpportunityCount */, float& /* logicalLeft */, float& /* logicalWidth */) const { }
    306306
    307     virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, HitTestAction);
     307    virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, HitTestAction);
    308308
    309309    virtual void computePreferredLogicalWidths();
  • trunk/Source/WebCore/rendering/RenderBox.cpp

    r90388 r90515  
    750750
    751751// Hit Testing
    752 bool RenderBox::nodeAtPoint(const HitTestRequest& request, HitTestResult& result, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, HitTestAction action)
    753 {
    754     IntPoint adjustedLocation = accumulatedOffset + location();
     752bool RenderBox::nodeAtPoint(const HitTestRequest& request, HitTestResult& result, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, HitTestAction action)
     753{
     754    LayoutPoint adjustedLocation = accumulatedOffset + location();
    755755
    756756    // Check kids first.
    757757    for (RenderObject* child = lastChild(); child; child = child->previousSibling()) {
    758758        if (!child->hasLayer() && child->nodeAtPoint(request, result, pointInContainer, adjustedLocation, action)) {
    759             updateHitTestResult(result, pointInContainer - toSize(adjustedLocation));
     759            updateHitTestResult(result, pointInContainer - toLayoutSize(adjustedLocation));
    760760            return true;
    761761        }
     
    764764    // Check our bounds next. For this purpose always assume that we can only be hit in the
    765765    // foreground phase (which is true for replaced elements like images).
    766     IntRect boundsRect = IntRect(adjustedLocation, size());
     766    LayoutRect boundsRect(adjustedLocation, size());
    767767    if (visibleToHitTesting() && action == HitTestForeground && boundsRect.intersects(result.rectForPoint(pointInContainer))) {
    768         updateHitTestResult(result, pointInContainer - toSize(adjustedLocation));
     768        updateHitTestResult(result, pointInContainer - toLayoutSize(adjustedLocation));
    769769        if (!result.addNodeToRectBasedTestResult(node(), pointInContainer, boundsRect))
    770770            return true;
  • trunk/Source/WebCore/rendering/RenderBox.h

    r90288 r90515  
    238238    virtual void layout();
    239239    virtual void paint(PaintInfo&, const LayoutPoint&);
    240     virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, HitTestAction);
     240    virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, HitTestAction);
    241241
    242242    virtual void destroy();
  • trunk/Source/WebCore/rendering/RenderFrameSet.cpp

    r90302 r90515  
    157157
    158158bool RenderFrameSet::nodeAtPoint(const HitTestRequest& request, HitTestResult& result,
    159     const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, HitTestAction action)
     159    const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, HitTestAction action)
    160160{
    161161    if (action != HitTestForeground)
  • trunk/Source/WebCore/rendering/RenderFrameSet.h

    r90048 r90515  
    9797
    9898    virtual void layout();
    99     virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, HitTestAction);
     99    virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, HitTestAction);
    100100    virtual void paint(PaintInfo&, const LayoutPoint&);
    101101    virtual bool isChildAllowed(RenderObject*, RenderStyle*) const;
  • trunk/Source/WebCore/rendering/RenderImage.cpp

    r90069 r90515  
    395395}
    396396
    397 bool RenderImage::nodeAtPoint(const HitTestRequest& request, HitTestResult& result, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, HitTestAction hitTestAction)
     397bool RenderImage::nodeAtPoint(const HitTestRequest& request, HitTestResult& result, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, HitTestAction hitTestAction)
    398398{
    399399    HitTestResult tempResult(result.point(), result.topPadding(), result.rightPadding(), result.bottomPadding(), result.leftPadding());
     
    404404            IntRect contentBox = contentBoxRect();
    405405            float zoom = style()->effectiveZoom();
    406             int mapX = lroundf((pointInContainer.x() - accumulatedOffset.x() - this->x() - contentBox.x()) / zoom);
    407             int mapY = lroundf((pointInContainer.y() - accumulatedOffset.y() - this->y() - contentBox.y()) / zoom);
     406            LayoutUnit mapX = roundedLayoutUnit((pointInContainer.x() - accumulatedOffset.x() - this->x() - contentBox.x()) / zoom);
     407            LayoutUnit mapY = roundedLayoutUnit((pointInContainer.y() - accumulatedOffset.y() - this->y() - contentBox.y()) / zoom);
    408408            if (map->mapMouseEvent(mapX, mapY, contentBox.size(), tempResult))
    409409                tempResult.setInnerNonSharedNode(node());
  • trunk/Source/WebCore/rendering/RenderImage.h

    r90069 r90515  
    8282
    8383    virtual void notifyFinished(CachedResource*);
    84     virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, HitTestAction);
     84    virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, HitTestAction);
    8585
    8686    virtual LayoutUnit computeReplacedLogicalWidth(bool includeMaxWidth = true) const;
  • trunk/Source/WebCore/rendering/RenderInline.cpp

    r90250 r90515  
    711711
    712712bool RenderInline::nodeAtPoint(const HitTestRequest& request, HitTestResult& result,
    713                                 const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, HitTestAction hitTestAction)
     713                                const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, HitTestAction hitTestAction)
    714714{
    715715    return m_lineBoxes.hitTest(this, request, result, pointInContainer, accumulatedOffset, hitTestAction);
  • trunk/Source/WebCore/rendering/RenderInline.h

    r90250 r90515  
    118118    virtual void paint(PaintInfo&, const LayoutPoint&);
    119119
    120     virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, HitTestAction);
     120    virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, HitTestAction);
    121121
    122122    virtual bool requiresLayer() const { return isRelPositioned() || isTransparent() || hasMask(); }
  • trunk/Source/WebCore/rendering/RenderListBox.cpp

    r90152 r90515  
    672672}
    673673
    674 bool RenderListBox::nodeAtPoint(const HitTestRequest& request, HitTestResult& result, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, HitTestAction hitTestAction)
     674bool RenderListBox::nodeAtPoint(const HitTestRequest& request, HitTestResult& result, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, HitTestAction hitTestAction)
    675675{
    676676    if (!RenderBlock::nodeAtPoint(request, result, pointInContainer, accumulatedOffset, hitTestAction))
     
    678678    const Vector<Element*>& listItems = toSelectElement(static_cast<Element*>(node()))->listItems();
    679679    int size = numItems();
    680     IntPoint adjustedLocation = accumulatedOffset + location();
     680    LayoutPoint adjustedLocation = accumulatedOffset + location();
    681681
    682682    for (int i = 0; i < size; ++i) {
     
    686686                if (!result.innerNonSharedNode())
    687687                    result.setInnerNonSharedNode(node);
    688                 result.setLocalPoint(pointInContainer - toSize(adjustedLocation));
     688                result.setLocalPoint(pointInContainer - toLayoutSize(adjustedLocation));
    689689                break;
    690690            }
  • trunk/Source/WebCore/rendering/RenderListBox.h

    r90152 r90515  
    9797    virtual void setScrollTop(int);
    9898
    99     virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, HitTestAction);
     99    virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, HitTestAction);
    100100
    101101    // ScrollableArea interface.
  • trunk/Source/WebCore/rendering/RenderObject.cpp

    r90250 r90515  
    21832183}
    21842184
    2185 bool RenderObject::nodeAtPoint(const HitTestRequest&, HitTestResult&, const IntPoint& /*pointInContainer*/, const IntPoint& /*accumulatedOffset*/, HitTestAction)
     2185bool RenderObject::nodeAtPoint(const HitTestRequest&, HitTestResult&, const LayoutPoint& /*pointInContainer*/, const LayoutPoint& /*accumulatedOffset*/, HitTestAction)
    21862186{
    21872187    return false;
  • trunk/Source/WebCore/rendering/RenderObject.h

    r90186 r90515  
    550550
    551551    bool hitTest(const HitTestRequest&, HitTestResult&, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, HitTestFilter = HitTestAll);
    552     virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, HitTestAction);
     552    virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, HitTestAction);
    553553    virtual void updateHitTestResult(HitTestResult&, const IntPoint&);
    554554
  • trunk/Source/WebCore/rendering/RenderTable.cpp

    r90302 r90515  
    11941194}
    11951195
    1196 bool RenderTable::nodeAtPoint(const HitTestRequest& request, HitTestResult& result, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, HitTestAction action)
    1197 {
    1198     IntPoint adjustedLocation = accumulatedOffset + location();
     1196bool RenderTable::nodeAtPoint(const HitTestRequest& request, HitTestResult& result, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, HitTestAction action)
     1197{
     1198    LayoutPoint adjustedLocation = accumulatedOffset + location();
    11991199
    12001200    // Check kids first.
     
    12021202        for (RenderObject* child = lastChild(); child; child = child->previousSibling()) {
    12031203            if (child->isBox() && !toRenderBox(child)->hasSelfPaintingLayer() && (child->isTableSection() || child == m_caption)) {
    1204                 IntPoint childPoint = flipForWritingMode(toRenderBox(child), adjustedLocation, ParentToChildFlippingAdjustment);
     1204                LayoutPoint childPoint = flipForWritingMode(toRenderBox(child), adjustedLocation, ParentToChildFlippingAdjustment);
    12051205                if (child->nodeAtPoint(request, result, pointInContainer, childPoint, action)) {
    1206                     updateHitTestResult(result, toPoint(pointInContainer - childPoint));
     1206                    updateHitTestResult(result, toLayoutPoint(pointInContainer - childPoint));
    12071207                    return true;
    12081208                }
     
    12121212
    12131213    // Check our bounds next.
    1214     IntRect boundsRect = IntRect(adjustedLocation, size());
     1214    LayoutRect boundsRect(adjustedLocation, size());
    12151215    if (visibleToHitTesting() && (action == HitTestBlockBackground || action == HitTestChildBlockBackground) && boundsRect.intersects(result.rectForPoint(pointInContainer))) {
    1216         updateHitTestResult(result, flipForWritingMode(pointInContainer - toSize(adjustedLocation)));
     1216        updateHitTestResult(result, flipForWritingMode(pointInContainer - toLayoutSize(adjustedLocation)));
    12171217        if (!result.addNodeToRectBasedTestResult(node(), pointInContainer, boundsRect))
    12181218            return true;
  • trunk/Source/WebCore/rendering/RenderTable.h

    r90048 r90515  
    221221    virtual void layout();
    222222    virtual void computePreferredLogicalWidths();
    223     virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, HitTestAction);
     223    virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, HitTestAction);
    224224   
    225225    virtual int firstLineBoxBaseline() const;
  • trunk/Source/WebCore/rendering/RenderTableRow.cpp

    r90302 r90515  
    188188
    189189// Hit Testing
    190 bool RenderTableRow::nodeAtPoint(const HitTestRequest& request, HitTestResult& result, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, HitTestAction action)
     190bool RenderTableRow::nodeAtPoint(const HitTestRequest& request, HitTestResult& result, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, HitTestAction action)
    191191{
    192192    // Table rows cannot ever be hit tested.  Effectively they do not exist.
     
    198198        // then we can remove this check.
    199199        if (child->isTableCell() && !toRenderBox(child)->hasSelfPaintingLayer()) {
    200             IntPoint cellPoint = flipForWritingMode(toRenderTableCell(child), accumulatedOffset, ParentToChildFlippingAdjustment);
     200            LayoutPoint cellPoint = flipForWritingMode(toRenderTableCell(child), accumulatedOffset, ParentToChildFlippingAdjustment);
    201201            if (child->nodeAtPoint(request, result, pointInContainer, cellPoint, action)) {
    202                 updateHitTestResult(result, pointInContainer - toSize(cellPoint));
     202                updateHitTestResult(result, pointInContainer - toLayoutSize(cellPoint));
    203203                return true;
    204204            }
  • trunk/Source/WebCore/rendering/RenderTableRow.h

    r90048 r90515  
    5555    virtual void layout();
    5656    virtual IntRect clippedOverflowRectForRepaint(RenderBoxModelObject* repaintContainer);
    57     virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, HitTestAction);
     57    virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, HitTestAction);
    5858
    5959    // The only time rows get a layer is when they have transparency.
  • trunk/Source/WebCore/rendering/RenderTableSection.cpp

    r90302 r90515  
    11421142
    11431143// Hit Testing
    1144 bool RenderTableSection::nodeAtPoint(const HitTestRequest& request, HitTestResult& result, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, HitTestAction action)
     1144bool RenderTableSection::nodeAtPoint(const HitTestRequest& request, HitTestResult& result, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, HitTestAction action)
    11451145{
    11461146    // If we have no children then we have nothing to do.
     
    11501150    // Table sections cannot ever be hit tested.  Effectively they do not exist.
    11511151    // Just forward to our children always.
    1152     IntPoint adjustedLocation = accumulatedOffset + location();
     1152    LayoutPoint adjustedLocation = accumulatedOffset + location();
    11531153
    11541154    if (hasOverflowClip() && !overflowClipRect(adjustedLocation).intersects(result.rectForPoint(pointInContainer)))
     
    11621162            // then we can remove this check.
    11631163            if (child->isBox() && !toRenderBox(child)->hasSelfPaintingLayer()) {
    1164                 IntPoint childPoint = flipForWritingMode(toRenderBox(child), adjustedLocation, ParentToChildFlippingAdjustment);
     1164                LayoutPoint childPoint = flipForWritingMode(toRenderBox(child), adjustedLocation, ParentToChildFlippingAdjustment);
    11651165                if (child->nodeAtPoint(request, result, pointInContainer, childPoint, action)) {
    1166                     updateHitTestResult(result, toPoint(pointInContainer - childPoint));
     1166                    updateHitTestResult(result, toLayoutPoint(pointInContainer - childPoint));
    11671167                    return true;
    11681168                }
     
    11721172    }
    11731173
    1174     IntPoint location = pointInContainer - toSize(adjustedLocation);
     1174    LayoutPoint location = pointInContainer - toLayoutSize(adjustedLocation);
    11751175    if (style()->isFlippedBlocksWritingMode()) {
    11761176        if (style()->isHorizontalWritingMode())
     
    11801180    }
    11811181
    1182     int offsetInColumnDirection = style()->isHorizontalWritingMode() ? location.y() : location.x();
     1182    LayoutUnit offsetInColumnDirection = style()->isHorizontalWritingMode() ? location.y() : location.x();
    11831183    // Find the first row that starts after offsetInColumnDirection.
    11841184    unsigned nextRow = std::upper_bound(m_rowPos.begin(), m_rowPos.end(), offsetInColumnDirection) - m_rowPos.begin();
     
    11881188    unsigned hitRow = nextRow > 0 ? nextRow - 1 : 0;
    11891189
    1190     Vector<int>& columnPos = table()->columnPositions();
     1190    Vector<LayoutUnit>& columnPos = table()->columnPositions();
    11911191    int offsetInRowDirection = style()->isHorizontalWritingMode() ? location.x() : location.y();
    11921192    if (!style()->isLeftToRightDirection())
     
    12061206    for (int i = current.cells.size() - 1; i >= 0; --i) {
    12071207        RenderTableCell* cell = current.cells[i];
    1208         IntPoint cellPoint = flipForWritingMode(cell, adjustedLocation, ParentToChildFlippingAdjustment);
     1208        LayoutPoint cellPoint = flipForWritingMode(cell, adjustedLocation, ParentToChildFlippingAdjustment);
    12091209        if (static_cast<RenderObject*>(cell)->nodeAtPoint(request, result, pointInContainer, cellPoint, action)) {
    1210             updateHitTestResult(result, toPoint(pointInContainer - cellPoint));
     1210            updateHitTestResult(result, toLayoutPoint(pointInContainer - cellPoint));
    12111211            return true;
    12121212        }
  • trunk/Source/WebCore/rendering/RenderTableSection.h

    r90048 r90515  
    139139    virtual void imageChanged(WrappedImagePtr, const IntRect* = 0);
    140140
    141     virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, HitTestAction);
     141    virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, HitTestAction);
    142142
    143143    bool ensureRows(int);
  • trunk/Source/WebCore/rendering/RenderText.h

    r90250 r90515  
    150150    virtual void paint(PaintInfo&, const IntPoint&) { ASSERT_NOT_REACHED(); }
    151151    virtual void layout() { ASSERT_NOT_REACHED(); }
    152     virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const IntPoint&, const IntPoint&, HitTestAction) { ASSERT_NOT_REACHED(); return false; }
     152    virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const LayoutPoint&, const LayoutPoint&, HitTestAction) { ASSERT_NOT_REACHED(); return false; }
    153153
    154154    void deleteTextBoxes();
  • trunk/Source/WebCore/rendering/RenderTextControlMultiLine.cpp

    r88319 r90515  
    6565}
    6666
    67 bool RenderTextControlMultiLine::nodeAtPoint(const HitTestRequest& request, HitTestResult& result, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, HitTestAction hitTestAction)
     67bool RenderTextControlMultiLine::nodeAtPoint(const HitTestRequest& request, HitTestResult& result, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, HitTestAction hitTestAction)
    6868{
    6969    if (!RenderTextControl::nodeAtPoint(request, result, pointInContainer, accumulatedOffset, hitTestAction))
  • trunk/Source/WebCore/rendering/RenderTextControlMultiLine.h

    r88319 r90515  
    4141    virtual void subtreeHasChanged();
    4242
    43     virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, HitTestAction);
     43    virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, HitTestAction);
    4444
    4545    virtual float getAvgCharWidth(AtomicString family);
  • trunk/Source/WebCore/rendering/RenderTextControlSingleLine.h

    r90379 r90515  
    6565    virtual void layout();
    6666
    67     virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, HitTestAction);
     67    virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, HitTestAction);
    6868
    6969    virtual void autoscroll();
  • trunk/Source/WebCore/rendering/RenderWidget.cpp

    r90068 r90515  
    398398}
    399399
    400 bool RenderWidget::nodeAtPoint(const HitTestRequest& request, HitTestResult& result, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, HitTestAction action)
     400bool RenderWidget::nodeAtPoint(const HitTestRequest& request, HitTestResult& result, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, HitTestAction action)
    401401{
    402402    bool hadResult = result.innerNode();
  • trunk/Source/WebCore/rendering/RenderWidget.h

    r90048 r90515  
    6868    virtual void destroy();
    6969    virtual void setSelectionState(SelectionState);
    70     virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, HitTestAction);
     70    virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, HitTestAction);
    7171    virtual void setOverlapTestResult(bool);
    7272
  • trunk/Source/WebCore/rendering/RootInlineBox.cpp

    r89704 r90515  
    190190}
    191191
    192 bool RootInlineBox::nodeAtPoint(const HitTestRequest& request, HitTestResult& result, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, int lineTop, int lineBottom)
     192bool RootInlineBox::nodeAtPoint(const HitTestRequest& request, HitTestResult& result, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, int lineTop, int lineBottom)
    193193{
    194194    if (hasEllipsisBox() && visibleToHitTesting()) {
    195195        if (ellipsisBox()->nodeAtPoint(request, result, pointInContainer, accumulatedOffset, lineTop, lineBottom)) {
    196             renderer()->updateHitTestResult(result, pointInContainer - toSize(accumulatedOffset));
     196            renderer()->updateHitTestResult(result, pointInContainer - toLayoutSize(accumulatedOffset));
    197197            return true;
    198198        }
  • trunk/Source/WebCore/rendering/RootInlineBox.h

    r89091 r90515  
    9999
    100100    virtual void paint(PaintInfo&, const IntPoint&, int lineTop, int lineBottom);
    101     virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, int lineTop, int lineBottom);
     101    virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, int lineTop, int lineBottom);
    102102
    103103    bool hasSelectedChildren() const { return m_hasSelectedChildrenOrCanHaveLeadingExpansion; }
  • trunk/Source/WebCore/rendering/svg/RenderSVGForeignObject.cpp

    r90069 r90515  
    151151        return false;
    152152
    153     IntPoint roundedLocalPoint = roundedIntPoint(localPoint);
    154     return RenderBlock::nodeAtPoint(request, result, roundedLocalPoint, IntPoint(), hitTestAction);
     153    return RenderBlock::nodeAtPoint(request, result, roundedLayoutPoint(localPoint), LayoutPoint(), hitTestAction);
    155154}
    156155
    157 bool RenderSVGForeignObject::nodeAtPoint(const HitTestRequest&, HitTestResult&, const IntPoint&, const IntPoint&, HitTestAction)
     156bool RenderSVGForeignObject::nodeAtPoint(const HitTestRequest&, HitTestResult&, const LayoutPoint&, const LayoutPoint&, HitTestAction)
    158157{
    159158    ASSERT_NOT_REACHED();
  • trunk/Source/WebCore/rendering/svg/RenderSVGForeignObject.h

    r90048 r90515  
    5151
    5252    virtual bool nodeAtFloatPoint(const HitTestRequest&, HitTestResult&, const FloatPoint& pointInParent, HitTestAction);
    53     virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, HitTestAction);
     53    virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, HitTestAction);
    5454    virtual bool isSVGForeignObject() const { return true; }
    5555
  • trunk/Source/WebCore/rendering/svg/RenderSVGModelObject.cpp

    r89754 r90515  
    107107}
    108108
    109 bool RenderSVGModelObject::nodeAtPoint(const HitTestRequest&, HitTestResult&, const IntPoint&, const IntPoint&, HitTestAction)
     109bool RenderSVGModelObject::nodeAtPoint(const HitTestRequest&, HitTestResult&, const LayoutPoint&, const LayoutPoint&, HitTestAction)
    110110{
    111111    ASSERT_NOT_REACHED();
  • trunk/Source/WebCore/rendering/svg/RenderSVGModelObject.h

    r89754 r90515  
    6868private:
    6969    // This method should never be called, SVG uses a different nodeAtPoint method
    70     bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, HitTestAction);
     70    bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, HitTestAction);
    7171};
    7272
  • trunk/Source/WebCore/rendering/svg/RenderSVGRoot.cpp

    r90069 r90515  
    437437}
    438438
    439 bool RenderSVGRoot::nodeAtPoint(const HitTestRequest& request, HitTestResult& result, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, HitTestAction hitTestAction)
    440 {
    441     IntPoint pointInParent = pointInContainer - toSize(accumulatedOffset);
    442     IntPoint pointInBorderBox = pointInParent - parentOriginToBorderBox();
     439bool RenderSVGRoot::nodeAtPoint(const HitTestRequest& request, HitTestResult& result, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, HitTestAction hitTestAction)
     440{
     441    LayoutPoint pointInParent = pointInContainer - toLayoutSize(accumulatedOffset);
     442    LayoutPoint pointInBorderBox = pointInParent - parentOriginToBorderBox();
    443443
    444444    // Note: For now, we're ignoring hits to border and padding for <svg>
    445     IntPoint pointInContentBox = pointInBorderBox - borderOriginToContentBox();
     445    LayoutPoint pointInContentBox = pointInBorderBox - borderOriginToContentBox();
    446446    if (!contentBoxRect().contains(pointInContentBox))
    447447        return false;
    448448
    449     IntPoint localPoint = localToParentTransform().inverse().mapPoint(pointInParent);
     449    LayoutPoint localPoint = localToParentTransform().inverse().mapPoint(pointInParent);
    450450
    451451    for (RenderObject* child = lastChild(); child; child = child->previousSibling()) {
  • trunk/Source/WebCore/rendering/svg/RenderSVGRoot.h

    r90069 r90515  
    7979    virtual FloatRect repaintRectInLocalCoordinates() const { return m_repaintBoundingBox; }
    8080
    81     virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, HitTestAction);
     81    virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, HitTestAction);
    8282
    8383    virtual IntRect clippedOverflowRectForRepaint(RenderBoxModelObject* repaintContainer);
  • trunk/Source/WebCore/rendering/svg/RenderSVGText.cpp

    r90250 r90515  
    202202}
    203203
    204 bool RenderSVGText::nodeAtPoint(const HitTestRequest&, HitTestResult&, const IntPoint&, const IntPoint&, HitTestAction)
     204bool RenderSVGText::nodeAtPoint(const HitTestRequest&, HitTestResult&, const LayoutPoint&, const LayoutPoint&, HitTestAction)
    205205{
    206206    ASSERT_NOT_REACHED();
  • trunk/Source/WebCore/rendering/svg/RenderSVGText.h

    r90250 r90515  
    5454
    5555    virtual void paint(PaintInfo&, const LayoutPoint&);
    56     virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, HitTestAction);
     56    virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, HitTestAction);
    5757    virtual bool nodeAtFloatPoint(const HitTestRequest&, HitTestResult&, const FloatPoint& pointInParent, HitTestAction);
    5858    virtual VisiblePosition positionForPoint(const LayoutPoint&);
  • trunk/Source/WebCore/rendering/svg/SVGInlineTextBox.cpp

    r89733 r90515  
    729729}
    730730
    731 bool SVGInlineTextBox::nodeAtPoint(const HitTestRequest& request, HitTestResult& result, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, int, int)
     731bool SVGInlineTextBox::nodeAtPoint(const HitTestRequest& request, HitTestResult& result, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, int, int)
    732732{
    733733    // FIXME: integrate with InlineTextBox::nodeAtPoint better.
     
    741741            FloatPoint boxOrigin(x(), y());
    742742            boxOrigin.moveBy(accumulatedOffset);
    743             FloatRect rect(boxOrigin, IntSize(width(), height()));
     743            FloatRect rect(boxOrigin, size());
    744744            if (rect.intersects(result.rectForPoint(pointInContainer))) {
    745                 renderer()->updateHitTestResult(result, pointInContainer - toSize(accumulatedOffset));
     745                renderer()->updateHitTestResult(result, pointInContainer - toLayoutSize(accumulatedOffset));
    746746                if (!result.addNodeToRectBasedTestResult(renderer()->node(), pointInContainer, rect))
    747747                    return true;
  • trunk/Source/WebCore/rendering/svg/SVGInlineTextBox.h

    r89381 r90515  
    7878    void paintText(GraphicsContext*, RenderStyle*, RenderStyle* selectionStyle, const SVGTextFragment&, bool hasSelection, bool paintSelectedTextOnly);
    7979
    80     virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const IntPoint& pointInContainer, const IntPoint& accumulatedOffset, int lineTop, int lineBottom);
     80    virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, int lineTop, int lineBottom);
    8181
    8282private:
Note: See TracChangeset for help on using the changeset viewer.