More cleanup around GrContext, textures, and SkGr.cpp

Review URL: https://codereview.chromium.org/880983008
diff --git a/src/gpu/GrContext.cpp b/src/gpu/GrContext.cpp
index bcd84dd..5b157d2 100755
--- a/src/gpu/GrContext.cpp
+++ b/src/gpu/GrContext.cpp
@@ -223,6 +223,14 @@
 
 ////////////////////////////////////////////////////////////////////////////////
 
+bool GrContext::isConfigTexturable(GrPixelConfig config) const {
+    return fGpu->caps()->isConfigTexturable(config);
+}
+
+bool GrContext::npotTextureTileSupport() const {
+    return fGpu->caps()->npotTextureTileSupport();
+}
+
 GrTexture* GrContext::createTexture(const GrSurfaceDesc& desc, const void* srcData,
                                     size_t rowBytes) {
     return fGpu->createTexture(desc, true, srcData, rowBytes);
@@ -230,6 +238,11 @@
 
 GrTexture* GrContext::refScratchTexture(const GrSurfaceDesc& inDesc, ScratchTexMatch match,
                                         bool calledDuringFlush) {
+    // Currently we don't recycle compressed textures as scratch.
+    if (GrPixelConfigIsCompressed(inDesc.fConfig)) {
+        return NULL;
+    }
+
     // kNoStencil has no meaning if kRT isn't set.
     SkASSERT((inDesc.fFlags & kRenderTarget_GrSurfaceFlag) ||
              !(inDesc.fFlags & kNoStencil_GrSurfaceFlag));
@@ -338,14 +351,6 @@
     return fGpu->wrapBackendRenderTarget(desc);
 }
 
-///////////////////////////////////////////////////////////////////////////////
-
-bool GrContext::supportsIndex8PixelConfig() const {
-    const GrDrawTargetCaps* caps = fGpu->caps();
-    return caps->isConfigTexturable(kIndex_8_GrPixelConfig);
-}
-
-
 ////////////////////////////////////////////////////////////////////////////////
 
 void GrContext::clear(const SkIRect* rect,