Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 7c209cef52dd6e9b327b2a95be3645f7027e3f17
https://github.com/WebKit/WebKit/commit/7c209cef52dd6e9b327b2a95be3645f7027e3f17
Author: Antti Koivisto <[email protected]>
Date: 2022-10-15 (Sat, 15 Oct 2022)
Changed paths:
M Source/WebCore/css/ContainerQueryParser.cpp
M Source/WebCore/css/ContainerQueryParser.h
M Source/WebCore/css/parser/CSSParserImpl.cpp
M Source/WebCore/css/query/GenericMediaQueryParser.cpp
M Source/WebCore/css/query/GenericMediaQueryParser.h
M Source/WebCore/css/query/GenericMediaQueryTypes.h
M Source/WebCore/css/query/MediaQueryParser.cpp
M Source/WebCore/css/query/MediaQueryParser.h
M Source/WebCore/style/ContainerQueryEvaluator.cpp
Log Message:
-----------
[MQ4] Validate features against schemas
https://bugs.webkit.org/show_bug.cgi?id=246517
rdar://101170872
Reviewed by Alan Bujtas.
Make parser check that media features are known and have valid values.
This is done by checking against feature schemas that describe the valid
syntax for each feature.
* Source/WebCore/Sources.txt:
* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebCore/css/ContainerQueryParser.cpp:
(WebCore::ContainerQueryParser::featureSchemas):
Full schema for container queries.
* Source/WebCore/css/ContainerQueryParser.h:
(WebCore::ContainerQueryParser::rejectInvalidFeatures):
* Source/WebCore/css/parser/CSSParserImpl.cpp:
(WebCore::CSSParserImpl::consumeMediaRule):
* Source/WebCore/css/query/GenericMediaQueryParser.h:
(WebCore::MQ::GenericMediaQueryParser<ConcreteParser>::consumeQueryInParens):
(WebCore::MQ::GenericMediaQueryParser<ConcreteParser>::validateFeature):
(WebCore::MQ::GenericMediaQueryParser<ConcreteParser>::schemaForFeatureName
const):
* Source/WebCore/css/query/GenericMediaQueryParser.cpp:
(WebCore::MQ::GenericMediaQueryParserBase::validateFeatureAgainstSchema):
* Source/WebCore/css/query/GenericMediaQueryTypes.h:
* Source/WebCore/css/query/MediaQueryParser.cpp:
(WebCore::MQ::MediaQueryParser::featureSchemas):
Stub schema for media queries (this is not used yet).
* Source/WebCore/css/query/MediaQueryParser.h:
(WebCore::MQ::MediaQueryParser::rejectInvalidFeatures):
* Source/WebCore/style/ContainerQueryEvaluator.cpp:
(WebCore::Style::ContainerQueryEvaluator::evaluateFeature const):
Canonical link: https://commits.webkit.org/255589@main
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes