OLD | NEW |
1 /* | 1 /* |
2 * (C) 1999-2003 Lars Knoll (knoll@kde.org) | 2 * (C) 1999-2003 Lars Knoll (knoll@kde.org) |
3 * Copyright (C) 2004, 2005, 2006, 2008, 2012 Apple Inc. All rights reserved. | 3 * Copyright (C) 2004, 2005, 2006, 2008, 2012 Apple Inc. All rights reserved. |
4 * | 4 * |
5 * This library is free software; you can redistribute it and/or | 5 * This library is free software; you can redistribute it and/or |
6 * modify it under the terms of the GNU Library General Public | 6 * modify it under the terms of the GNU Library General Public |
7 * License as published by the Free Software Foundation; either | 7 * License as published by the Free Software Foundation; either |
8 * version 2 of the License, or (at your option) any later version. | 8 * version 2 of the License, or (at your option) any later version. |
9 * | 9 * |
10 * This library is distributed in the hope that it will be useful, | 10 * This library is distributed in the hope that it will be useful, |
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
49 return new CSSImageValue(rawValue, url, image); | 49 return new CSSImageValue(rawValue, url, image); |
50 } | 50 } |
51 static CSSImageValue* create(const AtomicString& absoluteURL) | 51 static CSSImageValue* create(const AtomicString& absoluteURL) |
52 { | 52 { |
53 return new CSSImageValue(absoluteURL); | 53 return new CSSImageValue(absoluteURL); |
54 } | 54 } |
55 ~CSSImageValue(); | 55 ~CSSImageValue(); |
56 | 56 |
57 bool isCachePending() const { return !m_cachedImage; } | 57 bool isCachePending() const { return !m_cachedImage; } |
58 StyleImage* cachedImage() const { ASSERT(!isCachePending()); return m_cached
Image.get(); } | 58 StyleImage* cachedImage() const { ASSERT(!isCachePending()); return m_cached
Image.get(); } |
59 StyleImage* cacheImage(Document*, CrossOriginAttributeValue = CrossOriginAtt
ributeNotSet); | 59 StyleImage* cacheImage(const Document&, CrossOriginAttributeValue = CrossOri
ginAttributeNotSet); |
60 | 60 |
61 const String& url() const { return m_absoluteURL; } | 61 const String& url() const { return m_absoluteURL; } |
62 | 62 |
63 void setReferrer(const Referrer& referrer) { m_referrer = referrer; } | 63 void setReferrer(const Referrer& referrer) { m_referrer = referrer; } |
64 const Referrer& referrer() const { return m_referrer; } | 64 const Referrer& referrer() const { return m_referrer; } |
65 | 65 |
66 void reResolveURL(const Document&) const; | 66 void reResolveURL(const Document&) const; |
67 | 67 |
68 String customCSSText() const; | 68 String customCSSText() const; |
69 | 69 |
70 bool hasFailedOrCanceledSubresources() const; | 70 bool hasFailedOrCanceledSubresources() const; |
71 | 71 |
72 bool equals(const CSSImageValue&) const; | 72 bool equals(const CSSImageValue&) const; |
73 | 73 |
74 bool knownToBeOpaque(const LayoutObject&) const; | 74 bool knownToBeOpaque(const LayoutObject&) const; |
75 | 75 |
76 CSSImageValue* valueWithURLMadeAbsolute() const | 76 CSSImageValue* valueWithURLMadeAbsolute() const |
77 { | 77 { |
78 return create(KURL(ParsedURLString, m_absoluteURL), m_cachedImage.get())
; | 78 return create(KURL(ParsedURLString, m_absoluteURL), m_cachedImage.get())
; |
79 } | 79 } |
80 | 80 |
81 void setInitiator(const AtomicString& name) { m_initiatorName = name; } | 81 void setInitiator(const AtomicString& name) { m_initiatorName = name; } |
82 | 82 |
83 DECLARE_TRACE_AFTER_DISPATCH(); | 83 DECLARE_TRACE_AFTER_DISPATCH(); |
84 void restoreCachedResourceIfNeeded(Document&) const; | 84 void restoreCachedResourceIfNeeded(const Document&) const; |
85 | 85 |
86 private: | 86 private: |
87 CSSImageValue(const AtomicString& rawValue, const KURL&, StyleImage*); | 87 CSSImageValue(const AtomicString& rawValue, const KURL&, StyleImage*); |
88 CSSImageValue(const AtomicString& absoluteURL); | 88 CSSImageValue(const AtomicString& absoluteURL); |
89 | 89 |
90 AtomicString m_relativeURL; | 90 AtomicString m_relativeURL; |
91 Referrer m_referrer; | 91 Referrer m_referrer; |
92 AtomicString m_initiatorName; | 92 AtomicString m_initiatorName; |
93 | 93 |
94 // Cached image data. | 94 // Cached image data. |
95 mutable AtomicString m_absoluteURL; | 95 mutable AtomicString m_absoluteURL; |
96 mutable Member<StyleImage> m_cachedImage; | 96 mutable Member<StyleImage> m_cachedImage; |
97 }; | 97 }; |
98 | 98 |
99 DEFINE_CSS_VALUE_TYPE_CASTS(CSSImageValue, isImageValue()); | 99 DEFINE_CSS_VALUE_TYPE_CASTS(CSSImageValue, isImageValue()); |
100 | 100 |
101 } // namespace blink | 101 } // namespace blink |
102 | 102 |
103 #endif // CSSImageValue_h | 103 #endif // CSSImageValue_h |
OLD | NEW |