Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(17)

Side by Side Diff: cc/playback/display_list_raster_source_unittest.cc

Issue 1357423009: gfx: Make conversions from Size to SizeF be explicit. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: sizefconvert-gfx: . Created 5 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « cc/playback/display_item_list_unittest.cc ('k') | cc/test/layer_test_common.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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 "base/memory/scoped_ptr.h" 5 #include "base/memory/scoped_ptr.h"
6 #include "cc/playback/display_list_raster_source.h" 6 #include "cc/playback/display_list_raster_source.h"
7 #include "cc/test/fake_display_list_recording_source.h" 7 #include "cc/test/fake_display_list_recording_source.h"
8 #include "cc/test/skia_common.h" 8 #include "cc/test/skia_common.h"
9 #include "skia/ext/refptr.h" 9 #include "skia/ext/refptr.h"
10 #include "testing/gtest/include/gtest/gtest.h" 10 #include "testing/gtest/include/gtest/gtest.h"
(...skipping 245 matching lines...) Expand 10 before | Expand all | Expand 10 after
256 white_paint.setColor(SK_ColorWHITE); 256 white_paint.setColor(SK_ColorWHITE);
257 recording_source->add_draw_rect_with_paint(gfx::Rect(layer_bounds), 257 recording_source->add_draw_rect_with_paint(gfx::Rect(layer_bounds),
258 white_paint); 258 white_paint);
259 recording_source->Rerecord(); 259 recording_source->Rerecord();
260 260
261 scoped_refptr<DisplayListRasterSource> raster = 261 scoped_refptr<DisplayListRasterSource> raster =
262 DisplayListRasterSource::CreateFromDisplayListRecordingSource( 262 DisplayListRasterSource::CreateFromDisplayListRecordingSource(
263 recording_source.get(), false); 263 recording_source.get(), false);
264 264
265 gfx::Size content_bounds( 265 gfx::Size content_bounds(
266 gfx::ToCeiledSize(gfx::ScaleSize(layer_bounds, contents_scale))); 266 gfx::ScaleToCeiledSize(layer_bounds, contents_scale));
267 267
268 // Simulate drawing into different tiles at different offsets. 268 // Simulate drawing into different tiles at different offsets.
269 int step_x = std::ceil(content_bounds.width() / raster_divisions); 269 int step_x = std::ceil(content_bounds.width() / raster_divisions);
270 int step_y = std::ceil(content_bounds.height() / raster_divisions); 270 int step_y = std::ceil(content_bounds.height() / raster_divisions);
271 for (int offset_x = 0; offset_x < content_bounds.width(); 271 for (int offset_x = 0; offset_x < content_bounds.width();
272 offset_x += step_x) { 272 offset_x += step_x) {
273 for (int offset_y = 0; offset_y < content_bounds.height(); 273 for (int offset_y = 0; offset_y < content_bounds.height();
274 offset_y += step_y) { 274 offset_y += step_y) {
275 gfx::Rect content_rect(offset_x, offset_y, step_x, step_y); 275 gfx::Rect content_rect(offset_x, offset_y, step_x, step_y);
276 content_rect.Intersect(gfx::Rect(content_bounds)); 276 content_rect.Intersect(gfx::Rect(content_bounds));
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
321 white_paint.setColor(SK_ColorWHITE); 321 white_paint.setColor(SK_ColorWHITE);
322 recording_source->add_draw_rect_with_paint(gfx::Rect(layer_bounds), 322 recording_source->add_draw_rect_with_paint(gfx::Rect(layer_bounds),
323 white_paint); 323 white_paint);
324 recording_source->Rerecord(); 324 recording_source->Rerecord();
325 325
326 scoped_refptr<DisplayListRasterSource> raster = 326 scoped_refptr<DisplayListRasterSource> raster =
327 DisplayListRasterSource::CreateFromDisplayListRecordingSource( 327 DisplayListRasterSource::CreateFromDisplayListRecordingSource(
328 recording_source.get(), false); 328 recording_source.get(), false);
329 329
330 gfx::Size content_bounds( 330 gfx::Size content_bounds(
331 gfx::ToCeiledSize(gfx::ScaleSize(layer_bounds, contents_scale))); 331 gfx::ScaleToCeiledSize(layer_bounds, contents_scale));
332 332
333 SkBitmap bitmap; 333 SkBitmap bitmap;
334 bitmap.allocN32Pixels(content_bounds.width(), content_bounds.height()); 334 bitmap.allocN32Pixels(content_bounds.width(), content_bounds.height());
335 SkCanvas canvas(bitmap); 335 SkCanvas canvas(bitmap);
336 canvas.clear(SK_ColorTRANSPARENT); 336 canvas.clear(SK_ColorTRANSPARENT);
337 337
338 // Playback the full rect which should make everything white. 338 // Playback the full rect which should make everything white.
339 gfx::Rect raster_full_rect(content_bounds); 339 gfx::Rect raster_full_rect(content_bounds);
340 gfx::Rect playback_rect(content_bounds); 340 gfx::Rect playback_rect(content_bounds);
341 raster->PlaybackToCanvas(&canvas, raster_full_rect, playback_rect, 341 raster->PlaybackToCanvas(&canvas, raster_full_rect, playback_rect,
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after
417 white_paint.setAlpha(alpha_dark); 417 white_paint.setAlpha(alpha_dark);
418 recording_source->add_draw_rect_with_paint(gfx::Rect(layer_bounds), 418 recording_source->add_draw_rect_with_paint(gfx::Rect(layer_bounds),
419 white_paint); 419 white_paint);
420 recording_source->Rerecord(); 420 recording_source->Rerecord();
421 421
422 scoped_refptr<DisplayListRasterSource> raster = 422 scoped_refptr<DisplayListRasterSource> raster =
423 DisplayListRasterSource::CreateFromDisplayListRecordingSource( 423 DisplayListRasterSource::CreateFromDisplayListRecordingSource(
424 recording_source.get(), false); 424 recording_source.get(), false);
425 425
426 gfx::Size content_bounds( 426 gfx::Size content_bounds(
427 gfx::ToCeiledSize(gfx::ScaleSize(layer_bounds, contents_scale))); 427 gfx::ScaleToCeiledSize(layer_bounds, contents_scale));
428 428
429 SkBitmap bitmap; 429 SkBitmap bitmap;
430 bitmap.allocN32Pixels(content_bounds.width(), content_bounds.height()); 430 bitmap.allocN32Pixels(content_bounds.width(), content_bounds.height());
431 SkCanvas canvas(bitmap); 431 SkCanvas canvas(bitmap);
432 canvas.clear(SK_ColorTRANSPARENT); 432 canvas.clear(SK_ColorTRANSPARENT);
433 433
434 // Playback the full rect which should make everything light gray (alpha=10). 434 // Playback the full rect which should make everything light gray (alpha=10).
435 gfx::Rect raster_full_rect(content_bounds); 435 gfx::Rect raster_full_rect(content_bounds);
436 gfx::Rect playback_rect(content_bounds); 436 gfx::Rect playback_rect(content_bounds);
437 raster->PlaybackToCanvas(&canvas, raster_full_rect, playback_rect, 437 raster->PlaybackToCanvas(&canvas, raster_full_rect, playback_rect,
(...skipping 26 matching lines...) Expand all
464 white_paint); 464 white_paint);
465 recording_source_light->Rerecord(); 465 recording_source_light->Rerecord();
466 466
467 // Make a new RasterSource from the new recording. 467 // Make a new RasterSource from the new recording.
468 raster = DisplayListRasterSource::CreateFromDisplayListRecordingSource( 468 raster = DisplayListRasterSource::CreateFromDisplayListRecordingSource(
469 recording_source_light.get(), false); 469 recording_source_light.get(), false);
470 470
471 // We're going to playback from alpha(18) white rectangle into a smaller area 471 // We're going to playback from alpha(18) white rectangle into a smaller area
472 // of the recording resulting in a smaller lighter white rectangle over a 472 // of the recording resulting in a smaller lighter white rectangle over a
473 // darker white background rectangle. 473 // darker white background rectangle.
474 playback_rect = gfx::Rect( 474 playback_rect =
475 gfx::ToCeiledSize(gfx::ScaleSize(partial_bounds, contents_scale))); 475 gfx::Rect(gfx::ScaleToCeiledSize(partial_bounds, contents_scale));
476 raster->PlaybackToCanvas(&canvas, raster_full_rect, playback_rect, 476 raster->PlaybackToCanvas(&canvas, raster_full_rect, playback_rect,
477 contents_scale); 477 contents_scale);
478 478
479 // Test that the whole playback_rect was cleared and repainted with new alpha. 479 // Test that the whole playback_rect was cleared and repainted with new alpha.
480 SkColor* pixels = reinterpret_cast<SkColor*>(bitmap.getPixels()); 480 SkColor* pixels = reinterpret_cast<SkColor*>(bitmap.getPixels());
481 for (int i = 0; i < playback_rect.width(); ++i) { 481 for (int i = 0; i < playback_rect.width(); ++i) {
482 for (int j = 0; j < playback_rect.height(); ++j) { 482 for (int j = 0; j < playback_rect.height(); ++j) {
483 SCOPED_TRACE(j); 483 SCOPED_TRACE(j);
484 SCOPED_TRACE(i); 484 SCOPED_TRACE(i);
485 EXPECT_EQ(alpha_light, SkColorGetA(pixels[i + j * bitmap.width()])); 485 EXPECT_EQ(alpha_light, SkColorGetA(pixels[i + j * bitmap.width()]));
(...skipping 12 matching lines...) Expand all
498 FakeDisplayListRecordingSource::CreateFilledRecordingSource(layer_bounds); 498 FakeDisplayListRecordingSource::CreateFilledRecordingSource(layer_bounds);
499 recording_source->SetBackgroundColor(SK_ColorTRANSPARENT); 499 recording_source->SetBackgroundColor(SK_ColorTRANSPARENT);
500 recording_source->SetRequiresClear(true); 500 recording_source->SetRequiresClear(true);
501 recording_source->SetClearCanvasWithDebugColor(false); 501 recording_source->SetClearCanvasWithDebugColor(false);
502 recording_source->Rerecord(); 502 recording_source->Rerecord();
503 503
504 scoped_refptr<DisplayListRasterSource> raster = 504 scoped_refptr<DisplayListRasterSource> raster =
505 DisplayListRasterSource::CreateFromDisplayListRecordingSource( 505 DisplayListRasterSource::CreateFromDisplayListRecordingSource(
506 recording_source.get(), false); 506 recording_source.get(), false);
507 gfx::Size content_bounds( 507 gfx::Size content_bounds(
508 gfx::ToCeiledSize(gfx::ScaleSize(layer_bounds, contents_scale))); 508 gfx::ScaleToCeiledSize(layer_bounds, contents_scale));
509 509
510 gfx::Rect canvas_rect(content_bounds); 510 gfx::Rect canvas_rect(content_bounds);
511 canvas_rect.Inset(0, 0, -1, -1); 511 canvas_rect.Inset(0, 0, -1, -1);
512 512
513 SkBitmap bitmap; 513 SkBitmap bitmap;
514 bitmap.allocN32Pixels(canvas_rect.width(), canvas_rect.height()); 514 bitmap.allocN32Pixels(canvas_rect.width(), canvas_rect.height());
515 SkCanvas canvas(bitmap); 515 SkCanvas canvas(bitmap);
516 516
517 raster->PlaybackToCanvas(&canvas, canvas_rect, canvas_rect, contents_scale); 517 raster->PlaybackToCanvas(&canvas, canvas_rect, canvas_rect, contents_scale);
518 518
(...skipping 16 matching lines...) Expand all
535 scoped_refptr<DisplayListRasterSource> raster = 535 scoped_refptr<DisplayListRasterSource> raster =
536 DisplayListRasterSource::CreateFromDisplayListRecordingSource( 536 DisplayListRasterSource::CreateFromDisplayListRecordingSource(
537 recording_source.get(), false); 537 recording_source.get(), false);
538 size_t total_memory_usage = raster->GetPictureMemoryUsage(); 538 size_t total_memory_usage = raster->GetPictureMemoryUsage();
539 EXPECT_GE(total_memory_usage, kReportedMemoryUsageInBytes); 539 EXPECT_GE(total_memory_usage, kReportedMemoryUsageInBytes);
540 EXPECT_LT(total_memory_usage, 2 * kReportedMemoryUsageInBytes); 540 EXPECT_LT(total_memory_usage, 2 * kReportedMemoryUsageInBytes);
541 } 541 }
542 542
543 } // namespace 543 } // namespace
544 } // namespace cc 544 } // namespace cc
OLDNEW
« no previous file with comments | « cc/playback/display_item_list_unittest.cc ('k') | cc/test/layer_test_common.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698