Make all pixel ops go thru ctx so we can correctly flush. Unify two texture upload code paths. 

Review URL: http://codereview.appspot.com/5373108/



git-svn-id: http://skia.googlecode.com/svn/trunk@2701 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/src/gpu/SkGr.cpp b/src/gpu/SkGr.cpp
index 6a39410..e76ec5d 100644
--- a/src/gpu/SkGr.cpp
+++ b/src/gpu/SkGr.cpp
@@ -99,8 +99,9 @@
             } else {
                 entry = ctx->lockScratchTexture(desc,
                                         GrContext::kExact_ScratchTexMatch);
-                entry.texture()->uploadTextureData(0, 0, bitmap->width(), 
-                    bitmap->height(), storage.get(), 0);
+                entry.texture()->writePixels(0, 0, bitmap->width(), 
+                                             bitmap->height(), desc.fConfig,
+                                             storage.get(), 0);
                 return entry;
             }
 
@@ -119,8 +120,11 @@
     } else {
         entry = ctx->lockScratchTexture(desc,
                                         GrContext::kExact_ScratchTexMatch);
-        entry.texture()->uploadTextureData(0, 0, bitmap->width(), 
-            bitmap->height(), bitmap->getPixels(), bitmap->rowBytes());
+        entry.texture()->writePixels(0, 0,
+                                     bitmap->width(), bitmap->height(),
+                                     desc.fConfig,
+                                     bitmap->getPixels(),
+                                     bitmap->rowBytes());
         return entry;
     }
 }