Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(223)

Side by Side Diff: cc/software_renderer.cc

Issue 11264056: cc: Use gfx:: Geometry types for positions, bounds, and related things. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: some missed intstuff Created 8 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2012 The Chromium Authors. All rights reserved. 1 // Copyright 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "config.h" 5 #include "config.h"
6 6
7 #include "cc/software_renderer.h" 7 #include "cc/software_renderer.h"
8 8
9 #include "cc/debug_border_draw_quad.h" 9 #include "cc/debug_border_draw_quad.h"
10 #include "cc/render_pass_draw_quad.h" 10 #include "cc/render_pass_draw_quad.h"
(...skipping 249 matching lines...) Expand 10 before | Expand all | Expand 10 after
260 if (quad->flipped()) 260 if (quad->flipped())
261 m_skCurrentCanvas->scale(1, -1); 261 m_skCurrentCanvas->scale(1, -1);
262 m_skCurrentCanvas->drawBitmapRect(*quadResourceLock.skBitmap(), &skUvRect, t oSkRect(quadVertexRect()), &m_skCurrentPaint); 262 m_skCurrentCanvas->drawBitmapRect(*quadResourceLock.skBitmap(), &skUvRect, t oSkRect(quadVertexRect()), &m_skCurrentPaint);
263 } 263 }
264 264
265 void SoftwareRenderer::drawTileQuad(const DrawingFrame& frame, const TileDrawQua d* quad) 265 void SoftwareRenderer::drawTileQuad(const DrawingFrame& frame, const TileDrawQua d* quad)
266 { 266 {
267 DCHECK(isSoftwareResource(quad->resourceId())); 267 DCHECK(isSoftwareResource(quad->resourceId()));
268 ResourceProvider::ScopedReadLockSoftware quadResourceLock(m_resourceProvider , quad->resourceId()); 268 ResourceProvider::ScopedReadLockSoftware quadResourceLock(m_resourceProvider , quad->resourceId());
269 269
270 SkIRect uvRect = toSkIRect(gfx::Rect(quad->textureOffset(), quad->quadRect() .size())); 270 SkIRect uvRect = toSkIRect(gfx::Rect(gfx::PointAtDistanceFromOrigin(quad->te xtureOffset()), quad->quadRect().size()));
271 m_skCurrentCanvas->drawBitmapRect(*quadResourceLock.skBitmap(), &uvRect, toS kRect(quadVertexRect()), &m_skCurrentPaint); 271 m_skCurrentCanvas->drawBitmapRect(*quadResourceLock.skBitmap(), &uvRect, toS kRect(quadVertexRect()), &m_skCurrentPaint);
272 } 272 }
273 273
274 void SoftwareRenderer::drawRenderPassQuad(const DrawingFrame& frame, const Rende rPassDrawQuad* quad) 274 void SoftwareRenderer::drawRenderPassQuad(const DrawingFrame& frame, const Rende rPassDrawQuad* quad)
275 { 275 {
276 CachedTexture* contentsTexture = m_renderPassTextures.get(quad->renderPassId ()); 276 CachedTexture* contentsTexture = m_renderPassTextures.get(quad->renderPassId ());
277 if (!contentsTexture || !contentsTexture->id()) 277 if (!contentsTexture || !contentsTexture->id())
278 return; 278 return;
279 279
280 DCHECK(isSoftwareResource(contentsTexture->id())); 280 DCHECK(isSoftwareResource(contentsTexture->id()));
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
330 m_skCurrentCanvas->drawRect(toSkRect(quadVertexRect()), m_skCurrentPaint); 330 m_skCurrentCanvas->drawRect(toSkRect(quadVertexRect()), m_skCurrentPaint);
331 } 331 }
332 332
333 bool SoftwareRenderer::swapBuffers() 333 bool SoftwareRenderer::swapBuffers()
334 { 334 {
335 if (Proxy::hasImplThread()) 335 if (Proxy::hasImplThread())
336 m_client->onSwapBuffersComplete(); 336 m_client->onSwapBuffersComplete();
337 return true; 337 return true;
338 } 338 }
339 339
340 void SoftwareRenderer::getFramebufferPixels(void *pixels, const IntRect& rect) 340 void SoftwareRenderer::getFramebufferPixels(void *pixels, const gfx::Rect& rect)
341 { 341 {
342 SkBitmap fullBitmap = m_outputDevice->lock(false)->getSkBitmap(); 342 SkBitmap fullBitmap = m_outputDevice->lock(false)->getSkBitmap();
343 SkBitmap subsetBitmap; 343 SkBitmap subsetBitmap;
344 SkIRect invertRect = SkIRect::MakeXYWH(rect.x(), viewportSize().height() - r ect.maxY(), rect.width(), rect.height()); 344 SkIRect invertRect = SkIRect::MakeXYWH(rect.x(), viewportSize().height() - r ect.bottom(), rect.width(), rect.height());
345 fullBitmap.extractSubset(&subsetBitmap, invertRect); 345 fullBitmap.extractSubset(&subsetBitmap, invertRect);
346 subsetBitmap.copyPixelsTo(pixels, rect.width() * rect.height() * 4, rect.wid th() * 4); 346 subsetBitmap.copyPixelsTo(pixels, rect.width() * rect.height() * 4, rect.wid th() * 4);
347 m_outputDevice->unlock(); 347 m_outputDevice->unlock();
348 } 348 }
349 349
350 void SoftwareRenderer::setVisible(bool visible) 350 void SoftwareRenderer::setVisible(bool visible)
351 { 351 {
352 if (m_visible == visible) 352 if (m_visible == visible)
353 return; 353 return;
354 m_visible = visible; 354 m_visible = visible;
355 } 355 }
356 356
357 } 357 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698