OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2007, 2008 Rob Buis <buis@kde.org> | 2 * Copyright (C) 2007, 2008 Rob Buis <buis@kde.org> |
3 * Copyright (C) 2007 Nikolas Zimmermann <zimmermann@kde.org> | 3 * Copyright (C) 2007 Nikolas Zimmermann <zimmermann@kde.org> |
4 * Copyright (C) 2007 Eric Seidel <eric@webkit.org> | 4 * Copyright (C) 2007 Eric Seidel <eric@webkit.org> |
5 * Copyright (C) 2009 Google, Inc. All rights reserved. | 5 * Copyright (C) 2009 Google, Inc. All rights reserved. |
6 * Copyright (C) 2009 Dirk Schulze <krit@webkit.org> | 6 * Copyright (C) 2009 Dirk Schulze <krit@webkit.org> |
7 * Copyright (C) Research In Motion Limited 2009-2010. All rights reserved. | 7 * Copyright (C) Research In Motion Limited 2009-2010. All rights reserved. |
8 * | 8 * |
9 * This library is free software; you can redistribute it and/or | 9 * This library is free software; you can redistribute it and/or |
10 * modify it under the terms of the GNU Library General Public | 10 * modify it under the terms of the GNU Library General Public |
(...skipping 12 matching lines...) Expand all Loading... |
23 */ | 23 */ |
24 | 24 |
25 #include "config.h" | 25 #include "config.h" |
26 | 26 |
27 #include "core/rendering/svg/SVGRenderingContext.h" | 27 #include "core/rendering/svg/SVGRenderingContext.h" |
28 | 28 |
29 #include "core/frame/FrameHost.h" | 29 #include "core/frame/FrameHost.h" |
30 #include "core/frame/FrameView.h" | 30 #include "core/frame/FrameView.h" |
31 #include "core/frame/LocalFrame.h" | 31 #include "core/frame/LocalFrame.h" |
32 #include "core/frame/Settings.h" | 32 #include "core/frame/Settings.h" |
| 33 #include "core/paint/SVGImagePainter.h" |
33 #include "core/rendering/RenderLayer.h" | 34 #include "core/rendering/RenderLayer.h" |
34 #include "core/rendering/svg/RenderSVGImage.h" | 35 #include "core/rendering/svg/RenderSVGImage.h" |
35 #include "core/rendering/svg/RenderSVGResource.h" | 36 #include "core/rendering/svg/RenderSVGResource.h" |
36 #include "core/rendering/svg/RenderSVGResourceFilter.h" | 37 #include "core/rendering/svg/RenderSVGResourceFilter.h" |
37 #include "core/rendering/svg/RenderSVGResourceMasker.h" | 38 #include "core/rendering/svg/RenderSVGResourceMasker.h" |
38 #include "core/rendering/svg/SVGResources.h" | 39 #include "core/rendering/svg/SVGResources.h" |
39 #include "core/rendering/svg/SVGResourcesCache.h" | 40 #include "core/rendering/svg/SVGResourcesCache.h" |
40 #include "platform/FloatConversion.h" | 41 #include "platform/FloatConversion.h" |
41 | 42 |
42 static int kMaxImageBufferSize = 4096; | 43 static int kMaxImageBufferSize = 4096; |
(...skipping 250 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
293 imageBuffer.clear(); | 294 imageBuffer.clear(); |
294 } | 295 } |
295 | 296 |
296 // Create a new buffer and paint the foreground into it. | 297 // Create a new buffer and paint the foreground into it. |
297 if (!imageBuffer) { | 298 if (!imageBuffer) { |
298 if ((imageBuffer = m_paintInfo->context->createRasterBuffer(expandedIntS
ize(boundingBox.size())))) { | 299 if ((imageBuffer = m_paintInfo->context->createRasterBuffer(expandedIntS
ize(boundingBox.size())))) { |
299 GraphicsContext* bufferedRenderingContext = imageBuffer->context(); | 300 GraphicsContext* bufferedRenderingContext = imageBuffer->context(); |
300 bufferedRenderingContext->translate(-boundingBox.x(), -boundingBox.y
()); | 301 bufferedRenderingContext->translate(-boundingBox.x(), -boundingBox.y
()); |
301 PaintInfo bufferedInfo(*m_paintInfo); | 302 PaintInfo bufferedInfo(*m_paintInfo); |
302 bufferedInfo.context = bufferedRenderingContext; | 303 bufferedInfo.context = bufferedRenderingContext; |
303 toRenderSVGImage(m_object)->paintForeground(bufferedInfo); | 304 SVGImagePainter::paintForeground(toRenderSVGImage(*m_object), buffer
edInfo); |
304 } else | 305 } else |
305 return false; | 306 return false; |
306 } | 307 } |
307 | 308 |
308 m_paintInfo->context->drawImageBuffer(imageBuffer.get(), boundingBox); | 309 m_paintInfo->context->drawImageBuffer(imageBuffer.get(), boundingBox); |
309 return true; | 310 return true; |
310 } | 311 } |
311 | 312 |
312 } // namespace blink | 313 } // namespace blink |
OLD | NEW |