diff options
author | vandebo@chromium.org <vandebo@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-05-25 16:16:02 +0000 |
---|---|---|
committer | vandebo@chromium.org <vandebo@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-05-25 16:16:02 +0000 |
commit | f2d4c672b6d6b80e376cff979b1ec28864b73fb6 (patch) | |
tree | 679a4a8178438947f2775a6d1ba5540be99ce00c /ui/gfx/blit.cc | |
parent | 49578ea329dae7f711ca1cde1ecade01e19a4f1b (diff) | |
download | chromium_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 'ui/gfx/blit.cc')
-rw-r--r-- | ui/gfx/blit.cc | 25 |
1 files changed, 13 insertions, 12 deletions
diff --git a/ui/gfx/blit.cc b/ui/gfx/blit.cc index a9eeef8..76411a3 100644 --- a/ui/gfx/blit.cc +++ b/ui/gfx/blit.cc @@ -35,7 +35,7 @@ bool HasClipOrTransform(const skia::PlatformCanvas& canvas) { // Now we know the clip is a regular rectangle, make sure it covers the // entire canvas. - const SkBitmap& bitmap = skia::GetTopDevice(canvas)->accessBitmap(false); + const SkBitmap& bitmap = canvas.getTopPlatformDevice().accessBitmap(false); const SkIRect& clip_bounds = clip_region.getBounds(); if (clip_bounds.fLeft != 0 || clip_bounds.fTop != 0 || clip_bounds.fRight != bitmap.width() || @@ -95,9 +95,9 @@ void BlitContextToCanvas(skia::PlatformCanvas *dst_canvas, const Rect& dst_rect, NativeDrawingContext src_context, const Point& src_origin) { - BlitContextToContext(skia::BeginPlatformPaint(dst_canvas), dst_rect, + BlitContextToContext(dst_canvas->beginPlatformPaint(), dst_rect, src_context, src_origin); - skia::EndPlatformPaint(dst_canvas); + dst_canvas->endPlatformPaint(); } void BlitCanvasToContext(NativeDrawingContext dst_context, @@ -105,18 +105,18 @@ void BlitCanvasToContext(NativeDrawingContext dst_context, skia::PlatformCanvas *src_canvas, const Point& src_origin) { BlitContextToContext(dst_context, dst_rect, - skia::BeginPlatformPaint(src_canvas), src_origin); - skia::EndPlatformPaint(src_canvas); + src_canvas->beginPlatformPaint(), src_origin); + src_canvas->endPlatformPaint(); } void BlitCanvasToCanvas(skia::PlatformCanvas *dst_canvas, const Rect& dst_rect, skia::PlatformCanvas *src_canvas, const Point& src_origin) { - BlitContextToContext(skia::BeginPlatformPaint(dst_canvas), dst_rect, - skia::BeginPlatformPaint(src_canvas), src_origin); - skia::EndPlatformPaint(src_canvas); - skia::EndPlatformPaint(dst_canvas); + BlitContextToContext(dst_canvas->beginPlatformPaint(), dst_rect, + src_canvas->beginPlatformPaint(), src_origin); + src_canvas->endPlatformPaint(); + dst_canvas->endPlatformPaint(); } #if defined(OS_WIN) @@ -125,12 +125,13 @@ void ScrollCanvas(skia::PlatformCanvas* canvas, const gfx::Rect& clip, const gfx::Point& amount) { DCHECK(!HasClipOrTransform(*canvas)); // Don't support special stuff. - skia::ScopedPlatformPaint scoped_platform_paint(canvas); - HDC hdc = scoped_platform_paint.GetPlatformSurface(); + HDC hdc = canvas->beginPlatformPaint(); RECT damaged_rect; RECT r = clip.ToRECT(); ScrollDC(hdc, amount.x(), amount.y(), NULL, &r, NULL, &damaged_rect); + + canvas->endPlatformPaint(); } #elif defined(OS_POSIX) @@ -143,7 +144,7 @@ void ScrollCanvas(skia::PlatformCanvas* canvas, const gfx::Point& amount) { DCHECK(!HasClipOrTransform(*canvas)); // Don't support special stuff. SkBitmap& bitmap = const_cast<SkBitmap&>( - skia::GetTopDevice(*canvas)->accessBitmap(true)); + canvas->getTopPlatformDevice().accessBitmap(true)); SkAutoLockPixels lock(bitmap); // We expect all coords to be inside the canvas, so clip here. |