OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 1997 Martin Jones (mjones@kde.org) | 2 * Copyright (C) 1997 Martin Jones (mjones@kde.org) |
3 * (C) 1997 Torben Weis (weis@kde.org) | 3 * (C) 1997 Torben Weis (weis@kde.org) |
4 * (C) 1998 Waldo Bastian (bastian@kde.org) | 4 * (C) 1998 Waldo Bastian (bastian@kde.org) |
5 * (C) 1999 Lars Knoll (knoll@kde.org) | 5 * (C) 1999 Lars Knoll (knoll@kde.org) |
6 * (C) 1999 Antti Koivisto (koivisto@kde.org) | 6 * (C) 1999 Antti Koivisto (koivisto@kde.org) |
7 * Copyright (C) 2003, 2004, 2005, 2006, 2008, 2009, 2010 Apple Inc. All rights
reserved. | 7 * Copyright (C) 2003, 2004, 2005, 2006, 2008, 2009, 2010 Apple Inc. All rights
reserved. |
8 * Copyright (C) 2006 Alexey Proskuryakov (ap@nypop.com) | 8 * Copyright (C) 2006 Alexey Proskuryakov (ap@nypop.com) |
9 * | 9 * |
10 * This library is free software; you can redistribute it and/or | 10 * This library is free software; you can redistribute it and/or |
(...skipping 1590 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1601 bool RenderTableSection::nodeAtPoint(const HitTestRequest& request, HitTestResul
t& result, const HitTestLocation& locationInContainer, const LayoutPoint& accumu
latedOffset, HitTestAction action) | 1601 bool RenderTableSection::nodeAtPoint(const HitTestRequest& request, HitTestResul
t& result, const HitTestLocation& locationInContainer, const LayoutPoint& accumu
latedOffset, HitTestAction action) |
1602 { | 1602 { |
1603 // If we have no children then we have nothing to do. | 1603 // If we have no children then we have nothing to do. |
1604 if (!firstChild()) | 1604 if (!firstChild()) |
1605 return false; | 1605 return false; |
1606 | 1606 |
1607 // Table sections cannot ever be hit tested. Effectively they do not exist. | 1607 // Table sections cannot ever be hit tested. Effectively they do not exist. |
1608 // Just forward to our children always. | 1608 // Just forward to our children always. |
1609 LayoutPoint adjustedLocation = accumulatedOffset + location(); | 1609 LayoutPoint adjustedLocation = accumulatedOffset + location(); |
1610 | 1610 |
1611 if (hasOverflowClip() && !locationInContainer.intersects(overflowClipRect(ad
justedLocation, locationInContainer.region()))) | 1611 if (hasOverflowClip() && !locationInContainer.intersects(overflowClipRect(ad
justedLocation))) |
1612 return false; | 1612 return false; |
1613 | 1613 |
1614 if (hasOverflowingCell()) { | 1614 if (hasOverflowingCell()) { |
1615 for (RenderObject* child = lastChild(); child; child = child->previousSi
bling()) { | 1615 for (RenderObject* child = lastChild(); child; child = child->previousSi
bling()) { |
1616 // FIXME: We have to skip over inline flows, since they can show up
inside table rows | 1616 // FIXME: We have to skip over inline flows, since they can show up
inside table rows |
1617 // at the moment (a demoted inline <form> for example). If we ever i
mplement a | 1617 // at the moment (a demoted inline <form> for example). If we ever i
mplement a |
1618 // table-specific hit-test method (which we should do for performanc
e reasons anyway), | 1618 // table-specific hit-test method (which we should do for performanc
e reasons anyway), |
1619 // then we can remove this check. | 1619 // then we can remove this check. |
1620 if (child->isBox() && !toRenderBox(child)->hasSelfPaintingLayer()) { | 1620 if (child->isBox() && !toRenderBox(child)->hasSelfPaintingLayer()) { |
1621 LayoutPoint childPoint = flipForWritingModeForChild(toRenderBox(
child), adjustedLocation); | 1621 LayoutPoint childPoint = flipForWritingModeForChild(toRenderBox(
child), adjustedLocation); |
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1710 else | 1710 else |
1711 cellLocation.setX(table()->columnPositions()[effectiveColumn] + horizont
alBorderSpacing); | 1711 cellLocation.setX(table()->columnPositions()[effectiveColumn] + horizont
alBorderSpacing); |
1712 | 1712 |
1713 cell->setLogicalLocation(cellLocation); | 1713 cell->setLogicalLocation(cellLocation); |
1714 | 1714 |
1715 if (!RuntimeEnabledFeatures::repaintAfterLayoutEnabled()) | 1715 if (!RuntimeEnabledFeatures::repaintAfterLayoutEnabled()) |
1716 view()->addLayoutDelta(oldCellLocation - cell->location()); | 1716 view()->addLayoutDelta(oldCellLocation - cell->location()); |
1717 } | 1717 } |
1718 | 1718 |
1719 } // namespace WebCore | 1719 } // namespace WebCore |
OLD | NEW |