OLD | NEW |
1 // Copyright 2011 The Chromium Authors. All rights reserved. | 1 // Copyright 2011 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "config.h" | 5 #include "config.h" |
6 | 6 |
7 #include "CCLayerImpl.h" | 7 #include "CCLayerImpl.h" |
8 | 8 |
9 #include "base/stringprintf.h" | 9 #include "base/stringprintf.h" |
10 #include "CCDebugBorderDrawQuad.h" | 10 #include "CCDebugBorderDrawQuad.h" |
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
47 , m_isContainerForFixedPositionLayers(false) | 47 , m_isContainerForFixedPositionLayers(false) |
48 , m_fixedToContainerLayer(false) | 48 , m_fixedToContainerLayer(false) |
49 , m_renderTarget(0) | 49 , m_renderTarget(0) |
50 , m_drawDepth(0) | 50 , m_drawDepth(0) |
51 , m_drawOpacity(0) | 51 , m_drawOpacity(0) |
52 , m_drawOpacityIsAnimating(false) | 52 , m_drawOpacityIsAnimating(false) |
53 , m_debugBorderColor(0) | 53 , m_debugBorderColor(0) |
54 , m_debugBorderWidth(0) | 54 , m_debugBorderWidth(0) |
55 , m_drawTransformIsAnimating(false) | 55 , m_drawTransformIsAnimating(false) |
56 , m_screenSpaceTransformIsAnimating(false) | 56 , m_screenSpaceTransformIsAnimating(false) |
57 #if CC_DCHECK_ENABLED() | 57 #ifndef NDEBUG |
58 , m_betweenWillDrawAndDidDraw(false) | 58 , m_betweenWillDrawAndDidDraw(false) |
59 #endif | 59 #endif |
60 , m_layerAnimationController(CCLayerAnimationController::create(this)) | 60 , m_layerAnimationController(CCLayerAnimationController::create(this)) |
61 { | 61 { |
62 DCHECK(CCProxy::isImplThread()); | 62 ASSERT(CCProxy::isImplThread()); |
63 DCHECK(m_layerId > 0); | 63 ASSERT(m_layerId > 0); |
64 } | 64 } |
65 | 65 |
66 CCLayerImpl::~CCLayerImpl() | 66 CCLayerImpl::~CCLayerImpl() |
67 { | 67 { |
68 DCHECK(CCProxy::isImplThread()); | 68 ASSERT(CCProxy::isImplThread()); |
69 DCHECK(!m_betweenWillDrawAndDidDraw); | 69 #ifndef NDEBUG |
| 70 ASSERT(!m_betweenWillDrawAndDidDraw); |
| 71 #endif |
70 } | 72 } |
71 | 73 |
72 void CCLayerImpl::addChild(scoped_ptr<CCLayerImpl> child) | 74 void CCLayerImpl::addChild(scoped_ptr<CCLayerImpl> child) |
73 { | 75 { |
74 child->setParent(this); | 76 child->setParent(this); |
75 m_children.append(child.Pass()); | 77 m_children.append(child.Pass()); |
76 } | 78 } |
77 | 79 |
78 void CCLayerImpl::removeFromParent() | 80 void CCLayerImpl::removeFromParent() |
79 { | 81 { |
(...skipping 17 matching lines...) Expand all Loading... |
97 m_children[0]->removeFromParent(); | 99 m_children[0]->removeFromParent(); |
98 } | 100 } |
99 | 101 |
100 void CCLayerImpl::clearChildList() | 102 void CCLayerImpl::clearChildList() |
101 { | 103 { |
102 m_children.clear(); | 104 m_children.clear(); |
103 } | 105 } |
104 | 106 |
105 void CCLayerImpl::createRenderSurface() | 107 void CCLayerImpl::createRenderSurface() |
106 { | 108 { |
107 DCHECK(!m_renderSurface); | 109 ASSERT(!m_renderSurface); |
108 m_renderSurface = make_scoped_ptr(new CCRenderSurface(this)); | 110 m_renderSurface = make_scoped_ptr(new CCRenderSurface(this)); |
109 setRenderTarget(this); | 111 setRenderTarget(this); |
110 } | 112 } |
111 | 113 |
112 bool CCLayerImpl::descendantDrawsContent() | 114 bool CCLayerImpl::descendantDrawsContent() |
113 { | 115 { |
114 for (size_t i = 0; i < m_children.size(); ++i) { | 116 for (size_t i = 0; i < m_children.size(); ++i) { |
115 if (m_children[i]->drawsContent() || m_children[i]->descendantDrawsConte
nt()) | 117 if (m_children[i]->drawsContent() || m_children[i]->descendantDrawsConte
nt()) |
116 return true; | 118 return true; |
117 } | 119 } |
118 return false; | 120 return false; |
119 } | 121 } |
120 | 122 |
121 scoped_ptr<CCSharedQuadState> CCLayerImpl::createSharedQuadState() const | 123 scoped_ptr<CCSharedQuadState> CCLayerImpl::createSharedQuadState() const |
122 { | 124 { |
123 return CCSharedQuadState::create(m_drawTransform, m_visibleContentRect, m_dr
awableContentRect, m_drawOpacity, m_contentsOpaque); | 125 return CCSharedQuadState::create(m_drawTransform, m_visibleContentRect, m_dr
awableContentRect, m_drawOpacity, m_contentsOpaque); |
124 } | 126 } |
125 | 127 |
126 void CCLayerImpl::willDraw(CCResourceProvider*) | 128 void CCLayerImpl::willDraw(CCResourceProvider*) |
127 { | 129 { |
128 #if CC_DCHECK_ENABLED() | 130 #ifndef NDEBUG |
129 // willDraw/didDraw must be matched. | 131 // willDraw/didDraw must be matched. |
130 DCHECK(!m_betweenWillDrawAndDidDraw); | 132 ASSERT(!m_betweenWillDrawAndDidDraw); |
131 m_betweenWillDrawAndDidDraw = true; | 133 m_betweenWillDrawAndDidDraw = true; |
132 #endif | 134 #endif |
133 } | 135 } |
134 | 136 |
135 void CCLayerImpl::didDraw(CCResourceProvider*) | 137 void CCLayerImpl::didDraw(CCResourceProvider*) |
136 { | 138 { |
137 #if CC_DCHECK_ENABLED() | 139 #ifndef NDEBUG |
138 DCHECK(m_betweenWillDrawAndDidDraw); | 140 ASSERT(m_betweenWillDrawAndDidDraw); |
139 m_betweenWillDrawAndDidDraw = false; | 141 m_betweenWillDrawAndDidDraw = false; |
140 #endif | 142 #endif |
141 } | 143 } |
142 | 144 |
143 void CCLayerImpl::appendDebugBorderQuad(CCQuadSink& quadList, const CCSharedQuad
State* sharedQuadState, CCAppendQuadsData& appendQuadsData) const | 145 void CCLayerImpl::appendDebugBorderQuad(CCQuadSink& quadList, const CCSharedQuad
State* sharedQuadState, CCAppendQuadsData& appendQuadsData) const |
144 { | 146 { |
145 if (!hasDebugBorders()) | 147 if (!hasDebugBorders()) |
146 return; | 148 return; |
147 | 149 |
148 IntRect contentRect(IntPoint(), contentBounds()); | 150 IntRect contentRect(IntPoint(), contentBounds()); |
(...skipping 10 matching lines...) Expand all Loading... |
159 return CCRenderPass::Id(0, 0); | 161 return CCRenderPass::Id(0, 0); |
160 } | 162 } |
161 | 163 |
162 CCRenderPass::Id CCLayerImpl::nextContributingRenderPassId(CCRenderPass::Id) con
st | 164 CCRenderPass::Id CCLayerImpl::nextContributingRenderPassId(CCRenderPass::Id) con
st |
163 { | 165 { |
164 return CCRenderPass::Id(0, 0); | 166 return CCRenderPass::Id(0, 0); |
165 } | 167 } |
166 | 168 |
167 CCResourceProvider::ResourceId CCLayerImpl::contentsResourceId() const | 169 CCResourceProvider::ResourceId CCLayerImpl::contentsResourceId() const |
168 { | 170 { |
169 NOTREACHED(); | 171 ASSERT_NOT_REACHED(); |
170 return 0; | 172 return 0; |
171 } | 173 } |
172 | 174 |
173 FloatSize CCLayerImpl::scrollBy(const FloatSize& scroll) | 175 FloatSize CCLayerImpl::scrollBy(const FloatSize& scroll) |
174 { | 176 { |
175 IntSize minDelta = -toSize(m_scrollPosition); | 177 IntSize minDelta = -toSize(m_scrollPosition); |
176 IntSize maxDelta = m_maxScrollPosition - toSize(m_scrollPosition); | 178 IntSize maxDelta = m_maxScrollPosition - toSize(m_scrollPosition); |
177 // Clamp newDelta so that position + delta stays within scroll bounds. | 179 // Clamp newDelta so that position + delta stays within scroll bounds. |
178 FloatSize newDelta = (m_scrollDelta + scroll).expandedTo(minDelta).shrunkTo(
maxDelta); | 180 FloatSize newDelta = (m_scrollDelta + scroll).expandedTo(minDelta).shrunkTo(
maxDelta); |
179 FloatSize unscrolled = m_scrollDelta + scroll - newDelta; | 181 FloatSize unscrolled = m_scrollDelta + scroll - newDelta; |
(...skipping 489 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
669 | 671 |
670 void CCLayerImpl::setVerticalScrollbarLayer(CCScrollbarLayerImpl* scrollbarLayer
) | 672 void CCLayerImpl::setVerticalScrollbarLayer(CCScrollbarLayerImpl* scrollbarLayer
) |
671 { | 673 { |
672 if (!m_scrollbarAnimationController) | 674 if (!m_scrollbarAnimationController) |
673 m_scrollbarAnimationController = CCScrollbarAnimationController::create(
this); | 675 m_scrollbarAnimationController = CCScrollbarAnimationController::create(
this); |
674 m_scrollbarAnimationController->setVerticalScrollbarLayer(scrollbarLayer); | 676 m_scrollbarAnimationController->setVerticalScrollbarLayer(scrollbarLayer); |
675 m_scrollbarAnimationController->updateScrollOffset(this); | 677 m_scrollbarAnimationController->updateScrollOffset(this); |
676 } | 678 } |
677 | 679 |
678 } | 680 } |
OLD | NEW |