OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2000 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 2000 Lars Knoll (knoll@kde.org) |
3 * (C) 2000 Antti Koivisto (koivisto@kde.org) | 3 * (C) 2000 Antti Koivisto (koivisto@kde.org) |
4 * (C) 2000 Dirk Mueller (mueller@kde.org) | 4 * (C) 2000 Dirk Mueller (mueller@kde.org) |
5 * (C) 2004 Allan Sandfeld Jensen (kde@carewolf.com) | 5 * (C) 2004 Allan Sandfeld Jensen (kde@carewolf.com) |
6 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2012 Apple Inc. All r
ights reserved. | 6 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2012 Apple Inc. All r
ights reserved. |
7 * Copyright (C) 2009 Google Inc. All rights reserved. | 7 * Copyright (C) 2009 Google Inc. All rights reserved. |
8 * | 8 * |
9 * This library is free software; you can redistribute it and/or | 9 * This library is free software; you can redistribute it and/or |
10 * modify it under the terms of the GNU Library General Public | 10 * modify it under the terms of the GNU Library General Public |
(...skipping 953 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
964 RespectImageOrientationEnum shouldRespectImageOrientation() const; | 964 RespectImageOrientationEnum shouldRespectImageOrientation() const; |
965 | 965 |
966 bool isRelayoutBoundaryForInspector() const; | 966 bool isRelayoutBoundaryForInspector() const; |
967 | 967 |
968 const LayoutRect& newRepaintRect() const { return m_newRepaintRect; } | 968 const LayoutRect& newRepaintRect() const { return m_newRepaintRect; } |
969 void setNewRepaintRect(const LayoutRect& rect) { m_newRepaintRect = rect; } | 969 void setNewRepaintRect(const LayoutRect& rect) { m_newRepaintRect = rect; } |
970 | 970 |
971 const LayoutRect& oldRepaintRect() const { return m_oldRepaintRect; } | 971 const LayoutRect& oldRepaintRect() const { return m_oldRepaintRect; } |
972 void setOldRepaintRect(const LayoutRect& rect) { m_oldRepaintRect = rect; } | 972 void setOldRepaintRect(const LayoutRect& rect) { m_oldRepaintRect = rect; } |
973 | 973 |
| 974 LayoutRect newOutlineRect(); |
| 975 void setNewOutlineRect(const LayoutRect&); |
| 976 |
| 977 LayoutRect oldOutlineRect(); |
| 978 void setOldOutlineRect(const LayoutRect&); |
| 979 |
974 bool shouldDoFullRepaintAfterLayout() const { return m_bitfields.shouldDoFul
lRepaintAfterLayout(); } | 980 bool shouldDoFullRepaintAfterLayout() const { return m_bitfields.shouldDoFul
lRepaintAfterLayout(); } |
975 void setShouldDoFullRepaintAfterLayout(bool b) { m_bitfields.setShouldDoFull
RepaintAfterLayout(b); } | 981 void setShouldDoFullRepaintAfterLayout(bool b) { m_bitfields.setShouldDoFull
RepaintAfterLayout(b); } |
976 bool shouldRepaintOverflow() const { return m_bitfields.shouldRepaintOverflo
w(); } | 982 bool shouldRepaintOverflow() const { return m_bitfields.shouldRepaintOverflo
w(); } |
977 | 983 |
978 void clearRepaintRects() | 984 bool shouldDoFullRepaintIfSelfPaintingLayer() const { return m_bitfields.sho
uldDoFullRepaintIfSelfPaintingLayer(); } |
979 { | 985 void setShouldDoFullRepaintIfSelfPaintingLayer(bool b) { m_bitfields.setShou
ldDoFullRepaintIfSelfPaintingLayer(b); } |
980 setNewRepaintRect(LayoutRect()); | |
981 setOldRepaintRect(LayoutRect()); | |
982 | 986 |
983 setShouldDoFullRepaintAfterLayout(false); | 987 bool onlyNeededPositionedMovementLayout() const { return m_bitfields.onlyNee
dedPositionedMovementLayout(); } |
984 setShouldRepaintOverflow(false); | 988 void setOnlyNeededPositionedMovementLayout(bool b) { m_bitfields.setOnlyNeed
edPositionedMovementLayout(b); } |
985 setLayoutDidGetCalled(false); | 989 |
986 } | 990 void clearRepaintState(); |
987 | 991 |
988 // layoutDidGetCalled indicates whether this render object was re-laid-out | 992 // layoutDidGetCalled indicates whether this render object was re-laid-out |
989 // since the last call to setLayoutDidGetCalled(false) on this object. | 993 // since the last call to setLayoutDidGetCalled(false) on this object. |
990 bool layoutDidGetCalled() { return m_bitfields.layoutDidGetCalled(); } | 994 bool layoutDidGetCalled() { return m_bitfields.layoutDidGetCalled(); } |
991 void setLayoutDidGetCalled(bool b) { m_bitfields.setLayoutDidGetCalled(b); } | 995 void setLayoutDidGetCalled(bool b) { m_bitfields.setLayoutDidGetCalled(b); } |
992 | 996 |
993 bool shouldDisableLayoutState() const { return hasColumns() || hasTransform(
) || hasReflection() || style()->isFlippedBlocksWritingMode(); } | 997 bool shouldDisableLayoutState() const { return hasColumns() || hasTransform(
) || hasReflection() || style()->isFlippedBlocksWritingMode(); } |
994 | 998 |
995 protected: | 999 protected: |
996 inline bool layerCreationAllowedForSubtree() const; | 1000 inline bool layerCreationAllowedForSubtree() const; |
(...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1094 | 1098 |
1095 public: | 1099 public: |
1096 RenderObjectBitfields(Node* node) | 1100 RenderObjectBitfields(Node* node) |
1097 : m_selfNeedsLayout(false) | 1101 : m_selfNeedsLayout(false) |
1098 // FIXME: shouldDoFullRepaintAfterLayout is needed because we reset | 1102 // FIXME: shouldDoFullRepaintAfterLayout is needed because we reset |
1099 // the layout bits before repaint when doing repaintAfterLayout. | 1103 // the layout bits before repaint when doing repaintAfterLayout. |
1100 // Holding the layout bits until after repaint would remove the need | 1104 // Holding the layout bits until after repaint would remove the need |
1101 // for this flag. | 1105 // for this flag. |
1102 , m_shouldDoFullRepaintAfterLayout(false) | 1106 , m_shouldDoFullRepaintAfterLayout(false) |
1103 , m_shouldRepaintOverflow(false) | 1107 , m_shouldRepaintOverflow(false) |
| 1108 , m_shouldDoFullRepaintIfSelfPaintingLayer(false) |
| 1109 , m_onlyNeededPositionedMovementLayout(false) |
1104 , m_needsPositionedMovementLayout(false) | 1110 , m_needsPositionedMovementLayout(false) |
1105 , m_normalChildNeedsLayout(false) | 1111 , m_normalChildNeedsLayout(false) |
1106 , m_posChildNeedsLayout(false) | 1112 , m_posChildNeedsLayout(false) |
1107 , m_needsSimplifiedNormalFlowLayout(false) | 1113 , m_needsSimplifiedNormalFlowLayout(false) |
1108 , m_preferredLogicalWidthsDirty(false) | 1114 , m_preferredLogicalWidthsDirty(false) |
1109 , m_floating(false) | 1115 , m_floating(false) |
1110 , m_isAnonymous(!node) | 1116 , m_isAnonymous(!node) |
1111 , m_isText(false) | 1117 , m_isText(false) |
1112 , m_isBox(false) | 1118 , m_isBox(false) |
1113 , m_isInline(true) | 1119 , m_isInline(true) |
(...skipping 11 matching lines...) Expand all Loading... |
1125 , m_hasColumns(false) | 1131 , m_hasColumns(false) |
1126 , m_layoutDidGetCalled(false) | 1132 , m_layoutDidGetCalled(false) |
1127 , m_positionedState(IsStaticallyPositioned) | 1133 , m_positionedState(IsStaticallyPositioned) |
1128 , m_selectionState(SelectionNone) | 1134 , m_selectionState(SelectionNone) |
1129 , m_flowThreadState(NotInsideFlowThread) | 1135 , m_flowThreadState(NotInsideFlowThread) |
1130 , m_boxDecorationState(NoBoxDecorations) | 1136 , m_boxDecorationState(NoBoxDecorations) |
1131 , m_hasPendingResourceUpdate(false) | 1137 , m_hasPendingResourceUpdate(false) |
1132 { | 1138 { |
1133 } | 1139 } |
1134 | 1140 |
1135 // 32 bits have been used in the first word, and 3 in the second. | 1141 // 32 bits have been used in the first word, and 5 in the second. |
1136 ADD_BOOLEAN_BITFIELD(selfNeedsLayout, SelfNeedsLayout); | 1142 ADD_BOOLEAN_BITFIELD(selfNeedsLayout, SelfNeedsLayout); |
1137 ADD_BOOLEAN_BITFIELD(shouldDoFullRepaintAfterLayout, ShouldDoFullRepaint
AfterLayout); | 1143 ADD_BOOLEAN_BITFIELD(shouldDoFullRepaintAfterLayout, ShouldDoFullRepaint
AfterLayout); |
1138 ADD_BOOLEAN_BITFIELD(shouldRepaintOverflow, ShouldRepaintOverflow); | 1144 ADD_BOOLEAN_BITFIELD(shouldRepaintOverflow, ShouldRepaintOverflow); |
| 1145 ADD_BOOLEAN_BITFIELD(shouldDoFullRepaintIfSelfPaintingLayer, ShouldDoFul
lRepaintIfSelfPaintingLayer); |
| 1146 ADD_BOOLEAN_BITFIELD(onlyNeededPositionedMovementLayout, OnlyNeededPosit
ionedMovementLayout); |
1139 ADD_BOOLEAN_BITFIELD(needsPositionedMovementLayout, NeedsPositionedMovem
entLayout); | 1147 ADD_BOOLEAN_BITFIELD(needsPositionedMovementLayout, NeedsPositionedMovem
entLayout); |
1140 ADD_BOOLEAN_BITFIELD(normalChildNeedsLayout, NormalChildNeedsLayout); | 1148 ADD_BOOLEAN_BITFIELD(normalChildNeedsLayout, NormalChildNeedsLayout); |
1141 ADD_BOOLEAN_BITFIELD(posChildNeedsLayout, PosChildNeedsLayout); | 1149 ADD_BOOLEAN_BITFIELD(posChildNeedsLayout, PosChildNeedsLayout); |
1142 ADD_BOOLEAN_BITFIELD(needsSimplifiedNormalFlowLayout, NeedsSimplifiedNor
malFlowLayout); | 1150 ADD_BOOLEAN_BITFIELD(needsSimplifiedNormalFlowLayout, NeedsSimplifiedNor
malFlowLayout); |
1143 ADD_BOOLEAN_BITFIELD(preferredLogicalWidthsDirty, PreferredLogicalWidths
Dirty); | 1151 ADD_BOOLEAN_BITFIELD(preferredLogicalWidthsDirty, PreferredLogicalWidths
Dirty); |
1144 ADD_BOOLEAN_BITFIELD(floating, Floating); | 1152 ADD_BOOLEAN_BITFIELD(floating, Floating); |
1145 | 1153 |
1146 ADD_BOOLEAN_BITFIELD(isAnonymous, IsAnonymous); | 1154 ADD_BOOLEAN_BITFIELD(isAnonymous, IsAnonymous); |
1147 ADD_BOOLEAN_BITFIELD(isText, IsText); | 1155 ADD_BOOLEAN_BITFIELD(isText, IsText); |
1148 ADD_BOOLEAN_BITFIELD(isBox, IsBox); | 1156 ADD_BOOLEAN_BITFIELD(isBox, IsBox); |
(...skipping 265 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1414 void showTree(const WebCore::RenderObject*); | 1422 void showTree(const WebCore::RenderObject*); |
1415 void showLineTree(const WebCore::RenderObject*); | 1423 void showLineTree(const WebCore::RenderObject*); |
1416 void showRenderTree(const WebCore::RenderObject* object1); | 1424 void showRenderTree(const WebCore::RenderObject* object1); |
1417 // We don't make object2 an optional parameter so that showRenderTree | 1425 // We don't make object2 an optional parameter so that showRenderTree |
1418 // can be called from gdb easily. | 1426 // can be called from gdb easily. |
1419 void showRenderTree(const WebCore::RenderObject* object1, const WebCore::RenderO
bject* object2); | 1427 void showRenderTree(const WebCore::RenderObject* object1, const WebCore::RenderO
bject* object2); |
1420 | 1428 |
1421 #endif | 1429 #endif |
1422 | 1430 |
1423 #endif // RenderObject_h | 1431 #endif // RenderObject_h |
OLD | NEW |