Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 7ea03b267c5a70000c60ceb2619c3cdd7212fefd
https://github.com/WebKit/WebKit/commit/7ea03b267c5a70000c60ceb2619c3cdd7212fefd
Author: Antti Koivisto <[email protected]>
Date: 2022-10-26 (Wed, 26 Oct 2022)
Changed paths:
M Source/WebCore/Sources.txt
M Source/WebCore/WebCore.xcodeproj/project.pbxproj
M Source/WebCore/css/query/ContainerQueryFeatures.cpp
M Source/WebCore/css/query/ContainerQueryFeatures.h
M Source/WebCore/css/query/GenericMediaQueryEvaluator.cpp
M Source/WebCore/css/query/GenericMediaQueryEvaluator.h
M Source/WebCore/css/query/GenericMediaQueryParser.cpp
M Source/WebCore/css/query/GenericMediaQueryTypes.h
M Source/WebCore/css/query/MediaQueryEvaluator.cpp
M Source/WebCore/css/query/MediaQueryEvaluator.h
A Source/WebCore/css/query/MediaQueryFeatures.cpp
A Source/WebCore/css/query/MediaQueryFeatures.h
M Source/WebCore/css/query/MediaQueryParser.cpp
M Source/WebCore/loader/DocumentLoader.h
M Source/WebCore/style/ContainerQueryEvaluator.cpp
Log Message:
-----------
[MQ4] Add FeatureSchemas for most media query features
https://bugs.webkit.org/show_bug.cgi?id=247061
<rdar://problem/101586285>
Reviewed by Alan Bujtas.
Add schemas with evaluation functions for most media query features (everything
except the resolution queries).
Evaluation functions are based on the existing ones in
LegacyMediaQueryEvaluator.cpp.
These are not used yet.
* Source/WebCore/Sources.txt:
* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebCore/css/query/ContainerQueryFeatures.cpp:
(WebCore::CQ::Features::SizeFeatureSchema::SizeFeatureSchema):
(WebCore::CQ::Features::orientation):
* Source/WebCore/css/query/ContainerQueryFeatures.h:
* Source/WebCore/css/query/GenericMediaQueryEvaluator.cpp:
(WebCore::MQ::evaluateNumberComparison):
(WebCore::MQ::evaluateIntegerComparison):
(WebCore::MQ::evaluateBooleanFeature):
(WebCore::MQ::evaluateIntegerFeature):
(WebCore::MQ::evaluateNumberFeature):
(WebCore::MQ::evaluateIdentifierFeature):
(WebCore::MQ::evaluateDiscreteFeature): Deleted.
* Source/WebCore/css/query/GenericMediaQueryEvaluator.h:
* Source/WebCore/css/query/GenericMediaQueryParser.cpp:
(WebCore::MQ::GenericMediaQueryParserBase::validateFeatureAgainstSchema):
* Source/WebCore/css/query/GenericMediaQueryTypes.h:
(WebCore::MQ::FeatureSchema::FeatureSchema):
* Source/WebCore/css/query/MediaQueryEvaluator.cpp:
(WebCore::MQ::MediaQueryEvaluator::MediaQueryEvaluator):
(WebCore::MQ::MediaQueryEvaluator::evaluate const):
(WebCore::MQ::MediaQueryEvaluator::evaluateFeature const): Deleted.
* Source/WebCore/css/query/MediaQueryEvaluator.h:
* Source/WebCore/css/query/MediaQueryFeatures.cpp: Added.
(WebCore::MQ::Features::BooleanSchema::BooleanSchema):
(WebCore::MQ::Features::BooleanSchema::valueFunction):
(WebCore::MQ::Features::IntegerSchema::IntegerSchema):
(WebCore::MQ::Features::IntegerSchema::valueFunction):
(WebCore::MQ::Features::LengthSchema::LengthSchema):
(WebCore::MQ::Features::LengthSchema::valueFunction):
(WebCore::MQ::Features::RatioSchema::RatioSchema):
(WebCore::MQ::Features::RatioSchema::valueFunction):
(WebCore::MQ::Features::IdentifierSchema::IdentifierSchema):
(WebCore::MQ::Features::IdentifierSchema::valueFunction):
(WebCore::MQ::Features::animation):
(WebCore::MQ::Features::anyHover):
(WebCore::MQ::Features::anyPointer):
(WebCore::MQ::Features::aspectRatio):
(WebCore::MQ::Features::color):
(WebCore::MQ::Features::colorGamut):
(WebCore::MQ::Features::colorIndex):
(WebCore::MQ::Features::deviceAspectRatio):
(WebCore::MQ::Features::deviceHeight):
(WebCore::MQ::Features::deviceWidth):
(WebCore::MQ::Features::dynamicRange):
(WebCore::MQ::Features::forcedColors):
(WebCore::MQ::Features::grid):
(WebCore::MQ::Features::height):
(WebCore::MQ::Features::hover):
(WebCore::MQ::Features::invertedColors):
(WebCore::MQ::Features::monochrome):
(WebCore::MQ::Features::orientation):
(WebCore::MQ::Features::pointer):
(WebCore::MQ::Features::prefersContrast):
(WebCore::MQ::Features::prefersDarkInterface):
(WebCore::MQ::Features::prefersReducedMotion):
(WebCore::MQ::Features::scan):
(WebCore::MQ::Features::transform2d):
(WebCore::MQ::Features::transform3d):
(WebCore::MQ::Features::transition):
(WebCore::MQ::Features::videoPlayableInline):
(WebCore::MQ::Features::width):
(WebCore::MQ::Features::displayMode):
(WebCore::MQ::Features::prefersColorScheme):
* Source/WebCore/css/query/MediaQueryFeatures.h: Added.
* Source/WebCore/css/query/MediaQueryParser.cpp:
* Source/WebCore/loader/DocumentLoader.h:
* Source/WebCore/style/ContainerQueryEvaluator.cpp:
(WebCore::Style::ContainerQueryEvaluator::featureEvaluationContextForQuery
const):
Canonical link: https://commits.webkit.org/256030@main
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes