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

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

Issue 2594843002: Implementing promise-based commit for driving OffscreenCanvas animations (Closed)
Patch Set: test fix Created 3 years, 12 months 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(ScriptState*, ExceptionState&); 40 ScriptPromise 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 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
94 const CanvasContextCreationAttributes& attrs); 94 const CanvasContextCreationAttributes& attrs);
95 DECLARE_VIRTUAL_TRACE(); 95 DECLARE_VIRTUAL_TRACE();
96 96
97 private: 97 private:
98 bool m_needsMatrixClipRestore = false; 98 bool m_needsMatrixClipRestore = false;
99 std::unique_ptr<ImageBuffer> m_imageBuffer; 99 std::unique_ptr<ImageBuffer> m_imageBuffer;
100 100
101 bool isPaintable() const final; 101 bool isPaintable() const final;
102 102
103 RefPtr<StaticBitmapImage> transferToStaticBitmapImage(); 103 RefPtr<StaticBitmapImage> transferToStaticBitmapImage();
104 void doCommit(RefPtr<StaticBitmapImage>);
xlai (Olivia) 2016/12/21 19:54:25 I am confused that you add a function signature in
Justin Novosad 2016/12/21 21:15:40 Good catch. This is unused. It is a leftover from
104 }; 105 };
105 106
106 DEFINE_TYPE_CASTS(OffscreenCanvasRenderingContext2D, 107 DEFINE_TYPE_CASTS(OffscreenCanvasRenderingContext2D,
107 CanvasRenderingContext, 108 CanvasRenderingContext,
108 context, 109 context,
109 context->is2d() && context->getOffscreenCanvas(), 110 context->is2d() && context->offscreenCanvas(),
110 context.is2d() && context.getOffscreenCanvas()); 111 context.is2d() && context.offscreenCanvas());
111 112
112 } // namespace blink 113 } // namespace blink
113 114
114 #endif // OffscreenCanvasRenderingContext2D_h 115 #endif // OffscreenCanvasRenderingContext2D_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698