OLD | NEW |
1 // Copyright 2012 The Chromium Authors. All rights reserved. | 1 // Copyright 2012 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/layers/layer_impl.h" | 5 #include "cc/layers/layer_impl.h" |
6 | 6 |
7 #include "base/json/json_reader.h" | 7 #include "base/json/json_reader.h" |
8 #include "base/strings/stringprintf.h" | 8 #include "base/strings/stringprintf.h" |
9 #include "base/trace_event/trace_event.h" | 9 #include "base/trace_event/trace_event.h" |
10 #include "base/trace_event/trace_event_argument.h" | 10 #include "base/trace_event/trace_event_argument.h" |
(...skipping 243 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
254 } | 254 } |
255 | 255 |
256 void LayerImpl::PopulateSharedQuadState(SharedQuadState* state) const { | 256 void LayerImpl::PopulateSharedQuadState(SharedQuadState* state) const { |
257 state->SetAll( | 257 state->SetAll( |
258 draw_properties_.target_space_transform, draw_properties_.content_bounds, | 258 draw_properties_.target_space_transform, draw_properties_.content_bounds, |
259 draw_properties_.visible_content_rect, draw_properties_.clip_rect, | 259 draw_properties_.visible_content_rect, draw_properties_.clip_rect, |
260 draw_properties_.is_clipped, draw_properties_.opacity, | 260 draw_properties_.is_clipped, draw_properties_.opacity, |
261 draw_properties_.blend_mode, sorting_context_id_); | 261 draw_properties_.blend_mode, sorting_context_id_); |
262 } | 262 } |
263 | 263 |
264 void LayerImpl::PopulateScaledSharedQuadState(SharedQuadState* state, | |
265 float scale) const { | |
266 gfx::Transform scaled_draw_transform = | |
267 draw_properties_.target_space_transform; | |
268 scaled_draw_transform.Scale(SK_MScalar1 / scale, SK_MScalar1 / scale); | |
269 gfx::Size scaled_content_bounds = | |
270 gfx::ToCeiledSize(gfx::ScaleSize(bounds(), scale)); | |
271 gfx::Rect scaled_visible_content_rect = | |
272 gfx::ScaleToEnclosingRect(visible_content_rect(), scale); | |
273 scaled_visible_content_rect.Intersect(gfx::Rect(scaled_content_bounds)); | |
274 | |
275 state->SetAll(scaled_draw_transform, scaled_content_bounds, | |
276 scaled_visible_content_rect, draw_properties().clip_rect, | |
277 draw_properties().is_clipped, draw_properties().opacity, | |
278 draw_properties().blend_mode, sorting_context_id_); | |
279 } | |
280 | |
281 bool LayerImpl::WillDraw(DrawMode draw_mode, | 264 bool LayerImpl::WillDraw(DrawMode draw_mode, |
282 ResourceProvider* resource_provider) { | 265 ResourceProvider* resource_provider) { |
283 // WillDraw/DidDraw must be matched. | 266 // WillDraw/DidDraw must be matched. |
284 DCHECK_NE(DRAW_MODE_NONE, draw_mode); | 267 DCHECK_NE(DRAW_MODE_NONE, draw_mode); |
285 DCHECK_EQ(DRAW_MODE_NONE, current_draw_mode_); | 268 DCHECK_EQ(DRAW_MODE_NONE, current_draw_mode_); |
286 current_draw_mode_ = draw_mode; | 269 current_draw_mode_ = draw_mode; |
287 return true; | 270 return true; |
288 } | 271 } |
289 | 272 |
290 void LayerImpl::DidDraw(ResourceProvider* resource_provider) { | 273 void LayerImpl::DidDraw(ResourceProvider* resource_provider) { |
(...skipping 1282 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1573 SetNeedsPushProperties(); | 1556 SetNeedsPushProperties(); |
1574 layer_tree_impl()->set_needs_update_draw_properties(); | 1557 layer_tree_impl()->set_needs_update_draw_properties(); |
1575 if (should_have_render_surface) { | 1558 if (should_have_render_surface) { |
1576 render_surface_ = make_scoped_ptr(new RenderSurfaceImpl(this)); | 1559 render_surface_ = make_scoped_ptr(new RenderSurfaceImpl(this)); |
1577 return; | 1560 return; |
1578 } | 1561 } |
1579 render_surface_.reset(); | 1562 render_surface_.reset(); |
1580 } | 1563 } |
1581 | 1564 |
1582 } // namespace cc | 1565 } // namespace cc |
OLD | NEW |