| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef OffscreenCanvasRenderingContext2D_h | 5 #ifndef OffscreenCanvasRenderingContext2D_h |
| 6 #define OffscreenCanvasRenderingContext2D_h | 6 #define OffscreenCanvasRenderingContext2D_h |
| 7 | 7 |
| 8 #include "core/html/canvas/CanvasContextCreationAttributes.h" | 8 #include "core/html/canvas/CanvasContextCreationAttributes.h" |
| 9 #include "core/html/canvas/CanvasRenderingContext.h" | 9 #include "core/html/canvas/CanvasRenderingContext.h" |
| 10 #include "core/html/canvas/CanvasRenderingContextFactory.h" | 10 #include "core/html/canvas/CanvasRenderingContextFactory.h" |
| 11 #include "modules/canvas2d/BaseRenderingContext2D.h" | 11 #include "modules/canvas2d/BaseRenderingContext2D.h" |
| 12 | 12 |
| 13 namespace blink { | 13 namespace blink { |
| 14 | 14 |
| 15 class HTMLCanvasElement; | |
| 16 | |
| 17 class MODULES_EXPORT OffscreenCanvasRenderingContext2D final : public CanvasRend
eringContext, public BaseRenderingContext2D { | 15 class MODULES_EXPORT OffscreenCanvasRenderingContext2D final : public CanvasRend
eringContext, public BaseRenderingContext2D { |
| 18 DEFINE_WRAPPERTYPEINFO(); | 16 DEFINE_WRAPPERTYPEINFO(); |
| 19 USING_GARBAGE_COLLECTED_MIXIN(OffscreenCanvasRenderingContext2D); | 17 USING_GARBAGE_COLLECTED_MIXIN(OffscreenCanvasRenderingContext2D); |
| 20 public: | 18 public: |
| 21 class Factory : public CanvasRenderingContextFactory { | 19 class Factory : public CanvasRenderingContextFactory { |
| 22 public: | 20 public: |
| 23 Factory() {} | 21 Factory() {} |
| 24 ~Factory() override {} | 22 ~Factory() override {} |
| 25 | 23 |
| 26 CanvasRenderingContext* create(OffscreenCanvas* canvas, const CanvasCont
extCreationAttributes& attrs) override | 24 CanvasRenderingContext* create(ScriptState* scriptState, OffscreenCanvas
* canvas, const CanvasContextCreationAttributes& attrs) override |
| 27 { | 25 { |
| 28 return new OffscreenCanvasRenderingContext2D(canvas, attrs); | 26 return new OffscreenCanvasRenderingContext2D(canvas, attrs); |
| 29 } | 27 } |
| 30 | 28 |
| 31 CanvasRenderingContext::ContextType getContextType() const override | 29 CanvasRenderingContext::ContextType getContextType() const override |
| 32 { | 30 { |
| 33 return CanvasRenderingContext::Context2d; | 31 return CanvasRenderingContext::Context2d; |
| 34 } | 32 } |
| 35 }; | 33 }; |
| 36 | 34 |
| 37 // CanvasRenderingContext implementation | 35 // CanvasRenderingContext implementation |
| 38 ~OffscreenCanvasRenderingContext2D() override; | 36 ~OffscreenCanvasRenderingContext2D() override; |
| 39 ContextType getContextType() const override { return Context2d; } | 37 ContextType getContextType() const override { return Context2d; } |
| 40 bool is2d() const override { return true; } | 38 bool is2d() const override { return true; } |
| 39 void setOffscreenCanvasGetContextResult(OffscreenRenderingContext&) final; |
| 41 void setIsHidden(bool) final { ASSERT_NOT_REACHED(); } | 40 void setIsHidden(bool) final { ASSERT_NOT_REACHED(); } |
| 42 void stop() final { ASSERT_NOT_REACHED(); } | 41 void stop() final { ASSERT_NOT_REACHED(); } |
| 43 void setCanvasGetContextResult(RenderingContext&) final {} | 42 void setCanvasGetContextResult(RenderingContext&) final {} |
| 44 void clearRect(double x, double y, double width, double height) override { B
aseRenderingContext2D::clearRect(x, y, width, height); } | 43 void clearRect(double x, double y, double width, double height) override { B
aseRenderingContext2D::clearRect(x, y, width, height); } |
| 45 | 44 |
| 46 // BaseRenderingContext2D implementation | 45 // BaseRenderingContext2D implementation |
| 47 bool originClean() const final; | 46 bool originClean() const final; |
| 48 void setOriginTainted() final; | 47 void setOriginTainted() final; |
| 49 bool wouldTaintOrigin(CanvasImageSource*, ScriptState*) final; | 48 bool wouldTaintOrigin(CanvasImageSource*, ScriptState*) final; |
| 50 | 49 |
| (...skipping 29 matching lines...) Expand all Loading... |
| 80 | 79 |
| 81 private: | 80 private: |
| 82 bool m_hasAlpha; | 81 bool m_hasAlpha; |
| 83 bool m_originClean = true; | 82 bool m_originClean = true; |
| 84 OwnPtr<ImageBuffer> m_imageBuffer; | 83 OwnPtr<ImageBuffer> m_imageBuffer; |
| 85 }; | 84 }; |
| 86 | 85 |
| 87 } // namespace blink | 86 } // namespace blink |
| 88 | 87 |
| 89 #endif // OffscreenCanvasRenderingContext2D_h | 88 #endif // OffscreenCanvasRenderingContext2D_h |
| OLD | NEW |