Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 /* | 1 /* |
| 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) |
| 3 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserv ed. | 3 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserv ed. |
| 4 * | 4 * |
| 5 * This library is free software; you can redistribute it and/or | 5 * This library is free software; you can redistribute it and/or |
| 6 * modify it under the terms of the GNU Library General Public | 6 * modify it under the terms of the GNU Library General Public |
| 7 * License as published by the Free Software Foundation; either | 7 * License as published by the Free Software Foundation; either |
| 8 * version 2 of the License, or (at your option) any later version. | 8 * version 2 of the License, or (at your option) any later version. |
| 9 * | 9 * |
| 10 * This library is distributed in the hope that it will be useful, | 10 * This library is distributed in the hope that it will be useful, |
| (...skipping 24 matching lines...) Expand all Loading... | |
| 35 #include "core/rendering/ColumnInfo.h" | 35 #include "core/rendering/ColumnInfo.h" |
| 36 #include "core/rendering/FlowThreadController.h" | 36 #include "core/rendering/FlowThreadController.h" |
| 37 #include "core/rendering/HitTestResult.h" | 37 #include "core/rendering/HitTestResult.h" |
| 38 #include "core/rendering/RenderFlowThread.h" | 38 #include "core/rendering/RenderFlowThread.h" |
| 39 #include "core/rendering/RenderGeometryMap.h" | 39 #include "core/rendering/RenderGeometryMap.h" |
| 40 #include "core/rendering/RenderLayer.h" | 40 #include "core/rendering/RenderLayer.h" |
| 41 #include "core/rendering/RenderLayerBacking.h" | 41 #include "core/rendering/RenderLayerBacking.h" |
| 42 #include "core/rendering/RenderLayerCompositor.h" | 42 #include "core/rendering/RenderLayerCompositor.h" |
| 43 #include "core/rendering/RenderSelectionInfo.h" | 43 #include "core/rendering/RenderSelectionInfo.h" |
| 44 #include "core/rendering/RenderWidget.h" | 44 #include "core/rendering/RenderWidget.h" |
| 45 #include "core/svg/SVGElement.h" | |
| 45 | 46 |
| 46 namespace WebCore { | 47 namespace WebCore { |
| 47 | 48 |
| 48 RenderView::RenderView(Document* document) | 49 RenderView::RenderView(Document* document) |
| 49 : RenderBlockFlow(document) | 50 : RenderBlockFlow(document) |
| 50 , m_frameView(document->view()) | 51 , m_frameView(document->view()) |
| 51 , m_selectionStart(0) | 52 , m_selectionStart(0) |
| 52 , m_selectionEnd(0) | 53 , m_selectionEnd(0) |
| 53 , m_selectionStartPos(-1) | 54 , m_selectionStartPos(-1) |
| 54 , m_selectionEndPos(-1) | 55 , m_selectionEndPos(-1) |
| (...skipping 211 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 266 for (RenderObject* child = firstChild(); child; child = child->nextSibli ng()) { | 267 for (RenderObject* child = firstChild(); child; child = child->nextSibli ng()) { |
| 267 if ((child->isBox() && toRenderBox(child)->hasRelativeLogicalHeight( )) | 268 if ((child->isBox() && toRenderBox(child)->hasRelativeLogicalHeight( )) |
| 268 || child->style()->logicalHeight().isPercent() | 269 || child->style()->logicalHeight().isPercent() |
| 269 || child->style()->logicalMinHeight().isPercent() | 270 || child->style()->logicalMinHeight().isPercent() |
| 270 || child->style()->logicalMaxHeight().isPercent() | 271 || child->style()->logicalMaxHeight().isPercent() |
| 271 || child->style()->logicalHeight().isViewportPercentage() | 272 || child->style()->logicalHeight().isViewportPercentage() |
| 272 || child->style()->logicalMinHeight().isViewportPercentage() | 273 || child->style()->logicalMinHeight().isViewportPercentage() |
| 273 || child->style()->logicalMaxHeight().isViewportPercentage() | 274 || child->style()->logicalMaxHeight().isViewportPercentage() |
| 274 || child->isSVGRoot()) | 275 || child->isSVGRoot()) |
| 275 layoutScope.setChildNeedsLayout(child); | 276 layoutScope.setChildNeedsLayout(child); |
| 277 | |
| 278 // SVG resource containers need to be invalidated outside any partic ular SVG root layout scope. | |
|
pdr.
2013/09/23 22:26:02
This comment isn't actually helpful. Can you expan
f(malita)
2013/09/23 23:20:33
Didn't want to just duplicate the info in SVGRende
| |
| 279 if (child->isSVGRoot()) { | |
| 280 ASSERT(child->node()); | |
| 281 ASSERT(child->node()->isSVGElement()); | |
| 282 toSVGElement(child->node())->invalidateRelativeLengthClients(&la youtScope); | |
| 283 } | |
| 276 } | 284 } |
| 277 } | 285 } |
| 278 | 286 |
| 279 ASSERT(!m_layoutState); | 287 ASSERT(!m_layoutState); |
| 280 if (!needsLayout()) | 288 if (!needsLayout()) |
| 281 return; | 289 return; |
| 282 | 290 |
| 283 LayoutState state; | 291 LayoutState state; |
| 284 bool isSeamlessAncestorInFlowThread = initializeLayoutState(state); | 292 bool isSeamlessAncestorInFlowThread = initializeLayoutState(state); |
| 285 | 293 |
| (...skipping 926 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1212 #endif | 1220 #endif |
| 1213 | 1221 |
| 1214 if (layoutState) | 1222 if (layoutState) |
| 1215 layoutState->m_isPaginated = m_fragmenting; | 1223 layoutState->m_isPaginated = m_fragmenting; |
| 1216 | 1224 |
| 1217 if (m_flowThreadState != RenderObject::NotInsideFlowThread) | 1225 if (m_flowThreadState != RenderObject::NotInsideFlowThread) |
| 1218 m_root->setFlowThreadStateIncludingDescendants(m_flowThreadState); | 1226 m_root->setFlowThreadStateIncludingDescendants(m_flowThreadState); |
| 1219 } | 1227 } |
| 1220 | 1228 |
| 1221 } // namespace WebCore | 1229 } // namespace WebCore |
| OLD | NEW |