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

Reply via email to