aboutsummaryrefslogtreecommitdiffhomepage
path: root/include/gpu/SkMesaGLContext.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/gpu/SkMesaGLContext.h')
-rw-r--r--include/gpu/SkMesaGLContext.h19
1 files changed, 17 insertions, 2 deletions
diff --git a/include/gpu/SkMesaGLContext.h b/include/gpu/SkMesaGLContext.h
index 4351f66f33..b7578f367b 100644
--- a/include/gpu/SkMesaGLContext.h
+++ b/include/gpu/SkMesaGLContext.h
@@ -13,6 +13,9 @@
#if SK_MESA
class SkMesaGLContext : public SkGLContext {
+private:
+ typedef intptr_t Context;
+
public:
SkMesaGLContext();
@@ -20,16 +23,28 @@ public:
virtual void makeCurrent() const SK_OVERRIDE;
+ class AutoContextRestore {
+ public:
+ AutoContextRestore();
+ ~AutoContextRestore();
+
+ private:
+ Context fOldContext;
+ GLint fOldWidth;
+ GLint fOldHeight;
+ GLint fOldFormat;
+ void* fOldImage;
+ };
+
protected:
virtual const GrGLInterface* createGLContext() SK_OVERRIDE;
void destroyGLContext() SK_OVERRIDE;
private:
- typedef intptr_t Context;
Context fContext;
GrGLubyte *fImage;
};
#endif
-#endif \ No newline at end of file
+#endif