| Index: cc/layers/heads_up_display_layer_impl.cc
|
| diff --git a/cc/layers/heads_up_display_layer_impl.cc b/cc/layers/heads_up_display_layer_impl.cc
|
| index 19217c9078dfe025d44e585c4a7e6d19ca9207e5..6d184f325fad2da8dc9c4b4ceb24610213769106 100644
|
| --- a/cc/layers/heads_up_display_layer_impl.cc
|
| +++ b/cc/layers/heads_up_display_layer_impl.cc
|
| @@ -70,6 +70,8 @@ double HeadsUpDisplayLayerImpl::Graph::UpdateUpperBound() {
|
| HeadsUpDisplayLayerImpl::HeadsUpDisplayLayerImpl(LayerTreeImpl* tree_impl,
|
| int id)
|
| : LayerImpl(tree_impl, id),
|
| + typeface_(skia::AdoptRef(
|
| + SkTypeface::CreateFromName("monospace", SkTypeface::kBold))),
|
| internal_contents_scale_(1.f),
|
| fps_graph_(60.0, 80.0),
|
| paint_time_graph_(16.0, 48.0),
|
| @@ -177,38 +179,39 @@ void HeadsUpDisplayLayerImpl::UpdateHudTexture(
|
| return;
|
|
|
| SkISize canvas_size;
|
| - if (hud_surface_)
|
| - canvas_size = hud_surface_->getCanvas()->getDeviceSize();
|
| + if (hud_canvas_)
|
| + canvas_size = hud_canvas_->getDeviceSize();
|
| else
|
| canvas_size.set(0, 0);
|
|
|
| if (canvas_size.width() != internal_content_bounds_.width() ||
|
| canvas_size.height() != internal_content_bounds_.height() ||
|
| - !hud_surface_) {
|
| + !hud_canvas_) {
|
| TRACE_EVENT0("cc", "ResizeHudCanvas");
|
|
|
| - hud_surface_ = skia::AdoptRef(SkSurface::NewRasterN32Premul(
|
| - internal_content_bounds_.width(), internal_content_bounds_.height()));
|
| + bool opaque = false;
|
| + hud_canvas_ = make_scoped_ptr(
|
| + skia::CreateBitmapCanvas(internal_content_bounds_.width(),
|
| + internal_content_bounds_.height(), opaque));
|
| }
|
|
|
| UpdateHudContents();
|
|
|
| {
|
| TRACE_EVENT0("cc", "DrawHudContents");
|
| - hud_surface_->getCanvas()->clear(SkColorSetARGB(0, 0, 0, 0));
|
| - hud_surface_->getCanvas()->save();
|
| - hud_surface_->getCanvas()->scale(internal_contents_scale_,
|
| - internal_contents_scale_);
|
| + hud_canvas_->clear(SkColorSetARGB(0, 0, 0, 0));
|
| + hud_canvas_->save();
|
| + hud_canvas_->scale(internal_contents_scale_, internal_contents_scale_);
|
|
|
| - DrawHudContents(hud_surface_->getCanvas());
|
| + DrawHudContents(hud_canvas_.get());
|
|
|
| - hud_surface_->getCanvas()->restore();
|
| + hud_canvas_->restore();
|
| }
|
|
|
| TRACE_EVENT0("cc", "UploadHudTexture");
|
| SkImageInfo info;
|
| size_t row_bytes = 0;
|
| - const void* pixels = hud_surface_->getCanvas()->peekPixels(&info, &row_bytes);
|
| + const void* pixels = hud_canvas_->peekPixels(&info, &row_bytes);
|
| DCHECK(pixels);
|
| DCHECK(info.colorType() == kN32_SkColorType);
|
| resource_provider->CopyToResource(resources_.back()->id(),
|
| @@ -303,7 +306,7 @@ void HeadsUpDisplayLayerImpl::DrawText(SkCanvas* canvas,
|
|
|
| paint->setTextSize(size);
|
| paint->setTextAlign(align);
|
| - paint->setTypeface(layer_tree_impl()->settings().hud_typeface.get());
|
| + paint->setTypeface(typeface_.get());
|
| canvas->drawText(text.c_str(), text.length(), x, y, *paint);
|
|
|
| paint->setAntiAlias(anti_alias);
|
| @@ -710,7 +713,7 @@ void HeadsUpDisplayLayerImpl::DrawDebugRect(
|
|
|
| SkPaint label_paint = CreatePaint();
|
| label_paint.setTextSize(kFontHeight);
|
| - label_paint.setTypeface(layer_tree_impl()->settings().hud_typeface.get());
|
| + label_paint.setTypeface(typeface_.get());
|
| label_paint.setColor(stroke_color);
|
|
|
| const SkScalar label_text_width =
|
|
|