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 BaseRenderingContext2D_h | 5 #ifndef BaseRenderingContext2D_h |
| 6 #define BaseRenderingContext2D_h | 6 #define BaseRenderingContext2D_h |
| 7 | 7 |
| 8 #include "bindings/modules/v8/CSSImageValueOrHTMLImageElementOrSVGImageElementOr HTMLVideoElementOrHTMLCanvasElementOrImageBitmapOrOffscreenCanvas.h" | 8 #include "bindings/modules/v8/CSSImageValueOrHTMLImageElementOrSVGImageElementOr HTMLVideoElementOrHTMLCanvasElementOrImageBitmapOrOffscreenCanvas.h" |
| 9 #include "bindings/modules/v8/StringOrCanvasGradientOrCanvasPattern.h" | 9 #include "bindings/modules/v8/StringOrCanvasGradientOrCanvasPattern.h" |
| 10 #include "core/html/ImageData.h" | 10 #include "core/html/ImageData.h" |
| 11 #include "core/html/canvas/CanvasRenderingContext.h" | |
|
fserb
2017/04/11 03:21:44
no need for this anymore.
zakerinasab
2017/04/11 19:52:59
Done.
| |
| 11 #include "modules/ModulesExport.h" | 12 #include "modules/ModulesExport.h" |
| 12 #include "modules/canvas2d/CanvasGradient.h" | 13 #include "modules/canvas2d/CanvasGradient.h" |
| 13 #include "modules/canvas2d/CanvasPathMethods.h" | 14 #include "modules/canvas2d/CanvasPathMethods.h" |
| 14 #include "modules/canvas2d/CanvasRenderingContext2DState.h" | 15 #include "modules/canvas2d/CanvasRenderingContext2DState.h" |
| 15 #include "modules/canvas2d/CanvasStyle.h" | 16 #include "modules/canvas2d/CanvasStyle.h" |
| 16 #include "platform/graphics/ColorBehavior.h" | 17 #include "platform/graphics/ColorBehavior.h" |
| 17 #include "platform/graphics/ExpensiveCanvasHeuristicParameters.h" | 18 #include "platform/graphics/ExpensiveCanvasHeuristicParameters.h" |
| 18 #include "platform/graphics/paint/PaintCanvas.h" | 19 #include "platform/graphics/paint/PaintCanvas.h" |
| 19 #include "third_party/skia/include/effects/SkComposeImageFilter.h" | 20 #include "third_party/skia/include/effects/SkComposeImageFilter.h" |
| 20 | 21 |
| (...skipping 210 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 231 virtual void ValidateStateStack() const = 0; | 232 virtual void ValidateStateStack() const = 0; |
| 232 | 233 |
| 233 virtual bool HasAlpha() const = 0; | 234 virtual bool HasAlpha() const = 0; |
| 234 | 235 |
| 235 virtual bool isContextLost() const = 0; | 236 virtual bool isContextLost() const = 0; |
| 236 | 237 |
| 237 virtual ColorBehavior DrawImageColorBehavior() const = 0; | 238 virtual ColorBehavior DrawImageColorBehavior() const = 0; |
| 238 | 239 |
| 239 virtual void WillDrawImage(CanvasImageSource*) const {} | 240 virtual void WillDrawImage(CanvasImageSource*) const {} |
| 240 | 241 |
| 242 virtual CanvasColorSpace ColorSpace() const { | |
| 243 return kLegacyCanvasColorSpace; | |
| 244 }; | |
| 245 virtual String ColorSpaceAsString() const { | |
| 246 return kLegacyCanvasColorSpaceName; | |
| 247 } | |
| 248 virtual CanvasPixelFormat PixelFormat() const { | |
| 249 return kRGBA8CanvasPixelFormat; | |
| 250 } | |
| 251 | |
| 241 void RestoreMatrixClipStack(PaintCanvas*) const; | 252 void RestoreMatrixClipStack(PaintCanvas*) const; |
| 242 | 253 |
| 243 DECLARE_VIRTUAL_TRACE(); | 254 DECLARE_VIRTUAL_TRACE(); |
| 244 | 255 |
| 245 enum DrawCallType { | 256 enum DrawCallType { |
| 246 kStrokePath = 0, | 257 kStrokePath = 0, |
| 247 kFillPath, | 258 kFillPath, |
| 248 kDrawVectorImage, | 259 kDrawVectorImage, |
| 249 kDrawBitmapImage, | 260 kDrawBitmapImage, |
| 250 kFillText, | 261 kFillText, |
| (...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 365 static bool IsFullCanvasCompositeMode(SkBlendMode); | 376 static bool IsFullCanvasCompositeMode(SkBlendMode); |
| 366 | 377 |
| 367 template <typename DrawFunc> | 378 template <typename DrawFunc> |
| 368 void CompositedDraw(const DrawFunc&, | 379 void CompositedDraw(const DrawFunc&, |
| 369 PaintCanvas*, | 380 PaintCanvas*, |
| 370 CanvasRenderingContext2DState::PaintType, | 381 CanvasRenderingContext2DState::PaintType, |
| 371 CanvasRenderingContext2DState::ImageType); | 382 CanvasRenderingContext2DState::ImageType); |
| 372 | 383 |
| 373 void ClearCanvas(); | 384 void ClearCanvas(); |
| 374 bool RectContainsTransformedRect(const FloatRect&, const SkIRect&) const; | 385 bool RectContainsTransformedRect(const FloatRect&, const SkIRect&) const; |
| 386 | |
| 387 bool ColorSettingsAsImageDataColorSettings(ImageDataColorSettings&) const; | |
|
fserb
2017/04/11 03:21:44
can we name this with a verb? Do you mean somethin
zakerinasab
2017/04/11 19:52:59
This method converts the canvas color settings (if
| |
| 388 | |
| 389 bool is_color_managed_; | |
| 375 }; | 390 }; |
| 376 | 391 |
| 377 template <typename DrawFunc, typename ContainsFunc> | 392 template <typename DrawFunc, typename ContainsFunc> |
| 378 bool BaseRenderingContext2D::Draw( | 393 bool BaseRenderingContext2D::Draw( |
| 379 const DrawFunc& draw_func, | 394 const DrawFunc& draw_func, |
| 380 const ContainsFunc& draw_covers_clip_bounds, | 395 const ContainsFunc& draw_covers_clip_bounds, |
| 381 const SkRect& bounds, | 396 const SkRect& bounds, |
| 382 CanvasRenderingContext2DState::PaintType paint_type, | 397 CanvasRenderingContext2DState::PaintType paint_type, |
| 383 CanvasRenderingContext2DState::ImageType image_type) { | 398 CanvasRenderingContext2DState::ImageType image_type) { |
| 384 if (!GetState().IsTransformInvertible()) | 399 if (!GetState().IsTransformInvertible()) |
| (...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 464 foreground_flags.setBlendMode(SkBlendMode::kSrcOver); | 479 foreground_flags.setBlendMode(SkBlendMode::kSrcOver); |
| 465 c->setMatrix(ctm); | 480 c->setMatrix(ctm); |
| 466 draw_func(c, &foreground_flags); | 481 draw_func(c, &foreground_flags); |
| 467 c->restore(); | 482 c->restore(); |
| 468 c->setMatrix(ctm); | 483 c->setMatrix(ctm); |
| 469 } | 484 } |
| 470 | 485 |
| 471 } // namespace blink | 486 } // namespace blink |
| 472 | 487 |
| 473 #endif // BaseRenderingContext2D_h | 488 #endif // BaseRenderingContext2D_h |
| OLD | NEW |