⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Timeline



Jan 9, 2022:

11:55 PM Changeset in webkit [287830] by graouts@webkit.org
  • 3 edits in trunk/LayoutTests/imported/w3c

Unreviewed WPT update after https://github.com/web-platform-tests/wpt/pull/32222.

  • web-platform-tests/css/css-transitions/transition-property-002-expected.txt:
  • web-platform-tests/css/css-transitions/transition-property-002.html:
7:39 PM Changeset in webkit [287829] by weinig@apple.com
  • 99 edits
    54 deletes in trunk

.:
Remove support for Direct2D
https://bugs.webkit.org/show_bug.cgi?id=234999

Reviewed by Darin Adler.

  • Source/cmake/OptionsFTW.cmake: Removed.

Source/JavaScriptCore:
Remove support for Direct2D
https://bugs.webkit.org/show_bug.cgi?id=234999

Reviewed by Darin Adler.

Direct2D and FTW have not been building for over a year. It is
time to remove them.

  • PlatformFTW.cmake: Removed.

Source/ThirdParty/ANGLE:
Remove support for Direct2D
https://bugs.webkit.org/show_bug.cgi?id=234999

Reviewed by Darin Adler.

Direct2D and FTW have not been building for over a year. It is
time to remove them.

  • PlatformFTW.cmake: Removed.

Source/WebCore:
Remove support for Direct2D / FTW
https://bugs.webkit.org/show_bug.cgi?id=234999

Reviewed by Darin Adler.

Direct2D and FTW have not been building for over a year. It is
time to remove them.

  • PlatformAppleWin.cmake:
  • PlatformFTW.cmake: Removed.
  • PlatformWin.cmake:
  • page/CaptionUserPreferencesMediaAF.cpp:
  • page/CaptionUserPreferencesMediaAF.h:
  • page/win/FrameWinDirect2D.cpp: Removed.
  • platform/MIMETypeRegistry.cpp:

(WebCore::MIMETypeRegistry::createMIMETypeRegistryThreadGlobalData):

  • platform/graphics/BifurcatedGraphicsContext.cpp:
  • platform/graphics/BifurcatedGraphicsContext.h:
  • platform/graphics/BitmapImage.cpp:

(WebCore::BitmapImage::frameImageAtIndexCacheIfNeeded):
(WebCore::BitmapImage::nativeImage):
(WebCore::BitmapImage::nativeImageForCurrentFrame):
(WebCore::BitmapImage::preTransformedNativeImageForCurrentFrame):
(WebCore::BitmapImage::nativeImageOfSize):
(WebCore::BitmapImage::draw):

  • platform/graphics/BitmapImage.h:
  • platform/graphics/Font.h:
  • platform/graphics/FontPlatformData.h:

(WebCore::FontPlatformData::dwFont const): Deleted.
(WebCore::FontPlatformData::dwFontFace const): Deleted.

  • platform/graphics/Gradient.h:
  • platform/graphics/GraphicsContext.h:
  • platform/graphics/Image.h:

(WebCore::Image::nativeImage):
(WebCore::Image::nativeImageForCurrentFrame):
(WebCore::Image::preTransformedNativeImageForCurrentFrame):
(WebCore::Image::nativeImageOfSize):

  • platform/graphics/ImageDecoder.cpp:

(WebCore::ImageDecoder::create):
(WebCore::ImageDecoder::supportsMediaType):

  • platform/graphics/ImageDecoder.h:
  • platform/graphics/ImageSource.cpp:

(WebCore::ImageSource::setTargetContext): Deleted.

  • platform/graphics/ImageSource.h:
  • platform/graphics/NullGraphicsContext.h:
  • platform/graphics/Path.cpp:

(WebCore::Path::length const):
(WebCore::Path::addRoundedRect):

  • platform/graphics/Path.h:
  • platform/graphics/Pattern.h:
  • platform/graphics/PlatformImage.h:
  • platform/graphics/PlatformImageBuffer.h:
  • platform/graphics/PlatformImageBufferBackend.h:
  • platform/graphics/avfoundation/cf/CDMSessionAVFoundationCF.cpp:

(WebCore::CDMSessionAVFoundationCF::generateKeyRequest):

  • platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:

(WebCore::MediaPlayerPrivateAVFoundationCF::paint):

  • platform/graphics/cg/PDFDocumentImage.cpp:

(WebCore::PDFDocumentImage::drawPDFPage):

  • platform/graphics/displaylists/DisplayListRecorder.h:
  • platform/graphics/opentype/OpenTypeMathData.cpp:

(WebCore::OpenTypeMathData::OpenTypeMathData):

  • platform/graphics/opentype/OpenTypeUtilities.cpp:

(WebCore::renameAndActivateFont):

  • platform/graphics/texmap/BitmapTexture.cpp:

(WebCore::BitmapTexture::updateContents):

  • platform/graphics/texmap/BitmapTextureGL.cpp:

(WebCore::BitmapTextureGL::updateContents):

  • platform/graphics/win/BackingStoreBackendDirect2D.h: Removed.
  • platform/graphics/win/BackingStoreBackendDirect2DImpl.cpp: Removed.
  • platform/graphics/win/BackingStoreBackendDirect2DImpl.h: Removed.
  • platform/graphics/win/ColorDirect2D.cpp: Removed.
  • platform/graphics/win/ComplexTextControllerDirectWrite.cpp: Removed.
  • platform/graphics/win/ComplexTextControllerUniscribe.cpp:
  • platform/graphics/win/Direct2DOperations.cpp: Removed.
  • platform/graphics/win/Direct2DOperations.h: Removed.
  • platform/graphics/win/Direct2DUtilities.cpp: Removed.
  • platform/graphics/win/Direct2DUtilities.h: Removed.
  • platform/graphics/win/DirectWriteUtilities.cpp: Removed.
  • platform/graphics/win/DirectWriteUtilities.h: Removed.
  • platform/graphics/win/FloatPointDirect2D.cpp: Removed.
  • platform/graphics/win/FloatRectDirect2D.cpp: Removed.
  • platform/graphics/win/FloatSizeDirect2D.cpp: Removed.
  • platform/graphics/win/FontCascadeDirect2D.cpp: Removed.
  • platform/graphics/win/FontCustomPlatformData.cpp:

(WebCore::FontCustomPlatformData::fontPlatformData):

  • platform/graphics/win/FontPlatformDataDirect2D.cpp: Removed.
  • platform/graphics/win/GlyphPageTreeNodeDirect2D.cpp: Removed.
  • platform/graphics/win/GradientDirect2D.cpp: Removed.
  • platform/graphics/win/GraphicsContextDirect2D.cpp: Removed.
  • platform/graphics/win/GraphicsContextGLDirect2D.cpp: Removed.
  • platform/graphics/win/GraphicsContextPlatformPrivateDirect2D.h: Removed.
  • platform/graphics/win/GraphicsContextWin.cpp:
  • platform/graphics/win/GraphicsContextWin.h:
  • platform/graphics/win/GraphicsLayerDirect2D.cpp: Removed.
  • platform/graphics/win/GraphicsLayerDirect2D.h: Removed.
  • platform/graphics/win/ImageBufferDirect2DBackend.cpp: Removed.
  • platform/graphics/win/ImageBufferDirect2DBackend.h: Removed.
  • platform/graphics/win/ImageDecoderDirect2D.cpp: Removed.
  • platform/graphics/win/ImageDecoderDirect2D.h: Removed.
  • platform/graphics/win/ImageDirect2D.cpp: Removed.
  • platform/graphics/win/NativeImageDirect2D.cpp: Removed.
  • platform/graphics/win/PathDirect2D.cpp: Removed.
  • platform/graphics/win/PatternDirect2D.cpp: Removed.
  • platform/graphics/win/PlatformContextDirect2D.cpp: Removed.
  • platform/graphics/win/PlatformContextDirect2D.h: Removed.
  • platform/graphics/win/SimpleFontDataDirect2D.cpp: Removed.
  • platform/graphics/win/TextAnalyzerHelper.cpp: Removed.
  • platform/graphics/win/TextAnalyzerHelper.h: Removed.
  • platform/graphics/win/TransformationMatrixDirect2D.cpp: Removed.
  • platform/win/DragImageDirect2D.cpp: Removed.
  • rendering/RenderLayerFilters.cpp:

(WebCore::RenderLayerFilters::allocateBackingStoreIfNeeded):
(WebCore::RenderLayerFilters::beginFilterEffect):

  • rendering/RenderLayerFilters.h:
  • rendering/svg/RenderSVGResourceFilter.cpp:

(WebCore::RenderSVGResourceFilter::applyResource):

  • rendering/svg/RenderSVGResourceMasker.cpp:

(WebCore::RenderSVGResourceMasker::applyResource):

  • rendering/svg/SVGRenderingContext.cpp:

(WebCore::SVGRenderingContext::createImageBuffer):

  • rendering/svg/SVGRenderingContext.h:
  • svg/graphics/SVGImage.cpp:

(WebCore::SVGImage::nativeImageForCurrentFrame):
(WebCore::SVGImage::nativeImage):

  • svg/graphics/SVGImage.h:
  • svg/graphics/SVGImageForContainer.cpp:

(WebCore::SVGImageForContainer::nativeImageForCurrentFrame):

  • svg/graphics/SVGImageForContainer.h:

Source/WebCore/PAL:
Remove support for Direct2D
https://bugs.webkit.org/show_bug.cgi?id=234999

Reviewed by Darin Adler.

Direct2D and FTW have not been building for over a year. It is
time to remove them.

  • pal/PlatformFTW.cmake: Removed.

Source/WebKit:
Remove support for Direct2D
https://bugs.webkit.org/show_bug.cgi?id=234999

Reviewed by Darin Adler.

Direct2D and FTW have not been building for over a year. It is
time to remove them.

  • PlatformFTW.cmake: Removed.
  • Shared/ShareableBitmap.cpp:

(WebKit::ShareableBitmap::Configuration::encode const):
(WebKit::ShareableBitmap::Configuration::decode):
(WebKit::ShareableBitmap::ShareableBitmap):
(WebKit::ShareableBitmap::~ShareableBitmap):
(WebKit::ShareableBitmap::numBytesForSize):

  • Shared/ShareableBitmap.h:

(WebKit::ShareableBitmap::createPlatformImage):
(WebKit::ShareableBitmap::dxSurface): Deleted.

  • Shared/win/ShareableBitmapDirect2D.cpp: Removed.
  • UIProcess/BackingStore.cpp:
  • UIProcess/WebPageProxy.cpp:
  • UIProcess/WebPageProxy.h:
  • UIProcess/win/BackingStoreDirect2D.cpp: Removed.
  • UIProcess/win/WebPageProxyWin.cpp:

(WebKit::WebPageProxy::device const): Deleted.
(WebKit::WebPageProxy::setDevice): Deleted.

  • UIProcess/win/WebPopupMenuProxyWin.cpp:

(WebKit::WebPopupMenuProxyWin::showPopupMenu):
(WebKit::WebPopupMenuProxyWin::paint):
(WebKit::WebPopupMenuProxyWin::setupSwapChain): Deleted.
(WebKit::WebPopupMenuProxyWin::configureBackingStore): Deleted.

  • UIProcess/win/WebPopupMenuProxyWin.h:
  • UIProcess/win/WebView.cpp:

(WebKit::WebView::WebView):
(WebKit::WebView::onSizeEvent):
(WebKit::WebView::setupSwapChain): Deleted.
(WebKit::WebView::configureBackingStore): Deleted.

  • UIProcess/win/WebView.h:

(WebKit::WebView::d3dDevice const): Deleted.
(WebKit::WebView::d3dImmediateContext const): Deleted.

  • WebProcess/WebCoreSupport/WebPopupMenu.cpp:

(WebKit::WebPopupMenu::show):

  • WebProcess/WebPage/CoordinatedGraphics/DrawingAreaCoordinatedGraphics.cpp:

(WebKit::DrawingAreaCoordinatedGraphics::display):

  • WebProcess/WebPage/FindController.cpp:

(WebKit::FindController::getImageForFindMatch):

Source/WebKitLegacy:
Remove support for Direct2D
https://bugs.webkit.org/show_bug.cgi?id=234999

Reviewed by Darin Adler.

Direct2D and FTW have not been building for over a year. It is
time to remove them.

  • PlatformFTW.cmake: Removed.

Source/WebKitLegacy/win:
Remove support for Direct2D
https://bugs.webkit.org/show_bug.cgi?id=234999

Reviewed by Darin Adler.

Direct2D and FTW have not been building for over a year. It is
time to remove them.

  • WebView.cpp:

(WebView::deleteBackingStore):
(WebView::ensureBackingStore):
(WebView::scrollBackingStore):
(WebView::sizeChanged):
(WebView::updateBackingStore):
(WebView::paint):
(WebView::paintIntoBackingStore):
(WebView::WebViewWndProc):
(WebView::notifyPreferencesChanged):
(WebView::paintWithDirect2D): Deleted.

  • WebView.h:

Source/WTF:
Remove support for Direct2D
https://bugs.webkit.org/show_bug.cgi?id=234999

Reviewed by Darin Adler.

  • wtf/PlatformFTW.cmake: Removed.

Tools:
Remove support for Direct2D
https://bugs.webkit.org/show_bug.cgi?id=234999

Reviewed by Darin Adler.

Direct2D and FTW have not been building for over a year. It is
time to remove them.

  • DumpRenderTree/PixelDumpSupport.cpp:
  • DumpRenderTree/PlatformWin.cmake:
  • DumpRenderTree/win/PixelDumpSupportDirect2D.cpp: Removed.
  • DumpRenderTree/win/PixelDumpSupportDirect2D.h: Removed.
  • DumpRenderTree/win/PixelDumpSupportWin.cpp:

(createBitmapContextFromWebView):

  • PlatformFTW.cmake: Removed.
  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:

(WTR::InjectedBundlePage::dumpDOMAsWebArchive):

  • WebKitTestRunner/PlatformFTW.cmake: Removed.
  • WebKitTestRunner/PlatformWebView.h:
  • WebKitTestRunner/win/PlatformWebViewWin.cpp:
  • WebKitTestRunner/win/TestInvocationDirect2D.cpp: Removed.
1:38 PM Changeset in webkit [287828] by graouts@webkit.org
  • 3 edits in trunk/Source/WebCore

Style::Resolver::keyframeRulesForName() signature should be improved
https://bugs.webkit.org/show_bug.cgi?id=235021

Reviewed by Darin Adler.

Darin pointed out during the review for bug 235008 that the method itself
should be const, not its return value.

  • style/StyleResolver.cpp:

(WebCore::Style::Resolver::keyframeRulesForName const):
(WebCore::Style::Resolver::keyframeRulesForName): Deleted.

  • style/StyleResolver.h:
1:19 PM Changeset in webkit [287827] by graouts@webkit.org
  • 5 edits
    2 adds in trunk

Implicit keyframe for a CSS Animation should always use the underlying style
https://bugs.webkit.org/show_bug.cgi?id=235014

Reviewed by Antti Koivisto.

LayoutTests/imported/w3c:

Add a new WPT which changes the underlying style for a property that is being
animated with an @keyframes rule that doesn't explicitly specify this value
on all keyframes.

  • web-platform-tests/css/css-animations/animation-change-underlying-value-changed-in-flight-expected.txt: Added.
  • web-platform-tests/css/css-animations/animation-change-underlying-value-changed-in-flight.html: Added.

Source/WebCore:

When resolving keyframes for a CSS Animation in Style::Resolver::keyframeStylesForAnimation(),
we would fill implicit keyframes based on the style at the time the animation was created.
However, the underlying style may change at any point while the CSS Animation is in flight,
so we should not be filling those values.

The code that actually resolves animated styles already knows how to handle this case, which
we already supported correctly for JS-originated animations. The only thing we need to do is
to ensure we fill implicit keyframes when calling getKeyframes().

This surfaced an issue with KeyframeList::copyKeyframes() where we only copied the styles
from one set of keyframes to another, but not the timing function, which would cause a
getKeyframes() test to regress. We should also make sure to copy the composite operation
for when we support the animation-composition property (see bug 232086).

Test: imported/w3c/web-platform-tests/css/css-animations/animation-change-underlying-value-changed-in-flight.html

  • animation/KeyframeEffect.cpp:

(WebCore::KeyframeEffect::getKeyframes):

  • rendering/style/KeyframeList.cpp:

(WebCore::KeyframeList::copyKeyframes):

  • style/StyleResolver.cpp:

(WebCore::Style::Resolver::keyframeStylesForAnimation):

11:51 AM Changeset in webkit [287826] by graouts@webkit.org
  • 4 edits in trunk

Interpolation for the "filter" property fails with a single keyframe
https://bugs.webkit.org/show_bug.cgi?id=235019

Reviewed by Dean Jackson.

LayoutTests/imported/w3c:

Mark WPT progressions.

  • web-platform-tests/css/filter-effects/animation/filter-interpolation-001-expected.txt:

Source/WebCore:

In the case of an animation with a single keyframe, the 0% or 100% value (or both) may
be implicit and the blending keyframes can have fewer than to entries. This would make
KeyframeEffect::checkForMatchingFilterFunctionLists() always store "false" values for
whether "filter" values in keyframes match and prevent any blending from happening.

In the case where we have fewer than 2 values, as long as the property is animated,
we return true.

  • animation/KeyframeEffect.cpp:

(WebCore::KeyframeEffect::checkForMatchingFilterFunctionLists const):

10:54 AM Changeset in webkit [287825] by weinig@apple.com
  • 7 edits in trunk/Source/WebCore

Refactor CSS property parsing helpers to be a bit more composable
https://bugs.webkit.org/show_bug.cgi?id=234869

Reviewed by Darin Adler.

Refactors primitive CSS property parsing to be built on a new composable set of
lower level primitives.

The lowest level primitive is now a "consumer" struct that only knows how to consume
a particular type for a particular token type. For example, NumberRawKnownTokenTypeNumberConsumer
only knows how to consume and return a NumberRaw if the token type is a NumberToken.

For these token specific consumers to be useful, they need to be combined together. To
do this, a higher level meta-consumer type that is not tied to a specific token is used.
These are defined as empty structs with 'using' statements to indicate which low level
consumers to use for which token token types. For example:

struct NumberRawConsumer {

using Result = std::optional<NumberRaw>;

using FunctionToken = NumberRawKnownTokenTypeFunctionConsumer;
using NumberToken = NumberRawKnownTokenTypeNumberConsumer;

};

This meta-consumer definition defines a consumer that utilizes two lower level token
specific consumers for function and number tokens.

To actuall do something with this meta-consumer definition, the consumeMetaConsumer<>(...)
function is used, which introspects which using statements are defined, and dispatches to
the corresponding token specific consumer (see MetaConsumerDispatcher for how introspection works).

In addition to primitive meta-consumer definitions, there are also definitions for meta-consumers
that can consumer more complex things without duplicate work. For example, AngleOrPercentConsumer
is a meta-consumer that consumes either an Angle or a Percent. To deal with the fact that both
of these want to operate on function tokens, the SameTokenMetaConsumer allows concatenating multiple
per-token consumers (in this case, two function token consumers) together.

Meta-consumer definitions can also define, or allow defining via a template parameter, a Transformer,
which, as the name implies, transform the output. For example, the AngleOrNumberRawToDegressTransformer
can be used to ensure that the result is a number in degrees, and doesn't have to be unwrapped by
the user.

The goal is avoid the combinatorial explosition of functions branching on token type for
more and more specialized parsing needs. For instance, an upcomping change will want to
extend consumeNumberOrPercentRawAllowingSymbolTableIdent and a few other related consumers
to also consume the identifier 'none'. Rather than duplicating all the logic, this allows
for just defining a few meta-consumer definitions utilizing almost entirely existing lower
level consumers.

  • css/MediaQueryExpression.cpp:

(WebCore::consumeFirstValue):

  • css/parser/CSSPropertyParser.cpp:

(WebCore::consumeFontVariationTag):
(WebCore::consumeCubicBezier):
(WebCore::consumeSpringFunction):
(WebCore::consumePerspective):
(WebCore::consumeCursor):
(WebCore::CSSPropertyParser::parseSingleValue):
(WebCore::consumeCounterStylePad):
(WebCore::consumeCounterStyleAdditiveSymbols):
(WebCore::consumeBasePaletteDescriptor):
(WebCore::consumeOverrideColorsDescriptor):
(WebCore::CSSPropertyParser::consumeFlex):

  • css/parser/CSSPropertyParserHelpers.cpp:

(WebCore::CSSPropertyParserHelpers::CalcParser::CalcParser):
(WebCore::CSSPropertyParserHelpers::consumeCalcRawWithKnownTokenTypeFunction):
(WebCore::CSSPropertyParserHelpers::computeMinimumValue):
(WebCore::CSSPropertyParserHelpers::IntegerTypeRawKnownTokenTypeFunctionConsumer::consume):
(WebCore::CSSPropertyParserHelpers::IntegerTypeRawKnownTokenTypeNumberConsumer::consume):
(WebCore::CSSPropertyParserHelpers::IntegerTypeKnownTokenTypeFunctionConsumer::consume):
(WebCore::CSSPropertyParserHelpers::IntegerTypeKnownTokenTypeNumberConsumer::consume):
(WebCore::CSSPropertyParserHelpers::validatedNumberRaw):
(WebCore::CSSPropertyParserHelpers::NumberRawKnownTokenTypeFunctionConsumer::consume):
(WebCore::CSSPropertyParserHelpers::NumberRawKnownTokenTypeNumberConsumer::consume):
(WebCore::CSSPropertyParserHelpers::NumberRawKnownTokenTypeIdentConsumer::consume):
(WebCore::CSSPropertyParserHelpers::NumberCSSPrimitiveValueWithCalcWithKnownTokenTypeFunctionConsumer::consume):
(WebCore::CSSPropertyParserHelpers::NumberCSSPrimitiveValueWithCalcWithKnownTokenTypeNumberConsumer::consume):
(WebCore::CSSPropertyParserHelpers::validatedPercentRaw):
(WebCore::CSSPropertyParserHelpers::PercentRawKnownTokenTypeFunctionConsumer::consume):
(WebCore::CSSPropertyParserHelpers::PercentRawKnownTokenTypePercentConsumer::consume):
(WebCore::CSSPropertyParserHelpers::PercentRawKnownTokenTypeIdentConsumer::consume):
(WebCore::CSSPropertyParserHelpers::PercentCSSPrimitiveValueWithCalcWithKnownTokenTypeFunctionConsumer::consume):
(WebCore::CSSPropertyParserHelpers::PercentCSSPrimitiveValueWithCalcWithKnownTokenTypePercentConsumer::consume):
(WebCore::CSSPropertyParserHelpers::LengthRawKnownTokenTypeFunctionConsumer::consume):
(WebCore::CSSPropertyParserHelpers::LengthRawKnownTokenTypeDimensionConsumer::consume):
(WebCore::CSSPropertyParserHelpers::LengthRawKnownTokenTypeNumberConsumer::consume):
(WebCore::CSSPropertyParserHelpers::LengthCSSPrimitiveValueWithCalcWithKnownTokenTypeFunctionConsumer::consume):
(WebCore::CSSPropertyParserHelpers::LengthCSSPrimitiveValueWithCalcWithKnownTokenTypeDimensionConsumer::consume):
(WebCore::CSSPropertyParserHelpers::LengthCSSPrimitiveValueWithCalcWithKnownTokenTypeNumberConsumer::consume):
(WebCore::CSSPropertyParserHelpers::AngleRawKnownTokenTypeFunctionConsumer::consume):
(WebCore::CSSPropertyParserHelpers::AngleRawKnownTokenTypeDimensionConsumer::consume):
(WebCore::CSSPropertyParserHelpers::AngleRawKnownTokenTypeNumberConsumer::consume):
(WebCore::CSSPropertyParserHelpers::AngleCSSPrimitiveValueWithCalcWithKnownTokenTypeFunctionConsumer::consume):
(WebCore::CSSPropertyParserHelpers::AngleCSSPrimitiveValueWithCalcWithKnownTokenTypeDimensionConsumer::consume):
(WebCore::CSSPropertyParserHelpers::AngleCSSPrimitiveValueWithCalcWithKnownTokenTypeNumberConsumer::consume):
(WebCore::CSSPropertyParserHelpers::TimeCSSPrimitiveValueWithCalcWithKnownTokenTypeFunctionConsumer::consume):
(WebCore::CSSPropertyParserHelpers::TimeCSSPrimitiveValueWithCalcWithKnownTokenTypeDimensionConsumer::consume):
(WebCore::CSSPropertyParserHelpers::TimeCSSPrimitiveValueWithCalcWithKnownTokenTypeNumberConsumer::consume):
(WebCore::CSSPropertyParserHelpers::ResolutionCSSPrimitiveValueWithKnownTokenTypeDimensionConsumer::consume):
(WebCore::CSSPropertyParserHelpers::TransformApplier::apply):
(WebCore::CSSPropertyParserHelpers::applyTransform):
(WebCore::CSSPropertyParserHelpers::IdentityTransformer::transform):
(WebCore::CSSPropertyParserHelpers::RawVariantTransformerBase::transform):
(WebCore::CSSPropertyParserHelpers::AngleOrNumberRawToDegressTransformer::transform):
(WebCore::CSSPropertyParserHelpers::NumberOrPercentDividedBy100Transformer::transform):
(WebCore::CSSPropertyParserHelpers::MetaConsumerDispatcher::consume):
(WebCore::CSSPropertyParserHelpers::consumeMetaConsumer):
(WebCore::CSSPropertyParserHelpers::SameTokenMetaConsumerApplier::consume):
(WebCore::CSSPropertyParserHelpers::SameTokenMetaConsumer::consume):
(WebCore::CSSPropertyParserHelpers::LengthOrPercentRawTransformer::transform):
(WebCore::CSSPropertyParserHelpers::AngleOrNumberRawKnownTokenTypeIdentConsumer::consume):
(WebCore::CSSPropertyParserHelpers::NumberOrPercentRawKnownTokenTypeIdentConsumer::consume):
(WebCore::CSSPropertyParserHelpers::consumeIntegerTypeRaw):
(WebCore::CSSPropertyParserHelpers::consumeIntegerType):
(WebCore::CSSPropertyParserHelpers::consumeIntegerRaw):
(WebCore::CSSPropertyParserHelpers::consumeInteger):
(WebCore::CSSPropertyParserHelpers::consumeIntegerZeroAndGreaterRaw):
(WebCore::CSSPropertyParserHelpers::consumeIntegerZeroAndGreater):
(WebCore::CSSPropertyParserHelpers::consumePositiveIntegerRaw):
(WebCore::CSSPropertyParserHelpers::consumePositiveInteger):
(WebCore::CSSPropertyParserHelpers::consumeNumberRaw):
(WebCore::CSSPropertyParserHelpers::consumeNumberAllowingSymbolTableIdent):
(WebCore::CSSPropertyParserHelpers::consumeNumber):
(WebCore::CSSPropertyParserHelpers::consumePercentRaw):
(WebCore::CSSPropertyParserHelpers::consumePercentAllowingSymbolTableIdent):
(WebCore::CSSPropertyParserHelpers::consumePercent):
(WebCore::CSSPropertyParserHelpers::consumePercentWorkerSafe):
(WebCore::CSSPropertyParserHelpers::consumeLengthRaw):
(WebCore::CSSPropertyParserHelpers::consumeLength):
(WebCore::CSSPropertyParserHelpers::consumeAngleRaw):
(WebCore::CSSPropertyParserHelpers::consumeAngle):
(WebCore::CSSPropertyParserHelpers::consumeAngleWorkerSafe):
(WebCore::CSSPropertyParserHelpers::consumeTime):
(WebCore::CSSPropertyParserHelpers::consumeResolution):
(WebCore::CSSPropertyParserHelpers::consumeAngleOrPercent):
(WebCore::CSSPropertyParserHelpers::consumeLengthOrPercentRaw):
(WebCore::CSSPropertyParserHelpers::consumeLengthOrPercent):
(WebCore::CSSPropertyParserHelpers::consumeAngleOrNumberRaw):
(WebCore::CSSPropertyParserHelpers::consumeAngleOrNumberRawAllowingSymbolTableIdent):
(WebCore::CSSPropertyParserHelpers::consumeNumberOrPercentRaw):
(WebCore::CSSPropertyParserHelpers::consumeNumberOrPercentRawAllowingSymbolTableIdent):
(WebCore::CSSPropertyParserHelpers::consumeNumberOrPercent):
(WebCore::CSSPropertyParserHelpers::consumeFontWeightNumberRaw):
(WebCore::CSSPropertyParserHelpers::consumeOptionalAlpha):
(WebCore::CSSPropertyParserHelpers::consumeOptionalAlphaAllowingSymbolTableIdent):
(WebCore::CSSPropertyParserHelpers::normalizeRGBComponentNumber):
(WebCore::CSSPropertyParserHelpers::normalizeRGBComponentPercentage):
(WebCore::CSSPropertyParserHelpers::RGBNormalizingTransformer::transform):
(WebCore::CSSPropertyParserHelpers::consumeRelativeRGBComponent):
(WebCore::CSSPropertyParserHelpers::clampRGBComponent):
(WebCore::CSSPropertyParserHelpers::consumeRGBOrHSLOptionalAlpha):
(WebCore::CSSPropertyParserHelpers::parseNonRelativeRGBParameters):
(WebCore::CSSPropertyParserHelpers::parseRelativeHSLParameters):
(WebCore::CSSPropertyParserHelpers::parseNonRelativeHSLParameters):
(WebCore::CSSPropertyParserHelpers::parseHWBParameters):
(WebCore::CSSPropertyParserHelpers::parseRelativeHWBParameters):
(WebCore::CSSPropertyParserHelpers::parseNonRelativeHWBParameters):
(WebCore::CSSPropertyParserHelpers::parseLabParameters):
(WebCore::CSSPropertyParserHelpers::parseLCHParameters):
(WebCore::CSSPropertyParserHelpers::parseRelativeLCHParameters):
(WebCore::CSSPropertyParserHelpers::parseNonRelativeLCHParameters):
(WebCore::CSSPropertyParserHelpers::parseRelativeColorFunctionForRGBTypes):
(WebCore::CSSPropertyParserHelpers::parseColorFunctionForRGBTypes):
(WebCore::CSSPropertyParserHelpers::parseColorFunctionForXYZTypes):
(WebCore::CSSPropertyParserHelpers::parseColorContrastFunctionParameters):
(WebCore::CSSPropertyParserHelpers::consumeColorMixComponent):
(WebCore::CSSPropertyParserHelpers::consumePositionComponent):
(WebCore::CSSPropertyParserHelpers::consumePositionCoordinates):
(WebCore::CSSPropertyParserHelpers::consumeDeprecatedGradientColorStop):
(WebCore::CSSPropertyParserHelpers::consumeCrossFade):
(WebCore::CSSPropertyParserHelpers::consumeLineHeightRaw):
(WebCore::CSSPropertyParserHelpers::CalcParser::consumeInteger): Deleted.
(WebCore::CSSPropertyParserHelpers::CalcParser::consumeIntegerTypeRaw): Deleted.
(WebCore::CSSPropertyParserHelpers::CalcParser::consumeNumber): Deleted.
(WebCore::CSSPropertyParserHelpers::CalcParser::consumeNumberRaw): Deleted.
(WebCore::CSSPropertyParserHelpers::CalcParser::consumePercentRaw): Deleted.
(WebCore::CSSPropertyParserHelpers::CalcParser::consumeAngleRaw): Deleted.
(WebCore::CSSPropertyParserHelpers::CalcParser::consumeLengthRaw): Deleted.
(WebCore::CSSPropertyParserHelpers::consumeIntegerTypeRawWithKnownTokenTypeFunction): Deleted.
(WebCore::CSSPropertyParserHelpers::consumeIntegerTypeRawWithKnownTokenTypeNumber): Deleted.
(WebCore::CSSPropertyParserHelpers::consumeIntegerTypeCSSPrimitiveValueWithCalcWithKnownTokenTypeFunction): Deleted.
(WebCore::CSSPropertyParserHelpers::consumeIntegerTypeCSSPrimitiveValueWithCalcWithKnownTokenTypeNumber): Deleted.
(WebCore::CSSPropertyParserHelpers::consumeNumberRawWithKnownTokenTypeFunction): Deleted.
(WebCore::CSSPropertyParserHelpers::consumeNumberRawWithKnownTokenTypeNumber): Deleted.
(WebCore::CSSPropertyParserHelpers::consumeNumberRawWithKnownTokenTypeIdent): Deleted.
(WebCore::CSSPropertyParserHelpers::consumeNumberCSSPrimitiveValueWithCalcWithKnownTokenTypeFunction): Deleted.
(WebCore::CSSPropertyParserHelpers::consumeNumberCSSPrimitiveValueWithCalcWithKnownTokenTypeNumber): Deleted.
(WebCore::CSSPropertyParserHelpers::consumePercentRawWithKnownTokenTypeFunction): Deleted.
(WebCore::CSSPropertyParserHelpers::consumePercentRawWithKnownTokenTypePercentage): Deleted.
(WebCore::CSSPropertyParserHelpers::consumePercentRawWithKnownTokenTypeIdent): Deleted.
(WebCore::CSSPropertyParserHelpers::consumePercentCSSPrimitiveValueWithCalcWithKnownTokenTypeFunction): Deleted.
(WebCore::CSSPropertyParserHelpers::consumePercentCSSPrimitiveValueWithCalcWithKnownTokenTypePercentage): Deleted.
(WebCore::CSSPropertyParserHelpers::consumeLengthRawWithKnownTokenTypeFunction): Deleted.
(WebCore::CSSPropertyParserHelpers::consumeLengthRawWithKnownTokenTypeDimension): Deleted.
(WebCore::CSSPropertyParserHelpers::consumeLengthRawWithKnownTokenTypeNumber): Deleted.
(WebCore::CSSPropertyParserHelpers::consumeLengthCSSPrimitiveValueWithCalcWithKnownTokenTypeFunction): Deleted.
(WebCore::CSSPropertyParserHelpers::consumeLengthCSSPrimitiveValueWithCalcWithKnownTokenTypeDimension): Deleted.
(WebCore::CSSPropertyParserHelpers::consumeLengthCSSPrimitiveValueWithCalcWithKnownTokenTypeNumber): Deleted.
(WebCore::CSSPropertyParserHelpers::consumeAngleRawWithKnownTokenTypeFunction): Deleted.
(WebCore::CSSPropertyParserHelpers::consumeAngleRawWithKnownTokenTypeDimension): Deleted.
(WebCore::CSSPropertyParserHelpers::consumeAngleRawWithKnownTokenTypeNumber): Deleted.
(WebCore::CSSPropertyParserHelpers::consumeAngleCSSPrimitiveValueWithCalcWithKnownTokenTypeFunction): Deleted.
(WebCore::CSSPropertyParserHelpers::consumeAngleCSSPrimitiveValueWithCalcWithKnownTokenTypeDimension): Deleted.
(WebCore::CSSPropertyParserHelpers::consumeAngleCSSPrimitiveValueWithCalcWithKnownTokenTypeNumber): Deleted.
(WebCore::CSSPropertyParserHelpers::consumeTimeCSSPrimitiveValueWithCalcWithKnownTokenTypeFunction): Deleted.
(WebCore::CSSPropertyParserHelpers::consumeTimeCSSPrimitiveValueWithCalcWithKnownTokenTypeDimension): Deleted.
(WebCore::CSSPropertyParserHelpers::consumeTimeCSSPrimitiveValueWithCalcWithKnownTokenTypeNumber): Deleted.
(WebCore::CSSPropertyParserHelpers::consumeResolutionCSSPrimitiveValueWithKnownTokenTypeDimension): Deleted.
(WebCore::CSSPropertyParserHelpers::consumeAngleRawOrNumberRaw): Deleted.
(WebCore::CSSPropertyParserHelpers::consumeAngleRawOrNumberRawAllowingSymbolTableIdent): Deleted.
(WebCore::CSSPropertyParserHelpers::consumeNumberRawOrPercentRaw): Deleted.
(WebCore::CSSPropertyParserHelpers::consumeNumberRawOrPercentDividedBy100Raw): Deleted.
(WebCore::CSSPropertyParserHelpers::consumeNumberRawOrPercentRawAllowingSymbolTableIdent): Deleted.
(WebCore::CSSPropertyParserHelpers::consumeNumberRawOrPercentDividedBy100RawAllowingSymbolTableIdent): Deleted.

  • css/parser/CSSPropertyParserHelpers.h:
  • css/parser/CSSPropertyParserWorkerSafe.cpp:

(WebCore::CSSPropertyParserHelpersWorkerSafe::consumeFontFeatureTag):

  • style/StyleResolveForFontRaw.cpp:

(WebCore::Style::resolveForFontRaw):

10:22 AM Changeset in webkit [287824] by Alan Bujtas
  • 3 edits in trunk/Source/WebCore

[LFC][IFC] Introduce a dedicated structure for Line::Run's trailing whitespace information
https://bugs.webkit.org/show_bug.cgi?id=235010

Reviewed by Antti Koivisto.

  • layout/formattingContexts/inline/InlineLine.cpp:

(WebCore::Layout::Line::Run::trailingWhitespaceType):
(WebCore::Layout::Line::Run::Run):
(WebCore::Layout::Line::Run::expand):
(WebCore::Layout::Line::Run::removeTrailingWhitespace):
(WebCore::Layout::m_bidiLevel): Deleted.
(WebCore::Layout::m_textContent): Deleted.

  • layout/formattingContexts/inline/InlineLine.h:

(WebCore::Layout::Line::Run::hasTrailingWhitespace const):
(WebCore::Layout::Line::Run::trailingWhitespaceWidth const):
(WebCore::Layout::Line::Run::hasCollapsibleTrailingWhitespace const):
(WebCore::Layout::Line::Run::hasCollapsedTrailingWhitespace const):
(WebCore::Layout::Line::Run::trailingWhitespaceType const): Deleted.

10:18 AM Changeset in webkit [287823] by Ziran Sun
  • 33 edits
    2 copies
    2 moves
    13 adds in trunk/LayoutTests

[css-grid] Resync web-platform-tests/css/css-grid tests from upstream
https://bugs.webkit.org/show_bug.cgi?id=234879

Reviewed by Darin Adler.

LayoutTests/imported/w3c:

  • web-platform-tests/css/css-grid/abspos/grid-abspos-staticpos-align-self-img-002-expected.html:
  • web-platform-tests/css/css-grid/abspos/grid-abspos-staticpos-align-self-img-last-baseline-002-expected.html:
  • web-platform-tests/css/css-grid/abspos/grid-abspos-staticpos-align-self-last-baseline-002-expected.html:
  • web-platform-tests/css/css-grid/abspos/grid-abspos-staticpos-align-self-rtl-last-baseline-003-expected.html:
  • web-platform-tests/css/css-grid/abspos/grid-abspos-staticpos-align-self-rtl-last-baseline-004-expected.html:
  • web-platform-tests/css/css-grid/abspos/grid-abspos-staticpos-align-self-vertWM-003-expected.html:
  • web-platform-tests/css/css-grid/abspos/grid-abspos-staticpos-align-self-vertWM-004-expected.html:
  • web-platform-tests/css/css-grid/abspos/grid-abspos-staticpos-align-self-vertWM-last-baseline-003-expected.html:
  • web-platform-tests/css/css-grid/abspos/grid-abspos-staticpos-align-self-vertWM-last-baseline-004-expected.html:
  • web-platform-tests/css/css-grid/abspos/grid-abspos-staticpos-justify-self-img-002-expected.html:
  • web-platform-tests/css/css-grid/abspos/grid-abspos-staticpos-justify-self-img-last-baseline-002-expected.html:
  • web-platform-tests/css/css-grid/abspos/grid-abspos-staticpos-justify-self-img-last-baseline-002.html:
  • web-platform-tests/css/css-grid/abspos/grid-abspos-staticpos-justify-self-last-baseline-002-expected.html:
  • web-platform-tests/css/css-grid/abspos/grid-abspos-staticpos-justify-self-rtl-last-baseline-003-expected.html:
  • web-platform-tests/css/css-grid/abspos/grid-abspos-staticpos-justify-self-rtl-last-baseline-004-expected.html:
  • web-platform-tests/css/css-grid/abspos/grid-abspos-staticpos-justify-self-vertWM-003-expected.html:
  • web-platform-tests/css/css-grid/abspos/grid-abspos-staticpos-justify-self-vertWM-004-expected.html:
  • web-platform-tests/css/css-grid/abspos/grid-abspos-staticpos-justify-self-vertWM-last-baseline-003-expected.html:
  • web-platform-tests/css/css-grid/abspos/grid-abspos-staticpos-justify-self-vertWM-last-baseline-004-expected.html:
  • web-platform-tests/css/css-grid/alignment/grid-container-auto-margins-scrollbars-001-expected.html:
  • web-platform-tests/css/css-grid/alignment/grid-content-alignment-with-abspos-001-expected.txt: Added.
  • web-platform-tests/css/css-grid/alignment/grid-content-alignment-with-abspos-001.html: Added.
  • web-platform-tests/css/css-grid/alignment/self-baseline/w3c-import.log:
  • web-platform-tests/css/css-grid/alignment/w3c-import.log:
  • web-platform-tests/css/css-grid/grid-definition/w3c-import.log:
  • web-platform-tests/css/css-grid/grid-items/grid-intrinsic-maximums-expected.html: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-intrinsic-maximums.html: Added.
  • web-platform-tests/css/css-grid/grid-items/w3c-import.log:
  • web-platform-tests/css/css-grid/grid-model/grid-container-scrollbars-sizing-002-expected.html:
  • web-platform-tests/css/css-grid/grid-model/w3c-import.log:
  • web-platform-tests/css/css-grid/layout-algorithm/flex-tracks-with-fractional-size-expected.xht: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-grid/placement/grid-placement-items-spanning-multiple-rows-expected.xht.
  • web-platform-tests/css/css-grid/layout-algorithm/flex-tracks-with-fractional-size.html: Added.
  • web-platform-tests/css/css-grid/layout-algorithm/w3c-import.log:
  • web-platform-tests/css/css-grid/nested-grid-item-block-size-001-expected.html: Added.
  • web-platform-tests/css/css-grid/nested-grid-item-block-size-001.html: Added.
  • web-platform-tests/css/css-grid/parsing/grid-area-computed-expected.txt:
  • web-platform-tests/css/css-grid/parsing/grid-area-computed.html:
  • web-platform-tests/css/css-grid/placement/grid-placement-items-spanning-multiple-rows-001-expected.xht: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-grid/placement/grid-placement-items-spanning-multiple-rows-expected.xht.
  • web-platform-tests/css/css-grid/placement/grid-placement-items-spanning-multiple-rows-001.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-grid/placement/grid-placement-items-spanning-multiple-rows.html.
  • web-platform-tests/css/css-grid/placement/grid-placement-items-spanning-multiple-rows-002-expected.xht: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-grid/placement/grid-placement-items-spanning-multiple-rows-expected.xht.
  • web-platform-tests/css/css-grid/placement/grid-placement-items-spanning-multiple-rows-002.html: Added.
  • web-platform-tests/css/css-grid/placement/w3c-import.log:
  • web-platform-tests/css/css-grid/subgrid/grid-subgridded-axis-auto-repeater-crash-001.html: Added.
  • web-platform-tests/css/css-grid/subgrid/grid-subgridded-axis-auto-repeater-crash-002.html: Added.
  • web-platform-tests/css/css-grid/subgrid/grid-template-invalid.html: Added.
  • web-platform-tests/css/css-grid/subgrid/grid-template-valid.html: Added.
  • web-platform-tests/css/css-grid/subgrid/w3c-import.log:
  • web-platform-tests/css/css-grid/support/colors-8x16.png: Added.
  • web-platform-tests/css/css-grid/support/w3c-import.log:

LayoutTests:

10:13 AM Changeset in webkit [287822] by graouts@webkit.org
  • 4 edits in trunk

translate() function in transform property should remove trailing 0 value when parsing
https://bugs.webkit.org/show_bug.cgi?id=235016

Reviewed by Antti Koivisto.

LayoutTests/imported/w3c:

Mark WPT progression.

  • web-platform-tests/css/css-animations/KeyframeEffect-getKeyframes.tentative-expected.txt:

Source/WebCore:

  • css/parser/CSSPropertyParser.cpp:

(WebCore::consumeTransformValue):

10:06 AM Changeset in webkit [287821] by weinig@apple.com
  • 5 edits in trunk/Source

Add helpers to access CoreGraphics color spaces more easily in generic contexts
https://bugs.webkit.org/show_bug.cgi?id=235004

Reviewed by Darin Adler.

Source/WebCore:

Add some structs and type trait helpers to allow accessing the CoreGraphics
CGColorSpaceRef associated with a ColorSpace enum value at compile time. This
will be useful for generalizing some of the gradient rendering code optimizations
I have planned.

  • platform/graphics/cg/ColorCG.cpp:

(WebCore::Color::createAndLosslesslyConvertToSupportedColorSpace):

  • platform/graphics/cg/ColorSpaceCG.cpp:

(WebCore::colorSpaceForCGColorSpace):

  • platform/graphics/cg/ColorSpaceCG.h:

(WebCore::CGColorSpaceMapping<ColorSpace::SRGB>::colorSpace):
(WebCore::CGColorSpaceMapping<ColorSpace::A98RGB>::colorSpace):
(WebCore::CGColorSpaceMapping<ColorSpace::DisplayP3>::colorSpace):
(WebCore::CGColorSpaceMapping<ColorSpace::ExtendedA98RGB>::colorSpace):
(WebCore::CGColorSpaceMapping<ColorSpace::ExtendedDisplayP3>::colorSpace):
(WebCore::CGColorSpaceMapping<ColorSpace::ExtendedRec2020>::colorSpace):
(WebCore::CGColorSpaceMapping<ColorSpace::ExtendedLinearSRGB>::colorSpace):
(WebCore::CGColorSpaceMapping<ColorSpace::ExtendedProPhotoRGB>::colorSpace):
(WebCore::CGColorSpaceMapping<ColorSpace::ExtendedSRGB>::colorSpace):
(WebCore::CGColorSpaceMapping<ColorSpace::Rec2020>::colorSpace):
(WebCore::CGColorSpaceMapping<ColorSpace::LinearSRGB>::colorSpace):
(WebCore::CGColorSpaceMapping<ColorSpace::ProPhotoRGB>::colorSpace):
(WebCore::CGColorSpaceMapping<ColorSpace::XYZ_D50>::colorSpace):
(WebCore::CGColorSpaceMappingGetter::colorSpace):
(WebCore::cachedNullableCGColorSpace):

Source/WTF:

  • wtf/PlatformHave.h:

Update have macro, HAVE_CORE_GRAPHICS_XYZ_COLOR_SPACE, to have a more specific name,
HAVE_CORE_GRAPHICS_XYZ_D50_COLOR_SPACE, which is really what it is.

7:35 AM Changeset in webkit [287820] by graouts@webkit.org
  • 6 edits in trunk

[Web Animations] getKeyframes() for a CSS Animation should not use computed style for keyframes
https://bugs.webkit.org/show_bug.cgi?id=235008

Reviewed by Antti Koivisto.

LayoutTests/imported/w3c:

Mark WPT progression.

  • web-platform-tests/css/css-animations/KeyframeEffect-getKeyframes.tentative-expected.txt:

Source/WebCore:

Until now, when calling getKeyframes() on a keyframe effect associated with a CSS Animation, we would
serialize for each keyframe the computed style for the animated properties. However, the Web Aniations
spec says (https://drafts.csswg.org/web-animations-1/#dom-keyframeeffect-getkeyframes) that the value
to use should "be the result of serializing the property value of declaration by passing declaration
to the algorithm to serialize a CSS value [CSSOM]."

One way we can get to the value as specified on the @keyframes rule rather than the computed style
is to access the StyleRuleKeyframe object directly as stored by the Style::Resolver. This keeps the
raw CSSValues as parsed.

To do this, we first refactor Style::Resolver::keyframeStylesForAnimation() such that all the code
that creates a Vector<Ref<StyleRuleKeyframe>> with deduplicated keyframe rules is in the new dedicated
method Style::Resolver::keyframeRulesForName().

Then, in KeyframeEffect::getKeyframes(), we can call into this function to obtain the set of keyframe
rules for the associated CSS Animation's name and read the style from there. Note that these values
may contain unsubstituted --var() values, so in that case for now we still use the computed style.

  • animation/KeyframeEffect.cpp:

(WebCore::KeyframeEffect::getKeyframes):

  • style/StyleResolver.cpp:

(WebCore::Style::Resolver::keyframeRulesForName):
(WebCore::Style::Resolver::keyframeStylesForAnimation):

  • style/StyleResolver.h:
5:50 AM Changeset in webkit [287819] by Alan Bujtas
  • 3 edits in trunk/Source/WebCore

[LFC][IFC] Line::Run needs access to FontCascade
https://bugs.webkit.org/show_bug.cgi?id=235009

Reviewed by Antti Koivisto.

This is in preparation for computing trimmed trailing content width properly.

  • layout/formattingContexts/inline/InlineLine.cpp:

(WebCore::Layout::Line::append):
(WebCore::Layout::Line::appendLineBreak):
(WebCore::Layout::Line::appendWordBreakOpportunity):
(WebCore::Layout::Line::Run::Run):
(WebCore::Layout::m_textContent):
(WebCore::Layout::m_style): Deleted. - We learnt in the past that expanding structures like this (stack backed, large in number) could
lead to measurable perf regression.

  • layout/formattingContexts/inline/InlineLine.h:

(WebCore::Layout::Line::Run::shouldTrailingWhitespaceHang const):
(WebCore::Layout::Line::Run::inlineDirection const):
(WebCore::Layout::Line::Run::letterSpacing const):
(WebCore::Layout::Line::Run::hasTextCombine const):

1:01 AM Changeset in webkit [287818] by Antti Koivisto
  • 12 edits in trunk/Source/WebCore

Use IsNegation bit for more efficient pseudo-class style invalidation
https://bugs.webkit.org/show_bug.cgi?id=235003

Reviewed by Simon Fraser.

We now know if a given invalidation ruleset is for negated context. We can use this to avoid
unnecessary traversal in pseudo-class invalidation, similar to what we already do with classes.

  • dom/Document.cpp:

(WebCore::Document::updateHoverActiveState):

  • dom/Element.cpp:

(WebCore::Element::setActive):
(WebCore::Element::setFocus):
(WebCore::Element::setHasFocusWithin):
(WebCore::Element::setHovered):
(WebCore::Element::setBeingDragged):

Provide the value for invalidation.

  • html/HTMLFieldSetElement.cpp:

(WebCore::HTMLFieldSetElement::addInvalidDescendant):
(WebCore::HTMLFieldSetElement::removeInvalidDescendant):

  • html/HTMLFormControlElement.cpp:

(WebCore::HTMLFormControlElement::setAncestorDisabled):
(WebCore::HTMLFormControlElement::parseAttribute):
(WebCore::HTMLFormControlElement::updateValidity):

  • html/HTMLFormElement.cpp:

(WebCore::HTMLFormElement::registerInvalidAssociatedFormControl):
(WebCore::HTMLFormElement::removeInvalidAssociatedFormControlIfNeeded):

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::setChecked):

  • html/HTMLOptGroupElement.cpp:

(WebCore::HTMLOptGroupElement::parseAttribute):

  • html/HTMLOptionElement.cpp:

(WebCore::HTMLOptionElement::parseAttribute):
(WebCore::HTMLOptionElement::setSelectedState):

  • page/EventHandler.cpp:

(WebCore::EventHandler::internalKeyEvent):

  • style/PseudoClassChangeInvalidation.cpp:

(WebCore::Style::PseudoClassChangeInvalidation::computeInvalidation):
(WebCore::Style::PseudoClassChangeInvalidation::collectRuleSets):

Setting a pseudo-class can only make a regular selector (not inside :not()) start matching.
Setting a pseudo-class can only make a negated selector (inside :not()) stop matching.
We only need to invalidate for the first case after the mutation has happened and for the second
case before it happens.

The cases are reversed when pseudo-class is unset.

(WebCore::Style::PseudoClassChangeInvalidation::invalidateBeforeChange):
(WebCore::Style::PseudoClassChangeInvalidation::invalidateAfterChange):
(WebCore::Style::PseudoClassChangeInvalidation::invalidateStyleWithRuleSets): Deleted.

  • style/PseudoClassChangeInvalidation.h:

(WebCore::Style::emplace):

Add a helper since std::optional::emplace() is awkward to use with std::initializer_list.

(WebCore::Style::PseudoClassChangeInvalidation::PseudoClassChangeInvalidation):
(WebCore::Style::PseudoClassChangeInvalidation::~PseudoClassChangeInvalidation):

Jan 8, 2022:

11:43 PM Changeset in webkit [287817] by Simon Fraser
  • 12 edits
    2 adds in trunk

If the drop-shadow filter has no color, it should use the value of the color property
https://bugs.webkit.org/show_bug.cgi?id=235012

Reviewed by Alan Bujtas.

LayoutTests/imported/w3c:

  • web-platform-tests/css/filter-effects/animation/filter-interpolation-004-expected.txt:
  • web-platform-tests/css/filter-effects/parsing/filter-computed-expected.txt:

Source/WebCore:

https://drafts.fxtf.org/filter-effects-1/#funcdef-filter-drop-shadow states that if
drop-shadow() does not specify a color, the value of the color property should be used.

Test: css3/filters/drop-shadow-no-color.html

  • style/StyleBuilderState.cpp:

(WebCore::Style::BuilderState::createFilterOperations):

LayoutTests:

Fix tests to serialize with rgb(0, 0, 0) instead of the transparent color.

  • css3/filters/backdrop/backdropfilter-property-computed-style-expected.txt:
  • css3/filters/backdrop/backdropfilter-property-computed-style.html:
  • css3/filters/drop-shadow-no-color-expected.html: Added.
  • css3/filters/drop-shadow-no-color.html: Added.
  • css3/filters/filter-property-computed-style-expected.txt:
  • css3/filters/filter-property-computed-style.html:
  • css3/filters/unprefixed-expected.txt:
  • css3/filters/unprefixed.html:
8:16 PM Changeset in webkit [287816] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[GLIB] Update test expectations for known failures.
https://bugs.webkit.org/show_bug.cgi?id=234972

Unreviewed test gardening.

Patch by Arcady Goldmints-Orlov <Arcady Goldmints-Orlov> on 2022-01-08

  • platform/glib/TestExpectations:
3:40 PM Changeset in webkit [287815] by Simon Fraser
  • 8 edits in trunk

Fix some CSS filter interpolation issues
https://bugs.webkit.org/show_bug.cgi?id=235007

Reviewed by Antoine Quint.

LayoutTests/imported/w3c:

More passing now.

  • web-platform-tests/css/filter-effects/animation/filter-interpolation-002-expected.txt:
  • web-platform-tests/css/filter-effects/animation/filter-interpolation-003-expected.txt:
  • web-platform-tests/css/filter-effects/animation/filter-interpolation-004-expected.txt:

Source/WebCore:

Ensure that filter values are clamped after animation according to
https://drafts.fxtf.org/filter-effects-1/.

Tested by WPT.

  • platform/graphics/filters/FilterOperation.cpp:

(WebCore::BasicColorMatrixFilterOperation::blend):
(WebCore::BasicComponentTransferFilterOperation::blend):
(WebCore::BlurFilterOperation::blend):
(WebCore::DropShadowFilterOperation::blend):

LayoutTests:

imported/w3c/web-platform-tests/css/filter-effects/animation/filter-interpolation-004.html no longer asserts.

2:12 PM Changeset in webkit [287814] by Wenson Hsieh
  • 4 edits
    1 add in trunk

Null pointer crash when calling into -[WebView close] in -webView:didCommitLoadForFrame:
https://bugs.webkit.org/show_bug.cgi?id=234994
rdar://86845512

Reviewed by Chris Dumez and Geoff Garen.

Source/WebCore:

Add a null check in FrameLoader::dispatchDidCommitLoad() before calling into any methods on the frame's Page.
Since we called into the client layer to dispatchDidCommitLoad() immediately prior to this, a legacy WebKit
client may have already caused the page to be destroyed (e.g. by closing the web view). Since Frame's pointer
to Page is a WeakPtr, this triggers null derefs when attempting to call either didCommitLoad() or
remoteInspectorInformationDidChange().

Test: WebKitLegacy.CloseWhileCommittingLoad

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::dispatchDidCommitLoad):

Tools:

Add a new API test to exercise the fix.

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WebKitCocoa/CloseWhileCommittingLoad.mm: Added.

(-[CloseWhileCommittingLoadDelegate webView:didCommitLoadForFrame:]):
(TestWebKitAPI::TEST):

10:26 AM Changeset in webkit [287813] by Simon Fraser
  • 6 edits
    608 adds in trunk/LayoutTests

Import css/filter-effects web platform tests
https://bugs.webkit.org/show_bug.cgi?id=235001

Reviewed by Alan Bujtas.
LayoutTests/imported/w3c:

Imported from WPT ba3997e9f9a2f10a00688061f785d4c9b70cc5d5.

  • resources/import-expectations.json:
  • resources/resource-files.json:
  • web-platform-tests/css/filter-effects/META.yml: Added.
  • web-platform-tests/css/filter-effects/animation/backdrop-filter-interpolation-001-expected.txt: Added.
  • web-platform-tests/css/filter-effects/animation/backdrop-filter-interpolation-001.html: Added.
  • web-platform-tests/css/filter-effects/animation/backdrop-filter-interpolation-002-expected.txt: Added.
  • web-platform-tests/css/filter-effects/animation/backdrop-filter-interpolation-002.html: Added.
  • web-platform-tests/css/filter-effects/animation/backdrop-filter-interpolation-003-expected.txt: Added.
  • web-platform-tests/css/filter-effects/animation/backdrop-filter-interpolation-003.html: Added.
  • web-platform-tests/css/filter-effects/animation/backdrop-filter-interpolation-004-expected.txt: Added.
  • web-platform-tests/css/filter-effects/animation/backdrop-filter-interpolation-004.html: Added.
  • web-platform-tests/css/filter-effects/animation/filter-interpolation-001-expected.txt: Added.
  • web-platform-tests/css/filter-effects/animation/filter-interpolation-001.html: Added.
  • web-platform-tests/css/filter-effects/animation/filter-interpolation-002-expected.txt: Added.
  • web-platform-tests/css/filter-effects/animation/filter-interpolation-002.html: Added.
  • web-platform-tests/css/filter-effects/animation/filter-interpolation-003.html: Added.
  • web-platform-tests/css/filter-effects/animation/filter-interpolation-004.html: Added.
  • web-platform-tests/css/filter-effects/animation/w3c-import.log: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-basic-background-color-expected.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-basic-background-color-ref.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-basic-background-color.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-basic-expected.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-basic-opacity-2-expected.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-basic-opacity-2-ref.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-basic-opacity-2.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-basic-opacity-expected.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-basic-opacity-ref.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-basic-opacity.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-basic-ref.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-basic.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-clip-rect-expected.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-clip-rect-ref.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-clip-rect.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-clip-rounded-clip-expected.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-clip-rounded-clip-ref.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-clip-rounded-clip.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-clipped-expected.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-clipped-ref.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-clipped.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-containing-block-expected.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-containing-block-ref.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-containing-block.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-edge-behavior-expected.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-edge-behavior-ref.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-edge-behavior.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-edge-clipping-expected.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-edge-clipping.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-edge-pixels-expected.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-edge-pixels-ref.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-edge-pixels.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-fixed-clip-expected.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-fixed-clip-ref.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-fixed-clip.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-isolation-expected.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-isolation-fixed-expected.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-isolation-fixed.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-isolation-isolate-expected.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-isolation-isolate.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-isolation-ref.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-isolation.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-non-isolation-ref.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-opacity-rounded-clip-expected.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-opacity-rounded-clip-ref.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-opacity-rounded-clip.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-paint-order-expected.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-paint-order-ref.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-paint-order.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-plus-filter-expected.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-plus-filter-ref.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-plus-filter.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-plus-opacity-expected.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-plus-opacity-ref.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-plus-opacity.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-reference-filter-expected.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-reference-filter.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-root-element-expected.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-root-element-ref.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-root-element.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-svg-foreignObject-expected.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-svg-foreignObject.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-update-expected.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-update-ref.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-update.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-zero-size-expected.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-zero-size-ref.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filter-zero-size.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filters-brightness-expected.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filters-brightness-ref.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filters-brightness.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filters-contrast-expected.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filters-contrast-ref.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filters-contrast.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filters-grayscale-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filters-grayscale-001.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filters-grayscale-002-expected.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filters-grayscale-002.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filters-grayscale-003-expected.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filters-grayscale-003.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filters-hue-rotate-expected.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filters-hue-rotate-ref.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filters-hue-rotate.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filters-invert-expected.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filters-invert-ref.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filters-invert.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filters-opacity-expected.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filters-opacity-ref.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filters-opacity.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filters-saturate-expected.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filters-saturate-ref.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filters-saturate.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filters-sepia-expected.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filters-sepia-ref.html: Added.
  • web-platform-tests/css/filter-effects/backdrop-filters-sepia.html: Added.
  • web-platform-tests/css/filter-effects/background-image-blur-repaint-expected.html: Added.
  • web-platform-tests/css/filter-effects/background-image-blur-repaint.html: Added.
  • web-platform-tests/css/filter-effects/blur-clip-stacking-context-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/blur-clip-stacking-context-001.html: Added.
  • web-platform-tests/css/filter-effects/blur-clip-stacking-context-002-expected-mismatch.html: Added.
  • web-platform-tests/css/filter-effects/blur-clip-stacking-context-002.html: Added.
  • web-platform-tests/css/filter-effects/blur-clip-stacking-context-ref.html: Added.
  • web-platform-tests/css/filter-effects/clip-under-filter-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/clip-under-filter-001.html: Added.
  • web-platform-tests/css/filter-effects/clip-under-filter-002-expected.html: Added.
  • web-platform-tests/css/filter-effects/clip-under-filter-002.html: Added.
  • web-platform-tests/css/filter-effects/clip-under-filter-003-expected.html: Added.
  • web-platform-tests/css/filter-effects/clip-under-filter-003.html: Added.
  • web-platform-tests/css/filter-effects/crashtests/multiple-references-id-crash-001-expected.txt: Added.
  • web-platform-tests/css/filter-effects/crashtests/multiple-references-id-crash-001.html: Added.
  • web-platform-tests/css/filter-effects/crashtests/multiple-references-id-crash-002-expected.txt: Added.
  • web-platform-tests/css/filter-effects/crashtests/multiple-references-id-crash-002.html: Added.
  • web-platform-tests/css/filter-effects/crashtests/w3c-import.log: Added.
  • web-platform-tests/css/filter-effects/css-backdrop-filters-animation-blur-expected.html: Added.
  • web-platform-tests/css/filter-effects/css-backdrop-filters-animation-blur-ref.html: Added.
  • web-platform-tests/css/filter-effects/css-backdrop-filters-animation-blur.html: Added.
  • web-platform-tests/css/filter-effects/css-backdrop-filters-animation-brightness-expected.html: Added.
  • web-platform-tests/css/filter-effects/css-backdrop-filters-animation-brightness-ref.html: Added.
  • web-platform-tests/css/filter-effects/css-backdrop-filters-animation-brightness.html: Added.
  • web-platform-tests/css/filter-effects/css-backdrop-filters-animation-combined-expected.html: Added.
  • web-platform-tests/css/filter-effects/css-backdrop-filters-animation-combined-ref.html: Added.
  • web-platform-tests/css/filter-effects/css-backdrop-filters-animation-combined.html: Added.
  • web-platform-tests/css/filter-effects/css-backdrop-filters-animation-contrast-expected.html: Added.
  • web-platform-tests/css/filter-effects/css-backdrop-filters-animation-contrast-ref.html: Added.
  • web-platform-tests/css/filter-effects/css-backdrop-filters-animation-contrast.html: Added.
  • web-platform-tests/css/filter-effects/css-backdrop-filters-animation-drop-shadow-expected.html: Added.
  • web-platform-tests/css/filter-effects/css-backdrop-filters-animation-drop-shadow-ref.html: Added.
  • web-platform-tests/css/filter-effects/css-backdrop-filters-animation-drop-shadow.html: Added.
  • web-platform-tests/css/filter-effects/css-backdrop-filters-animation-grayscale-expected.html: Added.
  • web-platform-tests/css/filter-effects/css-backdrop-filters-animation-grayscale-ref.html: Added.
  • web-platform-tests/css/filter-effects/css-backdrop-filters-animation-grayscale.html: Added.
  • web-platform-tests/css/filter-effects/css-backdrop-filters-animation-hue-rotate-expected.html: Added.
  • web-platform-tests/css/filter-effects/css-backdrop-filters-animation-hue-rotate-ref.html: Added.
  • web-platform-tests/css/filter-effects/css-backdrop-filters-animation-hue-rotate.html: Added.
  • web-platform-tests/css/filter-effects/css-backdrop-filters-animation-invert-expected.html: Added.
  • web-platform-tests/css/filter-effects/css-backdrop-filters-animation-invert-ref.html: Added.
  • web-platform-tests/css/filter-effects/css-backdrop-filters-animation-invert.html: Added.
  • web-platform-tests/css/filter-effects/css-backdrop-filters-animation-opacity-expected.html: Added.
  • web-platform-tests/css/filter-effects/css-backdrop-filters-animation-opacity-ref.html: Added.
  • web-platform-tests/css/filter-effects/css-backdrop-filters-animation-opacity.html: Added.
  • web-platform-tests/css/filter-effects/css-backdrop-filters-animation-saturate-expected.html: Added.
  • web-platform-tests/css/filter-effects/css-backdrop-filters-animation-saturate-ref.html: Added.
  • web-platform-tests/css/filter-effects/css-backdrop-filters-animation-saturate.html: Added.
  • web-platform-tests/css/filter-effects/css-backdrop-filters-animation-sepia-expected.html: Added.
  • web-platform-tests/css/filter-effects/css-backdrop-filters-animation-sepia-ref.html: Added.
  • web-platform-tests/css/filter-effects/css-backdrop-filters-animation-sepia.html: Added.
  • web-platform-tests/css/filter-effects/css-filters-animation-blur-expected.html: Added.
  • web-platform-tests/css/filter-effects/css-filters-animation-blur-ref.html: Added.
  • web-platform-tests/css/filter-effects/css-filters-animation-blur.html: Added.
  • web-platform-tests/css/filter-effects/css-filters-animation-brightness-expected.html: Added.
  • web-platform-tests/css/filter-effects/css-filters-animation-brightness-ref.html: Added.
  • web-platform-tests/css/filter-effects/css-filters-animation-brightness.html: Added.
  • web-platform-tests/css/filter-effects/css-filters-animation-combined-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/css-filters-animation-combined-001-ref.html: Added.
  • web-platform-tests/css/filter-effects/css-filters-animation-combined-001.html: Added.
  • web-platform-tests/css/filter-effects/css-filters-animation-contrast-expected.html: Added.
  • web-platform-tests/css/filter-effects/css-filters-animation-contrast-ref.html: Added.
  • web-platform-tests/css/filter-effects/css-filters-animation-contrast.html: Added.
  • web-platform-tests/css/filter-effects/css-filters-animation-drop-shadow-expected.html: Added.
  • web-platform-tests/css/filter-effects/css-filters-animation-drop-shadow-ref.html: Added.
  • web-platform-tests/css/filter-effects/css-filters-animation-drop-shadow.html: Added.
  • web-platform-tests/css/filter-effects/css-filters-animation-grayscale-expected.html: Added.
  • web-platform-tests/css/filter-effects/css-filters-animation-grayscale-ref.html: Added.
  • web-platform-tests/css/filter-effects/css-filters-animation-grayscale.html: Added.
  • web-platform-tests/css/filter-effects/css-filters-animation-hue-rotate-expected.html: Added.
  • web-platform-tests/css/filter-effects/css-filters-animation-hue-rotate-ref.html: Added.
  • web-platform-tests/css/filter-effects/css-filters-animation-hue-rotate.html: Added.
  • web-platform-tests/css/filter-effects/css-filters-animation-invert-expected.html: Added.
  • web-platform-tests/css/filter-effects/css-filters-animation-invert-ref.html: Added.
  • web-platform-tests/css/filter-effects/css-filters-animation-invert.html: Added.
  • web-platform-tests/css/filter-effects/css-filters-animation-opacity-expected.html: Added.
  • web-platform-tests/css/filter-effects/css-filters-animation-opacity-ref.html: Added.
  • web-platform-tests/css/filter-effects/css-filters-animation-opacity.html: Added.
  • web-platform-tests/css/filter-effects/css-filters-animation-saturate-expected.html: Added.
  • web-platform-tests/css/filter-effects/css-filters-animation-saturate-ref.html: Added.
  • web-platform-tests/css/filter-effects/css-filters-animation-saturate.html: Added.
  • web-platform-tests/css/filter-effects/css-filters-animation-sepia-expected.html: Added.
  • web-platform-tests/css/filter-effects/css-filters-animation-sepia-ref.html: Added.
  • web-platform-tests/css/filter-effects/css-filters-animation-sepia.html: Added.
  • web-platform-tests/css/filter-effects/drop-shadow-clipped-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/drop-shadow-clipped-001.html: Added.
  • web-platform-tests/css/filter-effects/dynamic-filter-changes-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/dynamic-filter-changes-001.html: Added.
  • web-platform-tests/css/filter-effects/effect-reference-add-hw-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/effect-reference-add-hw-001.html: Added.
  • web-platform-tests/css/filter-effects/effect-reference-after-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/effect-reference-after-001.html: Added.
  • web-platform-tests/css/filter-effects/effect-reference-delete-expected.html: Added.
  • web-platform-tests/css/filter-effects/effect-reference-delete.html: Added.
  • web-platform-tests/css/filter-effects/effect-reference-displacement-negative-scale-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/effect-reference-displacement-negative-scale-001.html: Added.
  • web-platform-tests/css/filter-effects/effect-reference-feimage-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/effect-reference-feimage-001.html: Added.
  • web-platform-tests/css/filter-effects/effect-reference-feimage-002-expected.html: Added.
  • web-platform-tests/css/filter-effects/effect-reference-feimage-002.html: Added.
  • web-platform-tests/css/filter-effects/effect-reference-feimage-003-expected.html: Added.
  • web-platform-tests/css/filter-effects/effect-reference-feimage-003.html: Added.
  • web-platform-tests/css/filter-effects/effect-reference-lighting-no-light.tentative-expected.html: Added.
  • web-platform-tests/css/filter-effects/effect-reference-lighting-no-light.tentative.html: Added.
  • web-platform-tests/css/filter-effects/effect-reference-local-url-with-base-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/effect-reference-local-url-with-base-001.html: Added.
  • web-platform-tests/css/filter-effects/effect-reference-merge-no-inputs.tentative-expected.html: Added.
  • web-platform-tests/css/filter-effects/effect-reference-merge-no-inputs.tentative.html: Added.
  • web-platform-tests/css/filter-effects/effect-reference-obb-dimensions-expected.html: Added.
  • web-platform-tests/css/filter-effects/effect-reference-obb-dimensions.html: Added.
  • web-platform-tests/css/filter-effects/effect-reference-on-span-expected.html: Added.
  • web-platform-tests/css/filter-effects/effect-reference-on-span.html: Added.
  • web-platform-tests/css/filter-effects/effect-reference-on-transparent-element-expected.html: Added.
  • web-platform-tests/css/filter-effects/effect-reference-on-transparent-element.html: Added.
  • web-platform-tests/css/filter-effects/effect-reference-rename-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/effect-reference-rename-001.html: Added.
  • web-platform-tests/css/filter-effects/effect-reference-rename-002-expected.html: Added.
  • web-platform-tests/css/filter-effects/effect-reference-rename-002.html: Added.
  • web-platform-tests/css/filter-effects/effect-reference-reset-style-delete-crash-expected.txt: Added.
  • web-platform-tests/css/filter-effects/effect-reference-reset-style-delete-crash.html: Added.
  • web-platform-tests/css/filter-effects/effect-reference-source-alpha-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/effect-reference-source-alpha-001.html: Added.
  • web-platform-tests/css/filter-effects/effect-reference-source-alpha-002-expected.html: Added.
  • web-platform-tests/css/filter-effects/effect-reference-source-alpha-002.html: Added.
  • web-platform-tests/css/filter-effects/empty-element-with-filter-expected.html: Added.
  • web-platform-tests/css/filter-effects/empty-element-with-filter.html: Added.
  • web-platform-tests/css/filter-effects/fecolormatrix-type-expected.html: Added.
  • web-platform-tests/css/filter-effects/fecolormatrix-type-ref.html: Added.
  • web-platform-tests/css/filter-effects/fecolormatrix-type.html: Added.
  • web-platform-tests/css/filter-effects/fecomposite-non-zero-inoffset-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/fecomposite-non-zero-inoffset-001.html: Added.
  • web-platform-tests/css/filter-effects/feflood-with-filter-reference-expected.html: Added.
  • web-platform-tests/css/filter-effects/feflood-with-filter-reference.html: Added.
  • web-platform-tests/css/filter-effects/feimage-circular-reference-foreign-object-crash-expected.txt: Added.
  • web-platform-tests/css/filter-effects/feimage-circular-reference-foreign-object-crash.html: Added.
  • web-platform-tests/css/filter-effects/feimage-reference-foreign-object-crash-expected.txt: Added.
  • web-platform-tests/css/filter-effects/feimage-reference-foreign-object-crash.html: Added.
  • web-platform-tests/css/filter-effects/feimage-target-child-reference-crash-expected.txt: Added.
  • web-platform-tests/css/filter-effects/feimage-target-child-reference-crash.html: Added.
  • web-platform-tests/css/filter-effects/felighting-no-light-source-style-update-crash-expected.txt: Added.
  • web-platform-tests/css/filter-effects/felighting-no-light-source-style-update-crash.html: Added.
  • web-platform-tests/css/filter-effects/filter-cb-abspos-inline-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/filter-cb-abspos-inline-001-ref.html: Added.
  • web-platform-tests/css/filter-effects/filter-cb-abspos-inline-001.html: Added.
  • web-platform-tests/css/filter-effects/filter-cb-abspos-inline-002-expected.html: Added.
  • web-platform-tests/css/filter-effects/filter-cb-abspos-inline-002.html: Added.
  • web-platform-tests/css/filter-effects/filter-cb-abspos-inline-003-expected.html: Added.
  • web-platform-tests/css/filter-effects/filter-cb-abspos-inline-003-ref.html: Added.
  • web-platform-tests/css/filter-effects/filter-cb-abspos-inline-003.html: Added.
  • web-platform-tests/css/filter-effects/filter-cb-dynamic-1-ref.html: Added.
  • web-platform-tests/css/filter-effects/filter-cb-dynamic-1a-expected.html: Added.
  • web-platform-tests/css/filter-effects/filter-cb-dynamic-1a.html: Added.
  • web-platform-tests/css/filter-effects/filter-cb-dynamic-1b-expected.html: Added.
  • web-platform-tests/css/filter-effects/filter-cb-dynamic-1b.html: Added.
  • web-platform-tests/css/filter-effects/filter-contrast-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/filter-contrast-001-ref.html: Added.
  • web-platform-tests/css/filter-effects/filter-contrast-001.html: Added.
  • web-platform-tests/css/filter-effects/filter-contrast-002-expected.html: Added.
  • web-platform-tests/css/filter-effects/filter-contrast-002-ref.html: Added.
  • web-platform-tests/css/filter-effects/filter-contrast-002.html: Added.
  • web-platform-tests/css/filter-effects/filter-contrast-003-expected.html: Added.
  • web-platform-tests/css/filter-effects/filter-contrast-003-ref.html: Added.
  • web-platform-tests/css/filter-effects/filter-contrast-003.html: Added.
  • web-platform-tests/css/filter-effects/filter-effect-remove-unattached-expected.html: Added.
  • web-platform-tests/css/filter-effects/filter-effect-remove-unattached.html: Added.
  • web-platform-tests/css/filter-effects/filter-external-001-ref.html: Added.
  • web-platform-tests/css/filter-effects/filter-external-001-test-expected.html: Added.
  • web-platform-tests/css/filter-effects/filter-external-001-test.html: Added.
  • web-platform-tests/css/filter-effects/filter-external-002-test-expected.html: Added.
  • web-platform-tests/css/filter-effects/filter-external-002-test.html: Added.
  • web-platform-tests/css/filter-effects/filter-grayscale-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/filter-grayscale-001.html: Added.
  • web-platform-tests/css/filter-effects/filter-grayscale-002-expected.html: Added.
  • web-platform-tests/css/filter-effects/filter-grayscale-002.html: Added.
  • web-platform-tests/css/filter-effects/filter-grayscale-003-expected.html: Added.
  • web-platform-tests/css/filter-effects/filter-grayscale-003.html: Added.
  • web-platform-tests/css/filter-effects/filter-grayscale-004-expected.html: Added.
  • web-platform-tests/css/filter-effects/filter-grayscale-004.html: Added.
  • web-platform-tests/css/filter-effects/filter-grayscale-005-expected.html: Added.
  • web-platform-tests/css/filter-effects/filter-grayscale-005.html: Added.
  • web-platform-tests/css/filter-effects/filter-grayscale-ref.html: Added.
  • web-platform-tests/css/filter-effects/filter-hue_rotate-001-ref.html: Added.
  • web-platform-tests/css/filter-effects/filter-hue_rotate-001-test-expected.html: Added.
  • web-platform-tests/css/filter-effects/filter-hue_rotate-001-test.html: Added.
  • web-platform-tests/css/filter-effects/filter-invert-001-ref.html: Added.
  • web-platform-tests/css/filter-effects/filter-invert-001-test-expected.html: Added.
  • web-platform-tests/css/filter-effects/filter-invert-001-test.html: Added.
  • web-platform-tests/css/filter-effects/filter-invert-002-ref.html: Added.
  • web-platform-tests/css/filter-effects/filter-invert-002-test-expected.html: Added.
  • web-platform-tests/css/filter-effects/filter-invert-002-test.html: Added.
  • web-platform-tests/css/filter-effects/filter-region-negative-positioned-child-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/filter-region-negative-positioned-child-001.html: Added.
  • web-platform-tests/css/filter-effects/filter-region-transformed-child-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/filter-region-transformed-child-001.html: Added.
  • web-platform-tests/css/filter-effects/filter-region-transformed-composited-child-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/filter-region-transformed-composited-child-001.html: Added.
  • web-platform-tests/css/filter-effects/filter-saturate-001-ref.html: Added.
  • web-platform-tests/css/filter-effects/filter-saturate-001-test-expected.html: Added.
  • web-platform-tests/css/filter-effects/filter-saturate-001-test.html: Added.
  • web-platform-tests/css/filter-effects/filter-scale-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/filter-scale-001-ref.html: Added.
  • web-platform-tests/css/filter-effects/filter-scale-001.html: Added.
  • web-platform-tests/css/filter-effects/filter-scaling-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/filter-scaling-001-ref.html: Added.
  • web-platform-tests/css/filter-effects/filter-scaling-001.html: Added.
  • web-platform-tests/css/filter-effects/filter-subregion-01-expected.html: Added.
  • web-platform-tests/css/filter-effects/filter-subregion-01-ref.html: Added.
  • web-platform-tests/css/filter-effects/filter-subregion-01.html: Added.
  • web-platform-tests/css/filter-effects/filter-turbulence-invalid-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/filter-turbulence-invalid-001.html: Added.
  • web-platform-tests/css/filter-effects/filter-url-to-non-existent-filter-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/filter-url-to-non-existent-filter-001.html: Added.
  • web-platform-tests/css/filter-effects/filtered-block-is-container-expected.html: Added.
  • web-platform-tests/css/filter-effects/filtered-block-is-container-ref.html: Added.
  • web-platform-tests/css/filter-effects/filtered-block-is-container.html: Added.
  • web-platform-tests/css/filter-effects/filtered-html-is-not-container-expected.html: Added.
  • web-platform-tests/css/filter-effects/filtered-html-is-not-container-ref.html: Added.
  • web-platform-tests/css/filter-effects/filtered-html-is-not-container.html: Added.
  • web-platform-tests/css/filter-effects/filtered-inline-applies-to-float-expected.html: Added.
  • web-platform-tests/css/filter-effects/filtered-inline-applies-to-float-ref.html: Added.
  • web-platform-tests/css/filter-effects/filtered-inline-applies-to-float.html: Added.
  • web-platform-tests/css/filter-effects/filtered-inline-is-container-expected.html: Added.
  • web-platform-tests/css/filter-effects/filtered-inline-is-container-ref.html: Added.
  • web-platform-tests/css/filter-effects/filtered-inline-is-container.html: Added.
  • web-platform-tests/css/filter-effects/filters-drop-shadow-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/filters-drop-shadow-001.html: Added.
  • web-platform-tests/css/filter-effects/filters-drop-shadow-002-expected.html: Added.
  • web-platform-tests/css/filter-effects/filters-drop-shadow-002.html: Added.
  • web-platform-tests/css/filter-effects/filters-grayscale-001-ref.html: Added.
  • web-platform-tests/css/filter-effects/filters-grayscale-001-test-expected.html: Added.
  • web-platform-tests/css/filter-effects/filters-grayscale-001-test.html: Added.
  • web-platform-tests/css/filter-effects/filters-opacity-001-test-expected.html: Added.
  • web-platform-tests/css/filter-effects/filters-opacity-001-test.html: Added.
  • web-platform-tests/css/filter-effects/filters-opacity-002-test-expected.html: Added.
  • web-platform-tests/css/filter-effects/filters-opacity-002-test.html: Added.
  • web-platform-tests/css/filter-effects/filters-sepia-001-ref.html: Added.
  • web-platform-tests/css/filter-effects/filters-sepia-001-test-expected.html: Added.
  • web-platform-tests/css/filter-effects/filters-sepia-001-test.html: Added.
  • web-platform-tests/css/filter-effects/filters-test-brightness-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/filters-test-brightness-001.html: Added.
  • web-platform-tests/css/filter-effects/filters-test-brightness-002-expected.html: Added.
  • web-platform-tests/css/filter-effects/filters-test-brightness-002.html: Added.
  • web-platform-tests/css/filter-effects/filters-test-brightness-003-expected.html: Added.
  • web-platform-tests/css/filter-effects/filters-test-brightness-003.html: Added.
  • web-platform-tests/css/filter-effects/idlharness.any-expected.txt: Added.
  • web-platform-tests/css/filter-effects/idlharness.any.html: Added.
  • web-platform-tests/css/filter-effects/idlharness.any.js: Added.
  • web-platform-tests/css/filter-effects/idlharness.any.serviceworker-expected.txt: Added.
  • web-platform-tests/css/filter-effects/idlharness.any.serviceworker.html: Added.
  • web-platform-tests/css/filter-effects/idlharness.any.worker-expected.txt: Added.
  • web-platform-tests/css/filter-effects/idlharness.any.worker.html: Added.
  • web-platform-tests/css/filter-effects/inheritance-expected.txt: Added.
  • web-platform-tests/css/filter-effects/inheritance.html: Added.
  • web-platform-tests/css/filter-effects/morphology-mirrored-expected.html: Added.
  • web-platform-tests/css/filter-effects/morphology-mirrored.html: Added.
  • web-platform-tests/css/filter-effects/parsing/backdrop-filter-computed-expected.txt: Added.
  • web-platform-tests/css/filter-effects/parsing/backdrop-filter-computed.html: Added.
  • web-platform-tests/css/filter-effects/parsing/backdrop-filter-parsing-invalid-expected.txt: Added.
  • web-platform-tests/css/filter-effects/parsing/backdrop-filter-parsing-invalid.html: Added.
  • web-platform-tests/css/filter-effects/parsing/backdrop-filter-parsing-valid-expected.txt: Added.
  • web-platform-tests/css/filter-effects/parsing/backdrop-filter-parsing-valid.html: Added.
  • web-platform-tests/css/filter-effects/parsing/color-interpolation-filters-computed-expected.txt: Added.
  • web-platform-tests/css/filter-effects/parsing/color-interpolation-filters-computed.html: Added.
  • web-platform-tests/css/filter-effects/parsing/color-interpolation-filters-parsing-invalid-expected.txt: Added.
  • web-platform-tests/css/filter-effects/parsing/color-interpolation-filters-parsing-invalid.html: Added.
  • web-platform-tests/css/filter-effects/parsing/color-interpolation-filters-parsing-valid-expected.txt: Added.
  • web-platform-tests/css/filter-effects/parsing/color-interpolation-filters-parsing-valid.html: Added.
  • web-platform-tests/css/filter-effects/parsing/filter-computed-expected.txt: Added.
  • web-platform-tests/css/filter-effects/parsing/filter-computed.html: Added.
  • web-platform-tests/css/filter-effects/parsing/filter-parsing-invalid-expected.txt: Added.
  • web-platform-tests/css/filter-effects/parsing/filter-parsing-invalid.html: Added.
  • web-platform-tests/css/filter-effects/parsing/filter-parsing-valid-expected.txt: Added.
  • web-platform-tests/css/filter-effects/parsing/filter-parsing-valid.html: Added.
  • web-platform-tests/css/filter-effects/parsing/flood-color-computed-expected.txt: Added.
  • web-platform-tests/css/filter-effects/parsing/flood-color-computed.html: Added.
  • web-platform-tests/css/filter-effects/parsing/flood-color-invalid-expected.txt: Added.
  • web-platform-tests/css/filter-effects/parsing/flood-color-invalid.html: Added.
  • web-platform-tests/css/filter-effects/parsing/flood-color-valid-expected.txt: Added.
  • web-platform-tests/css/filter-effects/parsing/flood-color-valid.html: Added.
  • web-platform-tests/css/filter-effects/parsing/flood-opacity-computed-expected.txt: Added.
  • web-platform-tests/css/filter-effects/parsing/flood-opacity-computed.svg: Added.
  • web-platform-tests/css/filter-effects/parsing/flood-opacity-invalid-expected.txt: Added.
  • web-platform-tests/css/filter-effects/parsing/flood-opacity-invalid.svg: Added.
  • web-platform-tests/css/filter-effects/parsing/flood-opacity-valid-expected.txt: Added.
  • web-platform-tests/css/filter-effects/parsing/flood-opacity-valid.svg: Added.
  • web-platform-tests/css/filter-effects/parsing/lighting-color-computed-expected.txt: Added.
  • web-platform-tests/css/filter-effects/parsing/lighting-color-computed.html: Added.
  • web-platform-tests/css/filter-effects/parsing/lighting-color-parsing-invalid-expected.txt: Added.
  • web-platform-tests/css/filter-effects/parsing/lighting-color-parsing-invalid.html: Added.
  • web-platform-tests/css/filter-effects/parsing/lighting-color-parsing-valid-expected.txt: Added.
  • web-platform-tests/css/filter-effects/parsing/lighting-color-parsing-valid.html: Added.
  • web-platform-tests/css/filter-effects/parsing/w3c-import.log: Added.
  • web-platform-tests/css/filter-effects/reference-filter-update-on-attribute-change-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/reference-filter-update-on-attribute-change-001.html: Added.
  • web-platform-tests/css/filter-effects/remove-filter-repaint-expected.html: Added.
  • web-platform-tests/css/filter-effects/remove-filter-repaint.html: Added.
  • web-platform-tests/css/filter-effects/resources/reference.png: Added.
  • web-platform-tests/css/filter-effects/resources/w3c-import.log: Added.
  • web-platform-tests/css/filter-effects/root-element-with-opacity-filter-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/root-element-with-opacity-filter-001.html: Added.
  • web-platform-tests/css/filter-effects/support/1x1-green.png: Added.
  • web-platform-tests/css/filter-effects/support/1x1-lime.png: Added.
  • web-platform-tests/css/filter-effects/support/1x1-maroon.png: Added.
  • web-platform-tests/css/filter-effects/support/1x1-navy.png: Added.
  • web-platform-tests/css/filter-effects/support/1x1-red.png: Added.
  • web-platform-tests/css/filter-effects/support/1x1-white.png: Added.
  • web-platform-tests/css/filter-effects/support/60x60-gg-rr.png: Added.
  • web-platform-tests/css/filter-effects/support/60x60-green.png: Added.
  • web-platform-tests/css/filter-effects/support/README: Added.
  • web-platform-tests/css/filter-effects/support/a-green.css: Added.

(.a):

  • web-platform-tests/css/filter-effects/support/b-green.css: Added.

(.b):

  • web-platform-tests/css/filter-effects/support/c-red.css: Added.

(.c):

  • web-platform-tests/css/filter-effects/support/cat.png: Added.
  • web-platform-tests/css/filter-effects/support/color-palette.png: Added.
  • web-platform-tests/css/filter-effects/support/div-with-filter.html: Added.
  • web-platform-tests/css/filter-effects/support/filter-external-002-filter.svg: Added.
  • web-platform-tests/css/filter-effects/support/filter-from-external-url.css: Added.

(.hue-rotate):

  • web-platform-tests/css/filter-effects/support/filtersubregion00.png: Added.
  • web-platform-tests/css/filter-effects/support/hueRotate.svg: Added.
  • web-platform-tests/css/filter-effects/support/import-green.css: Added.

(.import):

  • web-platform-tests/css/filter-effects/support/import-red.css: Added.

(.import):

  • web-platform-tests/css/filter-effects/support/pattern-grg-rgr-grg.png: Added.
  • web-platform-tests/css/filter-effects/support/pattern-grg-rrg-rgg.png: Added.
  • web-platform-tests/css/filter-effects/support/pattern-rgr-grg-rgr.png: Added.
  • web-platform-tests/css/filter-effects/support/pattern-tr.png: Added.
  • web-platform-tests/css/filter-effects/support/ruler-h-50%.png: Added.
  • web-platform-tests/css/filter-effects/support/ruler-h-50px.png: Added.
  • web-platform-tests/css/filter-effects/support/ruler-v-100px.png: Added.
  • web-platform-tests/css/filter-effects/support/ruler-v-50px.png: Added.
  • web-platform-tests/css/filter-effects/support/square-purple.png: Added.
  • web-platform-tests/css/filter-effects/support/square-teal.png: Added.
  • web-platform-tests/css/filter-effects/support/square-white.png: Added.
  • web-platform-tests/css/filter-effects/support/support/README: Added.
  • web-platform-tests/css/filter-effects/support/support/swatch-green.png: Added.
  • web-platform-tests/css/filter-effects/support/support/swatch-red.png: Added.
  • web-platform-tests/css/filter-effects/support/support/w3c-import.log: Added.
  • web-platform-tests/css/filter-effects/support/swatch-blue.png: Added.
  • web-platform-tests/css/filter-effects/support/swatch-green.png: Added.
  • web-platform-tests/css/filter-effects/support/swatch-lime.png: Added.
  • web-platform-tests/css/filter-effects/support/swatch-orange.png: Added.
  • web-platform-tests/css/filter-effects/support/swatch-red.png: Added.
  • web-platform-tests/css/filter-effects/support/swatch-teal.png: Added.
  • web-platform-tests/css/filter-effects/support/swatch-white.png: Added.
  • web-platform-tests/css/filter-effects/support/swatch-yellow.png: Added.
  • web-platform-tests/css/filter-effects/support/test-bl.png: Added.
  • web-platform-tests/css/filter-effects/support/test-br.png: Added.
  • web-platform-tests/css/filter-effects/support/test-inner-half-size.png: Added.
  • web-platform-tests/css/filter-effects/support/test-outer.png: Added.
  • web-platform-tests/css/filter-effects/support/test-tl.png: Added.
  • web-platform-tests/css/filter-effects/support/test-tr.png: Added.
  • web-platform-tests/css/filter-effects/support/w3c-import.log: Added.
  • web-platform-tests/css/filter-effects/svg-empty-container-with-filter-content-added-expected.html: Added.
  • web-platform-tests/css/filter-effects/svg-empty-container-with-filter-content-added.html: Added.
  • web-platform-tests/css/filter-effects/svg-feflood-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/svg-feflood-001.html: Added.
  • web-platform-tests/css/filter-effects/svg-feimage-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/svg-feimage-001.html: Added.
  • web-platform-tests/css/filter-effects/svg-feoffset-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/svg-feoffset-001.html: Added.
  • web-platform-tests/css/filter-effects/svg-filter-vs-clip-path-expected.html: Added.
  • web-platform-tests/css/filter-effects/svg-filter-vs-clip-path.html: Added.
  • web-platform-tests/css/filter-effects/svg-filter-vs-mask-expected.html: Added.
  • web-platform-tests/css/filter-effects/svg-filter-vs-mask.html: Added.
  • web-platform-tests/css/filter-effects/svg-multiple-filter-functions-expected.html: Added.
  • web-platform-tests/css/filter-effects/svg-multiple-filter-functions.html: Added.
  • web-platform-tests/css/filter-effects/svg-mutation-drop-shadow-color-expected.html: Added.
  • web-platform-tests/css/filter-effects/svg-mutation-drop-shadow-color.html: Added.
  • web-platform-tests/css/filter-effects/svg-mutation-drop-shadow-offset-expected.html: Added.
  • web-platform-tests/css/filter-effects/svg-mutation-drop-shadow-offset.html: Added.
  • web-platform-tests/css/filter-effects/svg-mutation-function-to-url-expected.html: Added.
  • web-platform-tests/css/filter-effects/svg-mutation-function-to-url.html: Added.
  • web-platform-tests/css/filter-effects/svg-mutation-group-position-changed-expected.html: Added.
  • web-platform-tests/css/filter-effects/svg-mutation-group-position-changed.html: Added.
  • web-platform-tests/css/filter-effects/svg-mutation-group-size-changed-expected.html: Added.
  • web-platform-tests/css/filter-effects/svg-mutation-group-size-changed.html: Added.
  • web-platform-tests/css/filter-effects/svg-mutation-group-transform-changed-expected.html: Added.
  • web-platform-tests/css/filter-effects/svg-mutation-group-transform-changed.html: Added.
  • web-platform-tests/css/filter-effects/svg-mutation-object-position-changed-expected.html: Added.
  • web-platform-tests/css/filter-effects/svg-mutation-object-position-changed.html: Added.
  • web-platform-tests/css/filter-effects/svg-mutation-object-size-changed-expected.html: Added.
  • web-platform-tests/css/filter-effects/svg-mutation-object-size-changed.html: Added.
  • web-platform-tests/css/filter-effects/svg-mutation-object-transform-changed-expected.html: Added.
  • web-platform-tests/css/filter-effects/svg-mutation-object-transform-changed.html: Added.
  • web-platform-tests/css/filter-effects/svg-mutation-single-to-multiple-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/svg-mutation-single-to-multiple-001.html: Added.
  • web-platform-tests/css/filter-effects/svg-mutation-single-to-multiple-002-expected.html: Added.
  • web-platform-tests/css/filter-effects/svg-mutation-single-to-multiple-002.html: Added.
  • web-platform-tests/css/filter-effects/svg-mutation-url-to-function-expected.html: Added.
  • web-platform-tests/css/filter-effects/svg-mutation-url-to-function.html: Added.
  • web-platform-tests/css/filter-effects/svg-relative-urls-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/svg-relative-urls-001.html: Added.
  • web-platform-tests/css/filter-effects/svg-relative-urls-002-expected.html: Added.
  • web-platform-tests/css/filter-effects/svg-relative-urls-002.html: Added.
  • web-platform-tests/css/filter-effects/svg-shorthand-drop-shadow-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/svg-shorthand-drop-shadow-001.html: Added.
  • web-platform-tests/css/filter-effects/svg-shorthand-hue-rotate-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/svg-shorthand-hue-rotate-001.html: Added.
  • web-platform-tests/css/filter-effects/svg-sourcegraphic-currentcolor-dynamic-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/svg-sourcegraphic-currentcolor-dynamic-001.html: Added.
  • web-platform-tests/css/filter-effects/svg-sourcegraphic-invalidation-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/svg-sourcegraphic-invalidation-001.html: Added.
  • web-platform-tests/css/filter-effects/svg-unknown-input-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/svg-unknown-input-001.html: Added.
  • web-platform-tests/css/filter-effects/svg-unknown-input-002-expected.html: Added.
  • web-platform-tests/css/filter-effects/svg-unknown-input-002.html: Added.
  • web-platform-tests/css/filter-effects/svg-unknown-input-ref.html: Added.
  • web-platform-tests/css/filter-effects/svg-unused-filter-on-clippath-mutated-crash-expected.txt: Added.
  • web-platform-tests/css/filter-effects/svg-unused-filter-on-clippath-mutated-crash.html: Added.
  • web-platform-tests/css/filter-effects/svgfeblendelement-mode-001-expected.txt: Added.
  • web-platform-tests/css/filter-effects/svgfeblendelement-mode-001.html: Added.
  • web-platform-tests/css/filter-effects/tainting-feblend-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/tainting-feblend-001.html: Added.
  • web-platform-tests/css/filter-effects/tainting-feblend-002-expected.html: Added.
  • web-platform-tests/css/filter-effects/tainting-feblend-002.html: Added.
  • web-platform-tests/css/filter-effects/tainting-fecomponenttransfer-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/tainting-fecomponenttransfer-001.html: Added.
  • web-platform-tests/css/filter-effects/tainting-fecomponenttransfer-002-expected.html: Added.
  • web-platform-tests/css/filter-effects/tainting-fecomponenttransfer-002.html: Added.
  • web-platform-tests/css/filter-effects/tainting-fecomposite-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/tainting-fecomposite-001.html: Added.
  • web-platform-tests/css/filter-effects/tainting-fecomposite-002-expected.html: Added.
  • web-platform-tests/css/filter-effects/tainting-fecomposite-002.html: Added.
  • web-platform-tests/css/filter-effects/tainting-feconvolvematrix-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/tainting-feconvolvematrix-001.html: Added.
  • web-platform-tests/css/filter-effects/tainting-feconvolvematrix-002-expected.html: Added.
  • web-platform-tests/css/filter-effects/tainting-feconvolvematrix-002.html: Added.
  • web-platform-tests/css/filter-effects/tainting-fediffuselighting-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/tainting-fediffuselighting-001.html: Added.
  • web-platform-tests/css/filter-effects/tainting-fediffuselighting-002-expected.html: Added.
  • web-platform-tests/css/filter-effects/tainting-fediffuselighting-002.html: Added.
  • web-platform-tests/css/filter-effects/tainting-fediffuselighting-003-expected.html: Added.
  • web-platform-tests/css/filter-effects/tainting-fediffuselighting-003.html: Added.
  • web-platform-tests/css/filter-effects/tainting-fediffuselighting-dynamic-expected.html: Added.
  • web-platform-tests/css/filter-effects/tainting-fediffuselighting-dynamic.html: Added.
  • web-platform-tests/css/filter-effects/tainting-fedisplacementmap-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/tainting-fedisplacementmap-001.html: Added.
  • web-platform-tests/css/filter-effects/tainting-fedisplacementmap-002-expected.html: Added.
  • web-platform-tests/css/filter-effects/tainting-fedisplacementmap-002.html: Added.
  • web-platform-tests/css/filter-effects/tainting-fedropshadow-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/tainting-fedropshadow-001.html: Added.
  • web-platform-tests/css/filter-effects/tainting-fedropshadow-002-expected.html: Added.
  • web-platform-tests/css/filter-effects/tainting-fedropshadow-002.html: Added.
  • web-platform-tests/css/filter-effects/tainting-fedropshadow-003-expected.html: Added.
  • web-platform-tests/css/filter-effects/tainting-fedropshadow-003.html: Added.
  • web-platform-tests/css/filter-effects/tainting-feflood-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/tainting-feflood-001.html: Added.
  • web-platform-tests/css/filter-effects/tainting-feflood-002-expected.html: Added.
  • web-platform-tests/css/filter-effects/tainting-feflood-002.html: Added.
  • web-platform-tests/css/filter-effects/tainting-feflood-dynamic-expected.html: Added.
  • web-platform-tests/css/filter-effects/tainting-feflood-dynamic.html: Added.
  • web-platform-tests/css/filter-effects/tainting-fegaussianblur-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/tainting-fegaussianblur-001.html: Added.
  • web-platform-tests/css/filter-effects/tainting-fegaussianblur-002-expected.html: Added.
  • web-platform-tests/css/filter-effects/tainting-fegaussianblur-002.html: Added.
  • web-platform-tests/css/filter-effects/tainting-femorphology-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/tainting-femorphology-001.html: Added.
  • web-platform-tests/css/filter-effects/tainting-femorphology-002-expected.html: Added.
  • web-platform-tests/css/filter-effects/tainting-femorphology-002.html: Added.
  • web-platform-tests/css/filter-effects/tainting-feoffset-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/tainting-feoffset-001.html: Added.
  • web-platform-tests/css/filter-effects/tainting-feoffset-002-expected.html: Added.
  • web-platform-tests/css/filter-effects/tainting-feoffset-002.html: Added.
  • web-platform-tests/css/filter-effects/tainting-fespecularlighting-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/tainting-fespecularlighting-001.html: Added.
  • web-platform-tests/css/filter-effects/tainting-fespecularlighting-002-expected.html: Added.
  • web-platform-tests/css/filter-effects/tainting-fespecularlighting-002.html: Added.
  • web-platform-tests/css/filter-effects/tainting-fespecularlighting-003-expected.html: Added.
  • web-platform-tests/css/filter-effects/tainting-fespecularlighting-003.html: Added.
  • web-platform-tests/css/filter-effects/tainting-fetile-001-expected.html: Added.
  • web-platform-tests/css/filter-effects/tainting-fetile-001.html: Added.
  • web-platform-tests/css/filter-effects/tainting-fetile-002-expected.html: Added.
  • web-platform-tests/css/filter-effects/tainting-fetile-002.html: Added.
  • web-platform-tests/css/filter-effects/w3c-import.log: Added.

LayoutTests:

Imported from WPT ba3997e9f9a2f10a00688061f785d4c9b70cc5d5.

  • TestExpectations:
  • platform/ios-wk2/imported/w3c/web-platform-tests/css/filter-effects/crashtests/multiple-references-id-crash-001-expected.txt: Added.
  • platform/ios-wk2/imported/w3c/web-platform-tests/css/filter-effects/crashtests/multiple-references-id-crash-002-expected.txt: Added.
  • platform/ios-wk2/imported/w3c/web-platform-tests/css/filter-effects/effect-reference-reset-style-delete-crash-expected.txt: Added.
  • platform/ios-wk2/imported/w3c/web-platform-tests/css/filter-effects/feimage-circular-reference-foreign-object-crash-expected.txt: Added.
  • platform/ios-wk2/imported/w3c/web-platform-tests/css/filter-effects/feimage-reference-foreign-object-crash-expected.txt: Added.
  • platform/ios-wk2/imported/w3c/web-platform-tests/css/filter-effects/feimage-target-child-reference-crash-expected.txt: Added.
  • platform/ios-wk2/imported/w3c/web-platform-tests/css/filter-effects/felighting-no-light-source-style-update-crash-expected.txt: Added.
  • platform/ios-wk2/imported/w3c/web-platform-tests/css/filter-effects/idlharness.any.serviceworker-expected.txt: Added.
  • platform/ios-wk2/imported/w3c/web-platform-tests/css/filter-effects/svg-unused-filter-on-clippath-mutated-crash-expected.txt: Added.
  • platform/mac/TestExpectations:
10:21 AM Changeset in webkit [287812] by commit-queue@webkit.org
  • 4 edits
    7 adds in trunk

null ptr deref in WebCore::ModifySelectionListLevelCommand::appendSiblingNodeRange
https://bugs.webkit.org/show_bug.cgi?id=234862

Patch by Gabriel Nava Marino <gnavamarino@apple.com> on 2022-01-08
Reviewed by Darin Adler.

Source/WebCore:

ModifySelectionListLevelCommand::appendSiblingNodeRange loops through nodes assuming
existence of siblings, which is not guaranteed, and can result in nullptr deref. Instead,
check for node existence as part of loop condition, and change raw pointer usage to RefPtr.

This addresses the crash but results in ASSERT(isEndOfParagraph(endOfParagraphToMove))
failing in CompositeEditCommand::moveParagraph. We modify WebCore::findEndOfParagraph
to check for HTMLBRElement nodes to avoid unexpectedly changing the AnchorType.

Test: http/tests/lists/list-new-parent-no-sibling-append.html

  • editing/ModifySelectionListLevel.cpp:

(WebCore::ModifySelectionListLevelCommand::insertSiblingNodeRangeBefore):
(WebCore::ModifySelectionListLevelCommand::insertSiblingNodeRangeAfter):
(WebCore::ModifySelectionListLevelCommand::appendSiblingNodeRange):

  • editing/VisibleUnits.cpp:

(WebCore::findEndOfParagraph):

LayoutTests:

  • http/tests/lists/list-new-parent-no-sibling-append-expected.txt: Added.
  • http/tests/lists/list-new-parent-no-sibling-append.html: Added.
  • platform/gtk/http/tests/lists/list-new-parent-no-sibling-append-expected.txt: Added.
  • platform/win/http/tests/lists/list-new-parent-no-sibling-append-expected.txt: Added.
8:46 AM Changeset in webkit [287811] by Tyler Wilcock
  • 2 edits in trunk/Source/WebCore

AX: Improve WeakHashSet hygienics in AXObjectCache
https://bugs.webkit.org/show_bug.cgi?id=234961

Reviewed by Andres Gonzalez.

AXObjectCache owns four WeakHashSets. WeakHashSets are not notified
when the objects they hold are deleted[1], so we should be cleaning
them up in AXObjectCache::remove(Node&).

This patch also replaces range-based for loop iteration over these
WeakHashSets with WeakHashSet::forEach, which inherently checks that
each item is valid (non-null and contained in the hashset) before
using the item.

[1]: https://github.com/WebKit/WebKit/blob/main/Introduction.md#weakhashset

  • accessibility/AXObjectCache.cpp:

(WebCore::AXObjectCache::remove):
Delete the removed node from AXObjectCache's owned WeakHashSets.
(WebCore::filterWeakHashSetForRemoval): Added.
(WebCore::AXObjectCache::prepareForDocumentDestruction):
Use filterWeakHashSetForRemoval to remove soon-to-be-deleted nodes
from AXObjectCache's owned WeakHashSets.
(WebCore::AXObjectCache::performDeferredCacheUpdate):
Use WeakHashSet::forEach instead of range-based for loops.

8:40 AM Changeset in webkit [287810] by Tyler Wilcock
  • 15 edits
    4 adds in trunk

AX: AccessibilityObject::setFocused(true) should make the webpage focused, and make web content the first responder
https://bugs.webkit.org/show_bug.cgi?id=234885

Reviewed by Darin Adler.

Source/WebCore:

With this patch, focusing an element via an AX client on iOS makes
the page focused immediately. This allows a focus ring to be drawn,
even when apps that embed WKWebViews don't make web content the
first responder themselves ([WKContentViewInteraction becomeFirstResponderForWebView]
makes the page focused after a delay due to async IPC between the UI and web processes).

Tests: accessibility/ios-simulator/accessibility-make-first-responder.html

accessibility/ios-simulator/taking-focus-should-refocus-page.html

  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::setFocused):
Make the webpage focused if it isn't already focused.

  • testing/Internals.cpp:

(WebCore::Internals::setPageIsFocused):
Added to simulate the scenario where the webpage doesn't gain focus
through becoming first responder.

  • testing/Internals.h:

Add setPageIsFocused.

  • testing/Internals.idl:

Add setPageIsFocused.

Source/WebKit:

With this patch, focusing an element via an AX client on iOS makes web content
the first responder. This allows a focus ring to be drawn and for web content
to perform other important actions upon taking first respondership
(see [WKContentViewInteraction becomeFirstResponderForWebView]), even when apps
that embed WKWebViews don't make web content the first responder themselves.

  • UIProcess/ios/PageClientImplIOS.mm:

(WebKit::PageClientImpl::assistiveTechnologyMakeFirstResponder):

  • UIProcess/ios/WebPageProxyIOS.mm:

(WebKit::WebPageProxy::assistiveTechnologyMakeFirstResponder):

Tools:

Add testing functionality necessary to check that web content is the
first responder in the UI process.

  • TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
  • TestRunnerShared/UIScriptContext/UIScriptController.h:

(WTR::UIScriptController::isWebContentFirstResponder const):
Added.

  • WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:

(WTR::AccessibilityUIElement::takeFocus):
Implement this method.

  • WebKitTestRunner/ios/UIScriptControllerIOS.h:
  • WebKitTestRunner/ios/UIScriptControllerIOS.mm:

(WTR::UIScriptControllerIOS::isWebContentFirstResponder const):
Added.

LayoutTests:

Add tests verifying that focusing an element via an AX client:

  1. Makes the page focused immediately
  2. Makes web content the first responder

This allows a focus ring to be drawn, even when apps that embed
WKWebViews don't make web content the first responder themselves.

  • accessibility/ios-simulator/accessibility-make-first-responder-expected.txt: Added.
  • accessibility/ios-simulator/accessibility-make-first-responder.html: Added.
  • accessibility/ios-simulator/taking-focus-should-refocus-page-expected.txt: Added.
  • accessibility/ios-simulator/taking-focus-should-refocus-page.html: Added.
6:27 AM Changeset in webkit [287809] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

[LFC][IFC] Implement TextUtil::breakWord for the complex font codepath using ubrk_next
https://bugs.webkit.org/show_bug.cgi?id=234998

Reviewed by Antti Koivisto.

In order to use ubrk_preceding/ubrk_following with arbitrary position (binary search) inside a cluster with surrogate pairs we have to
implement some additional surrogate boundary checks (it would move the index to the beginning/end of the surrogate when it falls right
in the middle of it). In addition to that, ICU would still need to scan the content from the start to find the right index for
the boundary.
This new breakWord implementation simply iterates over the clusters by calling ubrk_next until the content overflows.

  • layout/formattingContexts/inline/text/TextUtil.cpp:

(WebCore::Layout::TextUtil::breakWord):

Note: See TracTimeline for information about the timeline view.