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) 2006 Allan Sandfeld Jensen (kde@carewolf.com) | 4 * (C) 2006 Allan Sandfeld Jensen (kde@carewolf.com) |
5 * (C) 2006 Samuel Weinig (sam.weinig@gmail.com) | 5 * (C) 2006 Samuel Weinig (sam.weinig@gmail.com) |
6 * Copyright (C) 2004, 2005, 2006, 2007, 2009, 2010, 2011 Apple Inc. All rights
reserved. | 6 * Copyright (C) 2004, 2005, 2006, 2007, 2009, 2010, 2011 Apple Inc. All rights
reserved. |
7 * | 7 * |
8 * This library is free software; you can redistribute it and/or | 8 * This library is free software; you can redistribute it and/or |
9 * modify it under the terms of the GNU Library General Public | 9 * modify it under the terms of the GNU Library General Public |
10 * License as published by the Free Software Foundation; either | 10 * License as published by the Free Software Foundation; either |
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
44 virtual void destroy() override; | 44 virtual void destroy() override; |
45 | 45 |
46 static RenderImage* createAnonymous(Document*); | 46 static RenderImage* createAnonymous(Document*); |
47 | 47 |
48 void setImageResource(PassOwnPtr<RenderImageResource>); | 48 void setImageResource(PassOwnPtr<RenderImageResource>); |
49 | 49 |
50 RenderImageResource* imageResource() { return m_imageResource.get(); } | 50 RenderImageResource* imageResource() { return m_imageResource.get(); } |
51 const RenderImageResource* imageResource() const { return m_imageResource.ge
t(); } | 51 const RenderImageResource* imageResource() const { return m_imageResource.ge
t(); } |
52 ImageResource* cachedImage() const { return m_imageResource ? m_imageResourc
e->cachedImage() : 0; } | 52 ImageResource* cachedImage() const { return m_imageResource ? m_imageResourc
e->cachedImage() : 0; } |
53 | 53 |
| 54 bool setImageSizeForAltText(ImageResource* newImage = 0); |
| 55 |
| 56 void updateAltText(); |
| 57 |
54 HTMLMapElement* imageMap() const; | 58 HTMLMapElement* imageMap() const; |
55 void areaElementFocusChanged(HTMLAreaElement*); | 59 void areaElementFocusChanged(HTMLAreaElement*); |
56 | 60 |
57 void setIsGeneratedContent(bool generated = true) { m_isGeneratedContent = g
enerated; } | 61 void setIsGeneratedContent(bool generated = true) { m_isGeneratedContent = g
enerated; } |
58 | 62 |
59 bool isGeneratedContent() const { return m_isGeneratedContent; } | 63 bool isGeneratedContent() const { return m_isGeneratedContent; } |
60 | 64 |
| 65 String altText() const { return m_altText; } |
| 66 |
61 inline void setImageDevicePixelRatio(float factor) { m_imageDevicePixelRatio
= factor; } | 67 inline void setImageDevicePixelRatio(float factor) { m_imageDevicePixelRatio
= factor; } |
62 float imageDevicePixelRatio() const { return m_imageDevicePixelRatio; } | 68 float imageDevicePixelRatio() const { return m_imageDevicePixelRatio; } |
63 | 69 |
64 virtual void intrinsicSizeChanged() override | 70 virtual void intrinsicSizeChanged() override |
65 { | 71 { |
66 if (m_imageResource) | 72 if (m_imageResource) |
67 imageChanged(m_imageResource->imagePtr()); | 73 imageChanged(m_imageResource->imagePtr()); |
68 } | 74 } |
69 | 75 |
70 protected: | 76 protected: |
(...skipping 21 matching lines...) Expand all Loading... |
92 virtual bool foregroundIsKnownToBeOpaqueInRect(const LayoutRect& localRect,
unsigned maxDepthToTest) const override final; | 98 virtual bool foregroundIsKnownToBeOpaqueInRect(const LayoutRect& localRect,
unsigned maxDepthToTest) const override final; |
93 virtual bool computeBackgroundIsKnownToBeObscured() override final; | 99 virtual bool computeBackgroundIsKnownToBeObscured() override final; |
94 | 100 |
95 virtual LayoutUnit minimumReplacedHeight() const override; | 101 virtual LayoutUnit minimumReplacedHeight() const override; |
96 | 102 |
97 virtual void notifyFinished(Resource*) override final; | 103 virtual void notifyFinished(Resource*) override final; |
98 virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const HitTes
tLocation& locationInContainer, const LayoutPoint& accumulatedOffset, HitTestAct
ion) override final; | 104 virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const HitTes
tLocation& locationInContainer, const LayoutPoint& accumulatedOffset, HitTestAct
ion) override final; |
99 | 105 |
100 virtual bool boxShadowShouldBeAppliedToBackground(BackgroundBleedAvoidance,
InlineFlowBox*) const override final; | 106 virtual bool boxShadowShouldBeAppliedToBackground(BackgroundBleedAvoidance,
InlineFlowBox*) const override final; |
101 | 107 |
102 void repaintOrMarkForLayout(const IntRect* = 0); | 108 IntSize imageSizeForError(ImageResource*) const; |
| 109 void paintInvalidationOrMarkForLayout(bool imageSizeChanged, const IntRect*
= 0); |
103 void updateIntrinsicSizeIfNeeded(const LayoutSize&); | 110 void updateIntrinsicSizeIfNeeded(const LayoutSize&); |
104 // Update the size of the image to be rendered. Object-fit may cause this to
be different from the CSS box's content rect. | 111 // Update the size of the image to be rendered. Object-fit may cause this to
be different from the CSS box's content rect. |
105 void updateInnerContentRect(); | 112 void updateInnerContentRect(); |
106 | 113 |
107 // Text to display as long as the image isn't available. | 114 // Text to display as long as the image isn't available. |
| 115 String m_altText; |
108 OwnPtr<RenderImageResource> m_imageResource; | 116 OwnPtr<RenderImageResource> m_imageResource; |
109 bool m_didIncrementVisuallyNonEmptyPixelCount; | 117 bool m_didIncrementVisuallyNonEmptyPixelCount; |
110 bool m_isGeneratedContent; | 118 bool m_isGeneratedContent; |
111 float m_imageDevicePixelRatio; | 119 float m_imageDevicePixelRatio; |
112 | 120 |
113 friend class RenderImageScaleObserver; | 121 friend class RenderImageScaleObserver; |
114 }; | 122 }; |
115 | 123 |
116 DEFINE_RENDER_OBJECT_TYPE_CASTS(RenderImage, isRenderImage()); | 124 DEFINE_RENDER_OBJECT_TYPE_CASTS(RenderImage, isRenderImage()); |
117 | 125 |
118 } // namespace blink | 126 } // namespace blink |
119 | 127 |
120 #endif // RenderImage_h | 128 #endif // RenderImage_h |
OLD | NEW |