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 "cc/render_surface_impl.h" | 5 #include "cc/render_surface_impl.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 | 8 |
9 #include "base/logging.h" | 9 #include "base/logging.h" |
10 #include "base/stringprintf.h" | 10 #include "base/stringprintf.h" |
(...skipping 168 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
179 return RenderPass::Id(layerId, subId); | 179 return RenderPass::Id(layerId, subId); |
180 } | 180 } |
181 | 181 |
182 void RenderSurfaceImpl::appendRenderPasses(RenderPassSink& passSink) | 182 void RenderSurfaceImpl::appendRenderPasses(RenderPassSink& passSink) |
183 { | 183 { |
184 for (size_t i = 0; i < m_contributingDelegatedRenderPassLayerList.size(); ++
i) | 184 for (size_t i = 0; i < m_contributingDelegatedRenderPassLayerList.size(); ++
i) |
185 m_contributingDelegatedRenderPassLayerList[i]->appendContributingRenderP
asses(passSink); | 185 m_contributingDelegatedRenderPassLayerList[i]->appendContributingRenderP
asses(passSink); |
186 | 186 |
187 scoped_ptr<RenderPass> pass = RenderPass::Create(); | 187 scoped_ptr<RenderPass> pass = RenderPass::Create(); |
188 pass->SetNew(renderPassId(), m_contentRect, m_damageTracker->currentDamageRe
ct(), m_screenSpaceTransform); | 188 pass->SetNew(renderPassId(), m_contentRect, m_damageTracker->currentDamageRe
ct(), m_screenSpaceTransform); |
189 pass->filters = m_owningLayer->filters(); | |
190 pass->filter = m_owningLayer->filter(); | |
191 pass->background_filters = m_owningLayer->backgroundFilters(); | |
192 passSink.appendRenderPass(pass.Pass()); | 189 passSink.appendRenderPass(pass.Pass()); |
193 } | 190 } |
194 | 191 |
195 void RenderSurfaceImpl::appendQuads(QuadSink& quadSink, AppendQuadsData& appendQ
uadsData, bool forReplica, RenderPass::Id renderPassId) | 192 void RenderSurfaceImpl::appendQuads(QuadSink& quadSink, AppendQuadsData& appendQ
uadsData, bool forReplica, RenderPass::Id renderPassId) |
196 { | 193 { |
197 DCHECK(!forReplica || m_owningLayer->hasReplica()); | 194 DCHECK(!forReplica || m_owningLayer->hasReplica()); |
198 | 195 |
199 gfx::Rect clippedRectInTarget = computeClippedRectInTarget(m_owningLayer); | 196 gfx::Rect clippedRectInTarget = computeClippedRectInTarget(m_owningLayer); |
200 const gfx::Transform& drawTransform = forReplica ? m_replicaDrawTransform :
m_drawTransform; | 197 const gfx::Transform& drawTransform = forReplica ? m_replicaDrawTransform :
m_drawTransform; |
201 SharedQuadState* sharedQuadState = quadSink.useSharedQuadState(SharedQuadSta
te::Create()); | 198 SharedQuadState* sharedQuadState = quadSink.useSharedQuadState(SharedQuadSta
te::Create()); |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
233 maskUVRect = gfx::RectF(static_cast<float>(contentRect().x()) / contentR
ect().width() * scaleX, | 230 maskUVRect = gfx::RectF(static_cast<float>(contentRect().x()) / contentR
ect().width() * scaleX, |
234 static_cast<float>(contentRect().y()) / contentR
ect().height() * scaleY, | 231 static_cast<float>(contentRect().y()) / contentR
ect().height() * scaleY, |
235 scaleX, | 232 scaleX, |
236 scaleY); | 233 scaleY); |
237 } | 234 } |
238 | 235 |
239 ResourceProvider::ResourceId maskResourceId = maskLayer ? maskLayer->content
sResourceId() : 0; | 236 ResourceProvider::ResourceId maskResourceId = maskLayer ? maskLayer->content
sResourceId() : 0; |
240 gfx::Rect contentsChangedSinceLastFrame = contentsChanged() ? m_contentRect
: gfx::Rect(); | 237 gfx::Rect contentsChangedSinceLastFrame = contentsChanged() ? m_contentRect
: gfx::Rect(); |
241 | 238 |
242 scoped_ptr<RenderPassDrawQuad> quad = RenderPassDrawQuad::Create(); | 239 scoped_ptr<RenderPassDrawQuad> quad = RenderPassDrawQuad::Create(); |
243 quad->SetNew(sharedQuadState, contentRect(), renderPassId, forReplica, maskR
esourceId, contentsChangedSinceLastFrame, maskUVRect); | 240 quad->SetNew(sharedQuadState, contentRect(), renderPassId, forReplica, maskR
esourceId, contentsChangedSinceLastFrame, maskUVRect, m_owningLayer->filters(),
m_owningLayer->filter(), m_owningLayer->backgroundFilters()); |
244 quadSink.append(quad.PassAs<DrawQuad>(), appendQuadsData); | 241 quadSink.append(quad.PassAs<DrawQuad>(), appendQuadsData); |
245 } | 242 } |
246 | 243 |
247 } // namespace cc | 244 } // namespace cc |
OLD | NEW |