OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CSSPaintValue_h | 5 #ifndef CSSPaintValue_h |
6 #define CSSPaintValue_h | 6 #define CSSPaintValue_h |
7 | 7 |
8 #include "core/css/CSSCustomIdentValue.h" | 8 #include "core/css/CSSCustomIdentValue.h" |
9 #include "core/css/CSSImageGeneratorValue.h" | 9 #include "core/css/CSSImageGeneratorValue.h" |
10 #include "core/css/CSSPaintImageGenerator.h" | 10 #include "core/css/CSSPaintImageGenerator.h" |
(...skipping 10 matching lines...) Expand all Loading... |
21 ~CSSPaintValue(); | 21 ~CSSPaintValue(); |
22 | 22 |
23 String customCSSText() const; | 23 String customCSSText() const; |
24 | 24 |
25 String name() const; | 25 String name() const; |
26 | 26 |
27 PassRefPtr<Image> image(const LayoutObject&, const IntSize&); | 27 PassRefPtr<Image> image(const LayoutObject&, const IntSize&); |
28 bool isFixedSize() const { return false; } | 28 bool isFixedSize() const { return false; } |
29 IntSize fixedSize(const LayoutObject&) { return IntSize(); } | 29 IntSize fixedSize(const LayoutObject&) { return IntSize(); } |
30 | 30 |
31 bool isPending() const { return false; } | 31 bool isPending() const { return true; } |
32 bool knownToBeOpaque(const LayoutObject&) const { return false; } | 32 bool knownToBeOpaque(const LayoutObject&) const { return false; } |
33 | 33 |
34 void loadSubimages(Document*) { } | 34 void loadSubimages(Document*) { } |
35 | 35 |
36 bool equals(const CSSPaintValue&) const; | 36 bool equals(const CSSPaintValue&) const; |
37 | 37 |
| 38 const Vector<CSSPropertyID>* nativeInvalidationProperties() const |
| 39 { |
| 40 return m_generator ? &m_generator->nativeInvalidationProperties() : null
ptr; |
| 41 } |
| 42 const Vector<AtomicString>* customInvalidationProperties() const |
| 43 { |
| 44 return m_generator ? &m_generator->customInvalidationProperties() : null
ptr; |
| 45 } |
| 46 |
38 DECLARE_TRACE_AFTER_DISPATCH(); | 47 DECLARE_TRACE_AFTER_DISPATCH(); |
39 | 48 |
40 private: | 49 private: |
41 explicit CSSPaintValue(CSSCustomIdentValue* name); | 50 explicit CSSPaintValue(CSSCustomIdentValue* name); |
42 | 51 |
43 class Observer final : public CSSPaintImageGenerator::Observer { | 52 class Observer final : public CSSPaintImageGenerator::Observer { |
44 WTF_MAKE_NONCOPYABLE(Observer); | 53 WTF_MAKE_NONCOPYABLE(Observer); |
45 public: | 54 public: |
46 explicit Observer(CSSPaintValue* ownerValue) | 55 explicit Observer(CSSPaintValue* ownerValue) |
47 : m_ownerValue(ownerValue) | 56 : m_ownerValue(ownerValue) |
(...skipping 17 matching lines...) Expand all Loading... |
65 Member<CSSCustomIdentValue> m_name; | 74 Member<CSSCustomIdentValue> m_name; |
66 Member<CSSPaintImageGenerator> m_generator; | 75 Member<CSSPaintImageGenerator> m_generator; |
67 Member<Observer> m_paintImageGeneratorObserver; | 76 Member<Observer> m_paintImageGeneratorObserver; |
68 }; | 77 }; |
69 | 78 |
70 DEFINE_CSS_VALUE_TYPE_CASTS(CSSPaintValue, isPaintValue()); | 79 DEFINE_CSS_VALUE_TYPE_CASTS(CSSPaintValue, isPaintValue()); |
71 | 80 |
72 } // namespace blink | 81 } // namespace blink |
73 | 82 |
74 #endif // CSSPaintValue_h | 83 #endif // CSSPaintValue_h |
OLD | NEW |