Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(7)

Side by Side Diff: third_party/WebKit/Source/modules/offscreencanvas2d/OffscreenCanvasRenderingContext2D.h

Issue 2411703004: Add usage counter to OffscreenCanvas API calls (Closed)
Patch Set: fix compile error Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 19 matching lines...) Expand all
30 OffscreenCanvas* canvas, 30 OffscreenCanvas* canvas,
31 const CanvasContextCreationAttributes& attrs) override { 31 const CanvasContextCreationAttributes& attrs) override {
32 return new OffscreenCanvasRenderingContext2D(scriptState, canvas, attrs); 32 return new OffscreenCanvasRenderingContext2D(scriptState, canvas, attrs);
33 } 33 }
34 34
35 CanvasRenderingContext::ContextType getContextType() const override { 35 CanvasRenderingContext::ContextType getContextType() const override {
36 return CanvasRenderingContext::Context2d; 36 return CanvasRenderingContext::Context2d;
37 } 37 }
38 }; 38 };
39 39
40 void commit(ExceptionState&); 40 void commit(ScriptState*, ExceptionState&);
41 41
42 // CanvasRenderingContext implementation 42 // CanvasRenderingContext implementation
43 ~OffscreenCanvasRenderingContext2D() override; 43 ~OffscreenCanvasRenderingContext2D() override;
44 ContextType getContextType() const override { return Context2d; } 44 ContextType getContextType() const override { return Context2d; }
45 bool is2d() const override { return true; } 45 bool is2d() const override { return true; }
46 void setOffscreenCanvasGetContextResult(OffscreenRenderingContext&) final; 46 void setOffscreenCanvasGetContextResult(OffscreenRenderingContext&) final;
47 void setIsHidden(bool) final { ASSERT_NOT_REACHED(); } 47 void setIsHidden(bool) final { ASSERT_NOT_REACHED(); }
48 void stop() final { ASSERT_NOT_REACHED(); } 48 void stop() final { ASSERT_NOT_REACHED(); }
49 void setCanvasGetContextResult(RenderingContext&) final {} 49 void setCanvasGetContextResult(RenderingContext&) final {}
50 void clearRect(double x, double y, double width, double height) override { 50 void clearRect(double x, double y, double width, double height) override {
(...skipping 24 matching lines...) Expand all
75 75
76 bool stateHasFilter() final; 76 bool stateHasFilter() final;
77 SkImageFilter* stateGetFilter() final; 77 SkImageFilter* stateGetFilter() final;
78 void snapshotStateForFilter() final {} 78 void snapshotStateForFilter() final {}
79 79
80 void validateStateStack() const final; 80 void validateStateStack() const final;
81 81
82 bool hasAlpha() const final { return creationAttributes().alpha(); } 82 bool hasAlpha() const final { return creationAttributes().alpha(); }
83 bool isContextLost() const override; 83 bool isContextLost() const override;
84 84
85 ImageBitmap* transferToImageBitmap() final; 85 ImageBitmap* transferToImageBitmap(ScriptState*) final;
86 86
87 protected: 87 protected:
88 OffscreenCanvasRenderingContext2D( 88 OffscreenCanvasRenderingContext2D(
89 ScriptState*, 89 ScriptState*,
90 OffscreenCanvas*, 90 OffscreenCanvas*,
91 const CanvasContextCreationAttributes& attrs); 91 const CanvasContextCreationAttributes& attrs);
92 DECLARE_VIRTUAL_TRACE(); 92 DECLARE_VIRTUAL_TRACE();
93 93
94 private: 94 private:
95 bool m_needsMatrixClipRestore = false; 95 bool m_needsMatrixClipRestore = false;
96 std::unique_ptr<ImageBuffer> m_imageBuffer; 96 std::unique_ptr<ImageBuffer> m_imageBuffer;
97 97
98 bool isPaintable() const final; 98 bool isPaintable() const final;
99 99
100 RefPtr<StaticBitmapImage> transferToStaticBitmapImage(); 100 RefPtr<StaticBitmapImage> transferToStaticBitmapImage();
101 }; 101 };
102 102
103 DEFINE_TYPE_CASTS(OffscreenCanvasRenderingContext2D, 103 DEFINE_TYPE_CASTS(OffscreenCanvasRenderingContext2D,
104 CanvasRenderingContext, 104 CanvasRenderingContext,
105 context, 105 context,
106 context->is2d() && context->getOffscreenCanvas(), 106 context->is2d() && context->getOffscreenCanvas(),
107 context.is2d() && context.getOffscreenCanvas()); 107 context.is2d() && context.getOffscreenCanvas());
108 108
109 } // namespace blink 109 } // namespace blink
110 110
111 #endif // OffscreenCanvasRenderingContext2D_h 111 #endif // OffscreenCanvasRenderingContext2D_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698