1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "content/renderer/sad_plugin.h"
9 #include "base/memory/scoped_ptr.h"
10 #include "skia/ext/platform_canvas.h"
11 #include "ui/gfx/blit.h"
12 #include "ui/gfx/geometry/rect.h"
16 void PaintSadPlugin(blink::WebCanvas
* webcanvas
,
17 const gfx::Rect
& plugin_rect
,
18 const SkBitmap
& sad_plugin_bitmap
) {
19 const int width
= plugin_rect
.width();
20 const int height
= plugin_rect
.height();
22 SkCanvas
* canvas
= webcanvas
;
23 SkAutoCanvasRestore
auto_restore(canvas
, true);
24 // We draw the sad-plugin bitmap at the origin of canvas.
25 // Add a translation so that it appears at the origin of plugin rect.
26 canvas
->translate(plugin_rect
.x(), plugin_rect
.y());
29 paint
.setStyle(SkPaint::kFill_Style
);
30 paint
.setColor(SK_ColorBLACK
);
31 canvas
->drawRectCoords(0, 0, SkIntToScalar(width
), SkIntToScalar(height
),
35 SkIntToScalar(std::max(0, (width
- sad_plugin_bitmap
.width()) / 2)),
36 SkIntToScalar(std::max(0, (height
- sad_plugin_bitmap
.height()) / 2)));
39 } // namespace content