summaryrefslogtreecommitdiffstats
path: root/WebCore/html/CanvasStyle.cpp
diff options
context:
space:
mode:
authorThe Android Open Source Project <initial-contribution@android.com>2009-03-05 14:34:32 -0800
committerThe Android Open Source Project <initial-contribution@android.com>2009-03-05 14:34:32 -0800
commit635860845790a19bf50bbc51ba8fb66a96dde068 (patch)
treeef6ad9ff73a5b57f65249d4232a202fa77e6a140 /WebCore/html/CanvasStyle.cpp
parent8e35f3cfc7fba1d1c829dc557ebad6409cbe16a2 (diff)
downloadexternal_webkit-635860845790a19bf50bbc51ba8fb66a96dde068.zip
external_webkit-635860845790a19bf50bbc51ba8fb66a96dde068.tar.gz
external_webkit-635860845790a19bf50bbc51ba8fb66a96dde068.tar.bz2
auto import from //depot/cupcake/@136594
Diffstat (limited to 'WebCore/html/CanvasStyle.cpp')
-rw-r--r--WebCore/html/CanvasStyle.cpp28
1 files changed, 24 insertions, 4 deletions
diff --git a/WebCore/html/CanvasStyle.cpp b/WebCore/html/CanvasStyle.cpp
index 27d8a84..d82643f 100644
--- a/WebCore/html/CanvasStyle.cpp
+++ b/WebCore/html/CanvasStyle.cpp
@@ -105,13 +105,23 @@ void CanvasStyle::applyStrokeColor(GraphicsContext* context)
return;
switch (m_type) {
case ColorString: {
- RGBA32 color = 0; // default is transparant black
+ Color c = Color(m_color);
+ if (c.isValid()) {
+ context->setStrokeColor(c.rgb());
+ break;
+ }
+ RGBA32 color = 0; // default is transparent black
if (CSSParser::parseColor(color, m_color))
context->setStrokeColor(color);
break;
}
case ColorStringWithAlpha: {
- RGBA32 color = 0; // default is transparant black
+ Color c = Color(m_color);
+ if (c.isValid()) {
+ context->setStrokeColor(colorWithOverrideAlpha(c.rgb(), m_alpha));
+ break;
+ }
+ RGBA32 color = 0; // default is transparent black
if (CSSParser::parseColor(color, m_color))
context->setStrokeColor(colorWithOverrideAlpha(color, m_alpha));
break;
@@ -158,13 +168,23 @@ void CanvasStyle::applyFillColor(GraphicsContext* context)
return;
switch (m_type) {
case ColorString: {
- RGBA32 rgba = 0; // default is transparant black
+ Color c = Color(m_color);
+ if (c.isValid()){
+ context->setFillColor(c.rgb());
+ break;
+ }
+ RGBA32 rgba = 0; // default is transparent black
if (CSSParser::parseColor(rgba, m_color))
context->setFillColor(rgba);
break;
}
case ColorStringWithAlpha: {
- RGBA32 color = 0; // default is transparant black
+ Color c = Color(m_color);
+ if (c.isValid()){
+ context->setFillColor(colorWithOverrideAlpha(c.rgb(), m_alpha));
+ break;
+ }
+ RGBA32 color = 0; // default is transparent black
if (CSSParser::parseColor(color, m_color))
context->setFillColor(colorWithOverrideAlpha(color, m_alpha));
break;