Title: [152345] trunk/Source/WebCore
- Revision
- 152345
- Author
- [email protected]
- Date
- 2013-07-03 02:02:43 -0700 (Wed, 03 Jul 2013)
Log Message
[CSS Regions] Improve implementation of elements in region being flowed to another flow thread
https://bugs.webkit.org/show_bug.cgi?id=118300
Based on patch by Zoltán Árvai <[email protected]>
Patch by Radu Stavila <[email protected]> on 2013-07-03
Reviewed by Csaba Osztrogonác.
Fixed CSS_REGIONS guard.
* dom/Element.h:
* dom/NodeRenderingContext.cpp:
(WebCore::NodeRenderingContext::elementInsideRegionNeedsRenderer):
(WebCore::NodeRenderingContext::moveToFlowThreadIfNeeded):
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (152344 => 152345)
--- trunk/Source/WebCore/ChangeLog 2013-07-03 08:43:41 UTC (rev 152344)
+++ trunk/Source/WebCore/ChangeLog 2013-07-03 09:02:43 UTC (rev 152345)
@@ -1,3 +1,19 @@
+2013-07-03 Radu Stavila <[email protected]>
+
+ [CSS Regions] Improve implementation of elements in region being flowed to another flow thread
+ https://bugs.webkit.org/show_bug.cgi?id=118300
+
+ Based on patch by Zoltán Árvai <[email protected]>
+
+ Reviewed by Csaba Osztrogonác.
+
+ Fixed CSS_REGIONS guard.
+
+ * dom/Element.h:
+ * dom/NodeRenderingContext.cpp:
+ (WebCore::NodeRenderingContext::elementInsideRegionNeedsRenderer):
+ (WebCore::NodeRenderingContext::moveToFlowThreadIfNeeded):
+
2013-07-03 Christophe Dumez <[email protected]>
Move SVGTests attributes parsing to SVGGraphicsElement
Modified: trunk/Source/WebCore/dom/Element.h (152344 => 152345)
--- trunk/Source/WebCore/dom/Element.h 2013-07-03 08:43:41 UTC (rev 152344)
+++ trunk/Source/WebCore/dom/Element.h 2013-07-03 09:02:43 UTC (rev 152345)
@@ -635,9 +635,10 @@
PassRefPtr<RenderStyle> styleForRenderer();
RenderRegion* renderRegion() const;
+
+#if ENABLE(CSS_REGIONS)
virtual bool shouldMoveToFlowThread(RenderStyle*) const;
-#if ENABLE(CSS_REGIONS)
const AtomicString& webkitRegionOverset() const;
Vector<RefPtr<Range> > webkitGetRegionFlowRanges() const;
#endif
Modified: trunk/Source/WebCore/dom/NodeRenderingContext.cpp (152344 => 152345)
--- trunk/Source/WebCore/dom/NodeRenderingContext.cpp 2013-07-03 08:43:41 UTC (rev 152344)
+++ trunk/Source/WebCore/dom/NodeRenderingContext.cpp 2013-07-03 09:02:43 UTC (rev 152345)
@@ -199,8 +199,10 @@
// Check the specific case of elements that are children of regions but are flowed into a flow thread themselves.
bool NodeRenderingContext::elementInsideRegionNeedsRenderer()
{
+ bool elementInsideRegionNeedsRenderer = false;
+
+#if ENABLE(CSS_REGIONS)
Element* element = toElement(m_node);
- bool elementInsideRegionNeedsRenderer = false;
RenderObject* parentRenderer = this->parentRenderer();
if ((parentRenderer && !parentRenderer->canHaveChildren() && parentRenderer->isRenderRegion())
|| (!parentRenderer && element->parentElement() && element->parentElement()->isInsideRegion())) {
@@ -214,12 +216,14 @@
if (element->rendererIsNeeded(*this))
element->setIsInsideRegion(true);
}
+#endif
return elementInsideRegionNeedsRenderer;
}
void NodeRenderingContext::moveToFlowThreadIfNeeded()
{
+#if ENABLE(CSS_REGIONS)
Element* element = toElement(m_node);
if (!element->shouldMoveToFlowThread(m_style.get()))
@@ -229,6 +233,7 @@
FlowThreadController* flowThreadController = m_node->document()->renderView()->flowThreadController();
m_parentFlowRenderer = flowThreadController->ensureRenderFlowThreadWithName(m_style->flowThread());
flowThreadController->registerNamedFlowContentNode(m_node, m_parentFlowRenderer);
+#endif
}
bool NodeRenderingContext::isOnEncapsulationBoundary() const
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes