Title: [208064] trunk/Source/WebCore
- Revision
- 208064
- Author
- [email protected]
- Date
- 2016-10-28 13:41:38 -0700 (Fri, 28 Oct 2016)
Log Message
[CSS Parser] Add support for -webkit-canvas images
https://bugs.webkit.org/show_bug.cgi?id=164144
Reviewed by Simon Fraser.
* css/CSSValueKeywords.in:
* css/parser/CSSParser.cpp:
(WebCore::CSSParserContext::CSSParserContext):
* css/parser/CSSPropertyParserHelpers.cpp:
(WebCore::CSSPropertyParserHelpers::consumeWebkitCanvas):
(WebCore::CSSPropertyParserHelpers::consumeGeneratedImage):
(WebCore::CSSPropertyParserHelpers::isGeneratedImage):
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (208063 => 208064)
--- trunk/Source/WebCore/ChangeLog 2016-10-28 20:04:56 UTC (rev 208063)
+++ trunk/Source/WebCore/ChangeLog 2016-10-28 20:41:38 UTC (rev 208064)
@@ -1,3 +1,18 @@
+2016-10-28 Dave Hyatt <[email protected]>
+
+ [CSS Parser] Add support for -webkit-canvas images
+ https://bugs.webkit.org/show_bug.cgi?id=164144
+
+ Reviewed by Simon Fraser.
+
+ * css/CSSValueKeywords.in:
+ * css/parser/CSSParser.cpp:
+ (WebCore::CSSParserContext::CSSParserContext):
+ * css/parser/CSSPropertyParserHelpers.cpp:
+ (WebCore::CSSPropertyParserHelpers::consumeWebkitCanvas):
+ (WebCore::CSSPropertyParserHelpers::consumeGeneratedImage):
+ (WebCore::CSSPropertyParserHelpers::isGeneratedImage):
+
2016-10-27 Geoffrey Garen <[email protected]>
One file per class for Executable.h/.cpp
Modified: trunk/Source/WebCore/css/CSSValueKeywords.in (208063 => 208064)
--- trunk/Source/WebCore/css/CSSValueKeywords.in 2016-10-28 20:04:56 UTC (rev 208063)
+++ trunk/Source/WebCore/css/CSSValueKeywords.in 2016-10-28 20:41:38 UTC (rev 208064)
@@ -1155,6 +1155,7 @@
repeating-linear-gradient
repeating-radial-gradient
paint
+-webkit-canvas
-webkit-cross-fade
-webkit-gradient
-webkit-linear-gradient
Modified: trunk/Source/WebCore/css/parser/CSSPropertyParserHelpers.cpp (208063 => 208064)
--- trunk/Source/WebCore/css/parser/CSSPropertyParserHelpers.cpp 2016-10-28 20:04:56 UTC (rev 208063)
+++ trunk/Source/WebCore/css/parser/CSSPropertyParserHelpers.cpp 2016-10-28 20:41:38 UTC (rev 208064)
@@ -31,6 +31,7 @@
#include "CSSPropertyParserHelpers.h"
#include "CSSCalculationValue.h"
+#include "CSSCanvasValue.h"
#include "CSSCrossfadeValue.h"
#include "CSSGradientValue.h"
#include "CSSImageSetValue.h"
@@ -1020,6 +1021,16 @@
return CSSCrossfadeValue::create(fromImageValue.releaseNonNull(), toImageValue.releaseNonNull(), percentage.releaseNonNull());
}
+static RefPtr<CSSValue> consumeWebkitCanvas(CSSParserTokenRange& args)
+{
+ if (args.peek().type() != IdentToken)
+ return nullptr;
+ auto canvasName = args.consumeIncludingWhitespace().value().toString();
+ if (!args.atEnd())
+ return nullptr;
+ return CSSCanvasValue::create(canvasName);
+}
+
static RefPtr<CSSValue> consumeGeneratedImage(CSSParserTokenRange& range, CSSParserContext context)
{
CSSValueID id = range.peek().functionId();
@@ -1046,6 +1057,8 @@
result = consumeDeprecatedRadialGradient(args, context.mode, Repeating);
else if (id == CSSValueWebkitCrossFade)
result = consumeCrossFade(args, context);
+ else if (id == CSSValueWebkitCanvas)
+ result = consumeWebkitCanvas(args);
if (!result || !args.atEnd())
return nullptr;
@@ -1089,7 +1102,8 @@
|| id == CSSValueRepeatingLinearGradient || id == CSSValueRepeatingRadialGradient
|| id == CSSValueWebkitLinearGradient || id == CSSValueWebkitRadialGradient
|| id == CSSValueWebkitRepeatingLinearGradient || id == CSSValueWebkitRepeatingRadialGradient
- || id == CSSValueWebkitGradient || id == CSSValueWebkitCrossFade || id == CSSValuePaint;
+ || id == CSSValueWebkitGradient || id == CSSValueWebkitCrossFade || id == CSSValueWebkitCanvas
+ || id == CSSValuePaint;
}
RefPtr<CSSValue> consumeImage(CSSParserTokenRange& range, CSSParserContext context, ConsumeGeneratedImage generatedImage)
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes