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

Unified Diff: third_party/WebKit/Source/core/paint/FilterEffectBuilder.cpp

Issue 1543593002: Forward fill and stroke styles from 2d canvas to canvas filters (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years 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 side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/core/paint/FilterEffectBuilder.cpp
diff --git a/third_party/WebKit/Source/core/paint/FilterEffectBuilder.cpp b/third_party/WebKit/Source/core/paint/FilterEffectBuilder.cpp
index 18b696828b23c7c240151d89b7a95521e54a7e85..781b2958176c8a6287a6ba377fe6984b32fb77b7 100644
--- a/third_party/WebKit/Source/core/paint/FilterEffectBuilder.cpp
+++ b/third_party/WebKit/Source/core/paint/FilterEffectBuilder.cpp
@@ -130,7 +130,7 @@ DEFINE_TRACE(FilterEffectBuilder)
visitor->trace(m_referenceFilters);
}
-bool FilterEffectBuilder::build(Element* element, const FilterOperations& operations, float zoom)
+bool FilterEffectBuilder::build(Element* element, const FilterOperations& operations, float zoom, PassRefPtr<SkShader> fillShader, PassRefPtr<SkShader> strokeShader)
{
// Create a parent filter for shorthand filters. These have already been scaled by the CSS code for page zoom, so scale is 1.0 here.
RefPtrWillBeRawPtr<Filter> parentFilter = Filter::create(1.0f);
@@ -140,7 +140,7 @@ bool FilterEffectBuilder::build(Element* element, const FilterOperations& operat
FilterOperation* filterOperation = operations.operations().at(i).get();
switch (filterOperation->type()) {
case FilterOperation::REFERENCE: {
- RefPtrWillBeRawPtr<Filter> referenceFilter = ReferenceFilterBuilder::build(zoom, element, previousEffect.get(), toReferenceFilterOperation(*filterOperation));
+ RefPtrWillBeRawPtr<Filter> referenceFilter = ReferenceFilterBuilder::build(zoom, element, previousEffect.get(), toReferenceFilterOperation(*filterOperation), fillShader, strokeShader);
fs 2015/12/21 19:34:20 Won't this "lose" the shaders if there were more t
ajuma 2016/01/11 19:14:08 Good catch, thanks! This now uses a raw pointer to
if (referenceFilter) {
effect = referenceFilter->lastEffect();
m_referenceFilters.append(referenceFilter);

Powered by Google App Engine
This is Rietveld 408576698