Chromium Code Reviews| 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" | 
| (...skipping 21 matching lines...) Expand all Loading... | |
| 32 return CanvasRenderingContext::Context2d; | 32 return CanvasRenderingContext::Context2d; | 
| 33 } | 33 } | 
| 34 }; | 34 }; | 
| 35 | 35 | 
| 36 void commit(ExceptionState&); | 36 void commit(ExceptionState&); | 
| 37 | 37 | 
| 38 // CanvasRenderingContext implementation | 38 // CanvasRenderingContext implementation | 
| 39 ~OffscreenCanvasRenderingContext2D() override; | 39 ~OffscreenCanvasRenderingContext2D() override; | 
| 40 ContextType getContextType() const override { return Context2d; } | 40 ContextType getContextType() const override { return Context2d; } | 
| 41 bool is2d() const override { return true; } | 41 bool is2d() const override { return true; } | 
| 42 bool isAccelerated() const override; | |
| 42 void setOffscreenCanvasGetContextResult(OffscreenRenderingContext&) final; | 43 void setOffscreenCanvasGetContextResult(OffscreenRenderingContext&) final; | 
| 43 void setIsHidden(bool) final { ASSERT_NOT_REACHED(); } | 44 void setIsHidden(bool) final { ASSERT_NOT_REACHED(); } | 
| 44 void stop() final { ASSERT_NOT_REACHED(); } | 45 void stop() final { ASSERT_NOT_REACHED(); } | 
| 45 void setCanvasGetContextResult(RenderingContext&) final {} | 46 void setCanvasGetContextResult(RenderingContext&) final {} | 
| 46 void clearRect(double x, double y, double width, double height) override { B aseRenderingContext2D::clearRect(x, y, width, height); } | 47 void clearRect(double x, double y, double width, double height) override { B aseRenderingContext2D::clearRect(x, y, width, height); } | 
| 47 PassRefPtr<Image> getImage(AccelerationHint, SnapshotReason) const final; | 48 PassRefPtr<Image> getImage(AccelerationHint, SnapshotReason) const final; | 
| 48 | 49 | 
| 49 // BaseRenderingContext2D implementation | 50 // BaseRenderingContext2D implementation | 
| 50 bool originClean() const final; | 51 bool originClean() const final; | 
| 51 void setOriginTainted() final; | 52 void setOriginTainted() final; | 
| (...skipping 27 matching lines...) Expand all Loading... | |
| 79 | 80 | 
| 80 protected: | 81 protected: | 
| 81 OffscreenCanvasRenderingContext2D(ScriptState*, OffscreenCanvas*, const Canv asContextCreationAttributes& attrs); | 82 OffscreenCanvasRenderingContext2D(ScriptState*, OffscreenCanvas*, const Canv asContextCreationAttributes& attrs); | 
| 82 DECLARE_VIRTUAL_TRACE(); | 83 DECLARE_VIRTUAL_TRACE(); | 
| 83 | 84 | 
| 84 private: | 85 private: | 
| 85 bool m_needsMatrixClipRestore = false; | 86 bool m_needsMatrixClipRestore = false; | 
| 86 std::unique_ptr<ImageBuffer> m_imageBuffer; | 87 std::unique_ptr<ImageBuffer> m_imageBuffer; | 
| 87 | 88 | 
| 88 bool isPaintable() const final; | 89 bool isPaintable() const final; | 
| 90 | |
| 91 PassRefPtr<StaticBitmapImage> transferToStaticBitmapImage(); | |
| 
 
xidachen
2016/09/22 19:05:55
Please change this to RefPtr<> instead of PassRefP
 
xlai (Olivia)
2016/09/22 19:36:18
Done.
 
 | |
| 89 }; | 92 }; | 
| 90 | 93 | 
| 91 DEFINE_TYPE_CASTS(OffscreenCanvasRenderingContext2D, CanvasRenderingContext, con text, | 94 DEFINE_TYPE_CASTS(OffscreenCanvasRenderingContext2D, CanvasRenderingContext, con text, | 
| 92 context->is2d() && context->getOffscreenCanvas(), | 95 context->is2d() && context->getOffscreenCanvas(), | 
| 93 context.is2d() && context.getOffscreenCanvas()); | 96 context.is2d() && context.getOffscreenCanvas()); | 
| 94 | 97 | 
| 95 } // namespace blink | 98 } // namespace blink | 
| 96 | 99 | 
| 97 #endif // OffscreenCanvasRenderingContext2D_h | 100 #endif // OffscreenCanvasRenderingContext2D_h | 
| OLD | NEW |