summaryrefslogtreecommitdiff
path: root/Source/WebCore/rendering/RenderTableCol.cpp
diff options
context:
space:
mode:
authorSimon Hausmann <simon.hausmann@nokia.com>2012-06-01 10:36:58 +0200
committerSimon Hausmann <simon.hausmann@nokia.com>2012-06-01 10:36:58 +0200
commitb1e9e47fa11f608ae16bc07f97a2acf95bf80272 (patch)
treec88c45e80c9c44506e7cdf9a3bb39ebf82a8cd5b /Source/WebCore/rendering/RenderTableCol.cpp
parentbe01689f43cf6882cf670d33df49ead1f570c53a (diff)
downloadqtwebkit-b1e9e47fa11f608ae16bc07f97a2acf95bf80272.tar.gz
Imported WebKit commit 499c84c99aa98e9870fa7eaa57db476c6d160d46 (http://svn.webkit.org/repository/webkit/trunk@119200)
Weekly update :). Particularly relevant changes for Qt are the use of the WebCore image decoders and direct usage of libpng/libjpeg if available in the system.
Diffstat (limited to 'Source/WebCore/rendering/RenderTableCol.cpp')
-rw-r--r--Source/WebCore/rendering/RenderTableCol.cpp20
1 files changed, 16 insertions, 4 deletions
diff --git a/Source/WebCore/rendering/RenderTableCol.cpp b/Source/WebCore/rendering/RenderTableCol.cpp
index b569eae42..97cd8cc3e 100644
--- a/Source/WebCore/rendering/RenderTableCol.cpp
+++ b/Source/WebCore/rendering/RenderTableCol.cpp
@@ -71,14 +71,15 @@ void RenderTableCol::updateFromElement()
bool RenderTableCol::isChildAllowed(RenderObject* child, RenderStyle* style) const
{
- return child->isTableCol() && style->display() == TABLE_COLUMN;
+ // We cannot use isTableColumn here as style() may return 0.
+ return child->isRenderTableCol() && style->display() == TABLE_COLUMN;
}
bool RenderTableCol::canHaveChildren() const
{
// Cols cannot have children. This is actually necessary to fix a bug
// with libraries.uc.edu, which makes a <p> be a table-column.
- return style()->display() == TABLE_COLUMN_GROUP;
+ return isTableColumnGroup();
}
LayoutRect RenderTableCol::clippedOverflowRectForRepaint(RenderBoxModelObject* repaintContainer) const
@@ -116,6 +117,17 @@ RenderTable* RenderTableCol::table() const
return table && table->isTable() ? toRenderTable(table) : 0;
}
+RenderTableCol* RenderTableCol::enclosingColumnGroup() const
+{
+ if (!parent()->isRenderTableCol())
+ return 0;
+
+ RenderTableCol* parentColumnGroup = toRenderTableCol(parent());
+ ASSERT(parentColumnGroup->isTableColumnGroup());
+ ASSERT(isTableColumn());
+ return parentColumnGroup;
+}
+
RenderTableCol* RenderTableCol::nextColumn() const
{
// If |this| is a column-group, the next column is the colgroup's first child column.
@@ -126,10 +138,10 @@ RenderTableCol* RenderTableCol::nextColumn() const
RenderObject* next = nextSibling();
// Failing that, the child is the last column in a column-group, so the next column is the next column/column-group after its column-group.
- if (!next && parent()->isTableCol())
+ if (!next && parent()->isRenderTableCol())
next = parent()->nextSibling();
- for (; next && !next->isTableCol(); next = next->nextSibling()) {
+ for (; next && !next->isRenderTableCol(); next = next->nextSibling()) {
// We allow captions mixed with columns and column-groups.
if (next->isTableCaption())
continue;