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) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. | 3 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. |
4 * All rights reserved. | 4 * All rights reserved. |
5 * Copyright (C) 2013 Google Inc. All rights reserved. | 5 * Copyright (C) 2013 Google 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 24 matching lines...) Expand all Loading... |
35 namespace blink { | 35 namespace blink { |
36 | 36 |
37 class CSSCursorImageValue; | 37 class CSSCursorImageValue; |
38 class CSSImageGeneratorValue; | 38 class CSSImageGeneratorValue; |
39 class CSSImageSetValue; | 39 class CSSImageSetValue; |
40 class CSSImageValue; | 40 class CSSImageValue; |
41 class CSSURIValue; | 41 class CSSURIValue; |
42 class CSSValue; | 42 class CSSValue; |
43 class ComputedStyle; | 43 class ComputedStyle; |
44 class Document; | 44 class Document; |
45 class FilterOperation; | 45 class SVGElementProxy; |
46 class StyleImage; | 46 class StyleImage; |
47 class StylePendingImage; | 47 class StylePendingImage; |
48 | 48 |
49 // Holds information about resources, requested by stylesheets. | 49 // Holds information about resources, requested by stylesheets. |
50 // Lifetime: per-element style resolve. | 50 // Lifetime: per-element style resolve. |
51 class ElementStyleResources { | 51 class ElementStyleResources { |
52 STACK_ALLOCATED(); | 52 STACK_ALLOCATED(); |
53 WTF_MAKE_NONCOPYABLE(ElementStyleResources); | 53 WTF_MAKE_NONCOPYABLE(ElementStyleResources); |
54 | 54 |
55 public: | 55 public: |
56 ElementStyleResources(Document&, float deviceScaleFactor); | 56 ElementStyleResources(Document&, float deviceScaleFactor); |
57 | 57 |
58 StyleImage* styleImage(CSSPropertyID, const CSSValue&); | 58 StyleImage* styleImage(CSSPropertyID, const CSSValue&); |
59 StyleImage* cachedOrPendingFromValue(CSSPropertyID, const CSSImageValue&); | 59 StyleImage* cachedOrPendingFromValue(CSSPropertyID, const CSSImageValue&); |
60 StyleImage* setOrPendingFromValue(CSSPropertyID, const CSSImageSetValue&); | 60 StyleImage* setOrPendingFromValue(CSSPropertyID, const CSSImageSetValue&); |
| 61 SVGElementProxy& cachedOrPendingFromValue(const CSSURIValue&); |
61 | 62 |
62 void loadPendingResources(ComputedStyle*); | 63 void loadPendingResources(ComputedStyle*); |
63 | 64 |
64 void addPendingSVGDocument(FilterOperation*, const CSSURIValue*); | |
65 | |
66 private: | 65 private: |
67 StyleImage* cursorOrPendingFromValue(CSSPropertyID, | 66 StyleImage* cursorOrPendingFromValue(CSSPropertyID, |
68 const CSSCursorImageValue&); | 67 const CSSCursorImageValue&); |
69 StyleImage* generatedOrPendingFromValue(CSSPropertyID, | 68 StyleImage* generatedOrPendingFromValue(CSSPropertyID, |
70 const CSSImageGeneratorValue&); | 69 const CSSImageGeneratorValue&); |
71 | 70 |
72 void loadPendingSVGDocuments(ComputedStyle*); | 71 void loadPendingSVGDocuments(ComputedStyle*); |
73 void loadPendingImages(ComputedStyle*); | 72 void loadPendingImages(ComputedStyle*); |
74 | 73 |
75 StyleImage* loadPendingImage( | 74 StyleImage* loadPendingImage( |
76 ComputedStyle*, | 75 ComputedStyle*, |
77 StylePendingImage*, | 76 StylePendingImage*, |
78 CrossOriginAttributeValue = CrossOriginAttributeNotSet); | 77 CrossOriginAttributeValue = CrossOriginAttributeNotSet); |
79 | 78 |
80 Member<Document> m_document; | 79 Member<Document> m_document; |
81 HashSet<CSSPropertyID> m_pendingImageProperties; | 80 HashSet<CSSPropertyID> m_pendingImageProperties; |
82 HeapHashMap<Member<FilterOperation>, Member<const CSSURIValue>> | |
83 m_pendingSVGDocuments; | |
84 float m_deviceScaleFactor; | 81 float m_deviceScaleFactor; |
85 }; | 82 }; |
86 | 83 |
87 } // namespace blink | 84 } // namespace blink |
88 | 85 |
89 #endif // ElementStyleResources_h | 86 #endif // ElementStyleResources_h |
OLD | NEW |