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

Side by Side Diff: third_party/WebKit/Source/core/paint/FilterEffectBuilder.h

Issue 2326633002: Adds filter support for offscreen canvas (Closed)
Patch Set: Sync Created 3 years, 10 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) 2011 Apple Inc. All rights reserved. 2 * Copyright (C) 2011 Apple Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions 5 * modification, are permitted provided that the following conditions
6 * are met: 6 * are met:
7 * 1. Redistributions of source code must retain the above copyright 7 * 1. Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer. 8 * notice, this list of conditions and the following disclaimer.
9 * 2. Redistributions in binary form must reproduce the above copyright 9 * 2. Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the 10 * notice, this list of conditions and the following disclaimer in the
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
42 class FloatRect; 42 class FloatRect;
43 class Node; 43 class Node;
44 class ReferenceFilterOperation; 44 class ReferenceFilterOperation;
45 class SVGFilterElement; 45 class SVGFilterElement;
46 class SVGFilterGraphNodeMap; 46 class SVGFilterGraphNodeMap;
47 47
48 class CORE_EXPORT FilterEffectBuilder final { 48 class CORE_EXPORT FilterEffectBuilder final {
49 STACK_ALLOCATED(); 49 STACK_ALLOCATED();
50 50
51 public: 51 public:
52 FilterEffectBuilder(const FloatRect& zoomedReferenceBox,
53 float zoom,
54 const SkPaint* fillPaint = nullptr,
55 const SkPaint* strokePaint = nullptr);
52 FilterEffectBuilder(Node*, 56 FilterEffectBuilder(Node*,
53 const FloatRect& zoomedReferenceBox, 57 const FloatRect& zoomedReferenceBox,
54 float zoom, 58 float zoom,
55 const SkPaint* fillPaint = nullptr, 59 const SkPaint* fillPaint = nullptr,
56 const SkPaint* strokePaint = nullptr); 60 const SkPaint* strokePaint = nullptr);
57 61
58 Filter* buildReferenceFilter(SVGFilterElement&, 62 Filter* buildReferenceFilter(SVGFilterElement&,
59 FilterEffect* previousEffect, 63 FilterEffect* previousEffect,
60 SVGFilterGraphNodeMap* = nullptr) const; 64 SVGFilterGraphNodeMap* = nullptr) const;
61 65
62 FilterEffect* buildFilterEffect(const FilterOperations&) const; 66 FilterEffect* buildFilterEffect(const FilterOperations&) const;
63 CompositorFilterOperations buildFilterOperations( 67 CompositorFilterOperations buildFilterOperations(
64 const FilterOperations&) const; 68 const FilterOperations&) const;
65 69
66 private: 70 private:
67 Filter* buildReferenceFilter(const ReferenceFilterOperation&, 71 Filter* buildReferenceFilter(const ReferenceFilterOperation&,
68 FilterEffect* previousEffect) const; 72 FilterEffect* previousEffect) const;
69 73
70 Member<Node> m_targetContext; 74 Member<Node> m_targetContext;
71 FloatRect m_referenceBox; 75 FloatRect m_referenceBox;
72 float m_zoom; 76 float m_zoom;
73 const SkPaint* m_fillPaint; 77 const SkPaint* m_fillPaint;
74 const SkPaint* m_strokePaint; 78 const SkPaint* m_strokePaint;
75 }; 79 };
76 80
77 } // namespace blink 81 } // namespace blink
78 82
79 #endif // FilterEffectBuilder_h 83 #endif // FilterEffectBuilder_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698