| 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/output/software_renderer.h" | 5 #include "cc/output/software_renderer.h" |
| 6 | 6 |
| 7 #include <stdint.h> | 7 #include <stdint.h> |
| 8 | 8 |
| 9 #include "base/bind.h" | 9 #include "base/bind.h" |
| 10 #include "base/memory/ptr_util.h" | 10 #include "base/memory/ptr_util.h" |
| (...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 98 gfx::Rect visible_rect(gfx::Point(1, 2), gfx::Size(98, 97)); | 98 gfx::Rect visible_rect(gfx::Point(1, 2), gfx::Size(98, 97)); |
| 99 | 99 |
| 100 InitializeRenderer(base::WrapUnique(new SoftwareOutputDevice)); | 100 InitializeRenderer(base::WrapUnique(new SoftwareOutputDevice)); |
| 101 | 101 |
| 102 RenderPassId root_render_pass_id = RenderPassId(1, 1); | 102 RenderPassId root_render_pass_id = RenderPassId(1, 1); |
| 103 std::unique_ptr<RenderPass> root_render_pass = RenderPass::Create(); | 103 std::unique_ptr<RenderPass> root_render_pass = RenderPass::Create(); |
| 104 root_render_pass->SetNew( | 104 root_render_pass->SetNew( |
| 105 root_render_pass_id, outer_rect, outer_rect, gfx::Transform()); | 105 root_render_pass_id, outer_rect, outer_rect, gfx::Transform()); |
| 106 SharedQuadState* shared_quad_state = | 106 SharedQuadState* shared_quad_state = |
| 107 root_render_pass->CreateAndAppendSharedQuadState(); | 107 root_render_pass->CreateAndAppendSharedQuadState(); |
| 108 shared_quad_state->SetAll(gfx::Transform(), | 108 shared_quad_state->SetAll(gfx::Transform(), outer_size, outer_rect, |
| 109 outer_size, | 109 outer_rect, false, 1.0, SkBlendMode::kSrcOver, 0); |
| 110 outer_rect, | |
| 111 outer_rect, | |
| 112 false, | |
| 113 1.0, | |
| 114 SkXfermode::kSrcOver_Mode, | |
| 115 0); | |
| 116 SolidColorDrawQuad* inner_quad = | 110 SolidColorDrawQuad* inner_quad = |
| 117 root_render_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); | 111 root_render_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); |
| 118 inner_quad->SetNew( | 112 inner_quad->SetNew( |
| 119 shared_quad_state, inner_rect, inner_rect, SK_ColorCYAN, false); | 113 shared_quad_state, inner_rect, inner_rect, SK_ColorCYAN, false); |
| 120 inner_quad->visible_rect = visible_rect; | 114 inner_quad->visible_rect = visible_rect; |
| 121 SolidColorDrawQuad* outer_quad = | 115 SolidColorDrawQuad* outer_quad = |
| 122 root_render_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); | 116 root_render_pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>(); |
| 123 outer_quad->SetNew( | 117 outer_quad->SetNew( |
| 124 shared_quad_state, outer_rect, outer_rect, SK_ColorYELLOW, false); | 118 shared_quad_state, outer_rect, outer_rect, SK_ColorYELLOW, false); |
| 125 | 119 |
| (...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 170 resource_cyan, static_cast<uint8_t*>(cyan_tile.getPixels()), inner_size); | 164 resource_cyan, static_cast<uint8_t*>(cyan_tile.getPixels()), inner_size); |
| 171 | 165 |
| 172 gfx::Rect root_rect = outer_rect; | 166 gfx::Rect root_rect = outer_rect; |
| 173 | 167 |
| 174 RenderPassId root_render_pass_id = RenderPassId(1, 1); | 168 RenderPassId root_render_pass_id = RenderPassId(1, 1); |
| 175 std::unique_ptr<RenderPass> root_render_pass = RenderPass::Create(); | 169 std::unique_ptr<RenderPass> root_render_pass = RenderPass::Create(); |
| 176 root_render_pass->SetNew( | 170 root_render_pass->SetNew( |
| 177 root_render_pass_id, root_rect, root_rect, gfx::Transform()); | 171 root_render_pass_id, root_rect, root_rect, gfx::Transform()); |
| 178 SharedQuadState* shared_quad_state = | 172 SharedQuadState* shared_quad_state = |
| 179 root_render_pass->CreateAndAppendSharedQuadState(); | 173 root_render_pass->CreateAndAppendSharedQuadState(); |
| 180 shared_quad_state->SetAll(gfx::Transform(), | 174 shared_quad_state->SetAll(gfx::Transform(), outer_size, outer_rect, |
| 181 outer_size, | 175 outer_rect, false, 1.0, SkBlendMode::kSrcOver, 0); |
| 182 outer_rect, | |
| 183 outer_rect, | |
| 184 false, | |
| 185 1.0, | |
| 186 SkXfermode::kSrcOver_Mode, | |
| 187 0); | |
| 188 TileDrawQuad* inner_quad = | 176 TileDrawQuad* inner_quad = |
| 189 root_render_pass->CreateAndAppendDrawQuad<TileDrawQuad>(); | 177 root_render_pass->CreateAndAppendDrawQuad<TileDrawQuad>(); |
| 190 inner_quad->SetNew(shared_quad_state, inner_rect, inner_rect, inner_rect, | 178 inner_quad->SetNew(shared_quad_state, inner_rect, inner_rect, inner_rect, |
| 191 resource_cyan, gfx::RectF(gfx::SizeF(inner_size)), | 179 resource_cyan, gfx::RectF(gfx::SizeF(inner_size)), |
| 192 inner_size, false, false); | 180 inner_size, false, false); |
| 193 TileDrawQuad* outer_quad = | 181 TileDrawQuad* outer_quad = |
| 194 root_render_pass->CreateAndAppendDrawQuad<TileDrawQuad>(); | 182 root_render_pass->CreateAndAppendDrawQuad<TileDrawQuad>(); |
| 195 outer_quad->SetNew(shared_quad_state, outer_rect, outer_rect, outer_rect, | 183 outer_quad->SetNew(shared_quad_state, outer_rect, outer_rect, outer_rect, |
| 196 resource_yellow, gfx::RectF(gfx::SizeF(outer_size)), | 184 resource_yellow, gfx::RectF(gfx::SizeF(outer_size)), |
| 197 outer_size, false, false); | 185 outer_size, false, false); |
| (...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 236 resource_cyan, static_cast<uint8_t*>(cyan_tile.getPixels()), tile_size); | 224 resource_cyan, static_cast<uint8_t*>(cyan_tile.getPixels()), tile_size); |
| 237 | 225 |
| 238 gfx::Rect root_rect(tile_size); | 226 gfx::Rect root_rect(tile_size); |
| 239 | 227 |
| 240 RenderPassId root_render_pass_id = RenderPassId(1, 1); | 228 RenderPassId root_render_pass_id = RenderPassId(1, 1); |
| 241 std::unique_ptr<RenderPass> root_render_pass = RenderPass::Create(); | 229 std::unique_ptr<RenderPass> root_render_pass = RenderPass::Create(); |
| 242 root_render_pass->SetNew( | 230 root_render_pass->SetNew( |
| 243 root_render_pass_id, root_rect, root_rect, gfx::Transform()); | 231 root_render_pass_id, root_rect, root_rect, gfx::Transform()); |
| 244 SharedQuadState* shared_quad_state = | 232 SharedQuadState* shared_quad_state = |
| 245 root_render_pass->CreateAndAppendSharedQuadState(); | 233 root_render_pass->CreateAndAppendSharedQuadState(); |
| 246 shared_quad_state->SetAll(gfx::Transform(), | 234 shared_quad_state->SetAll(gfx::Transform(), tile_size, tile_rect, tile_rect, |
| 247 tile_size, | 235 false, 1.0, SkBlendMode::kSrcOver, 0); |
| 248 tile_rect, | |
| 249 tile_rect, | |
| 250 false, | |
| 251 1.0, | |
| 252 SkXfermode::kSrcOver_Mode, | |
| 253 0); | |
| 254 TileDrawQuad* quad = | 236 TileDrawQuad* quad = |
| 255 root_render_pass->CreateAndAppendDrawQuad<TileDrawQuad>(); | 237 root_render_pass->CreateAndAppendDrawQuad<TileDrawQuad>(); |
| 256 quad->SetNew(shared_quad_state, tile_rect, tile_rect, tile_rect, | 238 quad->SetNew(shared_quad_state, tile_rect, tile_rect, tile_rect, |
| 257 resource_cyan, gfx::RectF(gfx::SizeF(tile_size)), tile_size, | 239 resource_cyan, gfx::RectF(gfx::SizeF(tile_size)), tile_size, |
| 258 false, false); | 240 false, false); |
| 259 quad->visible_rect = visible_rect; | 241 quad->visible_rect = visible_rect; |
| 260 | 242 |
| 261 RenderPassList list; | 243 RenderPassList list; |
| 262 list.push_back(std::move(root_render_pass)); | 244 list.push_back(std::move(root_render_pass)); |
| 263 | 245 |
| (...skipping 179 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 443 viewport_size); | 425 viewport_size); |
| 444 | 426 |
| 445 // The damage rect should be reported to the SoftwareOutputDevice. | 427 // The damage rect should be reported to the SoftwareOutputDevice. |
| 446 EXPECT_EQ(gfx::Rect(2, 2, 3, 3), device->damage_rect_at_start()); | 428 EXPECT_EQ(gfx::Rect(2, 2, 3, 3), device->damage_rect_at_start()); |
| 447 // The SkCanvas should be clipped to the damage rect. | 429 // The SkCanvas should be clipped to the damage rect. |
| 448 EXPECT_EQ(gfx::Rect(2, 2, 3, 3), device->clip_rect_at_end()); | 430 EXPECT_EQ(gfx::Rect(2, 2, 3, 3), device->clip_rect_at_end()); |
| 449 } | 431 } |
| 450 | 432 |
| 451 } // namespace | 433 } // namespace |
| 452 } // namespace cc | 434 } // namespace cc |
| OLD | NEW |