Update To 11.40.268.0
[platform/framework/web/crosswalk.git] / src / third_party / skia / include / gpu / GrContextFactory.h
index d78120c..143ca31 100644 (file)
@@ -15,7 +15,7 @@
 #if SK_MESA
     #include "gl/SkMesaGLContext.h"
 #endif
-#include "gl/SkNativeGLContext.h"
+#include "gl/SkGLContext.h"
 #include "gl/SkNullGLContext.h"
 
 #include "GrContext.h"
@@ -130,40 +130,38 @@ public:
                 return fContexts[i].fGrContext;
             }
         }
-        SkAutoTUnref<SkGLContextHelper> glCtx;
+        SkAutoTUnref<SkGLContext> glCtx;
         SkAutoTUnref<GrContext> grCtx;
         switch (type) {
             case kNVPR_GLContextType: // fallthru
             case kNative_GLContextType:
-                glCtx.reset(SkNEW(SkNativeGLContext));
+                glCtx.reset(SkCreatePlatformGLContext(forcedGpuAPI));
                 break;
 #ifdef SK_ANGLE
             case kANGLE_GLContextType:
-                glCtx.reset(SkNEW(SkANGLEGLContext));
+                glCtx.reset(SkANGLEGLContext::Create(forcedGpuAPI));
                 break;
 #endif
 #ifdef SK_MESA
             case kMESA_GLContextType:
-                glCtx.reset(SkNEW(SkMesaGLContext));
+                glCtx.reset(SkMesaGLContext::Create(forcedGpuAPI));
                 break;
 #endif
             case kNull_GLContextType:
-                glCtx.reset(SkNEW(SkNullGLContext));
+                glCtx.reset(SkNullGLContext::Create(forcedGpuAPI));
                 break;
             case kDebug_GLContextType:
-                glCtx.reset(SkNEW(SkDebugGLContext));
+                glCtx.reset(SkDebugGLContext::Create(forcedGpuAPI));
                 break;
         }
-        static const int kBogusSize = 1;
-        if (!glCtx.get()) {
-            return NULL;
-        }
-        if (!glCtx.get()->init(forcedGpuAPI, kBogusSize, kBogusSize)) {
+        if (NULL == glCtx.get()) {
             return NULL;
         }
 
+        SkASSERT(glCtx->isValid());
+
         // Ensure NVPR is available for the NVPR type and block it from other types.
-        SkAutoTUnref<const GrGLInterface> glInterface(SkRef(glCtx.get()->gl()));
+        SkAutoTUnref<const GrGLInterface> glInterface(SkRef(glCtx->gl()));
         if (kNVPR_GLContextType == type) {
             if (!glInterface->hasExtension("GL_NV_path_rendering")) {
                 return NULL;
@@ -192,7 +190,7 @@ public:
 
     // Returns the GLContext of the given type. If it has not been created yet,
     // NULL is returned instead.
-    SkGLContextHelper* getGLContext(GLContextType type) {
+    SkGLContext* getGLContext(GLContextType type) {
         for (int i = 0; i < fContexts.count(); ++i) {
             if (fContexts[i].fType == type) {
                 return fContexts[i].fGLContext;
@@ -207,7 +205,7 @@ public:
 private:
     struct GPUContext {
         GLContextType             fType;
-        SkGLContextHelper*        fGLContext;
+        SkGLContext*              fGLContext;
         GrContext*                fGrContext;
     };
     SkTArray<GPUContext, true>    fContexts;