| Index: src/gpu/gl/GrGLGpu.h | 
| diff --git a/src/gpu/gl/GrGLGpu.h b/src/gpu/gl/GrGLGpu.h | 
| index 0356352529fe37aba0c6ea8892218d816114aa21..26c9588fcc3396ba78adc29a91cfb693759a72d6 100644 | 
| --- a/src/gpu/gl/GrGLGpu.h | 
| +++ b/src/gpu/gl/GrGLGpu.h | 
| @@ -314,6 +314,9 @@ private: | 
| // disables the scissor | 
| void disableScissor(); | 
|  | 
| +    void flushWindowRectangles(const GrWindowRectangles&, const GrGLRenderTarget*); | 
| +    void disableWindowRectangles(); | 
| + | 
| void initFSAASupport(); | 
|  | 
| // determines valid stencil formats | 
| @@ -419,6 +422,42 @@ private: | 
| } | 
| } fHWScissorSettings; | 
|  | 
| +    class { | 
| +    public: | 
| +        bool valid() const { return kInvalidOrigin != fOrigin; } | 
| +        void invalidate() { fOrigin = kInvalidOrigin; } | 
| + | 
| +        bool disabled() const { | 
| +            return this->valid() && Mode::kExclusive == fWindows.mode() && !fWindows.count(); | 
| +        } | 
| +        void setDisabled() { fOrigin = kDefault_GrSurfaceOrigin, fWindows.reset(); } | 
| + | 
| +        bool equal(GrSurfaceOrigin org, const GrGLIRect& viewp, | 
| +                   const GrWindowRectangles& windows) const { | 
| +            if (!this->valid()) { | 
| +                return false; | 
| +            } | 
| +            if (fWindows.count() && (fOrigin != org || fViewport != viewp)) { | 
| +                return false; | 
| +            } | 
| +            return fWindows == windows; | 
| +        } | 
| + | 
| +        void set(GrSurfaceOrigin org, const GrGLIRect& viewp, const GrWindowRectangles& windows) { | 
| +            fOrigin = org; | 
| +            fViewport = viewp; | 
| +            fWindows = windows; | 
| +        } | 
| + | 
| +    private: | 
| +        typedef GrWindowRectangles::Mode Mode; | 
| +        enum { kInvalidOrigin = -1 }; | 
| + | 
| +        int                  fOrigin; | 
| +        GrGLIRect            fViewport; | 
| +        GrWindowRectangles   fWindows; | 
| +    } fHWWindowRects; | 
| + | 
| GrGLIRect                   fHWViewport; | 
|  | 
| /** | 
|  |