| Index: content/renderer/gpu/gpu_benchmarking_extension.cc
|
| diff --git a/content/renderer/gpu/gpu_benchmarking_extension.cc b/content/renderer/gpu/gpu_benchmarking_extension.cc
|
| index b4aadc1821371c8c2cb537cb04af6c68f50f3049..96fd0dc54c6c8de5c32f4181388dff24007bf4d7 100644
|
| --- a/content/renderer/gpu/gpu_benchmarking_extension.cc
|
| +++ b/content/renderer/gpu/gpu_benchmarking_extension.cc
|
| @@ -35,6 +35,7 @@
|
| #include "gin/handle.h"
|
| #include "gin/object_template_builder.h"
|
| #include "gpu/ipc/common/gpu_messages.h"
|
| +#include "skia/ext/cdl_canvas.h"
|
| #include "third_party/WebKit/public/web/WebImageCache.h"
|
| #include "third_party/WebKit/public/web/WebKit.h"
|
| #include "third_party/WebKit/public/web/WebLocalFrame.h"
|
| @@ -132,7 +133,7 @@ class SkPictureSerializer {
|
| // in the given directory.
|
| void Serialize(const cc::Layer* root_layer) {
|
| for (auto* layer : *root_layer->GetLayerTree()) {
|
| - sk_sp<SkPicture> picture = layer->GetPicture();
|
| + sk_sp<const SkPicture> picture = ToSkPicture(layer->GetPicture().get());
|
| if (!picture)
|
| continue;
|
|
|
| @@ -465,17 +466,18 @@ static void PrintDocument(blink::WebFrame* frame, SkDocument* doc) {
|
| params.printerDPI = 300;
|
| int page_count = frame->printBegin(params);
|
| for (int i = 0; i < page_count; ++i) {
|
| - SkCanvas* canvas = doc->beginPage(kPageWidth, kPageHeight);
|
| - SkAutoCanvasRestore auto_restore(canvas, true);
|
| - canvas->translate(kMarginLeft, kMarginTop);
|
| + SkCanvas* sk_canvas = doc->beginPage(kPageWidth, kPageHeight);
|
| + CdlPassThroughCanvas canvas(sk_canvas);
|
| + CdlAutoCanvasRestore auto_restore(&canvas, true);
|
| + canvas.translate(kMarginLeft, kMarginTop);
|
|
|
| #if defined(OS_WIN) || defined(OS_MACOSX)
|
| float page_shrink = frame->getPrintPageShrink(i);
|
| DCHECK(page_shrink > 0);
|
| - canvas->scale(page_shrink, page_shrink);
|
| + canvas.scale(page_shrink, page_shrink);
|
| #endif
|
|
|
| - frame->printPage(i, canvas);
|
| + frame->printPage(i, &canvas);
|
| }
|
| frame->printEnd();
|
| }
|
|
|