Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(121)

Side by Side Diff: third_party/WebKit/Source/core/css/CSSPaintValue.h

Issue 1896893004: Hook up style invalidation for CSS Paint API. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@css-paint-register
Patch Set: rebase. Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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
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
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
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/core/css/CSSPaintImageGenerator.h ('k') | third_party/WebKit/Source/core/css/CSSPropertyEquality.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698