Title: [118832] trunk/Source/WebCore
- Revision
- 118832
- Author
- [email protected]
- Date
- 2012-05-29 14:13:05 -0700 (Tue, 29 May 2012)
Log Message
https://bugs.webkit.org/show_bug.cgi?id=87775
[New Multicolumn] Make sure RenderMultiColumnSets have their own copy of the count, width and height of their columns.
Reviewed by Anders Carlsson.
* rendering/RenderMultiColumnBlock.cpp:
(WebCore::RenderMultiColumnBlock::RenderMultiColumnBlock):
(WebCore::RenderMultiColumnBlock::ensureColumnSets):
* rendering/RenderMultiColumnBlock.h:
(WebCore::RenderMultiColumnBlock::columnWidth):
(WebCore::RenderMultiColumnBlock::columnCount):
(RenderMultiColumnBlock):
* rendering/RenderMultiColumnSet.cpp:
(WebCore::RenderMultiColumnSet::RenderMultiColumnSet):
* rendering/RenderMultiColumnSet.h:
(WebCore::RenderMultiColumnSet::columnCount):
(WebCore::RenderMultiColumnSet::columnWidth):
(WebCore::RenderMultiColumnSet::columnHeight):
(RenderMultiColumnSet):
(WebCore::RenderMultiColumnSet::setColumnWidthAndCount):
(WebCore::RenderMultiColumnSet::setColumnHeight):
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (118831 => 118832)
--- trunk/Source/WebCore/ChangeLog 2012-05-29 20:58:16 UTC (rev 118831)
+++ trunk/Source/WebCore/ChangeLog 2012-05-29 21:13:05 UTC (rev 118832)
@@ -1,3 +1,28 @@
+2012-05-29 David Hyatt <[email protected]>
+
+ https://bugs.webkit.org/show_bug.cgi?id=87775
+
+ [New Multicolumn] Make sure RenderMultiColumnSets have their own copy of the count, width and height of their columns.
+
+ Reviewed by Anders Carlsson.
+
+ * rendering/RenderMultiColumnBlock.cpp:
+ (WebCore::RenderMultiColumnBlock::RenderMultiColumnBlock):
+ (WebCore::RenderMultiColumnBlock::ensureColumnSets):
+ * rendering/RenderMultiColumnBlock.h:
+ (WebCore::RenderMultiColumnBlock::columnWidth):
+ (WebCore::RenderMultiColumnBlock::columnCount):
+ (RenderMultiColumnBlock):
+ * rendering/RenderMultiColumnSet.cpp:
+ (WebCore::RenderMultiColumnSet::RenderMultiColumnSet):
+ * rendering/RenderMultiColumnSet.h:
+ (WebCore::RenderMultiColumnSet::columnCount):
+ (WebCore::RenderMultiColumnSet::columnWidth):
+ (WebCore::RenderMultiColumnSet::columnHeight):
+ (RenderMultiColumnSet):
+ (WebCore::RenderMultiColumnSet::setColumnWidthAndCount):
+ (WebCore::RenderMultiColumnSet::setColumnHeight):
+
2012-05-29 Simon Fraser <[email protected]>
Incomplete repaint on twitter.com when replying to a tweet
Modified: trunk/Source/WebCore/rendering/RenderMultiColumnBlock.cpp (118831 => 118832)
--- trunk/Source/WebCore/rendering/RenderMultiColumnBlock.cpp 2012-05-29 20:58:16 UTC (rev 118831)
+++ trunk/Source/WebCore/rendering/RenderMultiColumnBlock.cpp 2012-05-29 21:13:05 UTC (rev 118832)
@@ -36,7 +36,7 @@
: RenderBlock(node)
, m_flowThread(0)
, m_columnCount(1)
- , m_columnWidth(0)
+ , m_columnWidth(ZERO_LAYOUT_UNIT)
, m_columnHeight(ZERO_LAYOUT_UNIT)
{
}
@@ -137,6 +137,8 @@
if (flowThread() && !firstChild()->isRenderMultiColumnSet()) {
RenderMultiColumnSet* columnSet = new (renderArena()) RenderMultiColumnSet(document(), flowThread());
columnSet->setStyle(RenderStyle::createAnonymousStyleWithDisplay(style(), BLOCK));
+ columnSet->setColumnWidthAndCount(columnWidth(), columnCount()); // FIXME: This will eventually vary if we are contained inside regions.
+ columnSet->setColumnHeight(columnHeight()); // FIXME: Once we make more than one column set, this will become variable.
RenderBlock::addChild(columnSet, firstChild());
flowThread()->addRegionToThread(columnSet);
}
Modified: trunk/Source/WebCore/rendering/RenderMultiColumnBlock.h (118831 => 118832)
--- trunk/Source/WebCore/rendering/RenderMultiColumnBlock.h 2012-05-29 20:58:16 UTC (rev 118831)
+++ trunk/Source/WebCore/rendering/RenderMultiColumnBlock.h 2012-05-29 21:13:05 UTC (rev 118832)
@@ -40,6 +40,9 @@
LayoutUnit columnHeight() const { return m_columnHeight; }
void setColumnHeight(LayoutUnit columnHeight) { m_columnHeight = columnHeight; }
+ LayoutUnit columnWidth() const { return m_columnWidth; }
+ unsigned columnCount() const { return m_columnCount; }
+
private:
virtual const char* renderName() const;
Modified: trunk/Source/WebCore/rendering/RenderMultiColumnSet.cpp (118831 => 118832)
--- trunk/Source/WebCore/rendering/RenderMultiColumnSet.cpp 2012-05-29 20:58:16 UTC (rev 118831)
+++ trunk/Source/WebCore/rendering/RenderMultiColumnSet.cpp 2012-05-29 21:13:05 UTC (rev 118832)
@@ -30,6 +30,9 @@
RenderMultiColumnSet::RenderMultiColumnSet(Node* node, RenderFlowThread* flowThread)
: RenderRegionSet(node, flowThread)
+ , m_columnCount(1)
+ , m_columnWidth(ZERO_LAYOUT_UNIT)
+ , m_columnHeight(ZERO_LAYOUT_UNIT)
{
}
Modified: trunk/Source/WebCore/rendering/RenderMultiColumnSet.h (118831 => 118832)
--- trunk/Source/WebCore/rendering/RenderMultiColumnSet.h 2012-05-29 20:58:16 UTC (rev 118831)
+++ trunk/Source/WebCore/rendering/RenderMultiColumnSet.h 2012-05-29 21:13:05 UTC (rev 118832)
@@ -47,8 +47,26 @@
virtual bool isRenderMultiColumnSet() const OVERRIDE { return true; }
+ unsigned columnCount() const { return m_columnCount; }
+ LayoutUnit columnWidth() const { return m_columnWidth; }
+ LayoutUnit columnHeight() const { return m_columnHeight; }
+
+ void setColumnWidthAndCount(unsigned count, LayoutUnit width)
+ {
+ m_columnCount = count;
+ m_columnWidth = width;
+ }
+ void setColumnHeight(LayoutUnit height)
+ {
+ m_columnHeight = height;
+ }
+
private:
virtual const char* renderName() const;
+
+ unsigned m_columnCount;
+ LayoutUnit m_columnWidth;
+ LayoutUnit m_columnHeight;
};
} // namespace WebCore
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes