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

Side by Side Diff: Source/platform/graphics/ImageBuffer.h

Issue 416093002: Use GraphicContext::drawImageBuffer in FEBlend (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Rebase; Merge rebaselines. Created 6 years, 5 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 | Annotate | Revision Log
« no previous file with comments | « Source/platform/graphics/GraphicsContext.cpp ('k') | Source/platform/graphics/ImageBuffer.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2006 Nikolas Zimmermann <zimmermann@kde.org> 2 * Copyright (C) 2006 Nikolas Zimmermann <zimmermann@kde.org>
3 * Copyright (C) 2007, 2008, 2009 Apple Inc. All rights reserved. 3 * Copyright (C) 2007, 2008, 2009 Apple Inc. All rights reserved.
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 109 matching lines...) Expand 10 before | Expand all | Expand 10 after
120 bool copyRenderingResultsFromDrawingBuffer(DrawingBuffer*, bool fromFrontBuf fer = false); 120 bool copyRenderingResultsFromDrawingBuffer(DrawingBuffer*, bool fromFrontBuf fer = false);
121 121
122 void flush(); 122 void flush();
123 123
124 void notifySurfaceInvalid(); 124 void notifySurfaceInvalid();
125 void didPresent(); 125 void didPresent();
126 126
127 private: 127 private:
128 ImageBuffer(PassOwnPtr<ImageBufferSurface>); 128 ImageBuffer(PassOwnPtr<ImageBufferSurface>);
129 129
130 void draw(GraphicsContext*, const FloatRect&, const FloatRect* = 0, Composit eOperator = CompositeSourceOver); 130 void draw(GraphicsContext*, const FloatRect&, const FloatRect* = 0, Composit eOperator = CompositeSourceOver, WebBlendMode = WebBlendModeNormal);
131 void drawPattern(GraphicsContext*, const FloatRect&, const FloatSize&, const FloatPoint&, CompositeOperator, const FloatRect&, blink::WebBlendMode, const In tSize& repeatSpacing = IntSize()); 131 void drawPattern(GraphicsContext*, const FloatRect&, const FloatSize&, const FloatPoint&, CompositeOperator, const FloatRect&, blink::WebBlendMode, const In tSize& repeatSpacing = IntSize());
132 static PassRefPtr<SkColorFilter> createColorSpaceFilter(ColorSpace srcColorS pace, ColorSpace dstColorSpace); 132 static PassRefPtr<SkColorFilter> createColorSpaceFilter(ColorSpace srcColorS pace, ColorSpace dstColorSpace);
133 133
134 friend class GraphicsContext; 134 friend class GraphicsContext;
135 friend class GeneratedImage; 135 friend class GeneratedImage;
136 friend class CrossfadeGeneratedImage; 136 friend class CrossfadeGeneratedImage;
137 friend class GradientGeneratedImage; 137 friend class GradientGeneratedImage;
138 friend class SkiaImageFilterBuilder; 138 friend class SkiaImageFilterBuilder;
139 139
140 OwnPtr<ImageBufferSurface> m_surface; 140 OwnPtr<ImageBufferSurface> m_surface;
141 OwnPtr<GraphicsContext> m_context; 141 OwnPtr<GraphicsContext> m_context;
142 ImageBufferClient* m_client; 142 ImageBufferClient* m_client;
143 }; 143 };
144 144
145 struct ImageDataBuffer { 145 struct ImageDataBuffer {
146 ImageDataBuffer(const IntSize& size, PassRefPtr<Uint8ClampedArray> data) : m _size(size), m_data(data) { } 146 ImageDataBuffer(const IntSize& size, PassRefPtr<Uint8ClampedArray> data) : m _size(size), m_data(data) { }
147 IntSize size() const { return m_size; } 147 IntSize size() const { return m_size; }
148 unsigned char* data() const { return m_data->data(); } 148 unsigned char* data() const { return m_data->data(); }
149 149
150 IntSize m_size; 150 IntSize m_size;
151 RefPtr<Uint8ClampedArray> m_data; 151 RefPtr<Uint8ClampedArray> m_data;
152 }; 152 };
153 153
154 String PLATFORM_EXPORT ImageDataToDataURL(const ImageDataBuffer&, const String& mimeType, const double* quality); 154 String PLATFORM_EXPORT ImageDataToDataURL(const ImageDataBuffer&, const String& mimeType, const double* quality);
155 155
156 } // namespace blink 156 } // namespace blink
157 157
158 #endif // ImageBuffer_h 158 #endif // ImageBuffer_h
OLDNEW
« no previous file with comments | « Source/platform/graphics/GraphicsContext.cpp ('k') | Source/platform/graphics/ImageBuffer.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698