| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) |
| 3 * (C) 1999 Antti Koivisto (koivisto@kde.org) | 3 * (C) 1999 Antti Koivisto (koivisto@kde.org) |
| 4 * (C) 2000 Dirk Mueller (mueller@kde.org) | 4 * (C) 2000 Dirk Mueller (mueller@kde.org) |
| 5 * (C) 2006 Allan Sandfeld Jensen (kde@carewolf.com) | 5 * (C) 2006 Allan Sandfeld Jensen (kde@carewolf.com) |
| 6 * (C) 2006 Samuel Weinig (sam.weinig@gmail.com) | 6 * (C) 2006 Samuel Weinig (sam.weinig@gmail.com) |
| 7 * Copyright (C) 2003, 2004, 2005, 2006, 2008, 2009, 2010, 2011 Apple Inc. All r
ights reserved. | 7 * Copyright (C) 2003, 2004, 2005, 2006, 2008, 2009, 2010, 2011 Apple Inc. All r
ights reserved. |
| 8 * Copyright (C) 2010 Google Inc. All rights reserved. | 8 * Copyright (C) 2010 Google Inc. All rights reserved. |
| 9 * Copyright (C) Research In Motion Limited 2011-2012. All rights reserved. | 9 * Copyright (C) Research In Motion Limited 2011-2012. All rights reserved. |
| 10 * | 10 * |
| (...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 115 | 115 |
| 116 // Per the spec, we let the server-sent header override srcset/other sources
of dpr. | 116 // Per the spec, we let the server-sent header override srcset/other sources
of dpr. |
| 117 // https://github.com/igrigorik/http-client-hints/blob/master/draft-grigorik
-http-client-hints-01.txt#L255 | 117 // https://github.com/igrigorik/http-client-hints/blob/master/draft-grigorik
-http-client-hints-01.txt#L255 |
| 118 if (m_imageResource->cachedImage() && m_imageResource->cachedImage()->hasDev
icePixelRatioHeaderValue()) { | 118 if (m_imageResource->cachedImage() && m_imageResource->cachedImage()->hasDev
icePixelRatioHeaderValue()) { |
| 119 UseCounter::count(&(view()->frameView()->frame()), UseCounter::ClientHin
tsContentDPR); | 119 UseCounter::count(&(view()->frameView()->frame()), UseCounter::ClientHin
tsContentDPR); |
| 120 m_imageDevicePixelRatio = 1 / m_imageResource->cachedImage()->devicePixe
lRatioHeaderValue(); | 120 m_imageDevicePixelRatio = 1 / m_imageResource->cachedImage()->devicePixe
lRatioHeaderValue(); |
| 121 } | 121 } |
| 122 | 122 |
| 123 if (!m_didIncrementVisuallyNonEmptyPixelCount) { | 123 if (!m_didIncrementVisuallyNonEmptyPixelCount) { |
| 124 // At a zoom level of 1 the image is guaranteed to have an integer size. | 124 // At a zoom level of 1 the image is guaranteed to have an integer size. |
| 125 view()->frameView()->incrementVisuallyNonEmptyPixelCount(flooredIntSize(
m_imageResource->imageSize(1.0f))); | 125 view()->frameView()->incrementVisuallyNonEmptyPixelCount(flooredIntSize(
m_imageResource->defaultConcreteObjectSize(1.0f))); |
| 126 m_didIncrementVisuallyNonEmptyPixelCount = true; | 126 m_didIncrementVisuallyNonEmptyPixelCount = true; |
| 127 } | 127 } |
| 128 | 128 |
| 129 invalidatePaintAndMarkForLayoutIfNeeded(); | 129 invalidatePaintAndMarkForLayoutIfNeeded(); |
| 130 } | 130 } |
| 131 | 131 |
| 132 void LayoutImage::updateIntrinsicSizeIfNeeded(const LayoutSize& newSize) | 132 void LayoutImage::updateIntrinsicSizeIfNeeded(const LayoutSize& newSize) |
| 133 { | 133 { |
| 134 if (m_imageResource->errorOccurred() || !m_imageResource->hasImage()) | 134 if (m_imageResource->errorOccurred() || !m_imageResource->hasImage()) |
| 135 return; | 135 return; |
| 136 setIntrinsicSize(newSize); | 136 setIntrinsicSize(newSize); |
| 137 } | 137 } |
| 138 | 138 |
| 139 void LayoutImage::invalidatePaintAndMarkForLayoutIfNeeded() | 139 void LayoutImage::invalidatePaintAndMarkForLayoutIfNeeded() |
| 140 { | 140 { |
| 141 LayoutSize oldIntrinsicSize = intrinsicSize(); | 141 LayoutSize oldIntrinsicSize = intrinsicSize(); |
| 142 LayoutSize newIntrinsicSize = m_imageResource->imageSize(style()->effectiveZ
oom()); | 142 LayoutSize newIntrinsicSize = m_imageResource->defaultConcreteObjectSize(sty
le()->effectiveZoom()); |
| 143 updateIntrinsicSizeIfNeeded(newIntrinsicSize); | 143 updateIntrinsicSizeIfNeeded(newIntrinsicSize); |
| 144 | 144 |
| 145 // In the case of generated image content using :before/:after/content, we m
ight not be | 145 // In the case of generated image content using :before/:after/content, we m
ight not be |
| 146 // in the layout tree yet. In that case, we just need to update our intrinsi
c size. | 146 // in the layout tree yet. In that case, we just need to update our intrinsi
c size. |
| 147 // layout() will be called after we are inserted in the tree which will take
care of | 147 // layout() will be called after we are inserted in the tree which will take
care of |
| 148 // what we are doing here. | 148 // what we are doing here. |
| 149 if (!containingBlock()) | 149 if (!containingBlock()) |
| 150 return; | 150 return; |
| 151 | 151 |
| 152 bool imageSourceHasChangedSize = oldIntrinsicSize != newIntrinsicSize; | 152 bool imageSourceHasChangedSize = oldIntrinsicSize != newIntrinsicSize; |
| (...skipping 165 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 318 return nullptr; | 318 return nullptr; |
| 319 | 319 |
| 320 ImageResource* cachedImage = m_imageResource->cachedImage(); | 320 ImageResource* cachedImage = m_imageResource->cachedImage(); |
| 321 if (cachedImage && cachedImage->image() && cachedImage->image()->isSVGImage(
)) | 321 if (cachedImage && cachedImage->image() && cachedImage->image()->isSVGImage(
)) |
| 322 return toSVGImage(cachedImage->image())->embeddedContentBox(); | 322 return toSVGImage(cachedImage->image())->embeddedContentBox(); |
| 323 | 323 |
| 324 return nullptr; | 324 return nullptr; |
| 325 } | 325 } |
| 326 | 326 |
| 327 } // namespace blink | 327 } // namespace blink |
| OLD | NEW |