| Index: src/gpu/GrTest.cpp
 | 
| diff --git a/src/gpu/GrTest.cpp b/src/gpu/GrTest.cpp
 | 
| index e7b2ae7699f2234be4e02e1ac0a771eaa354e406..755fabc2158f3a7c3915013e782375341fcb1bfb 100644
 | 
| --- a/src/gpu/GrTest.cpp
 | 
| +++ b/src/gpu/GrTest.cpp
 | 
| @@ -16,6 +16,8 @@
 | 
|  #include "GrGpuResourceCacheAccess.h"
 | 
|  #include "GrResourceCache.h"
 | 
|  #include "GrTextBlobCache.h"
 | 
| +
 | 
| +#include "SkGpuDevice.h"
 | 
|  #include "SkGrPriv.h"
 | 
|  #include "SkString.h"
 | 
|  
 | 
| @@ -137,35 +139,33 @@ void GrContext::printGpuStats() const {
 | 
|      SkDebugf("%s", out.c_str());
 | 
|  }
 | 
|  
 | 
| -void GrContext::drawFontCache(const SkRect& rect, GrMaskFormat format, const SkPaint& paint,
 | 
| -                              GrRenderTarget* target) {
 | 
| +GrTexture* GrContext::getFontAtlasTexture(GrMaskFormat format) {
 | 
|      GrBatchFontCache* cache = this->getBatchFontCache();
 | 
|  
 | 
| -    GrTexture* atlas = cache->getTexture(format);
 | 
| -
 | 
| -    SkAutoTUnref<GrDrawContext> drawContext(this->drawContext(target));
 | 
| -    // TODO: add drawContext method to encapsulate this.
 | 
| +    return cache->getTexture(format);
 | 
| +}
 | 
|  
 | 
| +void SkGpuDevice::drawTexture(GrTexture* tex, const SkRect& dst, const SkPaint& paint) {
 | 
|      GrPaint grPaint;
 | 
|      SkMatrix mat;
 | 
|      mat.reset();
 | 
| -    if (!SkPaintToGrPaint(this, paint, mat, &grPaint)) {
 | 
| +    if (!SkPaintToGrPaint(this->context(), paint, mat, &grPaint)) {
 | 
|          return;
 | 
|      }
 | 
|      SkMatrix textureMat;
 | 
|      textureMat.reset();
 | 
| -    // TODO: use setScaleTranslate()
 | 
| -    textureMat[SkMatrix::kMScaleX] = 1.0f/rect.width();
 | 
| -    textureMat[SkMatrix::kMScaleY] = 1.0f/rect.height();
 | 
| -    textureMat[SkMatrix::kMTransX] = -rect.fLeft/rect.width();
 | 
| -    textureMat[SkMatrix::kMTransY] = -rect.fTop/rect.height();
 | 
| +    textureMat[SkMatrix::kMScaleX] = 1.0f/dst.width();
 | 
| +    textureMat[SkMatrix::kMScaleY] = 1.0f/dst.height();
 | 
| +    textureMat[SkMatrix::kMTransX] = -dst.fLeft/dst.width();
 | 
| +    textureMat[SkMatrix::kMTransY] = -dst.fTop/dst.height();
 | 
|  
 | 
| -    grPaint.addColorTextureProcessor(atlas, textureMat);
 | 
| +    grPaint.addColorTextureProcessor(tex, textureMat);
 | 
|  
 | 
|      GrClip clip;
 | 
| -    drawContext->drawRect(clip, grPaint, mat, rect);
 | 
| +    fDrawContext->drawRect(clip, grPaint, mat, dst);
 | 
|  }
 | 
|  
 | 
| +
 | 
|  #if GR_GPU_STATS
 | 
|  void GrGpu::Stats::dump(SkString* out) {
 | 
|      out->appendf("Render Target Binds: %d\n", fRenderTargetBinds);
 | 
| 
 |