Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 /* | 1 /* |
| 2 * Copyright (C) 2000 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 2000 Lars Knoll (knoll@kde.org) |
| 3 * (C) 2000 Antti Koivisto (koivisto@kde.org) | 3 * (C) 2000 Antti Koivisto (koivisto@kde.org) |
| 4 * (C) 2000 Dirk Mueller (mueller@kde.org) | 4 * (C) 2000 Dirk Mueller (mueller@kde.org) |
| 5 * Copyright (C) 2003, 2005, 2006, 2007, 2008 Apple Inc. All rights reserved. | 5 * Copyright (C) 2003, 2005, 2006, 2007, 2008 Apple Inc. All rights reserved. |
| 6 * | 6 * |
| 7 * This library is free software; you can redistribute it and/or | 7 * This library is free software; you can redistribute it and/or |
| 8 * modify it under the terms of the GNU Library General Public | 8 * modify it under the terms of the GNU Library General Public |
| 9 * License as published by the Free Software Foundation; either | 9 * License as published by the Free Software Foundation; either |
| 10 * version 2 of the License, or (at your option) any later version. | 10 * version 2 of the License, or (at your option) any later version. |
| (...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 84 bool StyleFetchedImage::isLoaded() const | 84 bool StyleFetchedImage::isLoaded() const |
| 85 { | 85 { |
| 86 return m_image->isLoaded(); | 86 return m_image->isLoaded(); |
| 87 } | 87 } |
| 88 | 88 |
| 89 bool StyleFetchedImage::errorOccurred() const | 89 bool StyleFetchedImage::errorOccurred() const |
| 90 { | 90 { |
| 91 return m_image->errorOccurred(); | 91 return m_image->errorOccurred(); |
| 92 } | 92 } |
| 93 | 93 |
| 94 LayoutSize StyleFetchedImage::imageSize(const LayoutObject* layoutObject, float multiplier) const | 94 LayoutSize StyleFetchedImage::imageSize(const LayoutObject* layoutObject, float multiplier, const LayoutSize& defaultObjectSize) const |
| 95 { | 95 { |
| 96 return m_image->imageSize(LayoutObject::shouldRespectImageOrientation(layout Object), multiplier); | 96 if (m_image->image() && m_image->image()->isSVGImage()) { |
| 97 FloatSize unzoomedDefaultObjectSize(defaultObjectSize); | |
| 98 unzoomedDefaultObjectSize.scale(1 / multiplier); | |
| 99 LayoutSize concreteObjectSize(toSVGImage(m_image->image())->calculateCon creteObjectSize(unzoomedDefaultObjectSize)); | |
| 100 | |
| 101 // Don't let images that have a width/height >= 1 shrink below 1 when zo omed. | |
|
fs
2016/03/03 15:22:53
Maybe we could put this sequence as a helper on St
davve
2016/03/04 06:49:43
Yes, that probably good. Even prior to this, there
| |
| 102 LayoutSize minimumSize(concreteObjectSize.width() > LayoutUnit() ? Layou tUnit(1) : LayoutUnit(), | |
| 103 concreteObjectSize.height() > LayoutUnit() ? LayoutUnit(1) : LayoutU nit()); | |
| 104 concreteObjectSize.scale(multiplier); | |
| 105 concreteObjectSize.clampToMinimumSize(minimumSize); | |
| 106 return concreteObjectSize; | |
| 107 } | |
| 108 | |
| 109 // Image orientation should only be respected for content images, | |
| 110 // not decorative ones as StyleImage carries (backgrounds, | |
| 111 // border-image, etc.) | |
| 112 const RespectImageOrientationEnum shouldRespectImageOrientation = DoNotRespe ctImageOrientation; | |
|
fs
2016/03/03 15:22:53
Nit: Fold this into the call? (Comment alone seems
davve
2016/03/04 06:49:43
Done.
| |
| 113 | |
| 114 return m_image->imageSize(shouldRespectImageOrientation, multiplier); | |
| 97 } | 115 } |
| 98 | 116 |
| 99 bool StyleFetchedImage::imageHasRelativeSize() const | 117 bool StyleFetchedImage::imageHasRelativeSize() const |
| 100 { | 118 { |
| 101 return m_image->imageHasRelativeSize(); | 119 return m_image->imageHasRelativeSize(); |
| 102 } | 120 } |
| 103 | 121 |
| 104 void StyleFetchedImage::computeIntrinsicDimensions(const LayoutObject*, FloatSiz e& intrinsicSize, FloatSize& intrinsicRatio) | 122 void StyleFetchedImage::computeIntrinsicDimensions(const LayoutObject*, FloatSiz e& intrinsicSize, FloatSize& intrinsicRatio) |
| 105 { | 123 { |
| 106 m_image->computeIntrinsicDimensions(intrinsicSize, intrinsicRatio); | 124 m_image->computeIntrinsicDimensions(intrinsicSize, intrinsicRatio); |
| (...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 144 } | 162 } |
| 145 | 163 |
| 146 DEFINE_TRACE(StyleFetchedImage) | 164 DEFINE_TRACE(StyleFetchedImage) |
| 147 { | 165 { |
| 148 visitor->trace(m_image); | 166 visitor->trace(m_image); |
| 149 visitor->trace(m_document); | 167 visitor->trace(m_document); |
| 150 StyleImage::trace(visitor); | 168 StyleImage::trace(visitor); |
| 151 } | 169 } |
| 152 | 170 |
| 153 } // namespace blink | 171 } // namespace blink |
| OLD | NEW |