| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2012 Adobe Systems Incorporated. All rights reserved. | 2 * Copyright (C) 2012 Adobe Systems Incorporated. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
| 6 * are met: | 6 * are met: |
| 7 * | 7 * |
| 8 * 1. Redistributions of source code must retain the above | 8 * 1. Redistributions of source code must retain the above |
| 9 * copyright notice, this list of conditions and the following | 9 * copyright notice, this list of conditions and the following |
| 10 * disclaimer. | 10 * disclaimer. |
| (...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 107 PassOwnPtr<Shape> ShapeOutsideInfo::createShapeForImage(StyleImage* styleImage,
float shapeImageThreshold, WritingMode writingMode, float margin) const | 107 PassOwnPtr<Shape> ShapeOutsideInfo::createShapeForImage(StyleImage* styleImage,
float shapeImageThreshold, WritingMode writingMode, float margin) const |
| 108 { | 108 { |
| 109 const IntSize& imageSize = m_renderer.calculateImageIntrinsicDimensions(styl
eImage, roundedIntSize(m_referenceBoxLogicalSize), RenderImage::ScaleByEffective
Zoom); | 109 const IntSize& imageSize = m_renderer.calculateImageIntrinsicDimensions(styl
eImage, roundedIntSize(m_referenceBoxLogicalSize), RenderImage::ScaleByEffective
Zoom); |
| 110 styleImage->setContainerSizeForRenderer(&m_renderer, imageSize, m_renderer.s
tyle()->effectiveZoom()); | 110 styleImage->setContainerSizeForRenderer(&m_renderer, imageSize, m_renderer.s
tyle()->effectiveZoom()); |
| 111 | 111 |
| 112 const LayoutRect& marginRect = getShapeImageMarginRect(m_renderer, m_referen
ceBoxLogicalSize); | 112 const LayoutRect& marginRect = getShapeImageMarginRect(m_renderer, m_referen
ceBoxLogicalSize); |
| 113 const LayoutRect& imageRect = (m_renderer.isRenderImage()) | 113 const LayoutRect& imageRect = (m_renderer.isRenderImage()) |
| 114 ? toRenderImage(&m_renderer)->replacedContentRect() | 114 ? toRenderImage(&m_renderer)->replacedContentRect() |
| 115 : LayoutRect(LayoutPoint(), imageSize); | 115 : LayoutRect(LayoutPoint(), imageSize); |
| 116 | 116 |
| 117 Image* image = 0; | 117 ASSERT(!styleImage->isPendingImage()); |
| 118 RefPtr<Image> generatedImage; | 118 RefPtr<Image> image = styleImage->image(const_cast<RenderBox*>(&m_renderer),
imageSize); |
| 119 | 119 |
| 120 if (styleImage->isImageResource() || styleImage->isImageResourceSet()) { | 120 return Shape::createRasterShape(image.get(), shapeImageThreshold, imageRect,
marginRect, writingMode, margin); |
| 121 image = styleImage->cachedImage()->imageForRenderer(&m_renderer); | |
| 122 } else if (styleImage->isGeneratedImage()) { | |
| 123 generatedImage = styleImage->image(const_cast<RenderBox*>(&m_renderer),
imageSize); | |
| 124 image = generatedImage.get(); | |
| 125 } | |
| 126 | |
| 127 return Shape::createRasterShape(image, shapeImageThreshold, imageRect, margi
nRect, writingMode, margin); | |
| 128 } | 121 } |
| 129 | 122 |
| 130 const Shape& ShapeOutsideInfo::computedShape() const | 123 const Shape& ShapeOutsideInfo::computedShape() const |
| 131 { | 124 { |
| 132 if (Shape* shape = m_shape.get()) | 125 if (Shape* shape = m_shape.get()) |
| 133 return *shape; | 126 return *shape; |
| 134 | 127 |
| 135 const RenderStyle& style = *m_renderer.style(); | 128 const RenderStyle& style = *m_renderer.style(); |
| 136 ASSERT(m_renderer.containingBlock()); | 129 ASSERT(m_renderer.containingBlock()); |
| 137 const RenderStyle& containingBlockStyle = *m_renderer.containingBlock()->sty
le(); | 130 const RenderStyle& containingBlockStyle = *m_renderer.containingBlock()->sty
le(); |
| (...skipping 207 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 345 } | 338 } |
| 346 | 339 |
| 347 FloatSize ShapeOutsideInfo::shapeToRendererSize(FloatSize size) const | 340 FloatSize ShapeOutsideInfo::shapeToRendererSize(FloatSize size) const |
| 348 { | 341 { |
| 349 if (!m_renderer.style()->isHorizontalWritingMode()) | 342 if (!m_renderer.style()->isHorizontalWritingMode()) |
| 350 return size.transposedSize(); | 343 return size.transposedSize(); |
| 351 return size; | 344 return size; |
| 352 } | 345 } |
| 353 | 346 |
| 354 } | 347 } |
| OLD | NEW |