summaryrefslogtreecommitdiffstats
path: root/skia/ext/platform_canvas_unittest.cc
diff options
context:
space:
mode:
authorvandebo@chromium.org <vandebo@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-05-25 16:16:02 +0000
committervandebo@chromium.org <vandebo@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-05-25 16:16:02 +0000
commitf2d4c672b6d6b80e376cff979b1ec28864b73fb6 (patch)
tree679a4a8178438947f2775a6d1ba5540be99ce00c /skia/ext/platform_canvas_unittest.cc
parent49578ea329dae7f711ca1cde1ecade01e19a4f1b (diff)
downloadchromium_src-f2d4c672b6d6b80e376cff979b1ec28864b73fb6.zip
chromium_src-f2d4c672b6d6b80e376cff979b1ec28864b73fb6.tar.gz
chromium_src-f2d4c672b6d6b80e376cff979b1ec28864b73fb6.tar.bz2
Revert 86625 - This change implements a first pass in the effort to remove the dependency of PlatformDevice within Chrome. The Skia library now provides multiple back-ends for the SkDevice class, so PlatformDevice's inheritance of SkDevice, and the assumption of instances of PlatformDevice limits the use of these new back-ends.
A new set of helper functions is provided for the PlatformDevice entry points. Upon construction of a PlatformDevice, a pointer to the interface is cached in the parent SkDevice's SkMetaData. The new helper functions forward calls to the interface cached in the metadata. BUG=NONE TEST=NONE Review URL: http://codereview.chromium.org/7019013 TBR=twiz@chromium.org Review URL: http://codereview.chromium.org/6987019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@86629 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'skia/ext/platform_canvas_unittest.cc')
-rw-r--r--skia/ext/platform_canvas_unittest.cc44
1 files changed, 26 insertions, 18 deletions
diff --git a/skia/ext/platform_canvas_unittest.cc b/skia/ext/platform_canvas_unittest.cc
index 40cdc70..6e43be2 100644
--- a/skia/ext/platform_canvas_unittest.cc
+++ b/skia/ext/platform_canvas_unittest.cc
@@ -31,8 +31,8 @@ namespace {
bool VerifyRect(const PlatformCanvas& canvas,
uint32_t canvas_color, uint32_t rect_color,
int x, int y, int w, int h) {
- SkDevice* device = skia::GetTopDevice(canvas);
- const SkBitmap& bitmap = device->accessBitmap(false);
+ PlatformDevice& device = canvas.getTopPlatformDevice();
+ const SkBitmap& bitmap = device.accessBitmap(false);
SkAutoLockPixels lock(bitmap);
// For masking out the alpha values.
@@ -70,8 +70,8 @@ bool IsOfColor(const SkBitmap& bitmap, int x, int y, uint32_t color) {
bool VerifyRoundedRect(const PlatformCanvas& canvas,
uint32_t canvas_color, uint32_t rect_color,
int x, int y, int w, int h) {
- SkDevice* device = skia::GetTopDevice(canvas);
- const SkBitmap& bitmap = device->accessBitmap(false);
+ PlatformDevice& device = canvas.getTopPlatformDevice();
+ const SkBitmap& bitmap = device.accessBitmap(false);
SkAutoLockPixels lock(bitmap);
// Check corner points first. They should be of canvas_color.
@@ -103,8 +103,7 @@ bool VerifyCanvasColor(const PlatformCanvas& canvas, uint32_t canvas_color) {
#if defined(OS_WIN)
void DrawNativeRect(PlatformCanvas& canvas, int x, int y, int w, int h) {
- skia::ScopedPlatformPaint scoped_platform_paint(&canvas);
- HDC dc = scoped_platform_paint.GetPlatformSurface();
+ HDC dc = canvas.beginPlatformPaint();
RECT inner_rc;
inner_rc.left = x;
@@ -112,18 +111,21 @@ void DrawNativeRect(PlatformCanvas& canvas, int x, int y, int w, int h) {
inner_rc.right = x + w;
inner_rc.bottom = y + h;
FillRect(dc, &inner_rc, reinterpret_cast<HBRUSH>(GetStockObject(BLACK_BRUSH)));
+
+ canvas.endPlatformPaint();
}
#elif defined(OS_MACOSX)
void DrawNativeRect(PlatformCanvas& canvas, int x, int y, int w, int h) {
- skia::ScopedPlatformPaint scoped_platform_paint(&canvas);
- CGContextRef context = scoped_platform_paint.GetPlatformSurface();
-
+ CGContextRef context = canvas.beginPlatformPaint();
+
CGRect inner_rc = CGRectMake(x, y, w, h);
// RGBA opaque black
CGColorRef black = CGColorCreateGenericRGB(0.0, 0.0, 0.0, 1.0);
CGContextSetFillColorWithColor(context, black);
CGColorRelease(black);
CGContextFillRect(context, inner_rc);
+
+ canvas.endPlatformPaint();
}
#else
void DrawNativeRect(PlatformCanvas& canvas, int x, int y, int w, int h) {
@@ -242,7 +244,7 @@ TEST(PlatformCanvas, FillLayer) {
LayerSaver layer(canvas, kLayerX, kLayerY, kLayerW, kLayerH);
DrawNativeRect(canvas, 0, 0, 100, 100);
#if defined(OS_WIN)
- MakeOpaque(&canvas, 0, 0, 100, 100);
+ canvas.getTopPlatformDevice().makeOpaque(0, 0, 100, 100);
#endif
}
EXPECT_TRUE(VerifyBlackRect(canvas, kLayerX, kLayerY, kLayerW, kLayerH));
@@ -253,7 +255,8 @@ TEST(PlatformCanvas, FillLayer) {
LayerSaver layer(canvas, kLayerX, kLayerY, kLayerW, kLayerH);
DrawNativeRect(canvas, kInnerX, kInnerY, kInnerW, kInnerH);
#if defined(OS_WIN)
- MakeOpaque(&canvas, kInnerX, kInnerY, kInnerW, kInnerH);
+ canvas.getTopPlatformDevice().makeOpaque(kInnerX, kInnerY,
+ kInnerW, kInnerH);
#endif
}
EXPECT_TRUE(VerifyBlackRect(canvas, kInnerX, kInnerY, kInnerW, kInnerH));
@@ -266,7 +269,8 @@ TEST(PlatformCanvas, FillLayer) {
AddClip(canvas, kInnerX, kInnerY, kInnerW, kInnerH);
DrawNativeRect(canvas, 0, 0, 100, 100);
#if defined(OS_WIN)
- MakeOpaque(&canvas, kInnerX, kInnerY, kInnerW, kInnerH);
+ canvas.getTopPlatformDevice().makeOpaque(
+ kInnerX, kInnerY, kInnerW, kInnerH);
#endif
canvas.restore();
}
@@ -280,7 +284,7 @@ TEST(PlatformCanvas, FillLayer) {
LayerSaver layer(canvas, kLayerX, kLayerY, kLayerW, kLayerH);
DrawNativeRect(canvas, 0, 0, 100, 100);
#if defined(OS_WIN)
- MakeOpaque(&canvas, 0, 0, 100, 100);
+ canvas.getTopPlatformDevice().makeOpaque(0, 0, 100, 100);
#endif
}
canvas.restore();
@@ -301,7 +305,7 @@ TEST(PlatformCanvas, TranslateLayer) {
LayerSaver layer(canvas, kLayerX, kLayerY, kLayerW, kLayerH);
DrawNativeRect(canvas, 0, 0, 100, 100);
#if defined(OS_WIN)
- MakeOpaque(&canvas, 0, 0, 100, 100);
+ canvas.getTopPlatformDevice().makeOpaque(0, 0, 100, 100);
#endif
}
canvas.restore();
@@ -316,7 +320,8 @@ TEST(PlatformCanvas, TranslateLayer) {
LayerSaver layer(canvas, kLayerX, kLayerY, kLayerW, kLayerH);
DrawNativeRect(canvas, kInnerX, kInnerY, kInnerW, kInnerH);
#if defined(OS_WIN)
- MakeOpaque(&canvas, kInnerX, kInnerY, kInnerW, kInnerH);
+ canvas.getTopPlatformDevice().makeOpaque(kInnerX, kInnerY,
+ kInnerW, kInnerH);
#endif
}
canvas.restore();
@@ -331,7 +336,8 @@ TEST(PlatformCanvas, TranslateLayer) {
canvas.translate(1, 1);
DrawNativeRect(canvas, kInnerX, kInnerY, kInnerW, kInnerH);
#if defined(OS_WIN)
- MakeOpaque(&canvas, kInnerX, kInnerY, kInnerW, kInnerH);
+ canvas.getTopPlatformDevice().makeOpaque(kInnerX, kInnerY,
+ kInnerW, kInnerH);
#endif
}
canvas.restore();
@@ -349,7 +355,8 @@ TEST(PlatformCanvas, TranslateLayer) {
AddClip(canvas, kInnerX + 1, kInnerY + 1, kInnerW - 1, kInnerH - 1);
DrawNativeRect(canvas, 0, 0, 100, 100);
#if defined(OS_WIN)
- MakeOpaque(&canvas, kLayerX, kLayerY, kLayerW, kLayerH);
+ canvas.getTopPlatformDevice().makeOpaque(kLayerX, kLayerY,
+ kLayerW, kLayerH);
#endif
}
canvas.restore();
@@ -377,7 +384,8 @@ TEST(PlatformCanvas, TranslateLayer) {
DrawNativeRect(canvas, 0, 0, 100, 100);
#if defined(OS_WIN)
- MakeOpaque(&canvas, kLayerX, kLayerY, kLayerW, kLayerH);
+ canvas.getTopPlatformDevice().makeOpaque(kLayerX, kLayerY,
+ kLayerW, kLayerH);
#endif
}
canvas.restore();