Index: third_party/WebKit/Source/modules/canvas2d/CanvasRenderingContext2DState.cpp |
diff --git a/third_party/WebKit/Source/modules/canvas2d/CanvasRenderingContext2DState.cpp b/third_party/WebKit/Source/modules/canvas2d/CanvasRenderingContext2DState.cpp |
index 17059a8eece1cd63d32529a1662d0e29c43d5e3f..4de2d08641352246284152889d9a9c3e9b1c1505 100644 |
--- a/third_party/WebKit/Source/modules/canvas2d/CanvasRenderingContext2DState.cpp |
+++ b/third_party/WebKit/Source/modules/canvas2d/CanvasRenderingContext2DState.cpp |
@@ -187,13 +187,13 @@ DEFINE_TRACE(CanvasRenderingContext2DState) |
CSSFontSelectorClient::trace(visitor); |
} |
-void CanvasRenderingContext2DState::setLineDashOffset(float offset) |
+void CanvasRenderingContext2DState::setLineDashOffset(double offset) |
{ |
m_lineDashOffset = offset; |
m_lineDashDirty = true; |
} |
-void CanvasRenderingContext2DState::setLineDash(const Vector<float>& dash) |
+void CanvasRenderingContext2DState::setLineDash(const Vector<double>& dash) |
{ |
m_lineDash = dash; |
// Spec requires the concatenation of two copies the dash list when the |
@@ -204,10 +204,10 @@ void CanvasRenderingContext2DState::setLineDash(const Vector<float>& dash) |
m_lineDashDirty = true; |
} |
-static bool hasANonZeroElement(const Vector<float>& lineDash) |
+static bool hasANonZeroElement(const Vector<double>& lineDash) |
{ |
for (size_t i = 0; i < lineDash.size(); i++) { |
- if (lineDash[i] != 0.0f) |
+ if (lineDash[i] != 0.0) |
return true; |
} |
return false; |
@@ -221,7 +221,9 @@ void CanvasRenderingContext2DState::updateLineDash() const |
if (!hasANonZeroElement(m_lineDash)) { |
m_strokePaint.setPathEffect(0); |
} else { |
- RefPtr<SkPathEffect> dashPathEffect = adoptRef(SkDashPathEffect::Create(m_lineDash.data(), m_lineDash.size(), m_lineDashOffset)); |
+ Vector<float> lineDash(m_lineDash.size()); |
+ std::copy(m_lineDash.begin(), m_lineDash.end(), lineDash.begin()); |
+ RefPtr<SkPathEffect> dashPathEffect = adoptRef(SkDashPathEffect::Create(lineDash.data(), lineDash.size(), m_lineDashOffset)); |
m_strokePaint.setPathEffect(dashPathEffect.get()); |
} |
@@ -301,7 +303,7 @@ bool CanvasRenderingContext2DState::shouldAntialias() const |
return m_fillPaint.isAntiAlias(); |
} |
-void CanvasRenderingContext2DState::setGlobalAlpha(float alpha) |
+void CanvasRenderingContext2DState::setGlobalAlpha(double alpha) |
{ |
m_globalAlpha = alpha; |
m_strokeStyleDirty = true; |
@@ -368,7 +370,7 @@ SkImageFilter* CanvasRenderingContext2DState::getFilter(Element* styleResolution |
// StrokePaint respectively for filters that reference SVG. |
StyleBuilder::applyProperty(CSSPropertyWebkitFilter, resolverState, m_filterValue.get()); |
RefPtrWillBeRawPtr<FilterEffectBuilder> filterEffectBuilder = FilterEffectBuilder::create(); |
- const float effectiveZoom = 1.0f; // Deliberately ignore zoom on the canvas element |
+ const double effectiveZoom = 1.0; // Deliberately ignore zoom on the canvas element |
filterEffectBuilder->build(styleResolutionHost, filterStyle->filter(), effectiveZoom); |
SkiaImageFilterBuilder imageFilterBuilder; |
@@ -412,7 +414,7 @@ SkDrawLooper* CanvasRenderingContext2DState::shadowAndForegroundDrawLooper() con |
SkImageFilter* CanvasRenderingContext2DState::shadowOnlyImageFilter() const |
{ |
if (!m_shadowOnlyImageFilter) { |
- float sigma = skBlurRadiusToSigma(m_shadowBlur); |
+ double sigma = skBlurRadiusToSigma(m_shadowBlur); |
m_shadowOnlyImageFilter = adoptRef(SkDropShadowImageFilter::Create(m_shadowOffset.width(), m_shadowOffset.height(), sigma, sigma, m_shadowColor, SkDropShadowImageFilter::kDrawShadowOnly_ShadowMode)); |
} |
return m_shadowOnlyImageFilter.get(); |
@@ -421,7 +423,7 @@ SkImageFilter* CanvasRenderingContext2DState::shadowOnlyImageFilter() const |
SkImageFilter* CanvasRenderingContext2DState::shadowAndForegroundImageFilter() const |
{ |
if (!m_shadowAndForegroundImageFilter) { |
- float sigma = skBlurRadiusToSigma(m_shadowBlur); |
+ double sigma = skBlurRadiusToSigma(m_shadowBlur); |
m_shadowAndForegroundImageFilter = adoptRef(SkDropShadowImageFilter::Create(m_shadowOffset.width(), m_shadowOffset.height(), sigma, sigma, m_shadowColor, SkDropShadowImageFilter::kDrawShadowAndForeground_ShadowMode)); |
} |
return m_shadowAndForegroundImageFilter.get(); |
@@ -435,19 +437,19 @@ void CanvasRenderingContext2DState::shadowParameterChanged() |
m_shadowAndForegroundImageFilter.clear(); |
} |
-void CanvasRenderingContext2DState::setShadowOffsetX(float x) |
+void CanvasRenderingContext2DState::setShadowOffsetX(double x) |
{ |
m_shadowOffset.setWidth(x); |
shadowParameterChanged(); |
} |
-void CanvasRenderingContext2DState::setShadowOffsetY(float y) |
+void CanvasRenderingContext2DState::setShadowOffsetY(double y) |
{ |
m_shadowOffset.setHeight(y); |
shadowParameterChanged(); |
} |
-void CanvasRenderingContext2DState::setShadowBlur(float shadowBlur) |
+void CanvasRenderingContext2DState::setShadowBlur(double shadowBlur) |
{ |
m_shadowBlur = shadowBlur; |
shadowParameterChanged(); |