Skip to content
Permalink
main
Switch branches/tags

Commits on Jul 5, 2022

  1. Add support for showing a spinner in an <input>

    https://bugs.webkit.org/show_bug.cgi?id=242067
    rdar://94641774
    
    Reviewed by Devin Rousso.
    
    This adds support for an enum case to show a loading indicator in an input element.
    
    * Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
    (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):
    adds an accessibility text attribute to satisfy the new enum for the switch-case
    
    * Source/WebCore/css/html.css:
    (input::-webkit-loading-auto-fill-button):
    (#endif):
    this adds the loading indicator SVG to a new selector in the css file
    
    * Source/WebCore/html/HTMLTextFormControlElement.h:
    Adds the new enum case
    
    * Source/WebCore/html/TextFieldInputType.cpp:
    (WebCore::autoFillButtonTypeToAccessibilityLabel):
    (WebCore::autoFillButtonTypeToAutoFillButtonText):
    (WebCore::autoFillButtonTypeToAutoFillButtonPseudoClassName):
    (WebCore::isAutoFillButtonTypeChanged):
    Maps the enum to a `ShadowPseudoIds` attribute
    
    * Source/WebCore/html/shadow/ShadowPseudoIds.cpp:
    (WebCore::ShadowPseudoIds::webkitLoadingAutoFillButton):
    * Source/WebCore/html/shadow/ShadowPseudoIds.h:
    Adds a new function to get the CSS selector for the loading indicator
    
    * Source/WebCore/platform/LocalizedStrings.cpp:
    (WebCore::AXAutoFillLoadingLabel):
    * Source/WebCore/platform/LocalizedStrings.h:
    * Source/WebCore/testing/Internals.cpp:
    (WebCore::toAutoFillButtonType):
    (WebCore::toInternalsAutoFillButtonType):
    * Source/WebCore/testing/Internals.h:
    Adds a mapping from `Internals::AutoFillButtonType` to `AutoFillButtonType` for the Loading case
    
    * Source/WebKit/WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInNodeHandle.mm:
    (toAutoFillButtonType):
    (toWKAutoFillButtonType):
    Adds a mapping between `WebCore::AutoFillButtonType` and `_WKAutoFillButtonType` for the Loading case
    
    * Source/WebKit/WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInNodeHandlePrivate.h:
    Adds the new enum case
    
    * Source/WebKit/WebProcess/InjectedBundle/API/c/WKBundleNodeHandle.cpp:
    (toAutoFillButtonType):
    (toWKAutoFillButtonType):
    * Source/WebKit/WebProcess/InjectedBundle/API/c/WKBundleNodeHandlePrivate.h:
    Adds a mapping between `kWKAutoFillButtonTyp` and `WebCore::AutoFillButtonType` for the Loading case
    
    Canonical link: https://commits.webkit.org/252146@main
    Richard Robinson authored and dcrousso committed Jul 5, 2022
  2. [webkitbot] Use commits.webkit.org instead of trac.webkit.org

    https://bugs.webkit.org/show_bug.cgi?id=242280
    <rdar://problem/96321862>
    
    Reviewed by Yusuke Suzuki.
    
    * Tools/WebKitBot/src/WebKitBot.mjs:
    
    Canonical link: https://commits.webkit.org/252145@main
    JonWBedard committed Jul 5, 2022
  3. [iOS] Add support for keyboard shortcut and menu item to find using t…

    …he current selection
    
    https://bugs.webkit.org/show_bug.cgi?id=242196
    rdar://93530469
    
    Reviewed by Wenson Hsieh.
    
    This patch adds support for:
    - The CMD+E keyboard shortcut, which populates the search text for the current find interaction
    - A "Find Selection" item in the callout bar, which populates the search text and presents the find panel
    
    * Source/WebKit/Platform/spi/ios/UIKitSPI.h:
    * Source/WebKit/UIProcess/API/ios/WKWebViewIOS.h:
    * Source/WebKit/UIProcess/ios/WKContentViewInteraction.h:
    * Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm:
    (-[WKContentView canPerformActionForWebView:withSender:]):
    (-[WKContentView useSelectionForFindForWebView:]):
    (-[WKContentView _findSelectedForWebView:]):
    * Source/WebKit/WebProcess/WebPage/WebFoundTextRangeController.cpp:
    (WebKit::WebFoundTextRangeController::setTextIndicatorWithRange):
    
    Fix the appearance of the highlighted range in cases where it is equal to the
    current selection.
    
    If the selection before enabling appearance updates is equal to the range to
    highlight, the TemporarySelectionChange used by TextIndicator to generate a
    snapshot will exit early and fail to call updateAppearance. This means that
    the selection won't be pushed to the render tree, and the TextIndicator will
    have a blank snapshot.
    
    This logic matches the existing update logic in FindControllerIOS.
    
    Canonical link: https://commits.webkit.org/252144@main
    pxlcoder committed Jul 5, 2022
  4. [Xcode] Stop passing build settings on the command line to avoid inva…

    …lidating IDE builds
    
    rdar://88135402
    
    Reviewed by Jonathan Bedard and Alexey Proskuryakov.
    
    Xcode considers a shell script's environment part of its task
    signature, so changing build settings will require scripts to re-run in
    the next build. Since many of our upstream build tasks (e.g. headers,
    generated sources) are produced by script executions, changing build
    settings is effectively a full build, so we must avoid it whenever
    possible.
    
    In support of this goal, update Make and build-webkit to stop passing
    some build settings overrides by default. Build settings overrides which
    can be expected to match what Xcode is using (e.g. SYMROOT, OBJROOT,
    ARCHS, SDKROOT) are fine to keep passing.
    
    * Makefile.shared: Only pass GCC_PREPROCESSOR_DEFINITIONS if there are
      actual custom arguments specified. Avoid passing
      WK_VALIDATE_DEPENDENCIES and COLOR_DIAGNOSTICS.
    * Tools/CISupport/build-webkit-org/steps.py:
    (CompileWebKit.start): As WK_VALIDATE_DEPENDENCIES is no longer supplied
      by default, enable it explicitly for bots. We should revisit this
      after workspace builds have been deployed and we can reasonably expect
      all Xcode-based builds of WebKit to occur via the workspace.
    * Tools/CISupport/ews-build/steps.py:
    (CompileWebKit.start): Ditto above.
    * Tools/Scripts/build-webkit: Avoid passing WK_VALIDATE_DEPENDENCIES.
    
    Canonical link: https://commits.webkit.org/252143@main
    emw-apple committed Jul 5, 2022
  5. [WebAuthn] Should reject rp with empty id

    https://bugs.webkit.org/show_bug.cgi?id=242091
    rdar://90281653
    
    Reviewed by Brent Fulgham.
    
    Not specifying an rp.id should default to the caller’s origin's effective domain, but
    empty / null values should be rejected per spec. https://www.w3.org/TR/webauthn-2/#sctn-createCredential
    
    Updated tests.
    
    * LayoutTests/http/wpt/webauthn/public-key-credential-create-failure.https-expected.txt:
    * LayoutTests/http/wpt/webauthn/public-key-credential-create-failure.https.html:
    * Source/WebCore/Modules/webauthn/AuthenticatorCoordinator.cpp:
    (WebCore::AuthenticatorCoordinator::create const):
    * Source/WebCore/Modules/webauthn/PublicKeyCredentialCreationOptions.h:
    * Source/WebCore/Modules/webauthn/fido/DeviceRequestConverter.cpp:
    (fido::convertRpEntityToCBOR):
    * Source/WebCore/Modules/webauthn/fido/U2fCommandConstructor.cpp:
    (fido::convertToU2fRegisterCommand):
    (fido::convertToU2fCheckOnlySignCommand):
    * Source/WebKit/UIProcess/API/Cocoa/_WKWebAuthenticationPanel.mm:
    (publicKeyCredentialRpEntity):
    * Source/WebKit/UIProcess/WebAuthentication/AuthenticatorManager.cpp:
    (WebKit::WebCore::getRpId):
    * Source/WebKit/UIProcess/WebAuthentication/Cocoa/LocalAuthenticator.mm:
    (WebKit::LocalAuthenticator::makeCredential):
    (WebKit::LocalAuthenticator::continueMakeCredentialAfterUserVerification):
    * Source/WebKit/UIProcess/WebAuthentication/Cocoa/WebAuthenticatorCoordinatorProxy.mm:
    (WebKit::configureRegistrationRequestContext):
    * Source/WebKit/UIProcess/WebAuthentication/fido/U2fAuthenticator.cpp:
    (WebKit::U2fAuthenticator::continueRegisterCommandAfterResponseReceived):
    * Tools/TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm:
    (TestWebKitAPI::TEST):
    
    Canonical link: https://commits.webkit.org/252142@main
    pascoej committed Jul 5, 2022
  6. [Alternate WebM Player] Add wireless playback support

    https://bugs.webkit.org/show_bug.cgi?id=242321
    
    Reviewed by Eric Carlson.
    
    * Source/WebCore/platform/graphics/cocoa/MediaPlayerPrivateWebM.h:
    * Source/WebCore/platform/graphics/cocoa/MediaPlayerPrivateWebM.mm:
    (WebCore::MediaPlayerPrivateWebM::setWirelessPlaybackTarget):
    (WebCore::MediaPlayerPrivateWebM::setShouldPlayToPlaybackTarget):
    (WebCore::MediaPlayerPrivateWebM::isCurrentPlaybackTargetWireless const):
    
    Canonical link: https://commits.webkit.org/252141@main
    youssefsoli committed Jul 5, 2022
  7. Wrong specificity of :has() pseudo-classes

    https://bugs.webkit.org/show_bug.cgi?id=242328
    
    Reviewed by Simon Fraser.
    
    * LayoutTests/imported/w3c/web-platform-tests/css/selectors/has-specificity-expected.txt:
    * LayoutTests/imported/w3c/web-platform-tests/css/selectors/has-specificity.html:
    * Source/WebCore/css/CSSSelector.cpp:
    (WebCore::simpleSelectorSpecificityInternal):
    
    We insert a fake scope pseudo-class to the relative :has() argument and that ends up incrementing the specificity
    as if it was a real pseudo-class. Fix by making its specificity 0.
    
    Canonical link: https://commits.webkit.org/252140@main
    anttijk committed Jul 5, 2022
  8. NetworkRTCUDPSocketCocoaConnections should check for nw_content_conte…

    …xt_get_is_final when reading data
    
    https://bugs.webkit.org/show_bug.cgi?id=242306
    rdar://94867381
    
    Reviewed by Eric Carlson.
    
    * Source/WebKit/NetworkProcess/webrtc/NetworkRTCUDPSocketCocoa.mm:
    (WebKit::processUDPData):
    To prevent spinning in processUDPData in case of ENODATA, check whether the context is finalized.
    If so, exit.
    
    Canonical link: https://commits.webkit.org/252139@main
    youennf committed Jul 5, 2022
  9. Switch test results from Trac to Github links

    https://bugs.webkit.org/show_bug.cgi?id=242316
    
    Reviewed by Jonathan Bedard.
    
    * LayoutTests/fast/harness/results.html:
    * ManualTests/resources/test-results-page.html:
    
    Canonical link: https://commits.webkit.org/252138@main
    youssefsoli committed Jul 5, 2022
  10. SharedVideoFrameWriter can hang on its semaphore in case of bad CVPix…

    …elBuffers
    
    https://bugs.webkit.org/show_bug.cgi?id=242334
    rdar://95326241
    
    Reviewed by Eric Carlson.
    
    Before writing to shared memory, the writer is waiting on its counterpart reader to signal that memory can be written.
    This works fine except if the writer fails to write data, in which case the reader will not notify that memory can be written.
    Write failure for instance happens if data cannot be read from the pixel buffer.
    To fix this, the writer will signal its semaphore that it does not need to wait in case of write failure.
    
    * Source/WebKit/WebProcess/GPU/webrtc/SharedVideoFrame.cpp:
    (WebKit::SharedVideoFrameWriter::wait):
    (WebKit::SharedVideoFrameWriter::prepareWriting):
    (WebKit::SharedVideoFrameWriter::writeBuffer):
    (WebKit::SharedVideoFrameWriter::signalInCaseOfError):
    * Source/WebKit/WebProcess/GPU/webrtc/SharedVideoFrame.h:
    
    Canonical link: https://commits.webkit.org/252137@main
    youennf committed Jul 5, 2022
  11. Unreviewed, reverting r251129@main.

    https://bugs.webkit.org/show_bug.cgi?id=242340
    
    broke build with LTO enabled
    
    Reverted changeset:
    
    "WebKitTestRunner shouldn't link object files of JavaScriptCore and WebCore"
    https://bugs.webkit.org/show_bug.cgi?id=241002
    https://commits.webkit.org/251129@main
    
    Canonical link: https://commits.webkit.org/252136@main
    webkit-commit-queue authored and mcatanzaro committed Jul 5, 2022
  12. Update debug assertion in RtpSenderBase::SetSsrc

    https://bugs.webkit.org/show_bug.cgi?id=242339
    
    Reviewed by Geoffrey Garen.
    
    * Source/ThirdParty/libwebrtc/Source/webrtc/pc/rtp_sender.cc:
    
    Canonical link: https://commits.webkit.org/252135@main
    Alex Christensen authored and achristensen07 committed Jul 5, 2022
  13. [FreeType] Add implementation for FontPlatformData::variationAxes()

    https://bugs.webkit.org/show_bug.cgi?id=242337
    
    Reviewed by Michael Catanzaro.
    
    This will make font variation values to be shown in the inspector.
    
    * Source/WebCore/platform/graphics/FontPlatformData.cpp:
    * Source/WebCore/platform/graphics/freetype/FontCacheFreeType.cpp:
    (WebCore::fontNameMapName): Helper to get a name from a font name table.
    (WebCore::defaultVariationValues): Make it public and add
    ShouldLocalizeAxisNames parameter.
    (WebCore::buildVariationSettings): Pass ShouldLocalizeAxisNames::No to
    defaultVariationValues.
    * Source/WebCore/platform/graphics/freetype/FontCacheFreeType.h:
    * Source/WebCore/platform/graphics/freetype/FontPlatformDataFreeType.cpp:
    (WebCore::FontPlatformData::variationAxes const):
    
    Canonical link: https://commits.webkit.org/252134@main
    carlosgcampos committed Jul 5, 2022
  14. Web Inspector: Styles: Pop-up for resolved CSS variable values is inc…

    …onsistent with other pop-ups
    
    https://bugs.webkit.org/show_bug.cgi?id=242315
    
    Reviewed by Patrick Angle.
    
    Make the pop-up for `WI.InlineSwatch.Type.Variable` consistent with other pop-ups:
    - remove animation of dimensions
    - remove unnecessary height from container
    
    * Source/WebInspectorUI/UserInterface/Views/InlineSwatch.css:
    (.inline-swatch-variable-popover .CodeMirror-sizer):
    The CodeMirror document `min-height` is set as an inline style in exact units based on an internal calculation of its contents.
    CodeMirror _should have_ respected the `height: auto;` of its host element and grow appropriately: https://codemirror.net/5/demo/resize.html
    This didn't happen.
    
    Other solutions suggested by the CodeMirror documentation didn't work in this context either.
    As a fix, we resort to deliberately overwrite the inline style with `min-height: fit-content !important`
    to force the CodeMirror document to size itself accordingly.
    
    * Source/WebInspectorUI/UserInterface/Views/InlineSwatch.js:
    
    Canonical link: https://commits.webkit.org/252133@main
    rcaliman-apple committed Jul 5, 2022
  15. SVG load external file via <use> ignores ServiceWorker when offline

    https://bugs.webkit.org/show_bug.cgi?id=194948
    rdar://problem/96318522
    
    Reviewed by Alex Christensen.
    
    Change destination from document to image for SVGUseElement loads.
    This will make sure we reuse the document service worker for these loads.
    image is the destination used by Chrome as well (Firefox is using the empty string),
    as the SVG spec is not integrated with fetch spec yet.
    
    * LayoutTests/http/wpt/service-workers/use-element-worker.js: Added.
    * LayoutTests/http/wpt/service-workers/use-element.https-expected.txt: Added.
    * LayoutTests/http/wpt/service-workers/use-element.https.html: Added.
    * Source/WebCore/svg/SVGUseElement.cpp:
    
    Canonical link: https://commits.webkit.org/252132@main
    youennf committed Jul 5, 2022
  16. [GStreamer][WebRTC] Additional data-channel improvements and initial …

    …layout tests coverage
    
    https://bugs.webkit.org/show_bug.cgi?id=242177
    
    Reviewed by Xabier Rodriguez-Calvar.
    
    This patch improves logging support in the data-channel handler, cleans up the data-channel creation
    code, bringing it on-par with the libwebrtc backend and includes various bugfixes needed for layout
    tests compliance. The most significant feature gaps in the data-channel handler are now:
    
    - Incomplete stats reporting
    - DTLS 1.2 certificates support missing
    - ICE candidates filtering unimplemented
    
    * LayoutTests/platform/glib/TestExpectations:
    * LayoutTests/webrtc/datachannel/bufferedAmountLowThreshold.html:
    * Source/WebCore/Modules/mediastream/gstreamer/GStreamerDataChannelHandler.cpp:
    (WebCore::GStreamerDataChannelHandler::GStreamerDataChannelHandler):
    (WebCore::GStreamerDataChannelHandler::~GStreamerDataChannelHandler):
    (WebCore::GStreamerDataChannelHandler::dataChannelInit const):
    (WebCore::GStreamerDataChannelHandler::label const):
    (WebCore::GStreamerDataChannelHandler::setClient):
    (WebCore::GStreamerDataChannelHandler::sendStringData):
    (WebCore::GStreamerDataChannelHandler::sendRawData):
    (WebCore::GStreamerDataChannelHandler::close):
    (WebCore::GStreamerDataChannelHandler::checkState):
    (WebCore::GStreamerDataChannelHandler::bufferedAmountChanged):
    (WebCore::GStreamerDataChannelHandler::onMessageData):
    (WebCore::GStreamerDataChannelHandler::onMessageString):
    (WebCore::GStreamerDataChannelHandler::onClose):
    (WebCore::GStreamerDataChannelHandler::createDataChannelEvent): Deleted.
    * Source/WebCore/Modules/mediastream/gstreamer/GStreamerDataChannelHandler.h:
    * Source/WebCore/Modules/mediastream/gstreamer/GStreamerMediaEndpoint.cpp:
    (WebCore::GStreamerMediaEndpoint::initializePipeline):
    (WebCore::GStreamerMediaEndpoint::prepareDataChannel):
    (WebCore::GStreamerMediaEndpoint::findOrCreateIncomingChannelHandler):
    (WebCore::GStreamerMediaEndpoint::onDataChannel):
    (WebCore::GStreamerMediaEndpoint::close):
    (WebCore::GStreamerMediaEndpoint::~GStreamerMediaEndpoint): Deleted.
    * Source/WebCore/Modules/mediastream/gstreamer/GStreamerMediaEndpoint.h:
    * Source/WebCore/Modules/mediastream/gstreamer/GStreamerSctpTransportBackend.cpp:
    (WebCore::GStreamerSctpTransportBackend::GStreamerSctpTransportBackend):
    (WebCore::GStreamerSctpTransportBackend::stateChanged):
    
    Canonical link: https://commits.webkit.org/252131@main
    philn committed Jul 5, 2022
  17. Change contributor status of Nikolas Zimmermann from committer to rev…

    …iewer
    
    https://bugs.webkit.org/show_bug.cgi?id=242335
    
    Unreviewed change.
    
    * metadata/contributors.json:
    
    Canonical link: https://commits.webkit.org/252130@main
    Nikolas Zimmermann authored and nikolaszimmermann committed Jul 5, 2022
  18. [FreeType] Add an implementation for FontPlatformData::familyName()

    https://bugs.webkit.org/show_bug.cgi?id=242310
    
    Reviewed by Michael Catanzaro.
    
    This will make the font name to be shown in the inspector.
    
    * Source/WebCore/platform/graphics/FontPlatformData.cpp:
    * Source/WebCore/platform/graphics/freetype/FontPlatformDataFreeType.cpp:
    (WebCore::FontPlatformData::familyName const):
    
    Canonical link: https://commits.webkit.org/252129@main
    carlosgcampos committed Jul 5, 2022
  19. [Mac] svg/animations/smil-leak-list-property-instances.svg is a flaky…

    … failure
    
    https://bugs.webkit.org/show_bug.cgi?id=214574
    
    Reviewed by Darin Adler.
    
    The conservative GC may not reclaim all unreachable nodes. The test
    should create and remove elements repeatedly and check the number of
    live nodes loosely.
    
    * LayoutTests/platform/mac/TestExpectations:
    * LayoutTests/platform/win/TestExpectations:
    * LayoutTests/svg/animations/smil-leak-list-property-instances.svg:
    
    Canonical link: https://commits.webkit.org/252128@main
    fujii committed Jul 5, 2022
  20. AffineTranform variables should be able to be constexpr

    https://bugs.webkit.org/show_bug.cgi?id=242323
    
    Reviewed by Cameron McCormack.
    
    If we make the AffineTransform constructor constexpr by moving it into the header,
    it will then be possible to have AffineTransform variables be constexpr.
    
    The style checker fails because it says the parameter names in
    AffineTransform(double a, double b, double c, double d, double e, double f)
    are redundant. However, these names are terms-of-art for the values in an affine
    transformation matrix.
    
    * Source/WebCore/platform/graphics/SourceBrush.cpp:
    (WebCore::SourceBrush::gradientSpaceTransform const):
    * Source/WebCore/platform/graphics/coretext/FontCascadeCoreText.cpp:
    (WebCore::rotateLeftTransform):
    * Source/WebCore/platform/graphics/transforms/AffineTransform.cpp:
    (WebCore::AffineTransform::AffineTransform): Deleted.
    * Source/WebCore/platform/graphics/transforms/AffineTransform.h:
    (WebCore::AffineTransform::AffineTransform):
    * Source/WebCore/rendering/RenderObject.cpp:
    (WebCore::RenderObject::localTransform const):
    (WebCore::RenderObject::localToParentTransform const):
    * Source/WebCore/rendering/svg/SVGRenderSupport.h:
    * Source/WebCore/svg/properties/SVGAnimationAdditiveListFunctionImpl.h:
    (WebCore::SVGAnimationTransformListFunction::animate):
    * Tools/TestWebKitAPI/Tests/WebCore/AffineTransform.cpp:
    (TestWebKitAPI::TEST):
    
    Canonical link: https://commits.webkit.org/252127@main
    litherum committed Jul 5, 2022

Commits on Jul 4, 2022

  1. [LFC][FFC] Populate canUseForFlexLayout with unsupported styles and c…

    …ontent
    
    https://bugs.webkit.org/show_bug.cgi?id=242304
    
    Reviewed by Antti Koivisto.
    
    Most of these require proper integration with the rest of the rendering code.
    
    * Source/WebCore/layout/integration/LayoutIntegrationCoverage.cpp:
    (WebCore::LayoutIntegration::canUseForFlexLayout):
    * Source/WebCore/layout/integration/flex/LayoutIntegrationFlexLayout.cpp:
    (WebCore::LayoutIntegration::FlexLayout::layout):
    
    Canonical link: https://commits.webkit.org/252126@main
    alanbujtas committed Jul 4, 2022
  2. [JSC] testair: testZDefOfSpillSlotWithOffsetNeedingToBeMaterializedIn…

    …ARegister incorrectly passes
    
    https://bugs.webkit.org/show_bug.cgi?id=242254
    
    Reviewed by Yusuke Suzuki.
    
    Sorry for monster commit title, but as described:
    
    This test (AIUI) tries to stress the spill generation code but on O1, when
    using the linear scan allocator, the StackSlots that it directly generates are
    ignored by the allocation pass since they do not have an associated Tmp. They
    will all be allocated to alias [FP]. Enabling `airLinearScanVerbose` shows
    this, after the linear scan pass finishes:
    
        Air Stack slots:
        Air     spill0: byteSize = 8, offsetFromFP = 0, kind = Spill
        Air     spill1: byteSize = 8, offsetFromFP = 0, kind = Spill
        Air     spill2: byteSize = 8, offsetFromFP = 0, kind = Spill
        Air     spill3: byteSize = 8, offsetFromFP = 0, kind = Spill
        Air     spill4: byteSize = 8, offsetFromFP = 0, kind = Spill
        Air     spill5: byteSize = 8, offsetFromFP = 0, kind = Spill
        Air     spill6: byteSize = 8, offsetFromFP = 0, kind = Spill
        ...
    
    Unfortunately, this seems to have not been noticed since, even though, on e.g.
    Intel, these will all alias the base pointer (and each other), presumably the
    test harness does not use the base pointer after executing the generated code,
    but before restoring it.
    
    Also, the test as originally written does not verify that the slots do not
    alias each other, since they are all expected to match (they are assigned to
    the argument passed to the translated code)
    
    This patch addresses both points by:
    
    - Change the test structure so it will break if the slots allocated are
      aliased, by adding the numbers from zero to `(the number of slots used) - 1`
    
    - Generate a large number of simultaneously-live `Tmp`s, instead of directly
      generating new stack slots.
    
    Note that doing only the first of these causes the test to fail its assertion
    (on darwin/arm64), since the stack slots are still ignored by the linear scan
    allocator.
    
    * Source/JavaScriptCore/b3/air/testair.cpp:
    
    Canonical link: https://commits.webkit.org/252125@main
    jjgriego authored and philn committed Jul 4, 2022
  3. [LFC][FFC] Flex item's min/max should include margin, border and padding

    https://bugs.webkit.org/show_bug.cgi?id=242302
    
    Reviewed by Antti Koivisto.
    
    * Source/WebCore/layout/integration/flex/LayoutIntegrationFlexLayout.cpp:
    (WebCore::LayoutIntegration::FlexLayout::updateFlexItemDimensions):
    
    Canonical link: https://commits.webkit.org/252124@main
    alanbujtas committed Jul 4, 2022
  4. [Alternate WebM Player] Allow device sleep during playback

    https://bugs.webkit.org/show_bug.cgi?id=242317
    
    Reviewed by Jer Noble.
    
    Currently the AVSampleBufferDisplayLayer will prevent the display from
    sleeping by default. However, in order to improve battery life on devices,
    the display should be able to sleep regardless of whether or not a video
    is playing within the layer.
    
    * Source/WebCore/platform/graphics/cocoa/MediaPlayerPrivateWebM.mm:
    (WebCore::MediaPlayerPrivateWebM::ensureLayer):
    
    Canonical link: https://commits.webkit.org/252123@main
    youssefsoli committed Jul 4, 2022
  5. [LFC][FFC] Add flex-basis support for column direction

    https://bugs.webkit.org/show_bug.cgi?id=242300
    
    Reviewed by Antti Koivisto.
    
    Move flex-basis resolving out of flex layout to where we convert visual values to logical.
    
    * Source/WebCore/layout/formattingContexts/flex/FlexFormattingContext.cpp:
    (WebCore::Layout::FlexFormattingContext::convertFlexItemsToLogicalSpace):
    * Source/WebCore/layout/formattingContexts/flex/FlexLayout.cpp:
    (WebCore::Layout::FlexLayout::computeLogicalWidthForFlexItems):
    
    Canonical link: https://commits.webkit.org/252122@main
    alanbujtas committed Jul 4, 2022
  6. [JSC] Use memchr in WTF::find for long strings

    https://bugs.webkit.org/show_bug.cgi?id=242305
    
    Reviewed by Darin Adler.
    
    For long strings, memchr is massively faster than normal for-loop-based WTF::find.
    This patch upstreams a fast path from Jarred's bun. If the given string is 16 or longer,
    we use memchr if the input is LChar. This can offer up to 13x performance improvement
    for long strings.
    
                                                 ToT                     Patched
    
        string-index-of-10000001-mid     2205.4979+-4.2592     ^    221.0630+-0.8919        ^ definitely 9.9768x faster
        string-index-of-1001-404            0.9214+-0.0703     ^      0.5419+-0.0703        ^ definitely 1.7002x faster
        string-index-of-101-mid             0.4619+-0.0156     ?      0.5250+-0.0745        ? might be 1.1365x slower
        string-index-of-11-404              0.4681+-0.0378     ?      0.5084+-0.0671        ? might be 1.0862x slower
        string-index-of-100001-end         43.2624+-0.2025     ^      3.4478+-0.0448        ^ definitely 12.5478x faster
        string-index-of-1001-beg            0.5792+-0.1128            0.5020+-0.0307          might be 1.1537x faster
        string-index-of-1000001-mid       219.6133+-0.6721     ^     21.7715+-0.1868        ^ definitely 10.0872x faster
        string-index-of-11-beg              0.5390+-0.0957            0.4938+-0.0488          might be 1.0916x faster
        string-index-of-100001-404         43.1607+-0.1565     ^      3.4266+-0.0339        ^ definitely 12.5959x faster
        string-index-of-11-end              0.5703+-0.1035            0.4993+-0.0671          might be 1.1424x faster
        string-index-of-100001-beg          1.4254+-0.0285     ?      1.4297+-0.0293        ?
        string-index-of-1001-end            0.8898+-0.0155     ^      0.5397+-0.0434        ^ definitely 1.6486x faster
        string-index-of-10001-mid           2.6381+-0.0128     ^      0.6968+-0.0194        ^ definitely 3.7859x faster
        string-index-of-100001-mid         22.3904+-0.0908     ^      2.4405+-0.0278        ^ definitely 9.1745x faster
        string-index-of-10001-beg           0.5799+-0.0275     ?      0.6409+-0.0848        ? might be 1.1052x slower
        string-index-of-1000001-end       429.8451+-1.0909     ^     33.0243+-0.1489        ^ definitely 13.0160x faster
        string-index-of-10000001-end     4311.6106+-8.5017     ^    342.4604+-2.5696        ^ definitely 12.5901x faster
        string-index-of-10001-404           4.7512+-0.0329     ^      0.8011+-0.0209        ^ definitely 5.9309x faster
        string-index-of-101-end             0.4812+-0.0131     ?      0.4917+-0.0246        ? might be 1.0220x slower
        string-index-of-101-404             0.5520+-0.0778            0.5100+-0.0671          might be 1.0824x faster
        string-index-of-1000001-beg        10.0429+-0.0882     ?     10.0694+-0.1024        ?
        string-index-of-11-mid              0.4578+-0.0236     ?      0.5159+-0.0519        ? might be 1.1271x slower
        string-index-of-10000001-404     4318.2034+-9.4519     ^    343.7710+-2.7918        ^ definitely 12.5613x faster
        string-index-of-1001-mid            0.6977+-0.0197            0.6024+-0.1121          might be 1.1581x faster
        string-index-of-10001-end           4.7425+-0.0291     ^      0.8022+-0.0152        ^ definitely 5.9117x faster
        string-index-of-101-beg             0.5055+-0.0720     ?      0.5122+-0.0789        ? might be 1.0132x slower
        string-index-of-1000001-404       428.1418+-0.6700     ^     33.0665+-0.1926        ^ definitely 12.9479x faster
        string-index-of-10000001-beg      105.1998+-2.6163          102.6464+-1.9531          might be 1.0249x faster
    
        <geometric>                         7.5209+-0.0853     ^      2.7424+-0.0300        ^ definitely 2.7425x faster
    
    * JSTests/microbenchmarks/string-index-of-10000001-404.js: Added.
    (bench):
    (target):
    (forRepeatCount):
    (all):
    * JSTests/microbenchmarks/string-index-of-10000001-beg.js: Added.
    (bench):
    (target):
    (forRepeatCount):
    (all):
    * JSTests/microbenchmarks/string-index-of-10000001-end.js: Added.
    (bench):
    (target):
    (forRepeatCount):
    (all):
    * JSTests/microbenchmarks/string-index-of-10000001-mid.js: Added.
    (bench):
    (target):
    (forRepeatCount):
    (all):
    * JSTests/microbenchmarks/string-index-of-1000001-404.js: Added.
    (bench):
    (target):
    (forRepeatCount):
    (all):
    * JSTests/microbenchmarks/string-index-of-1000001-beg.js: Added.
    (bench):
    (target):
    (forRepeatCount):
    (all):
    * JSTests/microbenchmarks/string-index-of-1000001-end.js: Added.
    (bench):
    (target):
    (forRepeatCount):
    (all):
    * JSTests/microbenchmarks/string-index-of-1000001-mid.js: Added.
    (bench):
    (target):
    (forRepeatCount):
    (all):
    * JSTests/microbenchmarks/string-index-of-100001-404.js: Added.
    (bench):
    (target):
    (forRepeatCount):
    (all):
    * JSTests/microbenchmarks/string-index-of-100001-beg.js: Added.
    (bench):
    (target):
    (forRepeatCount):
    (all):
    * JSTests/microbenchmarks/string-index-of-100001-end.js: Added.
    (bench):
    (target):
    (forRepeatCount):
    (all):
    * JSTests/microbenchmarks/string-index-of-100001-mid.js: Added.
    (bench):
    (target):
    (forRepeatCount):
    (all):
    * JSTests/microbenchmarks/string-index-of-10001-404.js: Added.
    (bench):
    (target):
    (forRepeatCount):
    (all):
    * JSTests/microbenchmarks/string-index-of-10001-beg.js: Added.
    (bench):
    (target):
    (forRepeatCount):
    (all):
    * JSTests/microbenchmarks/string-index-of-10001-end.js: Added.
    (bench):
    (target):
    (forRepeatCount):
    (all):
    * JSTests/microbenchmarks/string-index-of-10001-mid.js: Added.
    (bench):
    (target):
    (forRepeatCount):
    (all):
    * JSTests/microbenchmarks/string-index-of-1001-404.js: Added.
    (bench):
    (target):
    (forRepeatCount):
    (all):
    * JSTests/microbenchmarks/string-index-of-1001-beg.js: Added.
    (bench):
    (target):
    (forRepeatCount):
    (all):
    * JSTests/microbenchmarks/string-index-of-1001-end.js: Added.
    (bench):
    (target):
    (forRepeatCount):
    (all):
    * JSTests/microbenchmarks/string-index-of-1001-mid.js: Added.
    (bench):
    (target):
    (forRepeatCount):
    (all):
    * JSTests/microbenchmarks/string-index-of-101-404.js: Added.
    (bench):
    (target):
    (forRepeatCount):
    (all):
    * JSTests/microbenchmarks/string-index-of-101-beg.js: Added.
    (bench):
    (target):
    (forRepeatCount):
    (all):
    * JSTests/microbenchmarks/string-index-of-101-end.js: Added.
    (bench):
    (target):
    (forRepeatCount):
    (all):
    * JSTests/microbenchmarks/string-index-of-101-mid.js: Added.
    (bench):
    (target):
    (forRepeatCount):
    (all):
    * JSTests/microbenchmarks/string-index-of-11-404.js: Added.
    (bench):
    (target):
    (forRepeatCount):
    (all):
    * JSTests/microbenchmarks/string-index-of-11-beg.js: Added.
    (bench):
    (target):
    (forRepeatCount):
    (all):
    * JSTests/microbenchmarks/string-index-of-11-end.js: Added.
    (bench):
    (target):
    (forRepeatCount):
    (all):
    * JSTests/microbenchmarks/string-index-of-11-mid.js: Added.
    (bench):
    (target):
    (forRepeatCount):
    (all):
    * Source/WTF/wtf/text/StringCommon.h:
    (WTF::find):
    
    Canonical link: https://commits.webkit.org/252121@main
    Constellation committed Jul 4, 2022
  7. [LFC][FFC] Add support for overconstrained alignment cases

    https://bugs.webkit.org/show_bug.cgi?id=242299
    
    Reviewed by Antti Koivisto.
    
    (This is in an overconstrained context when the content is wider than the available space.)
    1. gap value should never be negative (i.e. no overlapping flex items)
    2. since there's no gap between the flex items, offset should be computed as if there was one wide flex item.
    
    * Source/WebCore/layout/formattingContexts/flex/FlexLayout.cpp:
    (WebCore::Layout::FlexLayout::justifyFlexItems):
    
    Canonical link: https://commits.webkit.org/252120@main
    alanbujtas committed Jul 4, 2022
  8. [CSS Container Queries] Rename container-type value 'none' to 'normal'

    https://bugs.webkit.org/show_bug.cgi?id=242311
    <rdar://96397509>
    
    Unreviewed followup.
    
    * LayoutTests/platform/mac-wk1/TestExpectations:
    
    Skip some WPTs on WK1 (they were updated to be async and don't work anymore).
    
    Canonical link: https://commits.webkit.org/252119@main
    anttijk committed Jul 4, 2022
  9. [iOS] Mail occasionally crashes under WebKit: API::Attachment::enclos…

    …ingImageData()
    
    https://bugs.webkit.org/show_bug.cgi?id=242251
    rdar://96131691
    
    Reviewed by Chris Dumez.
    
    The QuickLook attachment thumbnailing codepath, which uses `WKQLThumbnailLoadOperation` to request
    an icon image for API-backed attachments, reads data out of the file wrapper from a background
    thread. If anything simultaneously tries to access the file wrapper's content from the main thread,
    the file wrapper's cached data blob will be left in a bad state (smashed, or overreleased, etc.),
    potentially causing Mail to crash.
    
    After the changes in 250772@main, we now automatically trigger QuickLook thumbnail requests when
    inserting attachments via the pasteboard (i.e. drag-and-drop or copy-paste), at the same time as we
    update attachment attributes (calling `enclosingImageData()` in the process on the main thread). As
    a result, we hit the thread safety issue and crash described above much more frequently, resulting
    in various API-attachment-related crashes that all occur when the main thread tries to read from the
    file wrapper while QuickLook thumbnail operation queue is also active.
    
    To fix this, we add a compile-time guard to ensure that access to each attachment's `m_fileWrapper`
    is guarded behind a `m_fileWrapperLock`; we additionally refactor the code so that instead of
    exposing a `Attachment::fileWrapper()` getter method, we have `Attachment::doWithFileWrapper()`,
    which takes a C++ lambda and calls the lambda with the `NSFileWrapper`, after grabbing the lock.
    
    * Source/WebKit/UIProcess/API/APIAttachment.cpp:
    (API::Attachment::invalidate):
    * Source/WebKit/UIProcess/API/APIAttachment.h:
    * Source/WebKit/UIProcess/API/Cocoa/APIAttachmentCocoa.mm:
    (API::Attachment::setFileWrapper):
    (API::Attachment::doWithFileWrapper const):
    
    Replaces the `fileWrapper()` getter.
    
    (API::Attachment::fileName const):
    (API::Attachment::fileSizeForDisplay const):
    (API::Attachment::enclosingImageData const):
    (API::Attachment::enclosingImageNSData const):
    (API::Attachment::isEmpty const):
    (API::Attachment::createSerializedRepresentation const):
    (API::Attachment::fileWrapper const): Deleted.
    
    Adopt `doWithFileWrapper` everywhere we currently use either `m_fileWrapper` directly, or the now-
    deleted `fileWrapper()` getter.
    
    (API::Attachment::invalidateGeneratedFileWrapper): Deleted.
    (API::Attachment::setFileWrapperGenerator): Deleted.
    
    Delete support for delayed file wrapper generation; this was initially introduced in r238538 for
    Apple pencil support in Mail, but was ultimately implemented using an alternate approach.
    
    * Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm:
    (-[WKWebView _insertAttachmentWithFileWrapper:contentType:completion:]):
    * Source/WebKit/UIProcess/API/Cocoa/_WKAttachment.mm:
    (-[_WKAttachmentInfo initWithAttachment:]):
    
    Make this take an `API::Attachment` instead of a file wrapper (and other attachment metadata) as
    separate arguments. This allows us to use `doWithFileWrapper()` to access the attachment's file
    wrapper behind a lock.
    
    (-[_WKAttachmentInfo data]):
    (-[_WKAttachmentInfo name]):
    (-[_WKAttachmentInfo fileWrapper]):
    (-[_WKAttachment info]):
    (-[_WKAttachmentInfo initWithFileWrapper:filePath:mimeType:utiType:]): Deleted.
    * Source/WebKit/UIProcess/Cocoa/WebPageProxyCocoa.mm:
    (WebKit::WebPageProxy::platformCloneAttachment):
    (WebKit::WebPageProxy::requestThumbnail):
    (WebKit::WebPageProxy::requestThumbnailWithPath):
    (WebKit::WebPageProxy::requestThumbnailWithOperation): Deleted.
    (WebKit::WebPageProxy::requestThumbnailWithFileWrapper): Deleted.
    
    Drive-by refactoring: rename a couple of methods to the more succinct `requestThumbnail()`, relying
    on C++ method overloading.
    
    * Source/WebKit/UIProcess/Cocoa/WebViewImpl.mm:
    (WebKit::WebViewImpl::writeToURLForFilePromiseProvider):
    * Source/WebKit/UIProcess/QuickLookThumbnailLoader.h:
    * Source/WebKit/UIProcess/QuickLookThumbnailLoader.mm:
    (-[WKQLThumbnailLoadOperation initWithAttachment:identifier:]):
    
    Make this take an `API::Attachment` instead of taking the attachment's file wrapper directly. This
    allows us to use `doWithFileWrapper` to read from the file wrapper when generating the attachment
    thumbnail.
    
    (-[WKQLThumbnailLoadOperation start]):
    * Source/WebKit/UIProcess/WebPageProxy.cpp:
    (WebKit::WebPageProxy::requestAttachmentIcon):
    (WebKit::WebPageProxy::updateAttachmentAttributes):
    (WebKit::WebPageProxy::registerAttachmentIdentifierFromFilePath):
    (WebKit::WebPageProxy::registerAttachmentsFromSerializedData):
    * Source/WebKit/UIProcess/WebPageProxy.h:
    * Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm:
    (-[WKContentView _prepareToDragPromisedAttachment:]):
    (createItemProvider):
    * Tools/TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
    (TestWebKitAPI::TEST):
    
    Drive-by fix: make `WKAttachmentTestsMac.DraggingAttachmentBackedImagePreservesRangedSelection` pass
    when running API tests locally, when the TestWebKitAPI window is not ordered to the front. When
    running this test from command line from Terminal, the API test's window ends up behind the terminal
    window, which causes the drag session to never end.
    
    Canonical link: https://commits.webkit.org/252118@main
    whsieh committed Jul 4, 2022
  10. [LFC][FFC] ContentPosition::Left/Start/Right/End are non-logical alig…

    …nment values
    
    https://bugs.webkit.org/show_bug.cgi?id=242298
    
    Reviewed by Antti Koivisto.
    
    Use the visual "edges" when computing offset values for such non-logical alignments.
    
    * Source/WebCore/layout/formattingContexts/flex/FlexLayout.cpp:
    (WebCore::Layout::FlexLayout::justifyFlexItems):
    
    Canonical link: https://commits.webkit.org/252117@main
    alanbujtas committed Jul 4, 2022
  11. [CSS Container Queries] Rename container-type value 'none' to 'normal'

    https://bugs.webkit.org/show_bug.cgi?id=242311
    
    Reviewed by Alan Bujtas.
    
    Implement w3c/csswg-drafts#7402
    
    Also exclude some values from container-name (per https://drafts.csswg.org/css-contain-3/#container-name).
    Also re-import container query WPT tests.
    
    * LayoutTests/imported/w3c/resources/import-expectations.json:
    * LayoutTests/imported/w3c/resources/resource-files.json:
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/at-container-parsing-expected.txt:
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/at-container-parsing.html:
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/at-container-serialization-expected.txt:
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/at-container-serialization.html:
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/at-container-style-serialization-expected.txt: Added.
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/at-container-style-serialization.html: Added.
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/calc-evaluation-expected.txt: Added.
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/calc-evaluation.html: Added.
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/canvas-as-container-001.html:
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/canvas-as-container-002.html:
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/canvas-as-container-003.html:
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/canvas-as-container-004.html:
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/column-spanner-in-container-expected.txt: Added.
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/column-spanner-in-container.html: Added.
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/container-computed-expected.txt:
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/container-computed.html:
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/container-inheritance-expected.txt:
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/container-inheritance.html:
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/container-name-parsing-expected.txt:
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/container-name-parsing.html:
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/container-parsing-expected.txt:
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/container-parsing.html:
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/container-size-nested-invalidation-expected.txt: Added.
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/container-size-nested-invalidation.html: Added.
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/container-type-computed-expected.txt:
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/container-type-computed.html:
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/container-type-parsing-expected.txt:
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/container-type-parsing.html:
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/container-units-in-at-container-dynamic-expected.txt: Added.
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/container-units-in-at-container-dynamic.html: Added.
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/container-units-in-at-container-expected.txt: Added.
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/container-units-in-at-container-fallback-expected.txt: Added.
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/container-units-in-at-container-fallback.html: Added.
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/container-units-in-at-container.html: Added.
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/container-units-invalidation-expected.txt:
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/container-units-invalidation.html:
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/crashtests/columns-in-table-002-crash.html:
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/crashtests/w3c-import.log:
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/font-relative-calc-dynamic-expected.txt: Added.
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/font-relative-calc-dynamic.html: Added.
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/font-relative-units-dynamic-expected.txt:
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/font-relative-units-dynamic.html:
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/grid-container-expected.txt: Added.
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/grid-container.html: Added.
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/grid-item-container-expected.txt: Added.
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/grid-item-container.html: Added.
    * LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/w3c-import.log:
    * Source/WebCore/css/CSSComputedStyleDeclaration.cpp:
    (WebCore::hasValidStyleForProperty):
    (WebCore::ComputedStyleExtractor::valueForPropertyInStyle):
    * Source/WebCore/css/CSSPrimitiveValueMappings.h:
    (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
    (WebCore::CSSPrimitiveValue::operator ContainerType const):
    * Source/WebCore/css/CSSValueKeywords.in:
    * Source/WebCore/css/StyleProperties.cpp:
    (WebCore::isCSSWideValueKeyword):
    
    Drive-by fix.
    
    (WebCore::isNormalValue):
    (WebCore::StyleProperties::getPropertyValue const):
    * Source/WebCore/css/parser/CSSParserFastPaths.cpp:
    (WebCore::CSSParserFastPaths::isValidKeywordPropertyAndValue):
    * Source/WebCore/css/parser/CSSPropertyParserHelpers.cpp:
    (WebCore::CSSPropertyParserHelpers::consumeSingleContainerName):
    * Source/WebCore/dom/Document.cpp:
    (WebCore::Document::updateLayoutIfDimensionsOutOfDate):
    * Source/WebCore/rendering/RenderBox.cpp:
    (WebCore::RenderBox::willBeDestroyed):
    (WebCore::RenderBox::styleWillChange):
    * Source/WebCore/rendering/style/RenderStyle.h:
    (WebCore::RenderStyle::initialContainerType):
    * Source/WebCore/rendering/style/RenderStyleConstants.h:
    * Source/WebCore/rendering/style/StyleRareNonInheritedData.cpp:
    (WebCore::StyleRareNonInheritedData::effectiveContainment const):
    * Source/WebCore/style/ContainerQueryEvaluator.cpp:
    (WebCore::Style::ContainerQueryEvaluator::selectContainer):
    (WebCore::Style::ContainerQueryEvaluator::evaluateSizeFeature const):
    * Source/WebCore/style/StyleScope.cpp:
    (WebCore::Style::Scope::updateQueryContainerState):
    * Source/WebCore/style/StyleSharingResolver.cpp:
    (WebCore::Style::SharingResolver::canShareStyleWithElement const):
    * Source/WebCore/style/StyleTreeResolver.cpp:
    (WebCore::Style::TreeResolver::pushParent):
    (WebCore::Style::TreeResolver::resolveComposedTree):
    (WebCore::Style::TreeResolver::determineQueryContainerAction):
    
    Canonical link: https://commits.webkit.org/252116@main
    anttijk committed Jul 4, 2022
  12. Drop ARM softfp bot

    https://bugs.webkit.org/show_bug.cgi?id=242236
    
    Reviewed by Aakash Jain.
    
    The softfp ARMv7 bot has been kept around to ensure that things would
    work for users that are depend on vendor libraries that require the
    softfp ABI. Recent changes broke softfp and we're no longer aware of any
    users for it. Bug 242172 drops JSC support for the softfp ABI; this bug
    is about removing the corresponding buildbot from build.webkit.org.
    
    * Tools/CISupport/build-webkit-org/config.json:
    * Tools/CISupport/build-webkit-org/factories_unittest.py:
    (TestExpectedBuildSteps):
    * Tools/CISupport/build-webkit-org/public_html/dashboard/Scripts/WebKitBuildbot.js:
    (WebKitBuildbot):
    
    Canonical link: https://commits.webkit.org/252115@main
    aoikonomopoulos committed Jul 4, 2022
  13. [resultsdb] Expose reported flakiness information in the UI

    https://bugs.webkit.org/show_bug.cgi?id=238809
    
    Reviewed by Jonathan Bedard.
    
    Aggregate the number of flaky tests in an upload. In the suites view,
    provide a 'Show number of flaky tests' toggle. In the search view,
    provide a 'Show test flakiness' toggle. Make the per-dot tag into an
    array of information. Toggling all possible tag values on at once will
    certainly result in text overlap).
    
    * Tools/Scripts/libraries/resultsdbpy/resultsdbpy/model/suite_context.py:
    (SuiteContext.register):
    (SuiteContext.register.callback):
    * Tools/Scripts/libraries/resultsdbpy/resultsdbpy/view/static/js/timeline.js:
    (TimelineFromEndpoint.const.options.prototype.renderFactory):
    (result.div.label.Show.test.flakiness.label.label):
    (result.div.label.Number.of.flakes.label.label):
    * Tools/Scripts/libraries/resultsdbpy/resultsdbpy/view/templates/search.html:
    * Tools/Scripts/libraries/resultsdbpy/resultsdbpy/view/templates/suite_results.html:
    
    Canonical link: https://commits.webkit.org/252114@main
    aoikonomopoulos committed Jul 4, 2022
  14. [GStreamer] Build failure with ENABLE_MEDIA_CAPTURE=ON

    https://bugs.webkit.org/show_bug.cgi?id=242309
    
    Reviewed by Philippe Normand.
    
    * Source/WebKit/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLInputElement.cpp:
    (webkit_dom_html_input_element_set_capture_type): Switch from outdated
    usage of WTF::String to WTF::AtomString.
    
    Canonical link: https://commits.webkit.org/252113@main
    aperezdc committed Jul 4, 2022
  15. [GStreamer][VideoCapture] fix getVideoSizeAndFormatFromCaps/getVideoR…

    …esolutionFromCaps for video/x-raw mime-type caps without format
    
    https://bugs.webkit.org/show_bug.cgi?id=242290
    
    Reviewed by Philippe Normand.
    
    Fixes:
    0:00:02.001539663  1169 0x5577d2b74810 DEBUG             video-info video-info.c:406:gst_video_info_from_caps: parsing caps video/x-raw
    0:00:02.001842884  1169 0x5577d2b74810 ERROR             video-info video-info.c:546:gst_video_info_from_caps: no format given
    0:00:02.002197896  1169 0x5577d2b74810 INFO     webkitvideocapturer GStreamerVideoCapturer.cpp:136:setSize: Setting size to 640x480
    
    * Source/WebCore/platform/graphics/gstreamer/GStreamerCommon.cpp:
    (WebCore::getVideoSizeAndFormatFromCaps):
    (WebCore::getVideoResolutionFromCaps):
    
    Canonical link: https://commits.webkit.org/252112@main
    jameshilliard authored and philn committed Jul 4, 2022
Older