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 #include "modules/offscreencanvas2d/OffscreenCanvasRenderingContext2D.h" | 5 #include "modules/offscreencanvas2d/OffscreenCanvasRenderingContext2D.h" |
6 | 6 |
7 #include "bindings/modules/v8/OffscreenCanvasRenderingContext2DOrWebGLRenderingC
ontextOrWebGL2RenderingContext.h" | 7 #include "bindings/modules/v8/OffscreenCanvasRenderingContext2DOrWebGLRenderingC
ontextOrWebGL2RenderingContext.h" |
8 #include "core/frame/ImageBitmap.h" | 8 #include "core/frame/ImageBitmap.h" |
9 #include "core/frame/Settings.h" | 9 #include "core/frame/Settings.h" |
10 #include "core/workers/WorkerGlobalScope.h" | 10 #include "core/workers/WorkerGlobalScope.h" |
11 #include "core/workers/WorkerSettings.h" | 11 #include "core/workers/WorkerSettings.h" |
12 #include "platform/graphics/ImageBuffer.h" | 12 #include "platform/graphics/ImageBuffer.h" |
13 #include "platform/graphics/StaticBitmapImage.h" | 13 #include "platform/graphics/StaticBitmapImage.h" |
14 #include "platform/graphics/UnacceleratedImageBufferSurface.h" | 14 #include "platform/graphics/UnacceleratedImageBufferSurface.h" |
15 #include "platform/graphics/gpu/AcceleratedImageBufferSurface.h" | 15 #include "platform/graphics/gpu/AcceleratedImageBufferSurface.h" |
| 16 #include "platform/graphics/paint/PaintCanvas.h" |
16 #include "wtf/Assertions.h" | 17 #include "wtf/Assertions.h" |
17 #include "wtf/CurrentTime.h" | 18 #include "wtf/CurrentTime.h" |
18 | 19 |
19 namespace blink { | 20 namespace blink { |
20 | 21 |
21 OffscreenCanvasRenderingContext2D::~OffscreenCanvasRenderingContext2D() {} | 22 OffscreenCanvasRenderingContext2D::~OffscreenCanvasRenderingContext2D() {} |
22 | 23 |
23 OffscreenCanvasRenderingContext2D::OffscreenCanvasRenderingContext2D( | 24 OffscreenCanvasRenderingContext2D::OffscreenCanvasRenderingContext2D( |
24 ScriptState* scriptState, | 25 ScriptState* scriptState, |
25 OffscreenCanvas* canvas, | 26 OffscreenCanvas* canvas, |
(...skipping 169 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
195 OffscreenRenderingContext& result) { | 196 OffscreenRenderingContext& result) { |
196 result.setOffscreenCanvasRenderingContext2D(this); | 197 result.setOffscreenCanvasRenderingContext2D(this); |
197 } | 198 } |
198 | 199 |
199 bool OffscreenCanvasRenderingContext2D::parseColorOrCurrentColor( | 200 bool OffscreenCanvasRenderingContext2D::parseColorOrCurrentColor( |
200 Color& color, | 201 Color& color, |
201 const String& colorString) const { | 202 const String& colorString) const { |
202 return ::blink::parseColorOrCurrentColor(color, colorString, nullptr); | 203 return ::blink::parseColorOrCurrentColor(color, colorString, nullptr); |
203 } | 204 } |
204 | 205 |
205 SkCanvas* OffscreenCanvasRenderingContext2D::drawingCanvas() const { | 206 PaintCanvas* OffscreenCanvasRenderingContext2D::drawingCanvas() const { |
206 ImageBuffer* buffer = imageBuffer(); | 207 ImageBuffer* buffer = imageBuffer(); |
207 if (!buffer) | 208 if (!buffer) |
208 return nullptr; | 209 return nullptr; |
209 return imageBuffer()->canvas(); | 210 return imageBuffer()->canvas(); |
210 } | 211 } |
211 | 212 |
212 SkCanvas* OffscreenCanvasRenderingContext2D::existingDrawingCanvas() const { | 213 PaintCanvas* OffscreenCanvasRenderingContext2D::existingDrawingCanvas() const { |
213 if (!m_imageBuffer) | 214 if (!m_imageBuffer) |
214 return nullptr; | 215 return nullptr; |
215 return m_imageBuffer->canvas(); | 216 return m_imageBuffer->canvas(); |
216 } | 217 } |
217 | 218 |
218 void OffscreenCanvasRenderingContext2D::disableDeferral(DisableDeferralReason) { | 219 void OffscreenCanvasRenderingContext2D::disableDeferral(DisableDeferralReason) { |
219 } | 220 } |
220 | 221 |
221 AffineTransform OffscreenCanvasRenderingContext2D::baseTransform() const { | 222 AffineTransform OffscreenCanvasRenderingContext2D::baseTransform() const { |
222 if (!m_imageBuffer) | 223 if (!m_imageBuffer) |
(...skipping 12 matching lines...) Expand all Loading... |
235 | 236 |
236 sk_sp<SkImageFilter> OffscreenCanvasRenderingContext2D::stateGetFilter() { | 237 sk_sp<SkImageFilter> OffscreenCanvasRenderingContext2D::stateGetFilter() { |
237 // TODO: make getFilter accept nullptr | 238 // TODO: make getFilter accept nullptr |
238 // return state().getFilter(nullptr, nullptr, IntSize(width(), height()), | 239 // return state().getFilter(nullptr, nullptr, IntSize(width(), height()), |
239 // this); | 240 // this); |
240 return nullptr; | 241 return nullptr; |
241 } | 242 } |
242 | 243 |
243 void OffscreenCanvasRenderingContext2D::validateStateStack() const { | 244 void OffscreenCanvasRenderingContext2D::validateStateStack() const { |
244 #if DCHECK_IS_ON() | 245 #if DCHECK_IS_ON() |
245 if (SkCanvas* skCanvas = existingDrawingCanvas()) { | 246 if (PaintCanvas* skCanvas = existingDrawingCanvas()) { |
246 DCHECK_EQ(static_cast<size_t>(skCanvas->getSaveCount()), | 247 DCHECK_EQ(static_cast<size_t>(skCanvas->getSaveCount()), |
247 m_stateStack.size() + 1); | 248 m_stateStack.size() + 1); |
248 } | 249 } |
249 #endif | 250 #endif |
250 } | 251 } |
251 | 252 |
252 bool OffscreenCanvasRenderingContext2D::isContextLost() const { | 253 bool OffscreenCanvasRenderingContext2D::isContextLost() const { |
253 return false; | 254 return false; |
254 } | 255 } |
255 | 256 |
256 bool OffscreenCanvasRenderingContext2D::isPaintable() const { | 257 bool OffscreenCanvasRenderingContext2D::isPaintable() const { |
257 return this->imageBuffer(); | 258 return this->imageBuffer(); |
258 } | 259 } |
259 } | 260 } |
OLD | NEW |