OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) |
3 * (C) 1999 Antti Koivisto (koivisto@kde.org) | 3 * (C) 1999 Antti Koivisto (koivisto@kde.org) |
4 * (C) 2007 David Smith (catfish.man@gmail.com) | 4 * (C) 2007 David Smith (catfish.man@gmail.com) |
5 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc.
All rights reserved. | 5 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc.
All rights reserved. |
6 * Copyright (C) Research In Motion Limited 2010. All rights reserved. | 6 * Copyright (C) Research In Motion Limited 2010. All rights reserved. |
7 * | 7 * |
8 * This library is free software; you can redistribute it and/or | 8 * This library is free software; you can redistribute it and/or |
9 * modify it under the terms of the GNU Library General Public | 9 * modify it under the terms of the GNU Library General Public |
10 * License as published by the Free Software Foundation; either | 10 * License as published by the Free Software Foundation; either |
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
63 #include "core/page/Page.h" | 63 #include "core/page/Page.h" |
64 #include "core/paint/BlockPainter.h" | 64 #include "core/paint/BlockPainter.h" |
65 #include "core/paint/BoxPainter.h" | 65 #include "core/paint/BoxPainter.h" |
66 #include "core/paint/DeprecatedPaintLayer.h" | 66 #include "core/paint/DeprecatedPaintLayer.h" |
67 #include "core/paint/LayoutObjectDrawingRecorder.h" | 67 #include "core/paint/LayoutObjectDrawingRecorder.h" |
68 #include "core/style/ComputedStyle.h" | 68 #include "core/style/ComputedStyle.h" |
69 #include "core/style/ContentData.h" | 69 #include "core/style/ContentData.h" |
70 #include "platform/RuntimeEnabledFeatures.h" | 70 #include "platform/RuntimeEnabledFeatures.h" |
71 #include "platform/geometry/FloatQuad.h" | 71 #include "platform/geometry/FloatQuad.h" |
72 #include "platform/geometry/TransformState.h" | 72 #include "platform/geometry/TransformState.h" |
| 73 #include "wtf/SizeAssertions.h" |
73 #include "wtf/StdLibExtras.h" | 74 #include "wtf/StdLibExtras.h" |
74 #include "wtf/TemporaryChange.h" | 75 #include "wtf/TemporaryChange.h" |
75 | 76 |
76 using namespace WTF; | 77 using namespace WTF; |
77 using namespace Unicode; | 78 using namespace Unicode; |
78 | 79 |
79 namespace blink { | 80 namespace blink { |
80 | 81 |
81 using namespace HTMLNames; | 82 using namespace HTMLNames; |
82 | 83 |
83 struct SameSizeAsLayoutBlock : public LayoutBox { | 84 ASSERT_SIZE(LayoutBlock, sizeof(LayoutBox) + 20, sizeof(LayoutBox) + 40); |
84 LayoutObjectChildList children; | |
85 LineBoxList lineBoxes; | |
86 uint32_t bitfields; | |
87 }; | |
88 | |
89 static_assert(sizeof(LayoutBlock) == sizeof(SameSizeAsLayoutBlock), "LayoutBlock
should stay small"); | |
90 | 85 |
91 // This map keeps track of the positioned objects associated with a containing | 86 // This map keeps track of the positioned objects associated with a containing |
92 // block. | 87 // block. |
93 // | 88 // |
94 // This map is populated during layout. It is kept across layouts to handle | 89 // This map is populated during layout. It is kept across layouts to handle |
95 // that we skip unchanged sub-trees during layout, in such a way that we are | 90 // that we skip unchanged sub-trees during layout, in such a way that we are |
96 // able to lay out deeply nested out-of-flow descendants if their containing | 91 // able to lay out deeply nested out-of-flow descendants if their containing |
97 // block got laid out. The map could be invalidated during style change but | 92 // block got laid out. The map could be invalidated during style change but |
98 // keeping track of containing blocks at that time is complicated (we are in | 93 // keeping track of containing blocks at that time is complicated (we are in |
99 // the middle of recomputing the style so we can't rely on any of its | 94 // the middle of recomputing the style so we can't rely on any of its |
(...skipping 2785 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2885 void LayoutBlock::showLineTreeAndMark(const InlineBox* markedBox1, const char* m
arkedLabel1, const InlineBox* markedBox2, const char* markedLabel2, const Layout
Object* obj) const | 2880 void LayoutBlock::showLineTreeAndMark(const InlineBox* markedBox1, const char* m
arkedLabel1, const InlineBox* markedBox2, const char* markedLabel2, const Layout
Object* obj) const |
2886 { | 2881 { |
2887 showLayoutObject(); | 2882 showLayoutObject(); |
2888 for (const RootInlineBox* root = firstRootBox(); root; root = root->nextRoot
Box()) | 2883 for (const RootInlineBox* root = firstRootBox(); root; root = root->nextRoot
Box()) |
2889 root->showLineTreeAndMark(markedBox1, markedLabel1, markedBox2, markedLa
bel2, obj, 1); | 2884 root->showLineTreeAndMark(markedBox1, markedLabel1, markedBox2, markedLa
bel2, obj, 1); |
2890 } | 2885 } |
2891 | 2886 |
2892 #endif | 2887 #endif |
2893 | 2888 |
2894 } // namespace blink | 2889 } // namespace blink |
OLD | NEW |