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 21 matching lines...) Expand all Loading... |
32 #include "core/platform/graphics/FloatQuad.h" | 32 #include "core/platform/graphics/FloatQuad.h" |
33 #include "core/platform/graphics/GraphicsContext.h" | 33 #include "core/platform/graphics/GraphicsContext.h" |
34 #include "core/platform/graphics/transforms/TransformState.h" | 34 #include "core/platform/graphics/transforms/TransformState.h" |
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/RenderGeometryMap.h" | 38 #include "core/rendering/RenderGeometryMap.h" |
39 #include "core/rendering/RenderLayer.h" | 39 #include "core/rendering/RenderLayer.h" |
40 #include "core/rendering/RenderLayerBacking.h" | 40 #include "core/rendering/RenderLayerBacking.h" |
41 #include "core/rendering/RenderLayerCompositor.h" | 41 #include "core/rendering/RenderLayerCompositor.h" |
42 #include "core/rendering/RenderLazyBlock.h" | |
43 #include "core/rendering/RenderSelectionInfo.h" | 42 #include "core/rendering/RenderSelectionInfo.h" |
44 #include "core/rendering/RenderWidget.h" | 43 #include "core/rendering/RenderWidget.h" |
45 | 44 |
46 namespace WebCore { | 45 namespace WebCore { |
47 | 46 |
48 RenderView::RenderView(Document* document) | 47 RenderView::RenderView(Document* document) |
49 : RenderBlock(document) | 48 : RenderBlock(document) |
50 , m_frameView(document->view()) | 49 , m_frameView(document->view()) |
51 , m_selectionStart(0) | 50 , m_selectionStart(0) |
52 , m_selectionEnd(0) | 51 , m_selectionEnd(0) |
53 , m_selectionStartPos(-1) | 52 , m_selectionStartPos(-1) |
54 , m_selectionEndPos(-1) | 53 , m_selectionEndPos(-1) |
55 , m_maximalOutlineSize(0) | 54 , m_maximalOutlineSize(0) |
56 , m_pageLogicalHeight(0) | 55 , m_pageLogicalHeight(0) |
57 , m_pageLogicalHeightChanged(false) | 56 , m_pageLogicalHeightChanged(false) |
58 , m_layoutState(0) | 57 , m_layoutState(0) |
59 , m_layoutStateDisableCount(0) | 58 , m_layoutStateDisableCount(0) |
60 , m_firstLazyBlock(0) | |
61 , m_renderQuoteHead(0) | 59 , m_renderQuoteHead(0) |
62 , m_renderCounterCount(0) | 60 , m_renderCounterCount(0) |
63 { | 61 { |
64 // init RenderObject attributes | 62 // init RenderObject attributes |
65 setInline(false); | 63 setInline(false); |
66 | 64 |
67 m_minPreferredLogicalWidth = 0; | 65 m_minPreferredLogicalWidth = 0; |
68 m_maxPreferredLogicalWidth = 0; | 66 m_maxPreferredLogicalWidth = 0; |
69 | 67 |
70 setPreferredLogicalWidthsDirty(true, MarkOnlyThis); | 68 setPreferredLogicalWidthsDirty(true, MarkOnlyThis); |
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
109 if (hasColumns()) | 107 if (hasColumns()) |
110 return columnInfo()->columnHeight(); | 108 return columnInfo()->columnHeight(); |
111 return RenderBlock::availableLogicalHeight(heightType); | 109 return RenderBlock::availableLogicalHeight(heightType); |
112 } | 110 } |
113 | 111 |
114 bool RenderView::isChildAllowed(RenderObject* child, RenderStyle*) const | 112 bool RenderView::isChildAllowed(RenderObject* child, RenderStyle*) const |
115 { | 113 { |
116 return child->isBox(); | 114 return child->isBox(); |
117 } | 115 } |
118 | 116 |
119 void RenderView::markLazyBlocksForLayout() | |
120 { | |
121 for (RenderLazyBlock* block = m_firstLazyBlock; block; block = block->next()
) | |
122 block->setNeedsLayout(); | |
123 } | |
124 | |
125 void RenderView::layoutContent(const LayoutState& state) | 117 void RenderView::layoutContent(const LayoutState& state) |
126 { | 118 { |
127 UNUSED_PARAM(state); | 119 UNUSED_PARAM(state); |
128 ASSERT(needsLayout()); | 120 ASSERT(needsLayout()); |
129 | 121 |
130 RenderBlock::layout(); | 122 RenderBlock::layout(); |
131 if (hasRenderNamedFlowThreads()) | 123 if (hasRenderNamedFlowThreads()) |
132 flowThreadController()->layoutRenderNamedFlowThreads(); | 124 flowThreadController()->layoutRenderNamedFlowThreads(); |
133 #ifndef NDEBUG | 125 #ifndef NDEBUG |
134 checkLayoutState(state); | 126 checkLayoutState(state); |
(...skipping 1013 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1148 #endif | 1140 #endif |
1149 | 1141 |
1150 if (layoutState) | 1142 if (layoutState) |
1151 layoutState->m_isPaginated = m_fragmenting; | 1143 layoutState->m_isPaginated = m_fragmenting; |
1152 | 1144 |
1153 if (m_flowThreadState != RenderObject::NotInsideFlowThread) | 1145 if (m_flowThreadState != RenderObject::NotInsideFlowThread) |
1154 m_root->setFlowThreadStateIncludingDescendants(m_flowThreadState); | 1146 m_root->setFlowThreadStateIncludingDescendants(m_flowThreadState); |
1155 } | 1147 } |
1156 | 1148 |
1157 } // namespace WebCore | 1149 } // namespace WebCore |
OLD | NEW |