add SkImage::newSurface

BUG=skia:

Review URL: https://codereview.chromium.org/741763002
diff --git a/src/image/SkSurface_Gpu.cpp b/src/image/SkSurface_Gpu.cpp
index d777e3a..9ac6d55 100644
--- a/src/image/SkSurface_Gpu.cpp
+++ b/src/image/SkSurface_Gpu.cpp
@@ -7,6 +7,7 @@
 
 #include "SkSurface_Base.h"
 #include "SkImagePriv.h"
+#include "SkImage_Base.h"
 #include "SkCanvas.h"
 #include "SkGpuDevice.h"
 
@@ -66,7 +67,12 @@
 }
 
 SkImage* SkSurface_Gpu::onNewImageSnapshot() {
-    return SkImage::NewTexture(fDevice->accessBitmap(false));
+    const int sampleCount = fDevice->accessRenderTarget()->numSamples();
+    SkImage* image = SkNewImageFromBitmapTexture(fDevice->accessBitmap(false), sampleCount);
+    if (image) {
+        as_IB(image)->initWithProps(this->props());
+    }
+    return image;
 }
 
 void SkSurface_Gpu::onDraw(SkCanvas* canvas, SkScalar x, SkScalar y,