| 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. | 6 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2012 Apple Inc. |
| 7 * All rights reserved. | 7 * All rights reserved. |
| 8 * Copyright (C) 2009 Google Inc. All rights reserved. | 8 * Copyright (C) 2009 Google Inc. All rights reserved. |
| 9 * | 9 * |
| 10 * This library is free software; you can redistribute it and/or | 10 * This library is free software; you can redistribute it and/or |
| (...skipping 996 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1007 | 1007 |
| 1008 // Subclasses must reimplement this method to compute the size and position | 1008 // Subclasses must reimplement this method to compute the size and position |
| 1009 // of this object and all its descendants. | 1009 // of this object and all its descendants. |
| 1010 // | 1010 // |
| 1011 // By default, layout only lays out the children that are marked for layout. | 1011 // By default, layout only lays out the children that are marked for layout. |
| 1012 // In some cases, layout has to force laying out more children. An example is | 1012 // In some cases, layout has to force laying out more children. An example is |
| 1013 // when the width of the LayoutObject changes as this impacts children with | 1013 // when the width of the LayoutObject changes as this impacts children with |
| 1014 // 'width' set to auto. | 1014 // 'width' set to auto. |
| 1015 virtual void layout() = 0; | 1015 virtual void layout() = 0; |
| 1016 virtual bool updateImageLoadingPriorities() { return false; } | 1016 virtual bool updateImageLoadingPriorities() { return false; } |
| 1017 void setHasPendingResourceUpdate(bool hasPendingResourceUpdate) { | |
| 1018 m_bitfields.setHasPendingResourceUpdate(hasPendingResourceUpdate); | |
| 1019 } | |
| 1020 bool hasPendingResourceUpdate() const { | |
| 1021 return m_bitfields.hasPendingResourceUpdate(); | |
| 1022 } | |
| 1023 | 1017 |
| 1024 void handleSubtreeModifications(); | 1018 void handleSubtreeModifications(); |
| 1025 virtual void subtreeDidChange() {} | 1019 virtual void subtreeDidChange() {} |
| 1026 | 1020 |
| 1027 // Flags used to mark if an object consumes subtree change notifications. | 1021 // Flags used to mark if an object consumes subtree change notifications. |
| 1028 bool consumesSubtreeChangeNotification() const { | 1022 bool consumesSubtreeChangeNotification() const { |
| 1029 return m_bitfields.consumesSubtreeChangeNotification(); | 1023 return m_bitfields.consumesSubtreeChangeNotification(); |
| 1030 } | 1024 } |
| 1031 void setConsumesSubtreeChangeNotification() { | 1025 void setConsumesSubtreeChangeNotification() { |
| 1032 m_bitfields.setConsumesSubtreeChangeNotification(true); | 1026 m_bitfields.setConsumesSubtreeChangeNotification(true); |
| (...skipping 1067 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2100 m_isInline(true), | 2094 m_isInline(true), |
| 2101 m_isAtomicInlineLevel(false), | 2095 m_isAtomicInlineLevel(false), |
| 2102 m_horizontalWritingMode(true), | 2096 m_horizontalWritingMode(true), |
| 2103 m_hasLayer(false), | 2097 m_hasLayer(false), |
| 2104 m_hasOverflowClip(false), | 2098 m_hasOverflowClip(false), |
| 2105 m_hasTransformRelatedProperty(false), | 2099 m_hasTransformRelatedProperty(false), |
| 2106 m_hasReflection(false), | 2100 m_hasReflection(false), |
| 2107 m_hasCounterNodeMap(false), | 2101 m_hasCounterNodeMap(false), |
| 2108 m_everHadLayout(false), | 2102 m_everHadLayout(false), |
| 2109 m_ancestorLineBoxDirty(false), | 2103 m_ancestorLineBoxDirty(false), |
| 2110 m_hasPendingResourceUpdate(false), | |
| 2111 m_isInsideFlowThread(false), | 2104 m_isInsideFlowThread(false), |
| 2112 m_subtreeChangeListenerRegistered(false), | 2105 m_subtreeChangeListenerRegistered(false), |
| 2113 m_notifiedOfSubtreeChange(false), | 2106 m_notifiedOfSubtreeChange(false), |
| 2114 m_consumesSubtreeChangeNotification(false), | 2107 m_consumesSubtreeChangeNotification(false), |
| 2115 m_childrenInline(false), | 2108 m_childrenInline(false), |
| 2116 m_containsInlineWithOutlineAndContinuation(false), | 2109 m_containsInlineWithOutlineAndContinuation(false), |
| 2117 m_alwaysCreateLineBoxesForLayoutInline(false), | 2110 m_alwaysCreateLineBoxesForLayoutInline(false), |
| 2118 m_previousBackgroundObscured(false), | 2111 m_previousBackgroundObscured(false), |
| 2119 m_isBackgroundAttachmentFixedObject(false), | 2112 m_isBackgroundAttachmentFixedObject(false), |
| 2120 m_isScrollAnchorObject(false), | 2113 m_isScrollAnchorObject(false), |
| 2121 m_scrollAnchorDisablingStyleChanged(false), | 2114 m_scrollAnchorDisablingStyleChanged(false), |
| 2122 m_hasBoxDecorationBackground(false), | 2115 m_hasBoxDecorationBackground(false), |
| 2123 m_positionedState(IsStaticallyPositioned), | 2116 m_positionedState(IsStaticallyPositioned), |
| 2124 m_selectionState(SelectionNone), | 2117 m_selectionState(SelectionNone), |
| 2125 m_backgroundObscurationState(BackgroundObscurationStatusInvalid), | 2118 m_backgroundObscurationState(BackgroundObscurationStatusInvalid), |
| 2126 m_fullPaintInvalidationReason(PaintInvalidationNone) {} | 2119 m_fullPaintInvalidationReason(PaintInvalidationNone) {} |
| 2127 | 2120 |
| 2128 // 32 bits have been used in the first word, and 18 in the second. | 2121 // 32 bits have been used in the first word, and 19 in the second. |
| 2129 | 2122 |
| 2130 // Self needs layout means that this layout object is marked for a full | 2123 // Self needs layout means that this layout object is marked for a full |
| 2131 // layout. This is the default layout but it is expensive as it recomputes | 2124 // layout. This is the default layout but it is expensive as it recomputes |
| 2132 // everything. For CSS boxes, this includes the width (laying out the line | 2125 // everything. For CSS boxes, this includes the width (laying out the line |
| 2133 // boxes again), the margins (due to block collapsing margins), the | 2126 // boxes again), the margins (due to block collapsing margins), the |
| 2134 // positions, the height and the potential overflow. | 2127 // positions, the height and the potential overflow. |
| 2135 ADD_BOOLEAN_BITFIELD(selfNeedsLayout, SelfNeedsLayout); | 2128 ADD_BOOLEAN_BITFIELD(selfNeedsLayout, SelfNeedsLayout); |
| 2136 | 2129 |
| 2137 // A positioned movement layout is a specialized type of layout used on | 2130 // A positioned movement layout is a specialized type of layout used on |
| 2138 // positioned objects that only visually moved. This layout is used when | 2131 // positioned objects that only visually moved. This layout is used when |
| (...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2239 ADD_BOOLEAN_BITFIELD(hasReflection, HasReflection); | 2232 ADD_BOOLEAN_BITFIELD(hasReflection, HasReflection); |
| 2240 | 2233 |
| 2241 // This boolean is used to know if this LayoutObject has one (or more) | 2234 // This boolean is used to know if this LayoutObject has one (or more) |
| 2242 // associated CounterNode(s). | 2235 // associated CounterNode(s). |
| 2243 // See class comment in LayoutCounter.h for more detail. | 2236 // See class comment in LayoutCounter.h for more detail. |
| 2244 ADD_BOOLEAN_BITFIELD(hasCounterNodeMap, HasCounterNodeMap); | 2237 ADD_BOOLEAN_BITFIELD(hasCounterNodeMap, HasCounterNodeMap); |
| 2245 | 2238 |
| 2246 ADD_BOOLEAN_BITFIELD(everHadLayout, EverHadLayout); | 2239 ADD_BOOLEAN_BITFIELD(everHadLayout, EverHadLayout); |
| 2247 ADD_BOOLEAN_BITFIELD(ancestorLineBoxDirty, AncestorLineBoxDirty); | 2240 ADD_BOOLEAN_BITFIELD(ancestorLineBoxDirty, AncestorLineBoxDirty); |
| 2248 | 2241 |
| 2249 ADD_BOOLEAN_BITFIELD(hasPendingResourceUpdate, HasPendingResourceUpdate); | |
| 2250 | |
| 2251 ADD_BOOLEAN_BITFIELD(isInsideFlowThread, IsInsideFlowThread); | 2242 ADD_BOOLEAN_BITFIELD(isInsideFlowThread, IsInsideFlowThread); |
| 2252 | 2243 |
| 2253 ADD_BOOLEAN_BITFIELD(subtreeChangeListenerRegistered, | 2244 ADD_BOOLEAN_BITFIELD(subtreeChangeListenerRegistered, |
| 2254 SubtreeChangeListenerRegistered); | 2245 SubtreeChangeListenerRegistered); |
| 2255 ADD_BOOLEAN_BITFIELD(notifiedOfSubtreeChange, NotifiedOfSubtreeChange); | 2246 ADD_BOOLEAN_BITFIELD(notifiedOfSubtreeChange, NotifiedOfSubtreeChange); |
| 2256 ADD_BOOLEAN_BITFIELD(consumesSubtreeChangeNotification, | 2247 ADD_BOOLEAN_BITFIELD(consumesSubtreeChangeNotification, |
| 2257 ConsumesSubtreeChangeNotification); | 2248 ConsumesSubtreeChangeNotification); |
| 2258 | 2249 |
| 2259 // from LayoutBlock | 2250 // from LayoutBlock |
| 2260 ADD_BOOLEAN_BITFIELD(childrenInline, ChildrenInline); | 2251 ADD_BOOLEAN_BITFIELD(childrenInline, ChildrenInline); |
| (...skipping 336 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2597 CORE_EXPORT void showLineTree(const blink::LayoutObject*); | 2588 CORE_EXPORT void showLineTree(const blink::LayoutObject*); |
| 2598 CORE_EXPORT void showLayoutTree(const blink::LayoutObject* object1); | 2589 CORE_EXPORT void showLayoutTree(const blink::LayoutObject* object1); |
| 2599 // We don't make object2 an optional parameter so that showLayoutTree | 2590 // We don't make object2 an optional parameter so that showLayoutTree |
| 2600 // can be called from gdb easily. | 2591 // can be called from gdb easily. |
| 2601 CORE_EXPORT void showLayoutTree(const blink::LayoutObject* object1, | 2592 CORE_EXPORT void showLayoutTree(const blink::LayoutObject* object1, |
| 2602 const blink::LayoutObject* object2); | 2593 const blink::LayoutObject* object2); |
| 2603 | 2594 |
| 2604 #endif | 2595 #endif |
| 2605 | 2596 |
| 2606 #endif // LayoutObject_h | 2597 #endif // LayoutObject_h |
| OLD | NEW |