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

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

Issue 2326633002: Adds filter support for offscreen canvas (Closed)
Patch Set: Working version of filters on offscreen canvas Created 4 years, 3 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 /* 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. All rights reserved. 3 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All rights reserved.
4 * Copyright (C) 2013 Google Inc. All rights reserved. 4 * Copyright (C) 2013 Google Inc. All rights reserved.
5 * 5 *
6 * This library is free software; you can redistribute it and/or 6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Library General Public 7 * modify it under the terms of the GNU Library General Public
8 * License as published by the Free Software Foundation; either 8 * License as published by the Free Software Foundation; either
9 * version 2 of the License, or (at your option) any later version. 9 * version 2 of the License, or (at your option) any later version.
10 * 10 *
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
44 class FilterOperation; 44 class FilterOperation;
45 class StyleImage; 45 class StyleImage;
46 class StylePendingImage; 46 class StylePendingImage;
47 47
48 // Holds information about resources, requested by stylesheets. 48 // Holds information about resources, requested by stylesheets.
49 // Lifetime: per-element style resolve. 49 // Lifetime: per-element style resolve.
50 class ElementStyleResources { 50 class ElementStyleResources {
51 STACK_ALLOCATED(); 51 STACK_ALLOCATED();
52 WTF_MAKE_NONCOPYABLE(ElementStyleResources); 52 WTF_MAKE_NONCOPYABLE(ElementStyleResources);
53 public: 53 public:
54 ElementStyleResources();
54 ElementStyleResources(Document&, float deviceScaleFactor); 55 ElementStyleResources(Document&, float deviceScaleFactor);
55 56
56 StyleImage* styleImage(CSSPropertyID, const CSSValue&); 57 StyleImage* styleImage(CSSPropertyID, const CSSValue&);
57 StyleImage* cachedOrPendingFromValue(CSSPropertyID, const CSSImageValue&); 58 StyleImage* cachedOrPendingFromValue(CSSPropertyID, const CSSImageValue&);
58 StyleImage* setOrPendingFromValue(CSSPropertyID, const CSSImageSetValue&); 59 StyleImage* setOrPendingFromValue(CSSPropertyID, const CSSImageSetValue&);
59 60
60 void loadPendingResources(ComputedStyle*); 61 void loadPendingResources(ComputedStyle*);
61 62
62 void addPendingSVGDocument(FilterOperation*, const CSSURIValue*); 63 void addPendingSVGDocument(FilterOperation*, const CSSURIValue*);
63 64
64 private: 65 private:
65 StyleImage* cursorOrPendingFromValue(CSSPropertyID, const CSSCursorImageValu e&); 66 StyleImage* cursorOrPendingFromValue(CSSPropertyID, const CSSCursorImageValu e&);
66 StyleImage* generatedOrPendingFromValue(CSSPropertyID, const CSSImageGenerat orValue&); 67 StyleImage* generatedOrPendingFromValue(CSSPropertyID, const CSSImageGenerat orValue&);
67 68
68 void loadPendingSVGDocuments(ComputedStyle*); 69 void loadPendingSVGDocuments(ComputedStyle*);
69 void loadPendingImages(ComputedStyle*); 70 void loadPendingImages(ComputedStyle*);
70 71
71 StyleImage* loadPendingImage(ComputedStyle*, StylePendingImage*, CrossOrigin AttributeValue = CrossOriginAttributeNotSet); 72 StyleImage* loadPendingImage(ComputedStyle*, StylePendingImage*, CrossOrigin AttributeValue = CrossOriginAttributeNotSet);
72 73
73 Member<Document> m_document; 74 Member<Document> m_document;
74 HashSet<CSSPropertyID> m_pendingImageProperties; 75 HashSet<CSSPropertyID> m_pendingImageProperties;
75 HeapHashMap<Member<FilterOperation>, Member<const CSSURIValue>> m_pendingSVG Documents; 76 HeapHashMap<Member<FilterOperation>, Member<const CSSURIValue>> m_pendingSVG Documents;
76 float m_deviceScaleFactor; 77 float m_deviceScaleFactor;
77 }; 78 };
78 79
79 } // namespace blink 80 } // namespace blink
80 81
81 #endif // ElementStyleResources_h 82 #endif // ElementStyleResources_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698