OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 1999 Lars Knoll <knoll@kde.org> | 2 * Copyright (C) 1999 Lars Knoll <knoll@kde.org> |
3 * Copyright (C) 1999 Antti Koivisto <koivisto@kde.org> | 3 * Copyright (C) 1999 Antti Koivisto <koivisto@kde.org> |
4 * Copyright (C) 2000 Dirk Mueller <mueller@kde.org> | 4 * Copyright (C) 2000 Dirk Mueller <mueller@kde.org> |
5 * Copyright (C) 2006 Allan Sandfeld Jensen <kde@carewolf.com> | 5 * Copyright (C) 2006 Allan Sandfeld Jensen <kde@carewolf.com> |
6 * Copyright (C) 2006 Samuel Weinig <sam.weinig@gmail.com> | 6 * Copyright (C) 2006 Samuel Weinig <sam.weinig@gmail.com> |
7 * Copyright (C) 2003, 2004, 2005, 2006, 2008, 2009, 2010 Apple Inc. All rights
reserved. | 7 * Copyright (C) 2003, 2004, 2005, 2006, 2008, 2009, 2010 Apple Inc. All rights
reserved. |
8 * Copyright (C) 2010 Google Inc. All rights reserved. | 8 * Copyright (C) 2010 Google Inc. All rights reserved. |
9 * Copyright (C) 2010 Patrick Gansterer <paroga@paroga.com> | 9 * Copyright (C) 2010 Patrick Gansterer <paroga@paroga.com> |
10 * | 10 * |
11 * This library is free software; you can redistribute it and/or | 11 * This library is free software; you can redistribute it and/or |
12 * modify it under the terms of the GNU Library General Public | 12 * modify it under the terms of the GNU Library General Public |
13 * License as published by the Free Software Foundation; either | 13 * License as published by the Free Software Foundation; either |
14 * version 2 of the License, or (at your option) any later version. | 14 * version 2 of the License, or (at your option) any later version. |
15 * | 15 * |
16 * This library is distributed in the hope that it will be useful, | 16 * This library is distributed in the hope that it will be useful, |
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of | 17 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | 18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
19 * Library General Public License for more details. | 19 * Library General Public License for more details. |
20 * | 20 * |
21 * You should have received a copy of the GNU Library General Public License | 21 * You should have received a copy of the GNU Library General Public License |
22 * along with this library; see the file COPYING.LIB. If not, write to | 22 * along with this library; see the file COPYING.LIB. If not, write to |
23 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | 23 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, |
24 * Boston, MA 02110-1301, USA. | 24 * Boston, MA 02110-1301, USA. |
25 * | 25 * |
26 */ | 26 */ |
27 | 27 |
28 #include "config.h" | 28 #include "config.h" |
29 #include "core/rendering/RenderImageResource.h" | 29 #include "core/layout/LayoutImageResource.h" |
30 | 30 |
31 #include "core/layout/LayoutObject.h" | 31 #include "core/layout/LayoutImage.h" |
32 #include "core/rendering/RenderImage.h" | |
33 | 32 |
34 namespace blink { | 33 namespace blink { |
35 | 34 |
36 RenderImageResource::RenderImageResource() | 35 LayoutImageResource::LayoutImageResource() |
37 : m_renderer(0) | 36 : m_renderer(0) |
38 , m_cachedImage(0) | 37 , m_cachedImage(0) |
39 { | 38 { |
40 } | 39 } |
41 | 40 |
42 RenderImageResource::~RenderImageResource() | 41 LayoutImageResource::~LayoutImageResource() |
43 { | 42 { |
44 } | 43 } |
45 | 44 |
46 void RenderImageResource::initialize(LayoutObject* renderer) | 45 void LayoutImageResource::initialize(LayoutObject* renderer) |
47 { | 46 { |
48 ASSERT(!m_renderer); | 47 ASSERT(!m_renderer); |
49 ASSERT(renderer); | 48 ASSERT(renderer); |
50 m_renderer = renderer; | 49 m_renderer = renderer; |
51 } | 50 } |
52 | 51 |
53 void RenderImageResource::shutdown() | 52 void LayoutImageResource::shutdown() |
54 { | 53 { |
55 ASSERT(m_renderer); | 54 ASSERT(m_renderer); |
56 | 55 |
57 if (m_cachedImage) | 56 if (m_cachedImage) |
58 m_cachedImage->removeClient(m_renderer); | 57 m_cachedImage->removeClient(m_renderer); |
59 } | 58 } |
60 | 59 |
61 void RenderImageResource::setImageResource(ImageResource* newImage) | 60 void LayoutImageResource::setImageResource(ImageResource* newImage) |
62 { | 61 { |
63 ASSERT(m_renderer); | 62 ASSERT(m_renderer); |
64 | 63 |
65 if (m_cachedImage == newImage) | 64 if (m_cachedImage == newImage) |
66 return; | 65 return; |
67 | 66 |
68 if (m_cachedImage) | 67 if (m_cachedImage) |
69 m_cachedImage->removeClient(m_renderer); | 68 m_cachedImage->removeClient(m_renderer); |
70 m_cachedImage = newImage; | 69 m_cachedImage = newImage; |
71 if (m_cachedImage) { | 70 if (m_cachedImage) { |
72 m_cachedImage->addClient(m_renderer); | 71 m_cachedImage->addClient(m_renderer); |
73 if (m_cachedImage->errorOccurred()) | 72 if (m_cachedImage->errorOccurred()) |
74 m_renderer->imageChanged(m_cachedImage.get()); | 73 m_renderer->imageChanged(m_cachedImage.get()); |
75 } else { | 74 } else { |
76 m_renderer->imageChanged(m_cachedImage.get()); | 75 m_renderer->imageChanged(m_cachedImage.get()); |
77 } | 76 } |
78 } | 77 } |
79 | 78 |
80 void RenderImageResource::resetAnimation() | 79 void LayoutImageResource::resetAnimation() |
81 { | 80 { |
82 ASSERT(m_renderer); | 81 ASSERT(m_renderer); |
83 | 82 |
84 if (!m_cachedImage) | 83 if (!m_cachedImage) |
85 return; | 84 return; |
86 | 85 |
87 image()->resetAnimation(); | 86 image()->resetAnimation(); |
88 | 87 |
89 m_renderer->setShouldDoFullPaintInvalidation(); | 88 m_renderer->setShouldDoFullPaintInvalidation(); |
90 } | 89 } |
91 | 90 |
92 void RenderImageResource::setContainerSizeForRenderer(const IntSize& imageContai
nerSize) | 91 void LayoutImageResource::setContainerSizeForRenderer(const IntSize& imageContai
nerSize) |
93 { | 92 { |
94 ASSERT(m_renderer); | 93 ASSERT(m_renderer); |
95 if (m_cachedImage) | 94 if (m_cachedImage) |
96 m_cachedImage->setContainerSizeForRenderer(m_renderer, imageContainerSiz
e, m_renderer->style()->effectiveZoom()); | 95 m_cachedImage->setContainerSizeForRenderer(m_renderer, imageContainerSiz
e, m_renderer->style()->effectiveZoom()); |
97 } | 96 } |
98 | 97 |
99 LayoutSize RenderImageResource::getImageSize(float multiplier, ImageResource::Si
zeType type) const | 98 LayoutSize LayoutImageResource::getImageSize(float multiplier, ImageResource::Si
zeType type) const |
100 { | 99 { |
101 if (!m_cachedImage) | 100 if (!m_cachedImage) |
102 return LayoutSize(); | 101 return LayoutSize(); |
103 LayoutSize size = m_cachedImage->imageSizeForRenderer(m_renderer, multiplier
, type); | 102 LayoutSize size = m_cachedImage->imageSizeForRenderer(m_renderer, multiplier
, type); |
104 if (m_renderer && m_renderer->isRenderImage()) | 103 if (m_renderer && m_renderer->isLayoutImage()) |
105 size.scale(toRenderImage(m_renderer)->imageDevicePixelRatio()); | 104 size.scale(toLayoutImage(m_renderer)->imageDevicePixelRatio()); |
106 return size; | 105 return size; |
107 } | 106 } |
108 | 107 |
109 } // namespace blink | 108 } // namespace blink |
OLD | NEW |