| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2004, 2006, 2009, 2010 Apple Inc. All rights reserved. | 2 * Copyright (C) 2004, 2006, 2009, 2010 Apple Inc. All rights reserved. |
| 3 * Copyright (C) 2007 Alp Toker <alp@atoker.com> | 3 * Copyright (C) 2007 Alp Toker <alp@atoker.com> |
| 4 * Copyright (C) 2010 Torch Mobile (Beijing) Co. Ltd. All rights reserved. | 4 * Copyright (C) 2010 Torch Mobile (Beijing) Co. Ltd. All rights reserved. |
| 5 * | 5 * |
| 6 * Redistribution and use in source and binary forms, with or without | 6 * Redistribution and use in source and binary forms, with or without |
| 7 * modification, are permitted provided that the following conditions | 7 * modification, are permitted provided that the following conditions |
| 8 * are met: | 8 * are met: |
| 9 * 1. Redistributions of source code must retain the above copyright | 9 * 1. Redistributions of source code must retain the above copyright |
| 10 * notice, this list of conditions and the following disclaimer. | 10 * notice, this list of conditions and the following disclaimer. |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 42 #include "platform/heap/Handle.h" | 42 #include "platform/heap/Handle.h" |
| 43 | 43 |
| 44 #define CanvasDefaultInterpolationQuality InterpolationLow | 44 #define CanvasDefaultInterpolationQuality InterpolationLow |
| 45 | 45 |
| 46 namespace blink { | 46 namespace blink { |
| 47 | 47 |
| 48 class AffineTransform; | 48 class AffineTransform; |
| 49 class CanvasContextCreationAttributes; | 49 class CanvasContextCreationAttributes; |
| 50 class CanvasRenderingContext; | 50 class CanvasRenderingContext; |
| 51 class GraphicsContext; | 51 class GraphicsContext; |
| 52 class GraphicsContextStateSaver; | |
| 53 class HTMLCanvasElement; | 52 class HTMLCanvasElement; |
| 54 class Image; | 53 class Image; |
| 55 class ImageBuffer; | 54 class ImageBuffer; |
| 56 class ImageBufferSurface; | 55 class ImageBufferSurface; |
| 57 class IntSize; | 56 class IntSize; |
| 58 | 57 |
| 59 class CORE_EXPORT CanvasObserver : public WillBeGarbageCollectedMixin { | 58 class CORE_EXPORT CanvasObserver : public WillBeGarbageCollectedMixin { |
| 60 DECLARE_EMPTY_VIRTUAL_DESTRUCTOR_WILL_BE_REMOVED(CanvasObserver); | 59 DECLARE_EMPTY_VIRTUAL_DESTRUCTOR_WILL_BE_REMOVED(CanvasObserver); |
| 61 public: | 60 public: |
| 62 virtual void canvasChanged(HTMLCanvasElement*, const FloatRect& changedRect)
= 0; | 61 virtual void canvasChanged(HTMLCanvasElement*, const FloatRect& changedRect)
= 0; |
| (...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 109 static String toEncodingMimeType(const String& mimeType); | 108 static String toEncodingMimeType(const String& mimeType); |
| 110 String toDataURL(const String& mimeType, const ScriptValue& qualityArgument,
ExceptionState&) const; | 109 String toDataURL(const String& mimeType, const ScriptValue& qualityArgument,
ExceptionState&) const; |
| 111 String toDataURL(const String& mimeType, ExceptionState& exceptionState) con
st { return toDataURL(mimeType, ScriptValue(), exceptionState); } | 110 String toDataURL(const String& mimeType, ExceptionState& exceptionState) con
st { return toDataURL(mimeType, ScriptValue(), exceptionState); } |
| 112 | 111 |
| 113 // Used for rendering | 112 // Used for rendering |
| 114 void didDraw(const FloatRect&); | 113 void didDraw(const FloatRect&); |
| 115 void notifyObserversCanvasChanged(const FloatRect&); | 114 void notifyObserversCanvasChanged(const FloatRect&); |
| 116 | 115 |
| 117 void paint(GraphicsContext*, const LayoutRect&); | 116 void paint(GraphicsContext*, const LayoutRect&); |
| 118 | 117 |
| 119 GraphicsContext* drawingContext() const; // Deprecated: use drawingCanvas | |
| 120 SkCanvas* drawingCanvas() const; | 118 SkCanvas* drawingCanvas() const; |
| 121 SkCanvas* existingDrawingCanvas() const; | 119 SkCanvas* existingDrawingCanvas() const; |
| 122 | 120 |
| 123 CanvasRenderingContext* renderingContext() const { return m_context.get(); } | 121 CanvasRenderingContext* renderingContext() const { return m_context.get(); } |
| 124 | 122 |
| 125 void ensureUnacceleratedImageBuffer(); | 123 void ensureUnacceleratedImageBuffer(); |
| 126 ImageBuffer* buffer() const; | 124 ImageBuffer* buffer() const; |
| 127 PassRefPtr<Image> copiedImage(SourceDrawingBuffer) const; | 125 PassRefPtr<Image> copiedImage(SourceDrawingBuffer) const; |
| 128 void clearCopiedImage(); | 126 void clearCopiedImage(); |
| 129 | 127 |
| (...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 206 | 204 |
| 207 mutable intptr_t m_externallyAllocatedMemory; | 205 mutable intptr_t m_externallyAllocatedMemory; |
| 208 | 206 |
| 209 bool m_originClean; | 207 bool m_originClean; |
| 210 | 208 |
| 211 // It prevents HTMLCanvasElement::buffer() from continuously re-attempting t
o allocate an imageBuffer | 209 // It prevents HTMLCanvasElement::buffer() from continuously re-attempting t
o allocate an imageBuffer |
| 212 // after the first attempt failed. | 210 // after the first attempt failed. |
| 213 mutable bool m_didFailToCreateImageBuffer; | 211 mutable bool m_didFailToCreateImageBuffer; |
| 214 bool m_imageBufferIsClear; | 212 bool m_imageBufferIsClear; |
| 215 OwnPtr<ImageBuffer> m_imageBuffer; | 213 OwnPtr<ImageBuffer> m_imageBuffer; |
| 216 mutable OwnPtr<GraphicsContextStateSaver> m_contextStateSaver; | |
| 217 | 214 |
| 218 mutable RefPtr<Image> m_copiedImage; // FIXME: This is temporary for platfor
ms that have to copy the image buffer to render (and for CSSCanvasValue). | 215 mutable RefPtr<Image> m_copiedImage; // FIXME: This is temporary for platfor
ms that have to copy the image buffer to render (and for CSSCanvasValue). |
| 219 }; | 216 }; |
| 220 | 217 |
| 221 } // namespace blink | 218 } // namespace blink |
| 222 | 219 |
| 223 #endif // HTMLCanvasElement_h | 220 #endif // HTMLCanvasElement_h |
| OLD | NEW |