| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2012 Apple Inc. All rights reserved. | 2 * Copyright (C) 2012 Apple Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
| 6 * are met: | 6 * are met: |
| 7 * 1. Redistributions of source code must retain the above copyright | 7 * 1. Redistributions of source code must retain the above copyright |
| 8 * notice, this list of conditions and the following disclaimer. | 8 * notice, this list of conditions and the following disclaimer. |
| 9 * 2. Redistributions in binary form must reproduce the above copyright | 9 * 2. Redistributions in binary form must reproduce the above copyright |
| 10 * notice, this list of conditions and the following disclaimer in the | 10 * notice, this list of conditions and the following disclaimer in the |
| (...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 61 bool hasChildren() const { return !m_flowThreadChildList.isEmpty(); } | 61 bool hasChildren() const { return !m_flowThreadChildList.isEmpty(); } |
| 62 #ifndef NDEBUG | 62 #ifndef NDEBUG |
| 63 bool hasChild(RenderObject* child) const { return m_flowThreadChildList.cont
ains(child); } | 63 bool hasChild(RenderObject* child) const { return m_flowThreadChildList.cont
ains(child); } |
| 64 #endif | 64 #endif |
| 65 | 65 |
| 66 void pushDependencies(RenderNamedFlowThreadList&); | 66 void pushDependencies(RenderNamedFlowThreadList&); |
| 67 | 67 |
| 68 virtual void addRegionToThread(RenderRegion*) OVERRIDE; | 68 virtual void addRegionToThread(RenderRegion*) OVERRIDE; |
| 69 virtual void removeRegionFromThread(RenderRegion*) OVERRIDE; | 69 virtual void removeRegionFromThread(RenderRegion*) OVERRIDE; |
| 70 | 70 |
| 71 virtual void regionChangedWritingMode(RenderRegion*) OVERRIDE; |
| 72 |
| 71 bool overset() const { return m_overset; } | 73 bool overset() const { return m_overset; } |
| 72 void computeOversetStateForRegions(LayoutUnit oldClientAfterEdge); | 74 void computeOversetStateForRegions(LayoutUnit oldClientAfterEdge); |
| 73 | 75 |
| 74 void registerNamedFlowContentNode(Node*); | 76 void registerNamedFlowContentNode(Node*); |
| 75 void unregisterNamedFlowContentNode(Node*); | 77 void unregisterNamedFlowContentNode(Node*); |
| 76 const NamedFlowContentNodes& contentNodes() const { return m_contentNodes; } | 78 const NamedFlowContentNodes& contentNodes() const { return m_contentNodes; } |
| 77 bool hasContentNode(Node* contentNode) const { ASSERT(contentNode); return m
_contentNodes.contains(contentNode); } | 79 bool hasContentNode(Node* contentNode) const { ASSERT(contentNode); return m
_contentNodes.contains(contentNode); } |
| 78 bool isMarkedForDestruction() const; | 80 bool isMarkedForDestruction() const; |
| 79 void getRanges(Vector<RefPtr<Range> >&, const RenderRegion*) const; | 81 void getRanges(Vector<RefPtr<Range> >&, const RenderRegion*) const; |
| 80 | 82 |
| (...skipping 16 matching lines...) Expand all Loading... |
| 97 void removeDependencyOnFlowThread(RenderNamedFlowThread*); | 99 void removeDependencyOnFlowThread(RenderNamedFlowThread*); |
| 98 | 100 |
| 99 void addRegionToNamedFlowThread(RenderRegion*); | 101 void addRegionToNamedFlowThread(RenderRegion*); |
| 100 | 102 |
| 101 void checkInvalidRegions(); | 103 void checkInvalidRegions(); |
| 102 | 104 |
| 103 bool canBeDestroyed() const { return m_invalidRegionList.isEmpty() && m_regi
onList.isEmpty() && m_contentNodes.isEmpty(); } | 105 bool canBeDestroyed() const { return m_invalidRegionList.isEmpty() && m_regi
onList.isEmpty() && m_contentNodes.isEmpty(); } |
| 104 void regionLayoutUpdateEventTimerFired(Timer<RenderNamedFlowThread>*); | 106 void regionLayoutUpdateEventTimerFired(Timer<RenderNamedFlowThread>*); |
| 105 void regionOversetChangeEventTimerFired(Timer<RenderNamedFlowThread>*); | 107 void regionOversetChangeEventTimerFired(Timer<RenderNamedFlowThread>*); |
| 106 void clearContentNodes(); | 108 void clearContentNodes(); |
| 109 void updateWritingMode(); |
| 107 | 110 |
| 108 private: | 111 private: |
| 109 // Observer flow threads have invalid regions that depend on the state of th
is thread | 112 // Observer flow threads have invalid regions that depend on the state of th
is thread |
| 110 // to re-validate their regions. Keeping a set of observer threads make it e
asy | 113 // to re-validate their regions. Keeping a set of observer threads make it e
asy |
| 111 // to notify them when a region was removed from this flow. | 114 // to notify them when a region was removed from this flow. |
| 112 RenderNamedFlowThreadCountedSet m_observerThreadsSet; | 115 RenderNamedFlowThreadCountedSet m_observerThreadsSet; |
| 113 | 116 |
| 114 // Some threads need to have a complete layout before we layout this flow. | 117 // Some threads need to have a complete layout before we layout this flow. |
| 115 // That's because they contain a RenderRegion that should display this threa
d. The set makes it | 118 // That's because they contain a RenderRegion that should display this threa
d. The set makes it |
| 116 // easy to sort the order of threads layout. | 119 // easy to sort the order of threads layout. |
| (...skipping 28 matching lines...) Expand all Loading... |
| 145 return static_cast<const RenderNamedFlowThread*>(object); | 148 return static_cast<const RenderNamedFlowThread*>(object); |
| 146 } | 149 } |
| 147 | 150 |
| 148 // This will catch anyone doing an unnecessary cast. | 151 // This will catch anyone doing an unnecessary cast. |
| 149 void toRenderNamedFlowThread(const RenderNamedFlowThread*); | 152 void toRenderNamedFlowThread(const RenderNamedFlowThread*); |
| 150 | 153 |
| 151 } // namespace WebCore | 154 } // namespace WebCore |
| 152 | 155 |
| 153 #endif // RenderNamedFlowThread_h | 156 #endif // RenderNamedFlowThread_h |
| 154 | 157 |
| OLD | NEW |