Timeline



Aug 20, 2021:

11:10 PM Changeset in webkit [281366] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

Unreviewed, reverting r281343.
https://bugs.webkit.org/show_bug.cgi?id=229362

caused iOS test failure

Reverted changeset:

"Update baseline for http/tests/websocket/tests/hybi/close-
code-and-reason.html."
https://commits.webkit.org/r281343

10:58 PM Changeset in webkit [281365] by Simon Fraser
  • 3 edits
    2 deletes in trunk/Source/WebKit

Remove AsyncRequest, which is unused
https://bugs.webkit.org/show_bug.cgi?id=229358

Reviewed by Alex Christensen.

  • Shared/AsyncRequest.cpp: Removed.
  • Shared/AsyncRequest.h: Removed.
  • Sources.txt:
  • WebKit.xcodeproj/project.pbxproj:
10:53 PM Changeset in webkit [281364] by ntim@apple.com
  • 2 edits in trunk/Source/WebCore

Walk up stacking contexts in RenderLayerBacking::compositingOpacity
https://bugs.webkit.org/show_bug.cgi?id=229350

Reviewed by Simon Fraser.

Shorter way to do the same thing, since stackingContext() chain is top-layer aware and opacity creates stacking contexts anyway.

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::compositingOpacity const):

10:25 PM Changeset in webkit [281363] by Jonathan Bedard
  • 5 edits
    2 adds in trunk/Tools

[git-webkit] Add pull-request command (Part 2)
https://bugs.webkit.org/show_bug.cgi?id=229089
<rdar://problem/81908751>

Reviewed by Dewei Zhu.

  • Scripts/libraries/webkitscmpy/setup.py: Bump version.
  • Scripts/libraries/webkitscmpy/webkitscmpy/init.py: Ditto.
  • Scripts/libraries/webkitscmpy/webkitscmpy/mocks/local/git.py:

(Git.init): Add 'check-ref-format' and 'checkout -b'.
(Git.checkout): Add ability to create branch.

  • Scripts/libraries/webkitscmpy/webkitscmpy/program/init.py:

(main): Add Branch command.

  • Scripts/libraries/webkitscmpy/webkitscmpy/program/branch.py:

(Branch.parser): Allow user to specify engineering branch name.
(Branch.normalize_issue): Turn provided string into eng branch if it isn't already.
(Branch.main): Create eng branch from current checkout state.

  • Scripts/libraries/webkitscmpy/webkitscmpy/test/branch_unittest.py:

(TestBranch):
(TestBranch.setUp):
(TestBranch.test_basic_svn):
(TestBranch.test_basic_git):
(TestBranch.test_prompt_git):
(TestBranch.test_invalid_branch):

8:20 PM Changeset in webkit [281362] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

[IFC][Integration] canUseForLineLayoutWithReason's establishesInlineFormattingContext should check against inflow content
https://bugs.webkit.org/show_bug.cgi?id=229104

Reviewed by Antti Koivisto.

<div><div style="position: absolute"></div>this is still a inline formatting context</div>
We don't allow to mix inline and block inflow content.
However out-of-flow block level boxes can certainly have inline siblings. canUseForLineLayoutWithReason should check
the content accordingly.

  • layout/integration/LayoutIntegrationCoverage.cpp:

(WebCore::LayoutIntegration::canUseForLineLayoutWithReason):

8:16 PM Changeset in webkit [281361] by Alan Bujtas
  • 3 edits in trunk/Source/WebCore

[IFC][Integration] Walk the box tree to update the replaced content location
https://bugs.webkit.org/show_bug.cgi?id=229105

Reviewed by Antti Koivisto.

Normally there are more runs than entries in the box list. It's more performant to iterate
the box list for the renderer location adjustment.

  • layout/integration/LayoutIntegrationBoxTree.h:

(WebCore::LayoutIntegration::BoxTree::boxAndRendererList):

  • layout/integration/LayoutIntegrationLineLayout.cpp:

(WebCore::LayoutIntegration::LineLayout::constructContent):

7:56 PM Changeset in webkit [281360] by Simon Fraser
  • 20 edits
    1 add in trunk/Source

Use UserMediaRequestIdentifier in WebKit rather than a mysterious uint64_t
https://bugs.webkit.org/show_bug.cgi?id=229308

Reviewed by Youenn Fablet.

Source/WebCore:

Move UserMediaRequestIdentifier to its own header.

  • Headers.cmake:
  • Modules/mediastream/UserMediaRequest.h:
  • WebCore.xcodeproj/project.pbxproj:

Source/WebKit:

Use the existing WebCore::UserMediaRequestIdentifier in WebKit code. We need to pull
it out of the ENABLE(MEDIA_STREAM) #ifdef.

In UserMediaPermissionRequestManagerProxy use a new identifier type, MediaDevicePermissionRequestIdentifier,
which is used to identify pending permission requests (but never send to the web process).

  • Scripts/webkit/messages.py:

(types_that_cannot_be_forward_declared): Sort
(headers_for_type):

  • UIProcess/MediaKeySystemPermissionRequestManagerProxy.h:
  • UIProcess/UserMediaPermissionRequestManagerProxy.cpp:

(WebKit::UserMediaPermissionRequestManagerProxy::denyRequest):
(WebKit::UserMediaPermissionRequestManagerProxy::grantRequest):
(WebKit::UserMediaPermissionRequestManagerProxy::finishGrantingRequest):
(WebKit::UserMediaPermissionRequestManagerProxy::requestUserMediaPermissionForFrame):
(WebKit::UserMediaPermissionRequestManagerProxy::processUserMediaPermissionRequest):
(WebKit::UserMediaPermissionRequestManagerProxy::processUserMediaPermissionInvalidRequest):
(WebKit::UserMediaPermissionRequestManagerProxy::processUserMediaPermissionValidRequest):
(WebKit::UserMediaPermissionRequestManagerProxy::checkUserMediaPermissionForSpeechRecognition):
(WebKit::UserMediaPermissionRequestManagerProxy::getUserMediaPermissionInfo):
(WebKit::UserMediaPermissionRequestManagerProxy::enumerateMediaDevicesForFrame):
(WebKit::generateRequestID): Deleted.

  • UIProcess/UserMediaPermissionRequestManagerProxy.h:
  • UIProcess/UserMediaPermissionRequestProxy.cpp:

(WebKit::UserMediaPermissionRequestProxy::UserMediaPermissionRequestProxy):

  • UIProcess/UserMediaPermissionRequestProxy.h:

(WebKit::UserMediaPermissionRequestProxy::create):
(WebKit::UserMediaPermissionRequestProxy::userMediaID const):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::requestUserMediaPermissionForFrame):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • WebKit.xcodeproj/project.pbxproj: Some files that were in Sources.txt were missing from the project.
  • WebProcess/MediaStream/UserMediaPermissionRequestManager.cpp:

(WebKit::UserMediaPermissionRequestManager::sendUserMediaRequest):
(WebKit::UserMediaPermissionRequestManager::userMediaAccessWasGranted):
(WebKit::UserMediaPermissionRequestManager::userMediaAccessWasDenied):

  • WebProcess/MediaStream/UserMediaPermissionRequestManager.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::userMediaAccessWasGranted):
(WebKit::WebPage::userMediaAccessWasDenied):

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in:
7:48 PM Changeset in webkit [281359] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

[LFC][Integration] Initialize root box's border and padding values
https://bugs.webkit.org/show_bug.cgi?id=229109

Reviewed by Antti Koivisto.

This is what LFC would normally do.

  • layout/integration/LayoutIntegrationLineLayout.cpp:

(WebCore::LayoutIntegration::LineLayout::layout):
(WebCore::LayoutIntegration::LineLayout::prepareLayoutState):

7:44 PM Changeset in webkit [281358] by Alan Bujtas
  • 4 edits in trunk/Source/WebCore

[LFC][Integration] HTMLTextFormControlElement should use the inline iterator to collect content for wrap=hard
https://bugs.webkit.org/show_bug.cgi?id=228882

Reviewed by Antti Koivisto.

getNextSoftBreak is simply returns the position of the last item on the line unless it's a hard line break.
(endsWithBreak -> previousLineBrokeCleanly -> previousLineBrokeAtBR see https://trac.webkit.org/changeset/6107)

  • html/HTMLTextFormControlElement.cpp:

(WebCore::HTMLTextFormControlElement::valueWithHardLineBreaks const):
(WebCore::getNextSoftBreak): Deleted. line->lineBreakPos() translates to the position where the line breaks within the run.
maximumCaretOffset() returns the same value, though the naming is a bit confusing and probably should be renamed or introduce
something similar on the line iterator.

  • layout/integration/LayoutIntegrationCoverage.cpp:

(WebCore::LayoutIntegration::canUseForLineLayoutWithReason):

6:45 PM Changeset in webkit [281357] by Alan Bujtas
  • 6 edits in trunk

[IFC][Integration] Enable inline level boxes with relative (min/max)width and (min/max)height values
https://bugs.webkit.org/show_bug.cgi?id=229065

Reviewed by Antti Koivisto.

Source/WebCore:

When a block level box's style changes, while we mark the box itself for layout we normally don't
walk the subtree for damaged inline content. Instead during layout, we dirty these individual descendant renderers as needed.
Inline level boxes with relative width/height values are part of this group.
It's also similar to what we do in LegacyLineLayout::layoutLineBoxes.

  • layout/integration/LayoutIntegrationCoverage.cpp:

(WebCore::LayoutIntegration::canUseForChild):

  • rendering/RenderBlockFlow.cpp:

(WebCore::RenderBlockFlow::layoutModernLines):

LayoutTests:

  • platform/ios/fast/frames/onlyCommentInIFrame-expected.txt:
  • platform/mac/fast/frames/onlyCommentInIFrame-expected.txt:
6:13 PM Changeset in webkit [281356] by Alan Bujtas
  • 5 edits in trunk

[IFC][Integration] Enable non-auto line-break values
https://bugs.webkit.org/show_bug.cgi?id=228842

Reviewed by Antti Koivisto.

Source/WebCore:

IFC already supports line-break (except after-white-space).

  • layout/integration/LayoutIntegrationCoverage.cpp:

(WebCore::LayoutIntegration::canUseForStyle):

LayoutTests:

  • TestExpectations: progressions
  • platform/mac/fast/text/trailing-white-space-expected.txt: collapsed trailing whitespace cleanup.
5:54 PM Changeset in webkit [281355] by ysuzuki@apple.com
  • 20 edits in trunk/Source/JavaScriptCore

[JSC] Simplify moveIntsToDouble
https://bugs.webkit.org/show_bug.cgi?id=229351

Reviewed by Saam Barati.

MacroAssembler::moveIntsToDouble required scratch FPRReg. But it was only required for MacroAssemblerX86, and it is already removed.
This means that we no longer need this scratch FPRReg. This change makes a lot of IC code, property access code simpler.
This patch removes that scratch FPRReg, and removed scratch FPRReg of many arithmetic ICs. This patch is important for PutByVal modern
IC since some of property access requires FPRReg because of MacroAssembler::moveIntsToDouble, and it requires adding new m_scratch2FPR
to AccessCase. But after this simplification, this is no longer necessary.

  • assembler/MacroAssemblerARMv7.h:

(JSC::MacroAssemblerARMv7::moveIntsToDouble):

  • assembler/MacroAssemblerMIPS.h:

(JSC::MacroAssemblerMIPS::moveIntsToDouble):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileValueToInt32):
(JSC::DFG::SpeculativeJIT::compileDoubleRep):
(JSC::DFG::SpeculativeJIT::emitUntypedOrBigIntRightShiftBitOp):
(JSC::DFG::SpeculativeJIT::compileValueAdd):
(JSC::DFG::SpeculativeJIT::compileValueSub):
(JSC::DFG::SpeculativeJIT::compileMathIC):
(JSC::DFG::SpeculativeJIT::compileValueNegate):
(JSC::DFG::SpeculativeJIT::compileValueMul):
(JSC::DFG::SpeculativeJIT::speculateRealNumber):
(JSC::DFG::SpeculativeJIT::compileNormalizeMapKey):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::unboxDouble):

  • ftl/FTLLowerDFGToB3.cpp:

(JSC::FTL::DFG::LowerDFGToB3::compileBinaryMathIC):
(JSC::FTL::DFG::LowerDFGToB3::compileCompareStrictEq):

  • jit/AssemblyHelpers.cpp:

(JSC::AssemblyHelpers::emitConvertValueToBoolean):
(JSC::AssemblyHelpers::branchIfValue):

  • jit/AssemblyHelpers.h:

(JSC::AssemblyHelpers::unboxDoubleNonDestructive):
(JSC::AssemblyHelpers::unboxDouble):

  • jit/JITAddGenerator.cpp:

(JSC::JITAddGenerator::generateFastPath):

  • jit/JITAddGenerator.h:

(JSC::JITAddGenerator::JITAddGenerator):

  • jit/JITArithmetic.cpp:

(JSC::JIT::emitRightShiftFastPath):
(JSC::JIT::emitMathICFast):

  • jit/JITDivGenerator.cpp:

(JSC::JITDivGenerator::loadOperand):

  • jit/JITMulGenerator.cpp:

(JSC::JITMulGenerator::generateInline):
(JSC::JITMulGenerator::generateFastPath):

  • jit/JITMulGenerator.h:

(JSC::JITMulGenerator::JITMulGenerator):

  • jit/JITPropertyAccess.cpp:

(JSC::JIT::emitFloatTypedArrayPutByVal):

  • jit/JITPropertyAccess32_64.cpp:

(JSC::JIT::emitGenericContiguousPutByVal):

  • jit/JITRightShiftGenerator.cpp:

(JSC::JITRightShiftGenerator::generateFastPath):

  • jit/JITRightShiftGenerator.h:

(JSC::JITRightShiftGenerator::JITRightShiftGenerator):

  • jit/JITSubGenerator.cpp:

(JSC::JITSubGenerator::generateInline):
(JSC::JITSubGenerator::generateFastPath):

  • jit/JITSubGenerator.h:

(JSC::JITSubGenerator::JITSubGenerator):

5:35 PM Changeset in webkit [281354] by Patrick Angle
  • 6 edits
    2 adds in trunk

Web Inspector: Style rules declared after a rule whose selector has over 8192 components are not shown correctly
https://bugs.webkit.org/show_bug.cgi?id=229218

Reviewed by Devin Rousso.

Source/WebCore:

Test: inspector/css/getMatchedStylesForNodeLargeSelectors.html

CSS rules are limited to 8192 selector components in WebCore, and when more components are present the rule is
split into multiple StyleRule instances. This meant Web Inspector could not reliably resolve a StyleRule
back to its source data, which we do to enable things like editing, as well as to make sure we show the un-split
selector in the Styles sidebar of the Elements tab. Previously, the presences of multiple StyleRules for a
single source data declaration was not accounted for, which meant that rules after the split rules would show a
mix of style information from the actual rule as well as a rule some number of declarations later in the same
style sheet. This is resolved by marking StyleRules that have been split and marking the last of the split
rules. This allows us to then forgo incrementing the index for looking up raw declarations until we encounter
the last rule from a split StyleRule.

  • css/StyleRule.cpp:

(WebCore::StyleRule::StyleRule):
(WebCore::StyleRule::createForSplitting):
(WebCore::StyleRule::splitIntoMultipleRulesWithMaximumSelectorComponentCount const):

  • css/StyleRule.h:
  • Added two members to track rules that are split into multiple rules due to exceeding the 8192 component limit

for selectors in order to determine later which rules are effectively duplicates of each other. We use two
members here, one to track that the rule was split from a larger authored rule (m_isSplitRule), and one to
mark the last rule split from a given rule (m_isLastRuleInSplitRule). The second member prevents situations
where we might otherwise accidentally continue iterating into a list of StyleRule where two large authored
rules that had to be split are present next to each other in an ordered collection of StyleRule.

  • inspector/InspectorStyleSheet.cpp:

(WebCore::selectorsFromSource):

  • Use a vector of CSSSelectors for specificity information since we now collect selectors from potentially

multiple CSSStyleRules.

(WebCore::InspectorStyleSheet::cssStyleRulesSplitFromSameRule):

  • Find any neighboring CSSStyleRules that were split from the same original rule based on the order of rules as

well as the new flags in StyleRule

(WebCore::InspectorStyleSheet::selectorsForCSSStyleRule):

  • Find all selectors for a given CSSStyleRule, including other CSSStyleRules split from the same rule in a

style sheet.

(WebCore::InspectorStyleSheet::buildObjectForSelectorList):

  • Use all CSSSelectors from for the CSSStyleRule and other rules that were split from the same rule in a style

sheet.

(WebCore::InspectorStyleSheet::ruleSourceDataFor const):
(WebCore::InspectorStyleSheet::ruleIndexByStyle const):

  • When looking up an index to get rule source data, make sure we don't overcount split rules.
  • inspector/InspectorStyleSheet.h:

LayoutTests:

Test very large (8192 individual component) selectors to ensure surrounding styles are correctly resolved.

  • inspector/css/getMatchedStylesForNodeLargeSelectors-expected.txt: Added.
  • inspector/css/getMatchedStylesForNodeLargeSelectors.html: Added.
5:19 PM Changeset in webkit [281353] by Eric Hutchison
  • 2 edits in trunk/LayoutTests

Update test expectations for fast/scrolling/ios/overflow-div-scrolling.html.
<rdar://80392444>.

Unreviewed test gardening.

  • platform/ios-wk1/TestExpectations:
5:14 PM Changeset in webkit [281352] by Aditya Keerthi
  • 2 edits in trunk/Source/WebKit

[macCatalyst] Crash when clicking a phone number link
https://bugs.webkit.org/show_bug.cgi?id=229344
rdar://81804638

Reviewed by Tim Horton.

Clicking on a phone number link should present data detection UI.
However, -[WKActionSheetAssistant _elementActionForDDAction:] always
returns nil on Catalyst, resulting in crash when attempting to add the
returned action to an NSArray.

Given that the methods used in _elementActionForDDAction: are available
on Catalyst, fix the crash by ensuring the method does not return nil, and
only making the method available on platforms where ENABLE(DATA_DETECTION)
is defined.

  • UIProcess/ios/WKActionSheetAssistant.mm:

(-[WKActionSheetAssistant _elementActionForDDAction:]):

5:00 PM Changeset in webkit [281351] by Ayumi Kojima
  • 2 edits in trunk/LayoutTests

[ Sky ] editing/input/cocoa/autocorrect-on.html is timing out.
<rdar://82191308>

Unreviewed test gardening.

  • platform/ios-wk2/TestExpectations:
4:22 PM Changeset in webkit [281350] by Eric Hutchison
  • 4 edits in trunk/LayoutTests

Update test expectations for http/tests/media/modern-media-controls/overflow-support/playback-speed-live-broadcast.html.
<rdar://80393995>.

Unreviewed test gardening.

  • platform/ios-14/TestExpectations:
  • platform/ios-wk2/TestExpectations:
  • platform/ios/TestExpectations:
4:01 PM Changeset in webkit [281349] by achristensen@apple.com
  • 11 edits in trunk

Make UIEventAttribution tests less platform dependent
https://bugs.webkit.org/show_bug.cgi?id=229323

Reviewed by John Wilander.

Source/WebKit:

This allows me to run the UIEventAttribution tests on macOS.
It also makes them not time out, which they were doing since r277447.
To accomplish this, I added more test SPI to prevent the network process
suspension message, which was causing the test to time out on the iOS simulator.

  • UIProcess/API/Cocoa/WKWebViewPrivateForTesting.h:
  • UIProcess/API/Cocoa/WKWebViewTesting.mm:

(-[WKWebView _addEventAttributionWithSourceID:destinationURL:sourceDescription:purchaser:reportEndpoint:optionalNonce:]):

  • UIProcess/API/Cocoa/WKWebsiteDataStore.mm:

(+[WKWebsiteDataStore _preventNetworkProcessSuspensionForTesting]):

  • UIProcess/API/Cocoa/WKWebsiteDataStorePrivate.h:
  • UIProcess/API/ios/WKWebViewPrivateForTestingIOS.h:
  • UIProcess/API/ios/WKWebViewTestingIOS.mm:

(-[WKWebView _setUIEventAttributionForTesting:withNonce:]): Deleted.

  • UIProcess/Network/NetworkProcessProxy.cpp:

(WebKit::NetworkProcessProxy::preventSuspensionForTesting):
(WebKit::NetworkProcessProxy::sendPrepareToSuspend):

  • UIProcess/Network/NetworkProcessProxy.h:

Tools:

  • TestWebKitAPI/Tests/WebKitCocoa/EventAttribution.mm:

(TestWebKitAPI::exampleURL):
(TestWebKitAPI::runBasicEventAttributionTest):
(TestWebKitAPI::TEST):

3:58 PM Changeset in webkit [281348] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Outdent WorkerRunLoop class definition
https://bugs.webkit.org/show_bug.cgi?id=229352

Reviewed by Wenson Hsieh.

Just outdent the class.

  • workers/WorkerRunLoop.h:

(WebCore::WorkerRunLoop::terminated const):
(WebCore::WorkerRunLoop::createUniqueId):
(WebCore::WorkerRunLoop::Task::mode const):
(WebCore::WorkerRunLoop::isBeingDebugged const):

3:54 PM Changeset in webkit [281347] by Russell Epstein
  • 1 copy in tags/Safari-612.2.1

Tag Safari-612.2.1.

3:52 PM Changeset in webkit [281346] by Jonathan Bedard
  • 5 edits in trunk/Tools

[git-webkit] Add pull-request command (Part 1)
https://bugs.webkit.org/show_bug.cgi?id=229089
<rdar://problem/81908751>

Reviewed by Dewei Zhu.

  • Scripts/libraries/webkitscmpy/setup.py: Bump version.
  • Scripts/libraries/webkitscmpy/webkitscmpy/init.py: Ditto.
  • Scripts/libraries/webkitscmpy/webkitscmpy/program/init.py:

(main): Sort programs, add aliases.

  • Scripts/libraries/webkitscmpy/webkitscmpy/program/command.py:

(Command): Add alias
(FilteredCommand): Inherit from Command.

3:43 PM Changeset in webkit [281345] by Russell Epstein
  • 1 copy in tags/Safari-612.1.29

Tag Safari-612.1.29.

3:24 PM Changeset in webkit [281344] by Ayumi Kojima
  • 2 edits in trunk/LayoutTests

[ iOS & BigSur Debug wk2 ] compositing/video/video-update-rendering.html is a flakey text failure.
https://bugs.webkit.org/show_bug.cgi?id=223900

Unreviewed test gardening.

  • platform/ios-wk2/TestExpectations:
3:19 PM Changeset in webkit [281343] by Eric Hutchison
  • 2 edits in trunk/LayoutTests

Update baseline for http/tests/websocket/tests/hybi/close-code-and-reason.html.
<rdar://82186597>.

Unreviewed rebaseline.

  • http/tests/websocket/tests/hybi/close-code-and-reason-expected.txt:
3:01 PM Changeset in webkit [281342] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

Unreviewed. Skip failing tests in 32 bits archs
https://bugs.webkit.org/show_bug.cgi?id=229345

Patch by Mikhail R. Gadelha <Mikhail R. Gadelha> on 2021-08-20
Reviewed by Yusuke Suzuki.

  • platform/glib/TestExpectations:
  • platform/wpe/TestExpectations:
3:00 PM Changeset in webkit [281341] by Alan Bujtas
  • 4 edits in trunk/Source/WebCore

[LFC][IFC] Make mid-word breaking surrogate pair aware
https://bugs.webkit.org/show_bug.cgi?id=229026

Reviewed by Antti Koivisto.

Surrogate pairs represent one "character" (U16_IS_LEAD + U16_IS_TAIL).
We should never break them half even when CSS tells us to break the word at arbitrary position.
This is in preparation for removing the U16_IS_SURROGATE check in canUseForCharacter.

  • layout/formattingContexts/inline/InlineContentBreaker.cpp:

(WebCore::Layout::InlineContentBreaker::tryBreakingTextRun const):

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

(WebCore::Layout::TextUtil::midWorkdBreak):
(WebCore::Layout::TextUtil::split): Deleted.

  • layout/formattingContexts/inline/text/TextUtil.h:
2:57 PM Changeset in webkit [281340] by jonlee@apple.com
  • 4 edits in trunk/Tools

Teach run-webkit-tests to print a summary of test status
https://bugs.webkit.org/show_bug.cgi?id=200556

Reviewed by Simon Fraser.

Add a new option to print a summary listing test expectation health.
It uses the same expected results as --print-expectations.

To run it: run-webkit-tests --print-summary

You can pass the same arguments as normal run-webkit-tests and it will
return stats based on the tests collected.

It also outputs a .csv file with the data.

  • Scripts/webkitpy/layout_tests/controllers/manager.py:

(Manager.print_expectations): Gather the tests. Note whether the test
is marked as skip, pass, flaky, or fail, the definitions of which are
dictated by model.get_tests_with_result_type(). Output the results to
command line as well as to file.

  • Scripts/webkitpy/layout_tests/run_webkit_tests.py: Add the new option.

It goes through the same path as --print-expectations.

2:56 PM Changeset in webkit [281339] by Jonathan Bedard
  • 4 edits in trunk/Tools

[git-webkit] Forward unknown args to log and blame
https://bugs.webkit.org/show_bug.cgi?id=229342
<rdar://problem/82178743>

Rubber-stamped by Aakash Jain.

  • Scripts/libraries/webkitscmpy/setup.py: Bump version.
  • Scripts/libraries/webkitscmpy/webkitscmpy/init.py: Ditto.
  • Scripts/libraries/webkitscmpy/webkitscmpy/program/init.py:

(main): Both log and blame might be passed options that need to be forwarded to git/svn.

2:28 PM Changeset in webkit [281338] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

[LFC][Integration] Use the logical width when passing in the constraint for the inline content
https://bugs.webkit.org/show_bug.cgi?id=228942

Reviewed by Simon Fraser.

Let's pass in the logical width (e.g. block box's height in case of vertical writing direction) to the inline line layout.

  • layout/integration/LayoutIntegrationLineLayout.cpp:

(WebCore::LayoutIntegration::LineLayout::layout):

2:24 PM Changeset in webkit [281337] by Alan Bujtas
  • 6 edits in trunk

[LFC][IFC] Add support for justified non-breaking space
https://bugs.webkit.org/show_bug.cgi?id=228727

Reviewed by Antti Koivisto.

Let's use FontCascade::expansionOpportunityCount to figure out the number of expansion counts in a run.
It helps with finding non-breakable space in an otherwise non-whitespace content (foo&nbsp;bar where the contet forms one run but the because
of the non-breakable _space_ in the middle, it also produces an expansion opportunity).
This patch moves all the expansion handling over to Line::applyRunExpansion as we anyway need to walk the content to find such spaces (i.e. not worth trying to pre-compute them).

  • layout/formattingContexts/inline/InlineLine.cpp:

(WebCore::Layout::Line::applyRunExpansion):
(WebCore::Layout::Line::Run::Run):
(WebCore::Layout::Line::Run::expand):
(WebCore::Layout::Line::Run::visuallyCollapseTrailingWhitespace):
(WebCore::Layout::Line::Run::setExpansionBehavior): Deleted.
(WebCore::Layout::Line::Run::expansionBehavior const): Deleted.
(WebCore::Layout::Line::Run::setHorizontalExpansion): Deleted.

  • layout/formattingContexts/inline/InlineLine.h:

(WebCore::Layout::Line::Run::expansion const):
(WebCore::Layout::Line::Run::setExpansion):
(WebCore::Layout::Line::Run::hasExpansionOpportunity const): Deleted.
(WebCore::Layout::Line::Run::expansionOpportunityCount const): Deleted.

  • layout/integration/LayoutIntegrationCoverage.cpp:

(WebCore::LayoutIntegration::canUseForCharacter):
(WebCore::LayoutIntegration::canUseForText):
(WebCore::LayoutIntegration::canUseForFontAndText):
(WebCore::LayoutIntegration::canUseForStyle):

1:56 PM Changeset in webkit [281336] by Ayumi Kojima
  • 2 edits in trunk/LayoutTests

[ iOS 15 ]editing/selection/ios/hide-selection-in-tiny-contenteditable.html is a flaky failure.
<rdar://82183980>

Unreviewed test gardening.

  • platform/ios-wk2/TestExpectations:
1:50 PM Changeset in webkit [281335] by Alan Bujtas
  • 11 edits in trunk/Source/WebCore

[LFC][IFC] LineBox provides redundant geometry information
https://bugs.webkit.org/show_bug.cgi?id=228050

Reviewed by Sam Weinig.

LineBoxGeometry class provides the line's geometry. This is also in preparation for making LineBox a non-persistent type of structure.

  • layout/formattingContexts/inline/InlineFormattingContext.cpp:

(WebCore::Layout::InlineFormattingContext::computeGeometryForLineContent):

  • layout/formattingContexts/inline/InlineFormattingGeometry.cpp:

(WebCore::Layout::LineBoxBuilder::build):
(WebCore::Layout::LineBoxBuilder::constructAndAlignInlineLevelBoxes):
(WebCore::Layout::LineBoxBuilder::computeLineBoxHeightAndAlignInlineLevelBoxesVertically):
(WebCore::Layout::InlineFormattingGeometry::verticallyAdjustedLineForLineContent const):
(WebCore::Layout::InlineFormattingGeometry::lineBoxForLineContent const): Deleted.

  • layout/formattingContexts/inline/InlineFormattingGeometry.h:
  • layout/formattingContexts/inline/InlineLineBox.cpp:

(WebCore::Layout::LineBox::LineBox):
(WebCore::Layout::m_rootInlineBox): Deleted.

  • layout/formattingContexts/inline/InlineLineBox.h:

(WebCore::Layout::LineBox::logicalRect const): Deleted.
(WebCore::Layout::LineBox::alignmentBaseline const): Deleted.
(WebCore::Layout::LineBox::setLogicalHeight): Deleted.

  • layout/integration/LayoutIntegrationInlineContentBuilder.cpp:

(WebCore::LayoutIntegration::InlineContentBuilder::createDisplayNonRootInlineBoxes const):

1:44 PM Changeset in webkit [281334] by Wenson Hsieh
  • 2 edits in trunk/Source/WebCore

Followup to <trac.webkit.org/r281288>
https://bugs.webkit.org/show_bug.cgi?id=229269
rdar://81349236

Reviewed by Jer Noble.

Make two minor adjustments after the changes in r281288:

  1. Rename keyPathsForValuesAffectingValueCanBeginTouchBarScrubbing to just

keyPathsForValuesAffectingCanBeginTouchBarScrubbing, since the Objective-C property name is
-canBeginTouchBarScrubbing rather than -valueCanBeginTouchBarScrubbing.

  1. After fixing (1), the implementation of this method is no longer dead code, so we'll to make sure that the

NSSet we create and return contains valid Objective-C objects (i.e. NSString instead of const char*) --
in particular, this affects "contentDuration".

  • platform/mac/WebPlaybackControlsManager.mm:

(+[WebPlaybackControlsManager keyPathsForValuesAffectingCanBeginTouchBarScrubbing]):
(+[WebPlaybackControlsManager keyPathsForValuesAffectingValueCanBeginTouchBarScrubbing]): Deleted.

1:05 PM Changeset in webkit [281333] by clopez@igalia.com
  • 9 edits in trunk

REGRESSION(r274166): [GTK] It broke run-javascriptcore-tests causing all tests to use lot of memory
https://bugs.webkit.org/show_bug.cgi?id=229321

Unreviewed, reverting r274166 because it caused JSC tests to use too much memory.

Reverted changeset:

"[GTK] Reenable -fvisibility=hidden"
https://bugs.webkit.org/show_bug.cgi?id=181916
https://commits.webkit.org/r274166

.:

  • Source/cmake/OptionsGTK.cmake:

Source/WebCore:

Covered by existing tests.

  • PlatformGTK.cmake:
  • dom/EventTarget.cpp:
  • dom/EventTarget.h:

Tools:

  • TestWebKitAPI/PlatformGTK.cmake:
  • TestWebKitAPI/glib/TestExpectations.json:
12:44 PM Changeset in webkit [281332] by Simon Fraser
  • 9 edits in trunk/Source/WebKit

Change the mysterious uint64_t argument to detectDataInAllFrames() to OptionSet<WebCore::DataDetectorType>
https://bugs.webkit.org/show_bug.cgi?id=229304

Reviewed by Tim Horton.

We can encode a OptionSet<WebCore::DataDetectorType> in IPC messages now, so do so for DetectDataInAllFrames().
Also use OptionSet<WebCore::DataDetectorType> in some cases where WebCore::DataDetectorType was being used
to hold a bit set.

  • Shared/API/Cocoa/WKDataDetectorTypesInternal.h:

(fromWKDataDetectorTypes):

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _setupPageConfiguration:]):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::detectDataInAllFrames):

  • UIProcess/WebPageProxy.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::detectDataInAllFrames):

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in:
12:41 PM Changeset in webkit [281331] by dino@apple.com
  • 3 edits
    6 adds in trunk

[WebXR] A session with only one view should cover the full screen
https://bugs.webkit.org/show_bug.cgi?id=229110
<rdar://problem/81940621>

Reviewed by Tim Horton.

Source/WebCore:

If we get into the state with an immersive session and only one view,
we should treat that view as the full width. This situation should never
happen with a real headset, but can be found in testing scenarios.

Test: http/wpt/webxr/xrViewport_singleView_valid.https.html

  • Modules/webxr/WebXRWebGLLayer.cpp:

(WebCore::WebXRWebGLLayer::computeViewports): Add test for only one
view and assume it is the left eye.

LayoutTests:

Add a test that provides an immersive session with only one view.
This required copying a few more things over from the WPT directory.

  • http/wpt/webxr/resources/test-only-api.js: Added.

(loadScript):

  • http/wpt/webxr/resources/webxr_test_constants_single_view.js: Added.
  • http/wpt/webxr/resources/webxr_util.js: Added.
  • http/wpt/webxr/xrViewport_singleView_valid.https-expected.txt: Added.
  • http/wpt/webxr/xrViewport_singleView_valid.https.html: Added.
12:38 PM Changeset in webkit [281330] by Aditya Keerthi
  • 2 edits in trunk/Source/WebCore

[macOS] Crash when painting <meter> with large scale
https://bugs.webkit.org/show_bug.cgi?id=229273
rdar://81219669

Reviewed by Wenson Hsieh.

  • rendering/RenderThemeMac.mm:

(WebCore::RenderThemeMac::paintMeter):

Draw the cell into an image buffer to avoid an assertion beneath WebKit.

12:28 PM Changeset in webkit [281329] by clopez@igalia.com
  • 3 edits in trunk/LayoutTests

[GTK][WPE] Gardening of expected failures

Unreviewed gardening.

  • platform/glib/TestExpectations:
  • platform/gtk/TestExpectations:
11:43 AM Changeset in webkit [281328] by Eric Hutchison
  • 3 edits in trunk/LayoutTests

[iOS wk2, Mac wk2] http/wpt/mediarecorder/video-rotation.html is a flaky failure.
<rdar://76434263>.

Unreviewed test gardening.

  • platform/ios-wk2/TestExpectations:
  • platform/mac-wk2/TestExpectations:
11:25 AM Changeset in webkit [281327] by clopez@igalia.com
  • 4 edits in trunk/Tools

[build.webkit.org] GTK-Linux-64-bit-Release-Skip-Failing-Tests worker should run only layout tests
https://bugs.webkit.org/show_bug.cgi?id=229312

Reviewed by Jonathan Bedard.

Add a new factory for testing only layout tests and make this bot use it.

  • CISupport/build-webkit-org/config.json:
  • CISupport/build-webkit-org/factories.py:

(TestLayoutFactory):
(TestLayoutFactory.init):

  • CISupport/build-webkit-org/factories_unittest.py:

(TestExpectedBuildSteps):

11:09 AM Changeset in webkit [281326] by ysuzuki@apple.com
  • 6 edits in trunk/Source/JavaScriptCore

[JSC] Remove unnecessary moves in Yarr's sub32 / add32 related code
https://bugs.webkit.org/show_bug.cgi?id=228813

Reviewed by Mark Lam.

This patch adds three operand sub32 to X64 masm so that we can use it in all masms.
We use add32 and sub32 in YarrJIT to remove unnecessary mov instructions in ARM64.

  • assembler/MacroAssembler.h:

(JSC::MacroAssembler::sub32):

  • assembler/MacroAssemblerARMv7.h:

(JSC::MacroAssemblerARMv7::sub32):

  • assembler/MacroAssemblerX86Common.h:

(JSC::MacroAssemblerX86Common::sub32):

  • assembler/testmasm.cpp:

(JSC::testSub32ArgImm):

  • yarr/YarrJIT.cpp:
10:50 AM Changeset in webkit [281325] by ysuzuki@apple.com
  • 4 edits
    1 delete in trunk/Source/JavaScriptCore

[JSC] Remove MacroAssemblerX86
https://bugs.webkit.org/show_bug.cgi?id=229331

Reviewed by Mark Lam.

This patch removes MacroAssemblerX86, which allows simplifying some 32bit MacroAssembler code
in a subsequent patch.

  • CMakeLists.txt:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • assembler/MacroAssembler.h:
  • assembler/MacroAssemblerX86.h: Removed.
10:47 AM Changeset in webkit [281324] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Fix DFG compilation of StringCharAt in 32 bits jsc debug build
https://bugs.webkit.org/show_bug.cgi?id=229293

Patch by Mikhail R. Gadelha <Mikhail R. Gadelha> on 2021-08-20
Reviewed by Keith Miller.

In SpeculativeJIT::compileGetByValOnString the format can be either DataFormatJS
or DataFormatCell so assert either value when compiling it in 32 bits.
It's the same assert already present in the DFG 64 bits counterpart

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

10:31 AM Changeset in webkit [281323] by Patrick Angle
  • 3 edits
    3 adds in trunk

Release assert in ScriptController::canExecuteScripts via WebCore::WebSocket::didReceiveMessage
https://bugs.webkit.org/show_bug.cgi?id=229301

Reviewed by Ryosuke Niwa.

Source/WebCore:

Test: http/tests/websocket/tests/hybi/inspector/send-and-recieve-debugger.html

WebCore::WebSocket::didReceiveMessage and other functions that fire JS events may be called while the
WebSocketChannel is being resumed, but it is not yet safe to evaluate JavaScript during resuming. This was
already accounted for with some events like errors and closing, but it holds true for all events. We should
delay firing these events as well.

  • Modules/websockets/WebSocket.cpp:

(WebCore::WebSocket::didConnect):
(WebCore::WebSocket::didReceiveMessage):
(WebCore::WebSocket::didReceiveBinaryData):

LayoutTests:

  • http/tests/websocket/tests/hybi/inspector/echo-delayed_wsh.py: Added.

(web_socket_do_extra_handshake):
(web_socket_transfer_data):

  • Similar to echo_wsh.py, respond with the provided message when received, but delay the response by 100ms.
  • http/tests/websocket/tests/hybi/inspector/send-and-recieve-debugger-expected.txt: Added.
  • http/tests/websocket/tests/hybi/inspector/send-and-recieve-debugger.html: Added.
10:12 AM Changeset in webkit [281322] by clopez@igalia.com
  • 3 edits in trunk/Tools

[ews-build.webkit.org] Add unit test with the expected build steps for each queue
https://bugs.webkit.org/show_bug.cgi?id=229319

Reviewed by Aakash Jain.

Add a unit test listing all the expected build steps for each queue
like the one added in r281286 for build.webkit.org
Also remove the previous unit tests to not duplicate test functionality.
And replace doble-quotes with single-ones on the test for build.webkit.org

  • CISupport/build-webkit-org/factories_unittest.py:

(TestExpectedBuildSteps):
(TestExpectedBuildSteps.test_all_expected_steps):
(TestExpectedBuildSteps.test_unnecessary_expected_steps):

  • CISupport/ews-build/factories_unittest.py:

(TestExpectedBuildSteps):
(TestExpectedBuildSteps.setUp):
(TestExpectedBuildSteps.test_all_expected_steps):
(TestExpectedBuildSteps.test_unnecessary_expected_steps):

10:01 AM Changeset in webkit [281321] by mark.lam@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

Add some offlineasm enhancements.
https://bugs.webkit.org/show_bug.cgi?id=229332
rdar://82163923

Reviewed by Keith Miller.

  1. Enhance "include" offlineasm Instruction to always attempt to include an asm file from <build-products>/usr/local/include/WebKitAdditions/ first. If the specified file is not available there, then it will attempt to include the file from the same directory as the current source file (which in practice, means Source/JavaScriptCore/llint/).
  1. Enhance "include" offlineasm Instruction to allow an optional file to be included if it exists. For example, the following offlineasm code:

include? LowLevelInterpreterAdditions

... will attempt to include a file LowLevelInterpreterAdditions.asm. If the
file does not exist, this will be a no-op. Note: the "?" after the "include"
means the include is optional.

  1. Enhanced "emit" offlineasm Instruction to be able to take more than one operand.

"emit" used to just copy the string operand that follows into the generated
LLIntAssembly.h. Now, "emit" can take multiple comma separated operands, and
will concatenate all the operands.

Additionally, "emit" can now take a LocalLabelReference as an operand. For
example, this offline asm code:

emit "b ", .done
...

.done:

... will generate this inline asm code in LLIntAssembly.h:

"b " LOCAL_LABEL_STRING(_offlineasm_someLabel_done) "\n"

This makes it easier to emit branches to local labels.

  1. Also fixed LLInt code alignment for ARM_THUMB2 and ARM64.

Previously, it was aligned using ".align 4" which means aligned on a 4
instruction boundary. Note: the interpretation of .align varies for different
target CPU architectures.

Now, we do the alignment using ".balign 4" which means align on a 4 byte
boundary. This is the intended alignment because ARM64 instruction size is
4 bytes, and ARM_THUMB2 instruction size is either 2 bytes or 4 bytes.
Using .align before was potentially wasting some code space.

  • llint/LowLevelInterpreter.asm:
  • llint/LowLevelInterpreter.cpp:
  • offlineasm/ast.rb:
  • offlineasm/parser.rb:
9:22 AM Changeset in webkit [281320] by Ayumi Kojima
  • 2 edits in trunk/LayoutTests

[ iOS Debug ] animations/unprefixed-events.html is flaky failing.
https://bugs.webkit.org/show_bug.cgi?id=229338

Unreviewed test gardening.

  • platform/ios-wk2/TestExpectations:
9:21 AM Changeset in webkit [281319] by mark.lam@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Reduce StructureID entropy bits to 5 to make room for more StructureIDs.
https://bugs.webkit.org/show_bug.cgi?id=229326
rdar://60141624

Reviewed by Yusuke Suzuki.

  • runtime/StructureIDTable.h:
8:56 AM Changeset in webkit [281318] by mark.lam@apple.com
  • 3 edits in trunk/Source/WTF

Make ptrTagName and tagForPtr WTF_EXPORT_PRIVATE.
https://bugs.webkit.org/show_bug.cgi?id=229328

Reviewed by Yusuke Suzuki.

If ptrTagName and tagForPtr are defined, make them WTF_EXPORT_PRIVATE instead of
static functions. This allows us to call them from the debugger during
interactive debugging sessions.

  • wtf/PtrTag.cpp:

(WTF::tagForPtr):
(WTF::ptrTagName):

  • wtf/PtrTag.h:
8:53 AM Changeset in webkit [281317] by mark.lam@apple.com
  • 2 edits in trunk/Source/WTF

Remove assertIsTagged and assertIsNullOrTagged.
https://bugs.webkit.org/show_bug.cgi?id=229329
rdar://82162851

Reviewed by Yusuke Suzuki.

These assertion utility functions rely on tagged pointers always having non-zero
PAC bits. This is an incorrect assumption. A tagged pointer can have PAC bits
that are completely zero. Hence, these assert functions cannot be made to work
reliably. We should remove them to prevent them from being used, and potentially
resulting in flaky assertion failures that will be hard to debug later.

Note: assertIsNotTagged is fine to keep. It asserts that PAC bits of a pointer
are all 0. As a result, this assertion can have false positives where it may think
a tagged pointer is an untagged pointer. However, this is rare because it is not
common to have 0 PAC bits in tagged pointers. False positives on this assertion
won't result in flaky test failures that will waste our time later. Hence,
keeping the assertion will do more good (it will tend to help us find bugs) than
bad (it will rarely let false positives thru). As a result, I'm opting to not
remove it.

  • wtf/PtrTag.h:

(WTF::assertIsTagged): Deleted.
(WTF::assertIsNullOrTagged): Deleted.

8:30 AM Changeset in webkit [281316] by Alan Coon
  • 1 copy in tags/Safari-612.1.27.3.5

Tag Safari-612.1.27.3.5.

8:27 AM Changeset in webkit [281315] by Alan Coon
  • 4 edits in branches/safari-612.1.27.3-branch/Source/JavaScriptCore

Cherry-pick r281178. rdar://problem/82083485

Add an option for canonicalizePrePostIncrements
https://bugs.webkit.org/show_bug.cgi?id=229211
<rdar://problem/82050126>

Reviewed by Mark Lam.

The current phase has bugs. Let's disable it for now until the bugs
are fixed. See discussion about the bugs I spotted in:
https://bugs.webkit.org/show_bug.cgi?id=228538

  • b3/B3Generate.cpp: (JSC::B3::generateToAir):
  • b3/testb3_3.cpp: (addShrTests):
  • runtime/OptionsList.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@281178 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8:24 AM Changeset in webkit [281314] by commit-queue@webkit.org
  • 6 edits in trunk

Unreviewed, reverting r281307.
https://bugs.webkit.org/show_bug.cgi?id=229336

broke layout tests

Reverted changeset:

"[IFC][Integration] Enable non-auto line-break values"
https://bugs.webkit.org/show_bug.cgi?id=228842
https://commits.webkit.org/r281307

8:10 AM Changeset in webkit [281313] by Alan Coon
  • 8 edits in branches/safari-612.1.27.3-branch/Source

Versioning.

WebKit-7612.1.27.3.5

6:29 AM Changeset in webkit [281312] by Alan Bujtas
  • 4 edits in trunk/Source/WebCore

[IFC] Undo incorrect InlineTextBox -> LegacyInlineTextBox renaming
https://bugs.webkit.org/show_bug.cgi?id=229081

Reviewed by Antti Koivisto.

  • layout/formattingContexts/inline/text/TextUtil.h:
  • layout/layouttree/LayoutBox.h:

(WebCore::Layout::Box::isInlineTextBox const):

  • layout/layouttree/LayoutInlineTextBox.cpp:

(WebCore::Layout::InlineTextBox::InlineTextBox):

6:21 AM Changeset in webkit [281311] by Antti Koivisto
  • 7 edits
    2 deletes in trunk

[LFC][Integration] Enable full underline support
https://bugs.webkit.org/show_bug.cgi?id=229322

Reviewed by Alan Bujtas.

Source/WebCore:

We can now paint all underlines.

  • layout/integration/LayoutIntegrationCoverage.cpp:

(WebCore::LayoutIntegration::printReason):
(WebCore::LayoutIntegration::canUseForStyle):

  • layout/integration/LayoutIntegrationCoverage.h:
  • layout/integration/LayoutIntegrationInlineContent.cpp:

(WebCore::LayoutIntegration::InlineContent::iteratorForRun const):
(WebCore::LayoutIntegration::InlineContent::iteratorForTextRun const):

  • layout/integration/LayoutIntegrationInlineContent.h:
  • layout/integration/LayoutIntegrationLineLayout.cpp:

(WebCore::LayoutIntegration::LineLayout::paint):

LayoutTests:

Remove a test that just checks we are forcing legacy for underline-position:under.

  • fast/text/simple-line-layout-with-text-underline-position-expected.html: Removed.
  • fast/text/simple-line-layout-with-text-underline-position.html: Removed.
6:18 AM Changeset in webkit [281310] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

[IFC][Integration] Enable custom hyphen strings
https://bugs.webkit.org/show_bug.cgi?id=229049

Reviewed by Antti Koivisto.

This was most likely the case of non-primary font handling in SLL. It just works in IFC.

  • layout/integration/LayoutIntegrationCoverage.cpp:

(WebCore::LayoutIntegration::canUseForStyle):

5:56 AM Changeset in webkit [281309] by ntim@apple.com
  • 8 edits in trunk

Initial implementation of inert subtrees
https://bugs.webkit.org/show_bug.cgi?id=110952

Reviewed by Antti Koivisto.

Currently covers:

  • Blocking focus & selecting
  • aria-hidden like behaviour

Hit testing/event retargeting will be covered by https://bugs.webkit.org/show_bug.cgi?id=229330 pending a spec issue

Relevant WPT enabled. More testing coverage will be provided with the inert attribute.

LayoutTests/imported/w3c:

  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/inert-node-is-unfocusable-expected.txt:
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/remove-dialog-should-unblock-document-expected.txt:

Source/WebCore:

  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::isAXHidden const):

  • dom/Element.cpp:

(WebCore::Element::isFocusable const):

  • dom/Node.cpp:

(WebCore::Node::canStartSelection const):
(WebCore::Node::isInert const):

  • dom/Node.h:
5:49 AM Changeset in webkit [281308] by Alan Bujtas
  • 5 edits in trunk/Source/WebCore

[LFC][Integration] line-clamp is an unsupported CSS property
https://bugs.webkit.org/show_bug.cgi?id=228794

Reviewed by Simon Fraser.

Let's bail out on -webkit-line-clamp instead of the presence of a deprecated flex box. While line clamping requires legacy line layout, regular flex item content is fine with either line layout codepaths.

  • layout/integration/LayoutIntegrationCoverage.cpp:

(WebCore::LayoutIntegration::printReason):
(WebCore::LayoutIntegration::canUseForLineLayoutWithReason):

  • layout/integration/LayoutIntegrationCoverage.h:
5:44 AM Changeset in webkit [281307] by Alan Bujtas
  • 6 edits in trunk

[IFC][Integration] Enable non-auto line-break values
https://bugs.webkit.org/show_bug.cgi?id=228842

Reviewed by Antti Koivisto.

Source/WebCore:

IFC already supports line-break.

  • layout/integration/LayoutIntegrationCoverage.cpp:

(WebCore::LayoutIntegration::canUseForStyle):

LayoutTests:

  • TestExpectations: progressions
  • platform/mac/fast/text/trailing-white-space-expected.txt: collapsed trailing whitespace cleanup.
5:34 AM Changeset in webkit [281306] by Alan Bujtas
  • 4 edits in trunk/Source/WebCore

[LFC][IFC] Add support for -webkit-nbsp-mode: space
https://bugs.webkit.org/show_bug.cgi?id=228805

Reviewed by Antti Koivisto.

Treat non-breaking space as regular space.
TextUtil::findNextBreakablePosition already covers the "find the soft wrapping opportunity" part.

e.g.

<div style="-webkit-nbsp-mode: space">1&nbsp2</div>

produces 3 InlineTextItem objects as follows

[1][whitespace][2]

as opposed to just 1 [1non-breakable-space2]

  • layout/formattingContexts/inline/InlineTextItem.cpp:

(WebCore::Layout::moveToNextNonWhitespacePosition):
(WebCore::Layout::InlineTextItem::createAndAppendTextItems):

  • layout/integration/LayoutIntegrationCoverage.cpp:

(WebCore::LayoutIntegration::canUseForStyle):

3:16 AM Changeset in webkit [281305] by Philippe Normand
  • 9 edits in trunk

REGRESSION(r280732) [GStreamer] fast/mediastream/getDisplayMedia-max-constraints1.html and other are failing
https://bugs.webkit.org/show_bug.cgi?id=228941

Reviewed by Youenn Fablet.

Source/WebCore:

The GStreamer mock display capture source is now wrapped in another RealtimeMediaSource in
order to avoid a spurious setSize() call from the RealtimeVideoSource constructor that would
then prevent the mock source to ensure its size matches the intrinsic size.

For the non-mock display capture source, we now ensure the size matches the intrinsic size
whenever the capture settings have changed.

  • platform/mediastream/RealtimeVideoCaptureSource.h:
  • platform/mediastream/gstreamer/GStreamerVideoCaptureSource.cpp:

(WebCore::GStreamerVideoCaptureSource::settingsDidChange):

  • platform/mediastream/gstreamer/MockRealtimeVideoSourceGStreamer.cpp:

(WebCore::MockDisplayCaptureSourceGStreamer::create):
(WebCore::MockDisplayCaptureSourceGStreamer::capabilities):
(WebCore::MockDisplayCaptureSourceGStreamer::settings):

  • platform/mediastream/gstreamer/MockRealtimeVideoSourceGStreamer.h:
  • platform/mock/MockRealtimeMediaSourceCenter.cpp:
  • platform/mock/MockRealtimeVideoSource.cpp:

(WebCore::MockRealtimeVideoSource::generateFrame):

LayoutTests:

  • platform/glib/TestExpectations: Unflag tests now passing.
2:22 AM Changeset in webkit [281304] by Adrian Perez de Castro
  • 4 edits
    2 adds in releases/WebKitGTK/webkit-2.32

Merge r275189 - REGRESSION(r274992): Nullptr crash in FontCache::retrieveOrAddCachedFonts
https://bugs.webkit.org/show_bug.cgi?id=223858
<rdar://75883697>

Reviewed by Darin Adler and Ryosuke Niwa.

Source/WebCore:

Stop using a hash as key in the FontCascadeCache. Instead, use HashTraits and use
FontCascadeCacheKey as key.

Test: fonts/font-cache-crash.html

  • platform/graphics/FontCache.cpp:

(WebCore::FontCache::retrieveOrAddCachedFonts):
(WTF::FontCascadeCacheKeyHash::hash):

  • platform/graphics/FontCache.h:

(WebCore::FontCascadeCacheKey::operator== const):
(WTF::FontCascadeCacheKeyHash::equal):
(WTF::HashTraits<WebCore::FontCascadeCacheKey>::emptyValue):
(WTF::HashTraits<WebCore::FontCascadeCacheKey>::constructDeletedValue):
(WTF::HashTraits<WebCore::FontCascadeCacheKey>::isDeletedValue):

LayoutTests:

Add layout test coverage.

  • fonts/font-cache-crash-expected.txt: Added.
  • fonts/font-cache-crash.html: Added.
2:19 AM Changeset in webkit [281303] by Adrian Perez de Castro
  • 2 edits in releases/WebKitGTK/webkit-2.32/Source/WebCore

Merge r275168 - Make a Ref to HTMLPlugInElement when resolving callback
https://bugs.webkit.org/show_bug.cgi?id=223846

Patch by Ian Gilbert <iang@apple.com> on 2021-03-29
Reviewed by Ryosuke Niwa.

Take a Ref to the HTMLPlugInElement to keep it alive while invoking HTMLPlugInElement::swapRendererTimerFired()

  • html/HTMLPlugInElement.cpp:

(WebCore::HTMLPlugInElement::swapRendererTimerFired):

2:18 AM Changeset in webkit [281302] by Adrian Perez de Castro
  • 2 edits in releases/WebKitGTK/webkit-2.32/Source/WebCore

Merge r275143 - Don't add Frame as an opaque root of DOMWindow
https://bugs.webkit.org/show_bug.cgi?id=223838

Reviewed by Simon Fraser.

Don't add Frame as an opaque root of DOMWindow since we don't use Frame
as an opaque root of any JS wrappers since r248276.

  • bindings/js/JSDOMWindowCustom.cpp:

(WebCore::JSDOMWindow::visitAdditionalChildren):

2:16 AM WebKitGTK/2.32.x edited by Adrian Perez de Castro
(diff)
2:16 AM Changeset in webkit [281301] by Adrian Perez de Castro
  • 2 edits in releases/WebKitGTK/webkit-2.32/Source/WebCore

Merge r275130 - Dirty layout for floating children of inline on full layout
https://bugs.webkit.org/show_bug.cgi?id=223660

Patch by Ian Gilbert <iang@apple.com> on 2021-03-26
Reviewed by Zalan Bujtas.

Avoid consuming an object on an empty line when that object is floating or out-of-flow.

  • rendering/line/BreakingContext.h:

(WebCore::BreakingContext::handleEndOfLine):

2:13 AM WebKitGTK/2.32.x edited by Adrian Perez de Castro
(diff)
1:05 AM Changeset in webkit [281300] by mmaxfield@apple.com
  • 3 edits in trunk/Source/WebCore

GlyphBuffer can become inconsistent with its backing string
https://bugs.webkit.org/show_bug.cgi?id=229064

Reviewed by Alan Bujtas.

This is split out from https://bugs.webkit.org/show_bug.cgi?id=215643.

Before shaping, the glyphs in the GlyphBuffer need to match one-to-one with code units in the string.
We iterate over the string, adding glyphs into the GlyphBuffer, but there was one early "continue"
in the loop that skips the add() call.

Because this patch adds ASSERT()s, this is actually covered by existing tests.

  • platform/graphics/WidthIterator.cpp:

(WebCore::WidthIterator::commitCurrentFontRange):
(WebCore::addToGlyphBuffer):
(WebCore::WidthIterator::advanceInternal):

  • platform/graphics/WidthIterator.h:
1:03 AM Changeset in webkit [281299] by ntim@apple.com
  • 3 edits
    2 adds in trunk

Ensure ancestors with opacity don't affect top layer elements
https://bugs.webkit.org/show_bug.cgi?id=229317

Reviewed by Antti Koivisto.

Test: imported/w3c/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/top-layer-parent-opacity.html

Associated WPT PR: https://github.com/web-platform-tests/wpt/pull/30104

LayoutTests/imported/w3c:

  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/top-layer-parent-opacity-expected.html: Added.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/top-layer-parent-opacity.html: Added.

Source/WebCore:

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::compositingOpacity const):

12:55 AM Changeset in webkit [281298] by youenn@apple.com
  • 15 edits in trunk

Add support for RTCPeerConnection.canTrickleIceCandidates
https://bugs.webkit.org/show_bug.cgi?id=229287

Reviewed by Eric Carlson.

LayoutTests/imported/w3c:

  • web-platform-tests/webrtc/RTCPeerConnection-canTrickleIceCandidates-expected.txt:
  • web-platform-tests/webrtc/RTCPeerConnection-constructor-expected.txt:
  • web-platform-tests/webrtc/idlharness.https.window-expected.txt:

Source/WebCore:

Add support for https://w3c.github.io/webrtc-pc/#dom-rtcpeerconnection-cantrickleicecandidates.
Return null in case connection is closed or setRemoteDescription was never called successfully.
Add binding code to get the value from webrtc backend.
Covered by rebased tests.

  • Modules/mediastream/PeerConnectionBackend.h:
  • Modules/mediastream/RTCPeerConnection.cpp:

(WebCore::RTCPeerConnection::canTrickleIceCandidates const):

  • Modules/mediastream/RTCPeerConnection.h:
  • Modules/mediastream/RTCPeerConnection.idl:
  • Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp:

(WebCore::LibWebRTCMediaEndpoint::canTrickleIceCandidates const):

  • Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.h:
  • Modules/mediastream/libwebrtc/LibWebRTCPeerConnectionBackend.cpp:

(WebCore::LibWebRTCPeerConnectionBackend::canTrickleIceCandidates const):

  • Modules/mediastream/libwebrtc/LibWebRTCPeerConnectionBackend.h:

LayoutTests:

  • webrtc/rtcpeerconnection-error-messages-expected.txt:
12:50 AM Changeset in webkit [281297] by youenn@apple.com
  • 5 edits in trunk/Tools

Remove all WTR output before Content-Type:text/plain for WebRTC tests in case of known excessive logging
https://bugs.webkit.org/show_bug.cgi?id=229188

Reviewed by Jonathan Bedard.

Some logging beneath WebKit is making WebRTC tests flaky.
While we work on the cause of this bug, we can still beef-up our test output clean up steps to handle this logging.
Instead of stripping lines based on a known pattern, which does not always work as per current results,
we can simply remove all logging before the 'Content-Type:text/plain\n' string that WebKitTestRunner is adding before
printing the text generated by the test itself.
We update webkitpy scripts accordingly and add this new clean-up for:

  • tests that have webrtc in their name
  • tests whose output contain some known logging strings like 'LRP' or 'Negotiation String'.

This should hopefully be more robust while not hiding real regressions.

  • Scripts/webkitpy/layout_tests/controllers/single_test_runner.py:

(SingleTestRunner):

  • Scripts/webkitpy/port/base.py:

(Port.logging_detectors_to_strip_text_start):

  • Scripts/webkitpy/port/driver.py:

(DriverOutput.strip_text_start_if_needed):

  • Scripts/webkitpy/port/mac.py:

(MacPort.logging_patterns_to_strip):
(MacPort.logging_detectors_to_strip_text_start):

Aug 19, 2021:

11:20 PM Changeset in webkit [281296] by ntim@apple.com
  • 8 edits in trunk

Implement top layer rendering bits
https://bugs.webkit.org/show_bug.cgi?id=84796

Reviewed by Simon Fraser.

Enabled relevant WPTs. Some WPTs need extra layout work.

Source/WebCore:

  • dom/Document.cpp:

(WebCore::Document::addToTopLayer):
(WebCore::Document::removeFromTopLayer):

  • dom/Element.cpp:

(WebCore::Element::isInTopLayerWillChange):
(WebCore::Element::isInTopLayerDidChange):

  • dom/Element.h:
  • rendering/RenderLayer.cpp:

(WebCore::canCreateStackingContext):
(WebCore::RenderLayer::stackingContext const):
(WebCore::RenderLayer::rebuildZOrderLists):
(WebCore::RenderLayer::collectLayers):
(WebCore::RenderLayer::enclosingAncestorForPosition const):
(WebCore::RenderLayer::establishesTopLayer const):
(WebCore::RenderLayer::establishesTopLayerWillChange):
(WebCore::RenderLayer::establishesTopLayerDidChange):

  • rendering/RenderLayer.h:

LayoutTests:

10:15 PM Changeset in webkit [281295] by Antti Koivisto
  • 18 edits in trunk

[:has() pseudo-class] Basic support
https://bugs.webkit.org/show_bug.cgi?id=228894

Reviewed by Simon Fraser.

LayoutTests/imported/w3c:

  • web-platform-tests/css/selectors/has-basic-expected.txt:
  • web-platform-tests/css/selectors/has-relative-argument-expected.txt:
  • web-platform-tests/css/selectors/parsing/parse-has-expected.txt:
  • web-platform-tests/dom/nodes/Element-closest-expected.txt:

Source/WebCore:

This patch adds basic support for :has() pseudo-class, https://drafts.csswg.org/selectors/#has-pseudo.
The initial implementation is very inefficient. There is no support for invalidation yet.

The feature is disabled by default.

  • css/CSSSelector.cpp:

(WebCore::CSSSelector::selectorText const):

Serialization.

  • css/CSSSelector.h:
  • css/SelectorChecker.cpp:

(WebCore::SelectorChecker::checkOne const):

Selector matching using nested SelectorChecker.

  • css/SelectorPseudoClassAndCompatibilityElementMap.in:
  • css/parser/CSSParserContext.cpp:

(WebCore::operator==):
(WebCore::add):

  • css/parser/CSSParserContext.h:
  • css/parser/CSSParserSelector.h:

(WebCore::CSSParserSelector::setPseudoClassType):

  • css/parser/CSSSelectorParser.cpp:

(WebCore::CSSSelectorParser::consumeForgivingSelectorList):

Add a template version of the forgiving parsing function.

(WebCore::CSSSelectorParser::consumeForgivingComplexSelectorList):

Use it for complex selector lists.

(WebCore::CSSSelectorParser::consumeForgivingRelativeSelectorList):

And the new relative selector lists.

(WebCore::CSSSelectorParser::consumeRelativeSelector):

Parse relative selectors like "> foo".

(WebCore::CSSSelectorParser::consumePseudo):
(WebCore::CSSSelectorParser::consumeComplexForgivingSelectorList): Deleted.

  • css/parser/CSSSelectorParser.h:
  • cssjit/SelectorCompiler.cpp:

(WebCore::SelectorCompiler::addPseudoClassType):

No compiler support yet.

Source/WTF:

  • Scripts/Preferences/WebPreferencesExperimental.yaml:

Add off-by-default HasPseudoClassEnabled preference value.

9:53 PM Changeset in webkit [281294] by mmaxfield@apple.com
  • 9 edits in trunk/Source/WebCore

The fast text codepath does not handle run initial advances
https://bugs.webkit.org/show_bug.cgi?id=227979

Reviewed by Alan Bujtas.

This is the next step to delete the complex text codepath from Cocoa ports.

The initial advance contributes to the layout width of text. Its purpose is to move
all the visually successive glyphs to the right. For the leftmost run, WidthIterator
saves this initial advance to the GlyphBuffer, because knowing it is necessary to
compute the paint location of glyphs (inside GlyphBuffer::flatten()). For all other
runs other than the leftmost run, those runs' initial advance is added to the advance
width of whichever glyph ends up being just to the left of the run. In LTR, this is
the last glyph of the last (logical) run, whereas in RTL this is the first glyph of
the next (logical) run.

Because this is just adding infrastructure, it doesn't add any tests yet. This will be
tested when we delete the complex text codepath.

  • platform/graphics/ComplexTextController.h: Because we're going to stop using

ComplexTextController, we should move this (presumably helpful) comment somewhere
where it will be accessible to the Cocoa ports. This would be GlyphBuffer::flatten().

  • platform/graphics/Font.cpp:

(WebCore::Font::applyTransforms const): Return the initial advance.

  • platform/graphics/Font.h: Ditto.
  • platform/graphics/FontCascade.cpp:

(WebCore::FontCascade::widthOfTextRange const):
(WebCore::FontCascade::widthForSimpleText const): Make sure that the initial advance
contributes to layout width.
(WebCore::FontCascade::layoutSimpleText const): The initial advance is actually NOT
supposed to point directly to the first glyph's paint position. See
https://bugs.webkit.org/show_bug.cgi?id=228180.
(WebCore::FontCascade::drawEmphasisMarks const):

  • platform/graphics/GlyphBuffer.h:

(WebCore::GlyphBuffer::flatten):
(WebCore::GlyphBuffer::isFlattened const):

  • platform/graphics/WidthIterator.cpp:

(WebCore::WidthIterator::applyFontTransforms): Return the initial advance.
(WebCore::expandWithInitialAdvance):
(WebCore::WidthIterator::applyInitialAdvance): This implements the logic above, where
the initial advance of non-leftmost runs get added to the visually previous glyph's
advance. For LTR, we can just add it directly to the previously-recorded glyph advance.
However, for RTL, we have to save the initial advance to a variable, which is named
m_leftoverInitialAdvance, and apply it when we encounter the next run. This is because
WidthIterator encounters run in logical order.
(WebCore::WidthIterator::commitCurrentFontRange):
(WebCore::WidthIterator::finalize): For RTL, if the last run has an initial advance,
we need to save it to the GlyphBuffer's initial advance field. We know if the last run
has an initial advance because there will still be data in m_leftoverInitialAdvance
left over.

  • platform/graphics/WidthIterator.h:
  • platform/graphics/coretext/FontCoreText.cpp:

(WebCore::Font::applyTransforms const): Return the initial advance.

9:07 PM Changeset in webkit [281293] by mmaxfield@apple.com
  • 7 edits
    1 move in trunk

[Cocoa] Stop honoring any dot-prefixed font names
https://bugs.webkit.org/show_bug.cgi?id=228177

Reviewed by Sam Weinig.

Source/WebCore:

Dot-prefixed fonts are intentionally unsupported. We should stop supporting them.
If authors want to access the various system fonts, they can use system-ui,
ui-serif, ui-monospace, or ui-rounded.

Test: fast/text/font-lookup-dot-prefix-case-sensitive.html

  • platform/cocoa/VersionChecks.h:
  • platform/graphics/cocoa/FontCacheCoreText.cpp:

(WebCore::isDotPrefixedForbiddenFont):
(WebCore::platformFontLookupWithFamily):

LayoutTests:

  • fast/text/font-lookup-dot-prefix-case-sensitive-expected.html: Renamed from LayoutTests/fast/text/font-lookup-dot-prefix-case-sensitive-expected-mismatch.html.
  • platform/ios/TestExpectations:
  • platform/mac/TestExpectations:
8:53 PM Changeset in webkit [281292] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

[IFC][Integration] The root inlinebox's style is always the IFC's root style
https://bugs.webkit.org/show_bug.cgi?id=228062

Reviewed by Antti Koivisto.

This is in preparation for keeping the inline box structure private to the layout code.

  • layout/integration/LayoutIntegrationInlineContentBuilder.cpp:

(WebCore::LayoutIntegration::InlineContentBuilder::computeLineLevelVisualAdjustmentsForRuns const):

8:21 PM Changeset in webkit [281291] by mmaxfield@apple.com
  • 11 edits
    6 adds
    1 delete in trunk

[Cocoa] Stop treating the system font as a non-variable font
https://bugs.webkit.org/show_bug.cgi?id=228176

Reviewed by Sam Weinig.

Source/WebCore:

Modern versions of macOS and iOS can treat the system font as a variable font,
and be able to apply weights like "342" instead of just "300" or "400".

Tests: fast/text/variable-system-font-2.html

fast/text/variable-system-font.html

  • platform/graphics/cocoa/FontCacheCoreText.cpp:

(WebCore::preparePlatformFont):

Source/WTF:

  • wtf/PlatformUse.h:

LayoutTests:

Update tests.

  • fast/text/resources/Ahem-trak.ttf: Added. This is a font which has a trak table.
  • fast/text/trak-optimizeLegibility-expected-mismatch.html: Added.
  • fast/text/trak-optimizeLegibility-expected.txt: Removed.
  • fast/text/trak-optimizeLegibility.html:
  • fast/text/variable-system-font-2-expected-mismatch.html: Added.
  • fast/text/variable-system-font-2.html: Added.
  • fast/text/variable-system-font-expected-mismatch.html: Added.
  • fast/text/variable-system-font.html: Added.
  • svg/dom/altGlyph-dom-expected.txt:
  • svg/dom/resources/altGlyph-dom.js:
7:46 PM Changeset in webkit [281290] by Simon Fraser
  • 12 edits in trunk/Source/WebKit

Use an ObjectIdentifier<> for text checker requests
https://bugs.webkit.org/show_bug.cgi?id=229302

Reviewed by Wenson Hsieh.

Introduce TextCheckerRequestID and use it to identify text checker requests in a type-safe
way.

  • Scripts/webkit/messages.py:

(types_that_cannot_be_forward_declared):
(headers_for_type):

  • Shared/IdentifierTypes.h:
  • UIProcess/TextCheckerCompletion.cpp:

(WebKit::TextCheckerCompletion::create):
(WebKit::TextCheckerCompletion::TextCheckerCompletion):

  • UIProcess/TextCheckerCompletion.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::requestCheckingOfString):
(WebKit::WebPageProxy::didFinishCheckingText):
(WebKit::WebPageProxy::didCancelCheckingText):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • WebProcess/WebCoreSupport/WebEditorClient.cpp:

(WebKit::WebEditorClient::requestCheckingOfString):
(WebKit::generateTextCheckingRequestID): Deleted.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::addTextCheckingRequest):
(WebKit::WebPage::didFinishCheckingText):
(WebKit::WebPage::didCancelCheckingText):

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in:
7:35 PM Changeset in webkit [281289] by Wenson Hsieh
  • 2 edits in trunk/Source/WebKit

Fix the apple internal build after r281277
https://bugs.webkit.org/show_bug.cgi?id=229100
<rdar://problem/82145920>

Reviewed by Myles C. Maxfield.

Update code guarded by USE(APPLE_INTERNAL_SDK), such that it works with a Vector<SandboxExtension::Handle>.
Preserve the existing behavior of appending handles and ids in reverse order, but leave a FIXME questioning
the need for this.

  • UIProcess/UserMediaProcessManager.cpp:

(WebKit::UserMediaProcessManager::willCreateMediaStream):

6:41 PM Changeset in webkit [281288] by Jean-Yves Avenard
  • 2 edits in trunk/Source/WebCore

Touchbar not showing time scrubbing
https://bugs.webkit.org/show_bug.cgi?id=229269
rdar://81349236

Reviewed by Jer Noble.

AVKit uses canSeek to determine when to show the time scrubber
in the touch bar. This was a synthesized method determined on weither the video
is seekable and has a seekable range set.
Should the value of either boolean change which would impact the final value of
[AVTouchBarPlaybackControlsControlling canSeek] , no observers would be called.
Add the appropriate obj-c methods to explicitly set a dependency between properties
willChange/didChange.
Been unable to reproduce the problem programatically, the issue is highly timing
dependent.
An API test will be added with https://bugs.webkit.org/show_bug.cgi?id=229286.

  • platform/mac/WebPlaybackControlsManager.mm:

(+[WebPlaybackControlsManager keyPathsForValuesAffectingCanSeek]):
(+[WebPlaybackControlsManager keyPathsForValuesAffectingContentDuration]):
(-[WebPlaybackControlsManager setSeekableTimeRanges:]):
(+[WebPlaybackControlsManager keyPathsForValuesAffectingValueCanBeginTouchBarScrubbing]):

6:12 PM Changeset in webkit [281287] by Kocsen Chung
  • 1 copy in tags/Safari-612.1.28.4

Tag Safari-612.1.28.4.

5:38 PM Changeset in webkit [281286] by clopez@igalia.com
  • 1 edit
    1 add
    1 delete in trunk/Tools

[build.webkit.org] Port old unit test with the expected build steps to the new buildbot
https://bugs.webkit.org/show_bug.cgi?id=229311

Reviewed by Aakash Jain.

Port the test that checked every worker and the expected steps to the new buildbot version.
Also delete the file steps_unittest_old.py because the gross of the other tests contained in
this old file are already ported in the current steps_unittests.py

  • CISupport/build-webkit-org/factories_unittest.py: Added.

(TestExpectedBuildSteps):
(TestExpectedBuildSteps.setUp):
(TestExpectedBuildSteps.test_all_expected_results):
(TestExpectedBuildSteps.test_unnecessary_expected_results):

  • CISupport/build-webkit-org/steps_unittest_old.py: Removed.
5:37 PM Changeset in webkit [281285] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

[LFC][IFC] Remove redundant inlineBoxEndSet in InlineFormattingContext::computeGeometryForLineContent
https://bugs.webkit.org/show_bug.cgi?id=228054

Reviewed by Antti Koivisto.

It's not used anymore.

  • layout/formattingContexts/inline/InlineFormattingContext.cpp:

(WebCore::Layout::InlineFormattingContext::computeGeometryForLineContent):

5:12 PM Changeset in webkit [281284] by Chris Dumez
  • 7 edits in trunk

Implement Crypto.randomUUID()
https://bugs.webkit.org/show_bug.cgi?id=229240

Reviewed by Geoff Garen.

LayoutTests/imported/w3c:

Rebaseline WPT tests that are now passing.

  • web-platform-tests/WebCryptoAPI/randomUUID.https.any-expected.txt:
  • web-platform-tests/WebCryptoAPI/randomUUID.https.any.worker-expected.txt:

Source/WebCore:

Implement Crypto.randomUUID():

Chrome already implements this and Firefox seems to be working on it
(https://bugzilla.mozilla.org/show_bug.cgi?id=1705264).

No new tests, rebaselined existing tests.

  • page/Crypto.cpp:

(WebCore::Crypto::randomUUID const):

  • page/Crypto.h:
  • page/Crypto.idl:
4:58 PM Changeset in webkit [281283] by Simon Fraser
  • 3 edits in trunk/Source/WebCore

Remove unused RenderLayerCompositor member variable
https://bugs.webkit.org/show_bug.cgi?id=229257

Reviewed by Alan Bujtas.

m_inPostLayoutUpdate was unused.

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::updateCompositingLayers):

  • rendering/RenderLayerCompositor.h:
4:53 PM Changeset in webkit [281282] by Eric Hutchison
  • 2 edits in trunk/LayoutTests

[iOS] 3 imported/w3c/web-platform-tests/css/css-typed-om/ tests are flaky failure.
<rdar://82147623>.

Unreviewed test gardening.

  • platform/ios/TestExpectations:
4:25 PM Changeset in webkit [281281] by Eric Hutchison
  • 3 edits in trunk/LayoutTests

[Mac, iOS Release] imported/w3c/web-platform-tests/worklets/layout-worklet-csp.https.html is a flaky failure.
<rdar://82146367>.

Unreviewed test gardening.

  • platform/ios/TestExpectations:
  • platform/mac/TestExpectations:
4:21 PM Changeset in webkit [281280] by Alan Bujtas
  • 5 edits in trunk/Source/WebCore

[LFC][IFC] Remove redundant LineBox functions
https://bugs.webkit.org/show_bug.cgi?id=228046

Reviewed by Sam Weinig.

The line box's contentLogicalWidth always matches the root inlinebox's logical width.

  • layout/formattingContexts/inline/InlineFormattingContext.cpp:

(WebCore::Layout::InlineFormattingContext::computeGeometryForLineContent):

  • layout/formattingContexts/inline/InlineFormattingGeometry.cpp:

(WebCore::Layout::LineBoxBuilder::constructAndAlignInlineLevelBoxes):
(WebCore::Layout::LineBoxBuilder::computeLineBoxHeightAndAlignInlineLevelBoxesVertically):

  • layout/formattingContexts/inline/InlineLineBox.cpp:

(WebCore::Layout::LineBox::LineBox):

  • layout/formattingContexts/inline/InlineLineBox.h:

(WebCore::Layout::LineBox::logicalRect const):
(WebCore::Layout::LineBox::logicalWidth const): Deleted.
(WebCore::Layout::LineBox::logicalHeight const): Deleted.
(WebCore::Layout::LineBox::logicalTopLeft const): Deleted.
(WebCore::Layout::LineBox::logicalSize const): Deleted.
(WebCore::Layout::LineBox::contentLogicalWidth const): Deleted.

4:17 PM Changeset in webkit [281279] by Wenson Hsieh
  • 32 edits
    10 deletes in trunk

[iOS] Remove support for the meaningful tap heuristic
https://bugs.webkit.org/show_bug.cgi?id=229298
rdar://82130066

Reviewed by Tim Horton.

Source/WebCore:

See WebKit ChangeLog for more details.

  • page/ChromeClient.h:

(WebCore::ChromeClient::didHandleOrPreventMouseDownOrMouseUpEvent): Deleted.

  • page/EventHandler.cpp:

(WebCore::EventHandler::handleMousePressEvent):
(WebCore::EventHandler::handleMouseDoubleClickEvent):
(WebCore::EventHandler::handleMouseReleaseEvent):

Source/WebKit:

Remove all support for the meaningful tap heuristic, which was used to allow users to toggle tab pill visibility
in earlier versions of the Safari redesign. As of the latest iOS 15 beta, this heuristic is no longer necessary,
so we don't need this SPI support anymore.

  • UIProcess/API/APIUIClient.h:

(API::UIClient::didNotHandleTapAsClick):
(API::UIClient::didTapAtPoint): Deleted.

  • UIProcess/API/Cocoa/WKUIDelegatePrivate.h:
  • UIProcess/API/ios/WKWebViewPrivateForTestingIOS.h:
  • UIProcess/API/ios/WKWebViewTestingIOS.mm:

(-[WKWebView _didTapAtPoint:withResult:]): Deleted.

  • UIProcess/Cocoa/UIDelegate.h:
  • UIProcess/Cocoa/UIDelegate.mm:

(WebKit::UIDelegate::setDelegate):
(WebKit::UIDelegate::UIClient::didTapAtPoint): Deleted.

  • UIProcess/PageClient.h:
  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/ios/PageClientImplIOS.h:
  • UIProcess/ios/PageClientImplIOS.mm:

(WebKit::PageClientImpl::didTapAtPoint): Deleted.

  • UIProcess/ios/WebPageProxyIOS.mm:

(WebKit::WebPageProxy::didTapAtPoint): Deleted.

  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::didHandleOrPreventMouseDownOrMouseUpEvent): Deleted.

  • WebProcess/WebCoreSupport/WebChromeClient.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::isPlayingMediaDidChange):

  • WebProcess/WebPage/WebPage.h:

Drive-by fix: initialize m_appHighlightsVisible using the correct type.

(WebKit::WebPage::platformNeedsLayoutForEditorState const):
(WebKit::WebPage::prepareToRunModalJavaScriptDialog):
(WebKit::WebPage::didHandleOrPreventMouseDownOrMouseUpEvent): Deleted.
(WebKit::WebPage::platformIsPlayingMediaDidChange): Deleted.

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::completeSyntheticClick):
(WebKit::WebPage::attemptSyntheticClick):
(WebKit::WebPage::handleTwoFingerTapAtPoint):
(WebKit::WebPage::commitPotentialTapFailed):
(WebKit::WebPage::clearSelectionAfterTapIfNeeded):
(WebKit::isProbablyMeaningfulClick): Deleted.
(WebKit::WebPage::didHandleOrPreventMouseDownOrMouseUpEvent): Deleted.
(WebKit::WebPage::platformIsPlayingMediaDidChange): Deleted.

Tools:

Remove test runner support for testing the meaningful tap heuristic.

  • WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
  • WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:

(WTR::InjectedBundle::didReceiveMessageToPage):

  • WebKitTestRunner/InjectedBundle/TestRunner.cpp:

(WTR::TestRunner::installDidHandleTapCallback): Deleted.
(WTR::TestRunner::callDidHandleTapCallback): Deleted.

  • WebKitTestRunner/InjectedBundle/TestRunner.h:
  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::didHandleTap): Deleted.

  • WebKitTestRunner/TestController.h:
  • WebKitTestRunner/TestInvocation.cpp:

(WTR::TestInvocation::didHandleTap): Deleted.

  • WebKitTestRunner/TestInvocation.h:
  • WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:

(-[TestRunnerWKWebView _didTapAtPoint:withResult:]): Deleted.

LayoutTests:

Remove all layout tests that exercised the meaningful tap heuristic.

  • fast/events/ios/did-not-handle-meaningful-click-expected.txt: Removed.
  • fast/events/ios/did-not-handle-meaningful-click.html: Removed.
  • fast/events/ios/meaningful-click-when-focusing-body-expected.txt: Removed.
  • fast/events/ios/meaningful-click-when-focusing-body.html: Removed.
  • fast/events/ios/meaningful-click-when-playing-media-expected.txt: Removed.
  • fast/events/ios/meaningful-click-when-playing-media.html: Removed.
  • fast/events/ios/meaningful-click-when-tapping-draggable-content-expected.txt: Removed.
  • fast/events/ios/meaningful-click-when-tapping-draggable-content.html: Removed.
  • fast/events/ios/non-meaningful-click-when-tapping-document-expected.txt: Removed.
  • fast/events/ios/non-meaningful-click-when-tapping-document.html: Removed.
4:13 PM Changeset in webkit [281278] by Aditya Keerthi
  • 5 edits in trunk/Source

Remove has_include guard for _UIDatePickerOverlayPresentation
https://bugs.webkit.org/show_bug.cgi?id=227298
rdar://79970171

Reviewed by Tim Horton.

Source/WebKit:

  • Platform/spi/ios/UIKitSPI.h:
  • UIProcess/ios/forms/WKDateTimeInputControl.mm:

(-[WKDateTimePicker showDateTimePicker]):

Source/WTF:

  • wtf/PlatformHave.h:
4:02 PM Changeset in webkit [281277] by commit-queue@webkit.org
  • 36 edits in trunk/Source/WebKit

Use Vector<SandboxExtension::Handle> instead of SandboxExtension::HandleArray
https://bugs.webkit.org/show_bug.cgi?id=229100

Patch by Alex Christensen <achristensen@webkit.org> on 2021-08-19
Reviewed by Chris Dumez.

No change in behavior. Just more modern code.

  • GPUProcess/GPUProcessCreationParameters.cpp:

(WebKit::GPUProcessCreationParameters::decode):

  • GPUProcess/GPUProcessCreationParameters.h:
  • NetworkProcess/NetworkResourceLoadParameters.cpp:

(WebKit::NetworkResourceLoadParameters::encode const):
(WebKit::NetworkResourceLoadParameters::decode):

  • Platform/IPC/FormDataReference.h:

(IPC::FormDataReference::encode const):
(IPC::FormDataReference::decode):

  • Shared/Cocoa/LoadParametersCocoa.mm:

(WebKit::LoadParameters::platformDecode):

  • Shared/Cocoa/SandboxExtensionCocoa.mm:

(WebKit::createHandlesForResources):
(WebKit::SandboxExtension::createReadOnlyHandlesForFiles):
(WebKit::SandboxExtension::createHandlesForMachLookup):
(WebKit::SandboxExtension::createHandlesForIOKitClassExtensions):
(WebKit::SandboxExtension::consumePermanently):
(WebKit::SandboxExtension::HandleArray::HandleArray): Deleted.
(WebKit::SandboxExtension::HandleArray::~HandleArray): Deleted.
(WebKit::SandboxExtension::HandleArray::allocate): Deleted.
(WebKit::SandboxExtension::HandleArray::append): Deleted.
(WebKit::SandboxExtension::HandleArray::operator[]): Deleted.
(WebKit::SandboxExtension::HandleArray::operator[] const): Deleted.
(WebKit::SandboxExtension::HandleArray::size const): Deleted.
(WebKit::SandboxExtension::HandleArray::encode const): Deleted.
(WebKit::SandboxExtension::HandleArray::decode): Deleted.

  • Shared/Databases/IndexedDB/WebIDBResult.cpp:

(WebKit::WebIDBResult::encode const):
(WebKit::WebIDBResult::decode):

  • Shared/Databases/IndexedDB/WebIDBResult.h:

(WebKit::WebIDBResult::WebIDBResult):
(WebKit::WebIDBResult::handles const):

  • Shared/LoadParameters.h:
  • Shared/SandboxExtension.h:

(WebKit::SandboxExtension::Handle::decode):
(WebKit::SandboxExtension::createReadOnlyHandlesForFiles):
(WebKit::SandboxExtension::consumePermanently):
(WebKit::SandboxExtension::HandleArray::at): Deleted.
(WebKit::SandboxExtension::HandleArray::HandleArray): Deleted.
(WebKit::SandboxExtension::HandleArray::~HandleArray): Deleted.
(WebKit::SandboxExtension::HandleArray::allocate): Deleted.
(WebKit::SandboxExtension::HandleArray::append): Deleted.
(WebKit::SandboxExtension::HandleArray::size const): Deleted.
(WebKit::SandboxExtension::HandleArray::operator[] const): Deleted.
(WebKit::SandboxExtension::HandleArray::operator[]): Deleted.
(WebKit::SandboxExtension::HandleArray::begin): Deleted.
(WebKit::SandboxExtension::HandleArray::end): Deleted.
(WebKit::SandboxExtension::HandleArray::begin const): Deleted.
(WebKit::SandboxExtension::HandleArray::end const): Deleted.
(WebKit::SandboxExtension::HandleArray::encode const): Deleted.
(WebKit::SandboxExtension::HandleArray::decode): Deleted.

  • Shared/WebPageCreationParameters.cpp:

(WebKit::WebPageCreationParameters::decode):

  • Shared/WebPageCreationParameters.h:
  • Shared/WebProcessCreationParameters.cpp:

(WebKit::WebProcessCreationParameters::decode):

  • Shared/WebProcessCreationParameters.h:
  • UIProcess/Cocoa/WebPageProxyCocoa.mm:

(WebKit::WebPageProxy::createSandboxExtensionsIfNeeded):
(WebKit::WebPageProxy::createNetworkExtensionsSandboxExtensions):

  • UIProcess/Cocoa/WebPasteboardProxyCocoa.mm:

(WebKit::WebPasteboardProxy::getPasteboardPathnamesForType):

  • UIProcess/Cocoa/WebProcessProxyCocoa.mm:

(WebKit::WebProcessProxy::unblockAccessibilityServerIfNeeded):

  • UIProcess/Cocoa/WebViewImpl.mm:

(WebKit::WebViewImpl::performDragOperation):

  • UIProcess/UserMediaProcessManager.cpp:

(WebKit::UserMediaProcessManager::willCreateMediaStream):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::performDragOperation):
(WebKit::WebPageProxy::performDragControllerAction):
(WebKit::WebPageProxy::processNextQueuedMouseEvent):
(WebKit::WebPageProxy::createNetworkExtensionsSandboxExtensions):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPasteboardProxy.h:
  • UIProcess/WebPasteboardProxy.messages.in:
  • UIProcess/WebProcessPool.cpp:

(WebKit::WebProcessPool::initializeNewWebProcess):

  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView dropInteraction:performDrop:]):

  • WebProcess/MediaStream/MediaDeviceSandboxExtensions.cpp:

(WebKit::MediaDeviceSandboxExtensions::MediaDeviceSandboxExtensions):
(WebKit::MediaDeviceSandboxExtensions::encode const):
(WebKit::MediaDeviceSandboxExtensions::decode):

  • WebProcess/MediaStream/MediaDeviceSandboxExtensions.h:
  • WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:

(WebKit::WebPlatformStrategies::getPathnamesForType):

  • WebProcess/WebPage/Cocoa/WebPageCocoa.mm:

(WebKit::WebPage::consumeNetworkExtensionSandboxExtensions):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::mouseEvent):
(WebKit::WebPage::didReceivePolicyDecision):
(WebKit::WebPage::performDragControllerAction):
(WebKit::WebPage::extendSandboxForFilesFromOpenPanel):
(WebKit::WebPage::consumeSandboxExtensions):
(WebKit::WebPage::consumeNetworkExtensionSandboxExtensions):

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in:
  • WebProcess/WebProcess.h:
  • WebProcess/WebProcess.messages.in:
  • WebProcess/cocoa/WebProcessCocoa.mm:

(WebKit::WebProcess::unblockPreferenceService):
(WebKit::WebProcess::unblockServicesRequiredByAccessibility):

3:48 PM Changeset in webkit [281276] by Simon Fraser
  • 14 edits
    1 add in trunk/Source/WebKit

Replace the uint64_t used to identify taps with an ObjectIdentifier<> type
https://bugs.webkit.org/show_bug.cgi?id=229278

Reviewed by Wenson Hsieh.

Interaction code used "uint64_t requestID" to identify taps, but there are other
things that used "uint64_t requestID", which may result in bugs.

Fix by using a strongly typed ObjectIdentifier<TapIdentifierType> to identify taps.
This is defined in IdentifierTypes.h since I expect to add more of them.

  • Scripts/webkit/messages.py:

(types_that_cannot_be_forward_declared):
(headers_for_type):

  • Shared/IdentifierTypes.h: Added.
  • UIProcess/PageClient.h:
  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/ios/PageClientImplIOS.h:
  • UIProcess/ios/PageClientImplIOS.mm:

(WebKit::PageClientImpl::disableDoubleTapGesturesDuringTapIfNecessary):
(WebKit::PageClientImpl::handleSmartMagnificationInformationForPotentialTap):
(WebKit::PageClientImpl::didGetTapHighlightGeometries):

  • UIProcess/ios/WKContentViewInteraction.h:
  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView _didGetTapHighlightForRequest:color:quads:topLeftRadius:topRightRadius:bottomLeftRadius:bottomRightRadius:nodeHasBuiltInClickHandling:]):
(-[WKContentView _disableDoubleTapGesturesDuringTapIfNecessary:]):
(-[WKContentView _handleSmartMagnificationInformationForPotentialTap:renderRect:fitEntireRect:viewportMinimumScale:viewportMaximumScale:nodeIsRootLevel:]):
(-[WKContentView nextTapIdentifier]):
(-[WKContentView _highlightLongPressRecognized:]):
(-[WKContentView _twoFingerSingleTapGestureRecognized:]):
(-[WKContentView _singleTapIdentified:]):

  • UIProcess/ios/WebPageProxyIOS.mm:

(WebKit::WebPageProxy::handleTwoFingerTapAtPoint):
(WebKit::WebPageProxy::potentialTapAtPosition):
(WebKit::WebPageProxy::tapHighlightAtPosition):
(WebKit::WebPageProxy::didGetTapHighlightGeometries):
(WebKit::WebPageProxy::disableDoubleTapGesturesDuringTapIfNecessary):
(WebKit::WebPageProxy::handleSmartMagnificationInformationForPotentialTap):

  • WebKit.xcodeproj/project.pbxproj:
  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in:
  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::sendTapHighlightForNodeIfNecessary):
(WebKit::WebPage::handleTwoFingerTapAtPoint):
(WebKit::WebPage::potentialTapAtPosition):
(WebKit::WebPage::tapHighlightAtPosition):

3:32 PM Changeset in webkit [281275] by Megan Gardner
  • 2 edits in trunk/Tools

Turn on TestWebKitAPI.WKAttachmentTests.CopyAndPasteBetweenWebViews as it is now passing again.
https://bugs.webkit.org/show_bug.cgi?id=204969

Reviewed by Tim Horton.

  • TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:

(TestWebKitAPI::TEST):

3:28 PM Changeset in webkit [281274] by Andres Gonzalez
  • 15 edits in trunk

Rename AccessibilityUIElement::setSelectedVisibleTextRange to setSelectedTextMarkerRange for naming consistency and maintainability.
https://bugs.webkit.org/show_bug.cgi?id=229290
<rdar://problem/82128453>

Reviewed by Chris Fleizach.

Tools:

Renamed this method for consistency and to reflect what it is actually
doing. The goal is to avoid confusion with methods for VisiblePosition,
VisibleSelection and so forth, which are Core objects not exposed to AX
clients.

  • DumpRenderTree/AccessibilityUIElement.cpp:

(setSelectedTextMarkerRangeCallback):
(AccessibilityUIElement::setSelectedTextMarkerRange):
(AccessibilityUIElement::getJSClass):
(setSelectedVisibleTextRangeCallback): Deleted.
(AccessibilityUIElement::setSelectedVisibleTextRange): Deleted.

  • DumpRenderTree/AccessibilityUIElement.h:
  • DumpRenderTree/ios/AccessibilityUIElementIOS.mm:

(AccessibilityUIElement::setSelectedTextMarkerRange):
(AccessibilityUIElement::setSelectedVisibleTextRange): Deleted.

  • DumpRenderTree/mac/AccessibilityUIElementMac.mm:

(AccessibilityUIElement::setSelectedTextMarkerRange):
(AccessibilityUIElement::setSelectedVisibleTextRange): Deleted.

  • WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
  • WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
  • WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:

(WTR::AccessibilityUIElement::setSelectedTextMarkerRange):
(WTR::AccessibilityUIElement::setSelectedVisibleTextRange): Deleted.

  • WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:

(WTR::AccessibilityUIElement::setSelectedTextMarkerRange):
(WTR::AccessibilityUIElement::setSelectedVisibleTextRange): Deleted.

  • WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:

(WTR::AccessibilityUIElement::setSelectedTextMarkerRange):
(WTR::AccessibilityUIElement::setSelectedVisibleTextRange): Deleted.

  • WebKitTestRunner/InjectedBundle/win/AccessibilityUIElementWin.cpp:

(WTR::AccessibilityUIElement::setSelectedTextMarkerRange):
(WTR::AccessibilityUIElement::setSelectedVisibleTextRange): Deleted.

LayoutTests:

Updated all test files to use new name.

  • accessibility/mac/selected-visible-position-range.html:
  • accessibility/mac/selection-sync.html:
  • accessibility/mac/wk1-set-selected-text-marker-range-input-element.html:
3:25 PM Changeset in webkit [281273] by Megan Gardner
  • 5 edits in trunk/Source/WebKitLegacy

Remove old unused code and out of date comments.
https://bugs.webkit.org/show_bug.cgi?id=229210

Reviewed by Anders Carlsson.

Source/WebKitLegacy/ios:

  • WebKit.iOS.exp:

Source/WebKitLegacy/mac:

  • WebView/WebView.mm:
  • WebView/WebViewPrivate.h:
3:23 PM Changeset in webkit [281272] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

[Line layout] "zero width space" (U+200B) is a breaking space
https://bugs.webkit.org/show_bug.cgi?id=227858

Reviewed by Antti Koivisto.

This is a workaround for handling mismatching prior-context content in break iterators.

  • layout/formattingContexts/inline/InlineLineBuilder.cpp:

(WebCore::Layout::endsWithSoftWrapOpportunity):

2:59 PM Changeset in webkit [281271] by Alan Bujtas
  • 5 edits in trunk/Source/WebCore

[LFC][IFC] Add support for negative horizontal margin (inline box)
https://bugs.webkit.org/show_bug.cgi?id=227837

Reviewed by Antti Koivisto.

When building up the line for line breaking, each inline item is placed adjacent with no gaps
in-between the neighboring entries. They are considered atomic with their margins, padding, borders and content width.
Later when we form the inline runs out of these entries, we offset them by their horizontal margin values.

  • layout/formattingContexts/inline/InlineLine.cpp:

(WebCore::Layout::Line::appendInlineBoxStart):

  • layout/integration/LayoutIntegrationCoverage.cpp:

(WebCore::LayoutIntegration::printReason):
(WebCore::LayoutIntegration::canUseForChild):

  • layout/integration/LayoutIntegrationCoverage.h:
2:25 PM Changeset in webkit [281270] by ddkilzer@apple.com
  • 5 edits in trunk/Source/WTF

[WTF] Fix static analyzer warnings for clang tidy bugprone-move-forwarding-reference checker
<https://webkit.org/b/229114>

Reviewed by Darin Adler.

  • wtf/Deque.h:

(WTF::inlineCapacity>::appendAndBubble):

  • wtf/Scope.h:

(WTF::ScopeExit::ScopeExit):

  • wtf/ScopedLambda.h:

(WTF::scopedLambda):

  • wtf/SharedTask.h:

(WTF::createSharedTask):

  • Replace WTFMove() with std::forward<>().
1:50 PM Changeset in webkit [281269] by Russell Epstein
  • 8 edits in branches/safari-612-branch/Source

Versioning.

WebKit-7612.2.1

1:42 PM Changeset in webkit [281268] by Russell Epstein
  • 44 edits
    8 deletes in branches/safari-612.1.29-branch

Revert "Add support for RTCDtlsTransport"

This reverts commit r281225.

1:42 PM Changeset in webkit [281267] by Russell Epstein
  • 3 edits in branches/safari-612.1.29-branch/Source/WebCore

Revert "RTCPeerConnection::m_transceiverSet does not need to be allocated separately from its RTCPeerConnection"

This reverts commit r281231.

1:42 PM Changeset in webkit [281266] by Russell Epstein
  • 24 edits in branches/safari-612.1.29-branch

Revert "Implement ::backdrop pseudo element"

This reverts commit r281229.

1:42 PM Changeset in webkit [281265] by Russell Epstein
  • 3 edits in branches/safari-612.1.29-branch/Source/WebCore

Revert "Port HTMLDetailsElement to use modern event handling code"

This reverts commit r281230.

1:36 PM Changeset in webkit [281264] by Russell Epstein
  • 1 copy in branches/safari-612.1.29-branch

New branch.

1:29 PM Changeset in webkit [281263] by Russell Epstein
  • 44 edits
    8 deletes in branches/safari-612-branch

Revert "Add support for RTCDtlsTransport"

This reverts commit r281225.

1:29 PM Changeset in webkit [281262] by Russell Epstein
  • 3 edits in branches/safari-612-branch/Source/WebCore

Revert "RTCPeerConnection::m_transceiverSet does not need to be allocated separately from its RTCPeerConnection"

This reverts commit r281231.

1:29 PM Changeset in webkit [281261] by Russell Epstein
  • 24 edits in branches/safari-612-branch

Revert "Implement ::backdrop pseudo element"

This reverts commit r281229.

1:29 PM Changeset in webkit [281260] by Russell Epstein
  • 3 edits in branches/safari-612-branch/Source/WebCore

Revert "Port HTMLDetailsElement to use modern event handling code"

This reverts commit r281230.

1:02 PM Changeset in webkit [281259] by Alan Bujtas
  • 16 edits in trunk

[LFC][IFC] Add support for overflow-wrap: anywhere
https://bugs.webkit.org/show_bug.cgi?id=227695

LayoutTests/imported/w3c:

Reviewed by Antti Koivisto.

  • web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-anywhere-span-002-expected.txt:
  • web-platform-tests/css/css-text/parsing/overflow-wrap-computed-expected.txt:
  • web-platform-tests/css/css-text/parsing/overflow-wrap-valid-expected.txt:
  • web-platform-tests/css/css-text/parsing/word-wrap-computed-expected.txt:
  • web-platform-tests/css/css-text/parsing/word-wrap-valid-expected.txt:

Source/WebCore:

Reviewed by Antti Koivisto.

Adjust the line breaking logic in IFC to support "overflow-wrap: anywhere".
From the line breaking point of view, "anywhere" and "break-word" work the same way
(i.e. an unbreakable content can be broken at an arbitrary position if there are no other, previous break points in the line).

https://drafts.csswg.org/css-text-3/#overflow-wrap-property

  • css/CSSPrimitiveValueMappings.h:

(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator OverflowWrap const):

  • css/parser/CSSParserFastPaths.cpp:

(WebCore::CSSParserFastPaths::isValidKeywordPropertyAndValue):

  • layout/formattingContexts/inline/InlineContentBreaker.cpp:

(WebCore::Layout::InlineContentBreaker::wordBreakBehavior const):

  • rendering/style/RenderStyle.h:

(WebCore::RenderStyle::breakWords const):

  • rendering/style/RenderStyleConstants.cpp:

(WebCore::operator<<):

  • rendering/style/RenderStyleConstants.h:
  • rendering/style/StyleRareInheritedData.h:

LayoutTests:

Reviewed by Antti Koivisto.

12:58 PM Changeset in webkit [281258] by commit-queue@webkit.org
  • 15 edits in trunk/Source

Remove more non-inclusive language from Source
https://bugs.webkit.org/show_bug.cgi?id=229230

Patch by Alex Christensen <achristensen@webkit.org> on 2021-08-19
Reviewed by Myles C. Maxfield.

Source/WebCore:

No change in behavior.

  • WebCore.order:
  • features.json:

Source/WebInspectorUI:

  • UserInterface/External/three.js/three.js:

(return.parseTrackName):
(parseTrackName):

  • UserInterface/Views/ConsoleMessageView.js:

(WI.ConsoleMessageView.prototype._formatWithSubstitutionString.styleFormatter):
(WI.ConsoleMessageView.prototype._formatWithSubstitutionString.isAllowedProperty):
(WI.ConsoleMessageView.prototype._formatWithSubstitutionString.isWhitelistedProperty): Deleted.

  • UserInterface/Views/DOMTreeElement.js:

(WI.DOMTreeElement.prototype.populateDOMNodeContextMenu):

Source/WebKit:

  • mac/WebKit2.order:

Source/WebKitLegacy/mac:

  • WebKit.order:
  • WebView/WebViewPrivate.h:

Source/WTF:

  • icu/unicode/uspoof.h:

This comment change comes from upstream ICU.

  • wtf/URL.h:
12:46 PM Changeset in webkit [281257] by Jonathan Bedard
  • 3 edits in trunk/Tools

[run-webkit-tests] Handle json crash logs (Part 1)
https://bugs.webkit.org/show_bug.cgi?id=229288
<rdar://problem/77074039>

Reviewed by Alexey Proskuryakov.

  • Scripts/webkitpy/common/system/crashlogs.py:

(CrashLogs._parse_darwin_crash_log): Attempt to parse crash logs as json, since Monterey .ips
(CrashLogs._find_newest_log_darwin.is_crash_log):

  • Scripts/webkitpy/common/system/crashlogs_unittest.py:
12:44 PM Changeset in webkit [281256] by Russell Epstein
  • 1 copy in branches/safari-612-branch

New branch.

11:56 AM Changeset in webkit [281255] by Eric Hutchison
  • 2 edits in trunk/LayoutTests

[iOS 15 wk2] storage/indexeddb/dont-wedge-private.html is a flaky failure.
rdar://82134088.

Unreviewed test gardening.

  • platform/ios-wk2/TestExpectations:
11:24 AM Changeset in webkit [281254] by Simon Fraser
  • 11 edits in trunk/Source

Rename Element::clientRect() which does not return a value in web-exposed "client" coordinates
https://bugs.webkit.org/show_bug.cgi?id=229243

Reviewed by Wenson Hsieh.

The result of Element::clientRect() is in the coordinate space of the root view,
not in the space of the Element's Frame, so does not match the other functions on Element
with "client" in the name.

Rename to Element::boundingBoxInRootViewCoordinates() for clarity.

Source/WebCore:

  • dom/Element.cpp:

(WebCore::Element::boundingBoxInRootViewCoordinates const):
(WebCore::Element::clientRect const): Deleted.

  • dom/Element.h:
  • html/MediaElementSession.cpp:

(WebCore::isElementMainContentForPurposesOfAutoplay):
(WebCore::isElementRectMostlyInMainFrame):

  • page/Page.cpp:

(WebCore::Page::editableElementsInRect const):

Source/WebKit:

  • WebProcess/WebCoreSupport/WebValidationMessageClient.cpp:

(WebKit::WebValidationMessageClient::showValidationMessage):
(WebKit::WebValidationMessageClient::updateValidationBubbleStateIfNeeded):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::contextForElement const):

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::isObscuredElement):
(WebKit::WebPage::textInputContextsInRect):

Source/WebKitLegacy/mac:

  • WebCoreSupport/WebValidationMessageClient.mm:

(WebValidationMessageClient::showValidationMessage):
(WebValidationMessageClient::updateValidationBubbleStateIfNeeded):

11:12 AM Changeset in webkit [281253] by Ayumi Kojima
  • 2 edits in trunk/LayoutTests

[ Win EWS ] http/tests/security/no-javascript-refresh-spaces.py is flaky crashing.
https://bugs.webkit.org/show_bug.cgi?id=229300

Unreviewed test gardening.

  • platform/win/TestExpectations:
11:05 AM Changeset in webkit [281252] by ntim@apple.com
  • 4 edits in trunk

Top layer: handle display: contents and non out-of-flow position values
https://bugs.webkit.org/show_bug.cgi?id=229093

Reviewed by Simon Fraser.

From: https://fullscreen.spec.whatwg.org/#new-stacking-layer
If its specified display property is contents, it computes to block.
If its specified position property is not absolute or fixed, it computes to absolute.

Test: imported/w3c/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-display-contents.html

Source/WebCore:

  • style/StyleAdjuster.cpp:

(WebCore::Style::Adjuster::adjust const):
(WebCore::Style::Adjuster::adjustDisplayContentsStyle const):

LayoutTests:

10:45 AM Changeset in webkit [281251] by ntim@apple.com
  • 8 edits
    43 copies
    4 adds
    1 delete in trunk/LayoutTests

Re-import html/semantics/interactive-elements/the-dialog-element WPT - August 19th 2021
https://bugs.webkit.org/show_bug.cgi?id=229297

Unreviewed.

Also removed LayoutTests/imported/blink/dialog since the tests are now in the WPT repo.

LayoutTests/imported/w3c:

  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/backdrop-descendant-selector-expected.html: Renamed from LayoutTests/imported/blink/dialog/backdrop-descendant-selector-expected.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/backdrop-descendant-selector.html: Renamed from LayoutTests/imported/blink/dialog/backdrop-descendant-selector.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/backdrop-does-not-inherit-expected.html: Renamed from LayoutTests/imported/blink/dialog/backdrop-does-not-inherit-expected.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/backdrop-does-not-inherit.html: Renamed from LayoutTests/imported/blink/dialog/backdrop-does-not-inherit.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/backdrop-dynamic-display-none-expected.html: Added.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/backdrop-dynamic-display-none.html: Added.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/backdrop-dynamic-style-change-expected.html: Renamed from LayoutTests/imported/blink/dialog/backdrop-dynamic-style-change-expected.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/backdrop-dynamic-style-change.html: Renamed from LayoutTests/imported/blink/dialog/backdrop-dynamic-style-change.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/backdrop-in-flow-expected.html: Renamed from LayoutTests/imported/blink/dialog/backdrop-in-flow-expected.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/backdrop-in-flow.html: Renamed from LayoutTests/imported/blink/dialog/backdrop-in-flow.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/backdrop-stacking-order-expected.html: Renamed from LayoutTests/imported/blink/dialog/backdrop-stacking-order-expected.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/backdrop-stacking-order.html: Renamed from LayoutTests/imported/blink/dialog/backdrop-stacking-order.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/centering.html:
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/dialog-cancel-with-input.html:
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/dialogs-with-no-backdrop-expected.html: Renamed from LayoutTests/imported/blink/dialog/dialogs-with-no-backdrop-expected.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/dialogs-with-no-backdrop.html: Renamed from LayoutTests/imported/blink/dialog/dialogs-with-no-backdrop.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/dont-share-style-to-top-layer-expected.html: Renamed from LayoutTests/imported/blink/dialog/dont-share-style-to-top-layer-expected.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/dont-share-style-to-top-layer.html: Renamed from LayoutTests/imported/blink/dialog/dont-share-style-to-top-layer.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/element-removed-from-top-layer-has-original-position-expected.html: Renamed from LayoutTests/imported/blink/dialog/element-removed-from-top-layer-has-original-position-expected.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/element-removed-from-top-layer-has-original-position.html: Renamed from LayoutTests/imported/blink/dialog/element-removed-from-top-layer-has-original-position.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/inert-node-is-not-highlighted-expected.html: Renamed from LayoutTests/imported/blink/dialog/inert-node-is-not-highlighted-expected.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/inert-node-is-not-highlighted.html: Renamed from LayoutTests/imported/blink/dialog/inert-node-is-not-highlighted.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-backdrop-expected.html: Renamed from LayoutTests/imported/blink/dialog/modal-dialog-backdrop-expected.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-backdrop.html: Renamed from LayoutTests/imported/blink/dialog/modal-dialog-backdrop.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-display-contents-expected.html: Added.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-display-contents.html: Added.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-generated-content-expected.html: Renamed from LayoutTests/imported/blink/dialog/modal-dialog-generated-content-expected.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-generated-content.html: Renamed from LayoutTests/imported/blink/dialog/modal-dialog-generated-content.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-in-replaced-renderer-expected.html: Renamed from LayoutTests/imported/blink/dialog/modal-dialog-in-replaced-renderer-expected.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-in-replaced-renderer.html: Renamed from LayoutTests/imported/blink/dialog/modal-dialog-in-replaced-renderer.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-in-table-column-expected.html: Renamed from LayoutTests/imported/blink/dialog/modal-dialog-in-table-column-expected.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-in-table-column.html: Renamed from LayoutTests/imported/blink/dialog/modal-dialog-in-table-column.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-sibling-expected.html: Renamed from LayoutTests/imported/blink/dialog/modal-dialog-sibling-expected.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-sibling.html: Renamed from LayoutTests/imported/blink/dialog/modal-dialog-sibling.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/removed-element-is-removed-from-top-layer-expected.html: Renamed from LayoutTests/imported/blink/dialog/removed-element-is-removed-from-top-layer-expected.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/removed-element-is-removed-from-top-layer.html: Renamed from LayoutTests/imported/blink/dialog/removed-element-is-removed-from-top-layer.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/resources/dialog.css: Renamed from LayoutTests/imported/blink/dialog/resources/dialog.css.

(.pseudodialog):

  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/resources/w3c-import.log:
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/top-layer-containing-block-expected.html: Renamed from LayoutTests/imported/blink/dialog/top-layer-containing-block-expected.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/top-layer-containing-block.html: Renamed from LayoutTests/imported/blink/dialog/top-layer-containing-block.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/top-layer-display-none-expected.html: Renamed from LayoutTests/imported/blink/dialog/top-layer-display-none-expected.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/top-layer-display-none.html: Renamed from LayoutTests/imported/blink/dialog/top-layer-display-none.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/top-layer-nesting-expected.html: Renamed from LayoutTests/imported/blink/dialog/top-layer-nesting-expected.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/top-layer-nesting.html: Renamed from LayoutTests/imported/blink/dialog/top-layer-nesting.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/top-layer-stacking-correct-order-remove-readd-expected.html: Renamed from LayoutTests/imported/blink/dialog/top-layer-stacking-correct-order-remove-readd-expected.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/top-layer-stacking-correct-order-remove-readd.html: Renamed from LayoutTests/imported/blink/dialog/top-layer-stacking-correct-order-remove-readd.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/top-layer-stacking-dynamic-expected.html: Renamed from LayoutTests/imported/blink/dialog/top-layer-stacking-dynamic-expected.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/top-layer-stacking-dynamic.html: Renamed from LayoutTests/imported/blink/dialog/top-layer-stacking-dynamic.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/top-layer-stacking-expected.html: Renamed from LayoutTests/imported/blink/dialog/top-layer-stacking-expected.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/top-layer-stacking.html: Renamed from LayoutTests/imported/blink/dialog/top-layer-stacking.html.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/w3c-import.log:

LayoutTests:

https://github.com/web-platform-tests/wpt/commit/02c0e1b2b1b316a20d5377a202d83799794ce510

10:23 AM Changeset in webkit [281250] by dino@apple.com
  • 1 edit in trunk/Source/WebCore/Configurations/WebCoreTestSupport.xcconfig

Build fix after r281245.

Link with Metal.framework.

  • Configurations/WebCoreTestSupport.xcconfig:
10:14 AM Changeset in webkit [281249] by Russell Epstein
  • 1 copy in tags/Safari-612.1.27.0.26

Tag Safari-612.1.27.0.26.

9:43 AM Changeset in webkit [281248] by Eric Hutchison
  • 4 edits in trunk/LayoutTests

[Mac, iOS] imported/w3c/web-platform-tests/html/rendering/replaced-elements/images/revoked-blob-print.html is an image-only failure.
https://bugs.webkit.org/show_bug.cgi?id=229291.

Unreviewed test gardening.

  • platform/ios/TestExpectations:
  • platform/mac-wk1/TestExpectations:
  • platform/mac/TestExpectations:
9:38 AM Changeset in webkit [281247] by Simon Fraser
  • 7 edits in trunk/Source

Rename EventHandler::sendScrollEvent() to scheduleScrollEvent() since the event is not sent synchronously
https://bugs.webkit.org/show_bug.cgi?id=229256

Reviewed by Geoffrey Garen.

Rename EventHandler::sendScrollEvent() and FrameView::sendScrollEvent()
to scheduleScrollEvent() since the event dispatch happens via the next rendering update.

Source/WebCore:

  • page/EventHandler.cpp:

(WebCore::EventHandler::scheduleScrollEvent):
(WebCore::EventHandler::sendScrollEvent): Deleted.

  • page/EventHandler.h:
  • page/FrameView.cpp:

(WebCore::FrameView::FrameView):
(WebCore::FrameView::scrollPositionChanged):
(WebCore::FrameView::scheduleScrollEvent):
(WebCore::FrameView::sendScrollEvent): Deleted.

  • page/FrameView.h:

Source/WebKitLegacy/mac:

  • WebView/WebFrame.mm:

(-[WebFrame sendScrollEvent]):

9:32 AM Changeset in webkit [281246] by Simon Fraser
  • 2 edits in trunk/Source/WebKit

Fix the typo in horiontalRubberbandAmountInContentCoordinates
https://bugs.webkit.org/show_bug.cgi?id=229255

Reviewed by Tim Horton.

  • UIProcess/API/ios/WKWebViewIOS.mm:

(-[WKWebView _contentBoundsExtendedForRubberbandingWithScale:]):

9:28 AM Changeset in webkit [281245] by dino@apple.com
  • 7 edits
    4 adds in trunk

WebGL via Metal experimental feature does not correctly toggle metal backend
https://bugs.webkit.org/show_bug.cgi?id=229267
<rdar://81855735>

Source/WebCore:

Patch by Kyle Piddington <Kyle Piddington> on 2021-08-19
Reviewed by Dean Jackson.

GraphicsContextGLAttributes defines 'useMetal' as 'true' by default.
Since this branch was only checking if Metal was enabled via the
setting, rather than checking the status of the flag, the metal backend
was never disabled, even when requested.

Tests: webgl/webgl-metal-disabled.html

webgl/webgl-metal-enabled.html

  • WebCore.xcodeproj/project.pbxproj:
  • html/canvas/WebGLRenderingContextBase.cpp:

(WebCore::WebGLRenderingContextBase::create):

  • testing/Internals.cpp:

(WebCore::Internals::requestedMetal):

  • testing/Internals.h:
  • testing/Internals.idl:
  • testing/Internals.mm:

(WebCore::Internals::platformSupportsMetal):

LayoutTests:

Add tests to verify WebGL feature flag works as intended.

Patch by Kyle Piddington <Kyle Piddington> on 2021-08-19
Reviewed by Dean Jackson.

  • webgl/webgl-metal-disabled-expected.txt: Added.
  • webgl/webgl-metal-disabled.html: Added.
  • webgl/webgl-metal-enabled-expected.txt: Added.
  • webgl/webgl-metal-enabled.html: Added.
9:26 AM Changeset in webkit [281244] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Avoid DOMRect overhead in VTTRegion
https://bugs.webkit.org/show_bug.cgi?id=229249

Reviewed by Eric Carlson.

Use Element::boundingClientRect() instead of Element::getBoundingClientRect() to
avoid DOMRect overhead. No behavior change.

  • html/track/VTTRegion.cpp:

(WebCore::VTTRegion::displayLastTextTrackCueBox):
(WebCore::VTTRegion::willRemoveTextTrackCueBox):

9:23 AM Changeset in webkit [281243] by Simon Fraser
  • 5 edits in trunk/Source/WebKit

Rename WebPageProxy::headerHeight() and related to make it clear they are for printing
https://bugs.webkit.org/show_bug.cgi?id=229242

Reviewed by Tim Horton.

Disambiguate WebPageProxy::headerHeight(), used for printing, from FrameView::headerHeight()
which is not.

  • UIProcess/Cocoa/UIDelegate.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::headerHeightForPrinting):
(WebKit::WebPageProxy::footerHeightForPrinting):
(WebKit::WebPageProxy::drawHeaderForPrinting):
(WebKit::WebPageProxy::drawFooterForPrinting):
(WebKit::WebPageProxy::headerHeight): Deleted.
(WebKit::WebPageProxy::footerHeight): Deleted.
(WebKit::WebPageProxy::drawHeader): Deleted.
(WebKit::WebPageProxy::drawFooter): Deleted.

  • UIProcess/WebPageProxy.h:
  • UIProcess/mac/WKPrintingView.mm:

(-[WKPrintingView _adjustPrintingMarginsForHeaderAndFooter]):
(-[WKPrintingView drawPageBorderWithSize:]):

9:10 AM Changeset in webkit [281242] by Simon Fraser
  • 2 edits in trunk/Source/WebKit

Use a Ref<> argument to keep WebPage alive in TiledCoreAnimationDrawingArea::dispatchAfterEnsuringUpdatedScrollPosition()
https://bugs.webkit.org/show_bug.cgi?id=229239

Reviewed by Tim Horton.

Replace a manual ref()/deref() with a makeRef() argument to the function.

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::dispatchAfterEnsuringUpdatedScrollPosition):

9:08 AM Changeset in webkit [281241] by Antti Koivisto
  • 21 edits in trunk

TextDecorationPainter should not depend on LegacyInlineTextBox
https://bugs.webkit.org/show_bug.cgi?id=228814

Reviewed by Alan Bujtas.

Source/WebCore:

Use the inline iterator instead.

  • layout/integration/LayoutIntegrationLineIterator.h:

(WebCore::LayoutIntegration::LineIterator::isFirst const):
(WebCore::LayoutIntegration::PathLine::baselineType const):

  • layout/integration/LayoutIntegrationLineIteratorLegacyPath.h:

(WebCore::LayoutIntegration::LineIteratorLegacyPath::baselineType const):

  • layout/integration/LayoutIntegrationLineIteratorModernPath.h:

(WebCore::LayoutIntegration::LineIteratorModernPath::baselineType const):

  • layout/integration/LayoutIntegrationRunIterator.cpp:

(WebCore::LayoutIntegration::RunIterator::line const):
(WebCore::LayoutIntegration::PathRun::line const):
(WebCore::LayoutIntegration::PathRun::style const):
(WebCore::LayoutIntegration::textRunFor):

  • layout/integration/LayoutIntegrationRunIterator.h:

(WebCore::LayoutIntegration::PathTextRun::renderer const):

  • layout/integration/LayoutIntegrationRunIteratorModernPath.h:
  • rendering/LegacyInlineFlowBox.cpp:

(WebCore::LegacyInlineFlowBox::maxLogicalBottomForTextDecorationLine const): Deleted.
(WebCore::LegacyInlineFlowBox::minLogicalTopForTextDecorationLine const): Deleted.

  • rendering/LegacyInlineFlowBox.h:
  • rendering/LegacyInlineTextBox.cpp:

(WebCore::LegacyInlineTextBox::paintMarkedTextDecoration):

  • rendering/LegacyLineLayout.cpp:

(WebCore::setLogicalWidthForTextRun):

  • rendering/RenderElement.cpp:

(WebCore::RenderElement::enclosingRendererWithTextDecoration const): Deleted.

  • rendering/RenderElement.h:
  • rendering/TextDecorationPainter.cpp:

(WebCore::TextDecorationPainter::paintTextDecoration):

  • rendering/TextDecorationPainter.h:

(WebCore::TextDecorationPainter::setTextRunIterator):
(WebCore::TextDecorationPainter::setInlineTextBox): Deleted.

  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::changeAffectsVisualOverflow const):

  • style/InlineTextBoxStyle.cpp:

(WebCore::isAncestorAndWithinBlock):
(WebCore::minLogicalTopForTextDecorationLine):
(WebCore::maxLogicalBottomForTextDecorationLine):

Moved from LegacyInlineFlowBox.

(WebCore::enclosingRendererWithTextDecoration):

Moved from RenderElement.

(WebCore::computeUnderlineOffset):
(WebCore::visualOverflowForDecorations):

  • style/InlineTextBoxStyle.h:

LayoutTests:

Fix the expected results to not depend on inline culling (which this patch ignores).

  • fast/text/text-underline-first-line-decoration-expected.html:
  • fast/text/text-underline-vertical-first-line-decoration-expected.html:
9:05 AM Changeset in webkit [281240] by Antti Koivisto
  • 4 edits
    2 moves in trunk/Source/WebCore

Move MarkedTextStyle into StyledMarkedText scope
https://bugs.webkit.org/show_bug.cgi?id=228956

Reviewed by Alan Bujtas.

As StyledMarkedText::Style.
Also other cleanups and a file rename to match the type.

  • Sources.txt:
  • WebCore.xcodeproj/project.pbxproj:
  • rendering/LegacyInlineTextBox.cpp:

(WebCore::LegacyInlineTextBox::paint):

  • rendering/StyledMarkedText.cpp: Renamed from Source/WebCore/rendering/MarkedTextStyle.cpp.

(WebCore::resolveStyleForMarkedText):
(WebCore::computeStyleForUnmarkedMarkedText):
(WebCore::StyledMarkedText::subdivideAndResolve):
(WebCore::coalesceAdjacent):
(WebCore::StyledMarkedText::coalesceAdjacentWithEqualBackground):
(WebCore::StyledMarkedText::coalesceAdjacentWithEqualForeground):
(WebCore::StyledMarkedText::coalesceAdjacentWithEqualDecorations):

  • rendering/StyledMarkedText.h: Renamed from Source/WebCore/rendering/MarkedTextStyle.h.
8:51 AM Changeset in webkit [281239] by Simon Fraser
  • 31 edits in trunk/Source/WebCore

Use an OptionSet<MapCoordinatesMode> in place of MapCoordinatesFlags
https://bugs.webkit.org/show_bug.cgi?id=229170

Reviewed by Antti Koivisto.

Replace MapCoordinatesFlags with OptionSet<MapCoordinatesMode>. No behavior
change.

  • html/HTMLAnchorElement.cpp:

(WebCore::appendServerMapMousePosition):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::mapLocalToContainer const):
(WebCore::RenderBox::mapAbsoluteToLocalPoint const):

  • rendering/RenderBox.h:
  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::mapAbsoluteToLocalPoint const):

  • rendering/RenderBoxModelObject.h:
  • rendering/RenderFragmentedFlow.cpp:

(WebCore::RenderFragmentedFlow::mapLocalToContainer const):

  • rendering/RenderFragmentedFlow.h:
  • rendering/RenderGeometryMap.cpp:

(WebCore::RenderGeometryMap::RenderGeometryMap):
(WebCore::RenderGeometryMap::pushMappingsToAncestor):

  • rendering/RenderGeometryMap.h:

(WebCore::RenderGeometryMap::mapCoordinatesFlags const):

  • rendering/RenderInline.cpp:

(WebCore::RenderInline::mapLocalToContainer const):

  • rendering/RenderInline.h:
  • rendering/RenderMultiColumnFlow.cpp:

(WebCore::RenderMultiColumnFlow::mapAbsoluteToLocalPoint const):

  • rendering/RenderMultiColumnFlow.h:
  • rendering/RenderObject.cpp:

(WebCore::RenderObject::absoluteBoundingBoxRect const):
(WebCore::RenderObject::localToAbsolute const):
(WebCore::RenderObject::absoluteToLocal const):
(WebCore::RenderObject::absoluteToLocalQuad const):
(WebCore::RenderObject::mapLocalToContainer const):
(WebCore::RenderObject::mapAbsoluteToLocalPoint const):
(WebCore::RenderObject::localToContainerQuad const):
(WebCore::RenderObject::localToContainerPoint const):

  • rendering/RenderObject.h:

(WebCore::RenderObject::localToAbsolute):
(WebCore::RenderObject::absoluteToLocal):
(WebCore::RenderObject::localToAbsoluteQuad const):

  • rendering/RenderObjectEnums.h:
  • rendering/RenderTheme.cpp:

(WebCore::RenderTheme::volumeSliderOffsetFromMuteButton const):

  • rendering/RenderView.cpp:

(WebCore::RenderView::mapLocalToContainer const):
(WebCore::RenderView::mapAbsoluteToLocalPoint const):

  • rendering/RenderView.h:
  • rendering/svg/RenderSVGForeignObject.cpp:

(WebCore::RenderSVGForeignObject::mapLocalToContainer const):

  • rendering/svg/RenderSVGForeignObject.h:
  • rendering/svg/RenderSVGInline.cpp:

(WebCore::RenderSVGInline::mapLocalToContainer const):

  • rendering/svg/RenderSVGInline.h:
  • rendering/svg/RenderSVGModelObject.cpp:

(WebCore::RenderSVGModelObject::mapLocalToContainer const):

  • rendering/svg/RenderSVGModelObject.h:
  • rendering/svg/RenderSVGRoot.cpp:

(WebCore::RenderSVGRoot::mapLocalToContainer const):

  • rendering/svg/RenderSVGRoot.h:
  • rendering/svg/RenderSVGText.cpp:

(WebCore::RenderSVGText::mapLocalToContainer const):

  • rendering/svg/RenderSVGText.h:
  • rendering/svg/SVGRenderSupport.cpp:

(WebCore::SVGRenderSupport::mapLocalToContainer):

8:47 AM Changeset in webkit [281238] by Simon Fraser
  • 21 edits
    1 add in trunk/Source

Remove duplicate LayerTreeAsText enums and use an OptionSet<>
https://bugs.webkit.org/show_bug.cgi?id=229226

Reviewed by Antti Koivisto.

GraphicsLayerClient had enum LayerTreeAsTextBehaviorFlags and Frame had an anonymous
enum and typedef unsigned LayerTreeFlags. Clean up by adding LayerTreeAsTextOptions.h
and using OptionSet<LayerTreeAsTextOptions> everywhere.

  • Headers.cmake:
  • WebCore.xcodeproj/project.pbxproj:
  • page/Frame.h:
  • page/PageOverlayController.cpp:

(WebCore::PageOverlayController::shouldSkipLayerInDump const):

  • page/PageOverlayController.h:
  • platform/graphics/GraphicsLayer.cpp:

(WebCore::GraphicsLayer::dumpLayer const):
(WebCore::dumpChildren):
(WebCore::GraphicsLayer::dumpProperties const):
(WebCore::GraphicsLayer::layerTreeAsText const):
(showGraphicsLayerTree):

  • platform/graphics/GraphicsLayer.h:

(WebCore::GraphicsLayer::dumpLayer):
(WebCore::GraphicsLayer::layerTreeAsText):
(WebCore::GraphicsLayer::dumpAdditionalProperties const):

  • platform/graphics/GraphicsLayerClient.h:

(WebCore::GraphicsLayerClient::shouldSkipLayerInDump const):
(WebCore::GraphicsLayerClient::shouldDumpPropertyForLayer const):

  • platform/graphics/LayerTreeAsTextOptions.h: Added.
  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::GraphicsLayerCA::dumpAdditionalProperties const):

  • platform/graphics/ca/GraphicsLayerCA.h:
  • platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:

(WebCore::dumpInnerLayer):
(WebCore::CoordinatedGraphicsLayer::dumpAdditionalProperties const):

  • platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h:
  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::shouldSkipLayerInDump const):
(WebCore::RenderLayerBacking::shouldDumpPropertyForLayer const):

  • rendering/RenderLayerBacking.h:
  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::layerTreeAsText):

  • rendering/RenderLayerCompositor.h:
  • testing/Internals.cpp:

(WebCore::toLayerTreeAsTextOptions):
(WebCore::Internals::layerTreeAsText const):
(WebCore::Internals::pageOverlayLayerTreeAsText const):
(WebCore::toLayerTreeFlags): Deleted.

  • testing/MockPageOverlayClient.cpp:

(WebCore::MockPageOverlayClient::layerTreeAsText):

  • testing/MockPageOverlayClient.h:
8:46 AM Changeset in webkit [281237] by Simon Fraser
  • 5 edits in trunk/Source/WebCore

Use an enum for the forVisitedLink argument to BuilderState::colorFromPrimitiveValue()
https://bugs.webkit.org/show_bug.cgi?id=229224

Reviewed by Alex Christensen.

Convert the bool argument to an enum class.

  • css/makeprop.pl:

(colorFromPrimitiveValue):

  • style/StyleBuilderCustom.h:

(WebCore::Style::BuilderCustom::applyValueCaretColor):
(WebCore::Style::BuilderCustom::applyValueStrokeColor):

  • style/StyleBuilderState.cpp:

(WebCore::Style::BuilderState::colorFromPrimitiveValue const):

  • style/StyleBuilderState.h:
8:32 AM Changeset in webkit [281236] by Ayumi Kojima
  • 2 edits in trunk/LayoutTests

[ Win EWS ] fast/forms/* tests are flaky crashing FAULTING_IP: WebKit!WebCore::FontCache::lastResortFallbackFont+ec [C:\cygwin\home\buildbot\worker\Windows-EWS\build\Source\WebCore\platform\graphics\win\FontCacheWin.cpp @ 424].
https://bugs.webkit.org/show_bug.cgi?id=229009

Unreviewed test gardening.

  • platform/win/TestExpectations:
6:05 AM Changeset in webkit [281235] by Kate Cheney
  • 2 edits in trunk/Source/WebKit

Unable to load downloaded HTML files in Safari
https://bugs.webkit.org/show_bug.cgi?id=229254
<rdar://problem/82051114>

Reviewed by Brent Fulgham.

Check quarantine bits for webarchive files only.

  • UIProcess/Cocoa/WebPageProxyCocoa.mm:

(WebKit::WebPageProxy::isQuarantinedAndNotUserApproved):

5:57 AM Changeset in webkit [281234] by Kate Cheney
  • 3 edits
    4 adds in trunk

[App Privacy Report] Some HTTP Redirects from non app initiated requests are marked app initiated
https://bugs.webkit.org/show_bug.cgi?id=229202
<rdar://problem/79467871>

Reviewed by Brent Fulgham.

Source/WebKit:

Tests: http/tests/app-privacy-report/app-attribution-media-redirect.html

http/tests/app-privacy-report/user-attribution-media-redirect.html

The request returned in the completion handler of
NetworkDataTaskCocoa::willPerformHTTPRedirection does not always have
the attribution property of the original request. We should pass it
along and set it.

  • NetworkProcess/cocoa/NetworkSessionCocoa.mm:

(-[WKNetworkSessionDelegate URLSession:task:willPerformHTTPRedirection:newRequest:completionHandler:]):

LayoutTests:

Layout test coverage. This bug was only reproducing with media-related
loading, so these tests redirect to load an mp4.

  • http/tests/app-privacy-report/app-attribution-media-redirect-expected.txt: Added.
  • http/tests/app-privacy-report/app-attribution-media-redirect.html: Added.
  • http/tests/app-privacy-report/user-attribution-media-redirect-expected.txt: Added.
  • http/tests/app-privacy-report/user-attribution-media-redirect.html: Added.
5:23 AM Changeset in webkit [281233] by Philippe Normand
  • 2 edits in trunk/LayoutTests

Unreviewed, GStreamer gardening

  • platform/glib/TestExpectations: http/tests/images/image-supports-video.html no longer crashes.
5:20 AM Changeset in webkit [281232] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit

Adjust fallback SandboxExtension std::optional<Handle> construction
https://bugs.webkit.org/show_bug.cgi?id=229233

Patch by Zan Dobersek <zdobersek@igalia.com> on 2021-08-19
Reviewed by Carlos Garcia Campos.

In r240512, std::optional<> was adopted as the return type for handle
creation methods in the SandboxExtension class. For no-op methods,
the construction of these return values was done using empty initializer
lists.

The changes here should match pre-r240512 behavior by creating empty
Handle objects and using those to implicitly construct the returning
std::optional<> object. In addition, this avoids compilation breakage
with GCC 8 where ambiguity between possible std::optional<> constructors
is detected.

  • Shared/SandboxExtension.h:

(WebKit::SandboxExtension::createHandle):
(WebKit::SandboxExtension::createHandleWithoutResolvingPath):
(WebKit::SandboxExtension::createHandleForReadWriteDirectory):
(WebKit::SandboxExtension::createHandleForGenericExtension):

2:17 AM Changeset in webkit [281231] by youenn@apple.com
  • 3 edits in trunk/Source/WebCore

RTCPeerConnection::m_transceiverSet does not need to be allocated separately from its RTCPeerConnection
https://bugs.webkit.org/show_bug.cgi?id=229183

Reviewed by Eric Carlson.

No change of behavior.

  • Modules/mediastream/RTCPeerConnection.cpp:

(WebCore::RTCPeerConnection::addTrack):
(WebCore::RTCPeerConnection::removeTrack):
(WebCore::RTCPeerConnection::getStats):
(WebCore::RTCPeerConnection::doClose):
(WebCore::RTCPeerConnection::addInternalTransceiver):
(WebCore::RTCPeerConnection::getSenders const):
(WebCore::RTCPeerConnection::getReceivers const):
(WebCore::RTCPeerConnection::getTransceivers const):

  • Modules/mediastream/RTCPeerConnection.h:
2:15 AM Changeset in webkit [281230] by ntim@apple.com
  • 3 edits in trunk/Source/WebCore

Port HTMLDetailsElement to use modern event handling code
https://bugs.webkit.org/show_bug.cgi?id=228863

Reviewed by Antti Koivisto.

No behaviour change, follows: https://html.spec.whatwg.org/#details-notification-task-steps

  • html/HTMLDetailsElement.cpp:

(WebCore::HTMLDetailsElement::parseAttribute):
(WebCore::HTMLDetailsElement::toggleOpen):
(WebCore::detailToggleEventSender): Deleted.
(WebCore::HTMLDetailsElement::~HTMLDetailsElement): Deleted.
(WebCore::HTMLDetailsElement::dispatchPendingEvent): Deleted.

  • html/HTMLDetailsElement.h:
2:02 AM Changeset in webkit [281229] by ntim@apple.com
  • 24 edits in trunk

Implement ::backdrop pseudo element
https://bugs.webkit.org/show_bug.cgi?id=227801

Reviewed by Antti Koivisto.

This adds UA styles, RenderTreeBuilder support and WebInspector support for ::backdrop.
Some imported blink tests now start passing, some still need proper top layer support.

LayoutTests/imported/w3c:

  • web-platform-tests/css/css-values/ch-empty-pseudo-recalc-on-font-load-expected.txt:

Source/JavaScriptCore:

  • inspector/protocol/CSS.json:

Source/WebCore:

  • css/CSSSelector.cpp:

(WebCore::CSSSelector::pseudoId):

  • css/CSSSelector.h:
  • css/SelectorPseudoElementTypeMap.in:
  • css/dialog.css:

(dialog::backdrop):
(::backdrop):

  • inspector/agents/InspectorCSSAgent.cpp:

(WebCore::protocolValueForPseudoId):

  • rendering/RenderElement.cpp:

(WebCore::RenderElement::backdropRenderer const):
(WebCore::RenderElement::setBackdropRenderer):

  • rendering/RenderElement.h:
  • rendering/RenderObject.h:
  • rendering/style/RenderStyleConstants.cpp:

(WebCore::operator<<):

  • rendering/style/RenderStyleConstants.h:
  • rendering/updating/RenderTreeBuilder.cpp:

(WebCore::RenderTreeBuilder::destroyAndCleanUpAnonymousWrappers):

  • rendering/updating/RenderTreeUpdater.cpp:

(WebCore::RenderTreeUpdater::updateAfterDescendants):

  • rendering/updating/RenderTreeUpdaterGeneratedContent.cpp:

(WebCore::RenderTreeUpdater::GeneratedContent::updateBackdropRenderer):

  • rendering/updating/RenderTreeUpdaterGeneratedContent.h:
  • style/StyleTreeResolver.cpp:

(WebCore::Style::TreeResolver::resolvePseudoStyle):

Source/WebInspectorUI:

  • UserInterface/Controllers/CSSManager.js:

(WI.CSSManager.displayNameForPseudoId):

LayoutTests:

1:46 AM Changeset in webkit [281228] by commit-queue@webkit.org
  • 7 edits in trunk

document.hasFocus() returns true for unfocused pages
https://bugs.webkit.org/show_bug.cgi?id=229139

Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2021-08-19
Reviewed by Adrian Perez de Castro.

Source/WebCore:

We are always claiming to be focused when the document in the active window even if the page is not actually
focused.

  • dom/Document.cpp:

(WebCore::Document::hasFocus const): Check also that page is focused.

Tools:

Add a unit tests to check document.hasFocus() returns false when a web view is in the active window, but not focused.

  • TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm:

(TestWebKitAPI::TEST): Ensure web view is focused as required by credentials container.

  • TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:

(testWebViewDocumentFocus):
(beforeAll):

  • TestWebKitAPI/cocoa/TestWKWebView.h:
  • TestWebKitAPI/cocoa/TestWKWebView.mm:

(-[TestWKWebView focus]):

1:40 AM Changeset in webkit [281227] by youenn@apple.com
  • 26 edits in trunk/Source

Rename MediaPlayer::setVisible to MediaPlayer::setPageIsVisible
https://bugs.webkit.org/show_bug.cgi?id=228837
<rdar://problem/81857023>

Reviewed by Eric Carlson.

Source/WebCore:

No change of behavior, just renaming a method to make its name more accurate.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::visibilityStateChanged):

  • platform/graphics/MediaPlayer.cpp:

(WebCore::MediaPlayer::loadWithNextMediaEngine):
(WebCore::MediaPlayer::setPageIsVisible):
(WebCore::MediaPlayer::setVisible): Deleted.

  • platform/graphics/MediaPlayer.h:
  • platform/graphics/MediaPlayerPrivate.h:

(WebCore::MediaPlayerPrivateInterface::setVisibleForCanvas):

  • platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:

(WebCore::MediaPlayerPrivateAVFoundation::setPageIsVisible):
(WebCore::MediaPlayerPrivateAVFoundation::setVisible): Deleted.

  • platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
  • platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h:
  • platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:

(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::setPageIsVisible):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::setVisible): Deleted.

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.h:
  • platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm:

(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::setPageIsVisible):
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::setVisible): Deleted.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
  • platform/graphics/holepunch/MediaPlayerPrivateHolePunch.h:
  • platform/graphics/win/MediaPlayerPrivateMediaFoundation.cpp:

(WebCore::MediaPlayerPrivateMediaFoundation::setPageIsVisible):
(WebCore::MediaPlayerPrivateMediaFoundation::setVisible): Deleted.

  • platform/graphics/win/MediaPlayerPrivateMediaFoundation.h:
  • platform/mock/mediasource/MockMediaPlayerMediaSource.cpp:

(WebCore::MockMediaPlayerMediaSource::setPageIsVisible):
(WebCore::MockMediaPlayerMediaSource::setVisible): Deleted.

  • platform/mock/mediasource/MockMediaPlayerMediaSource.h:
  • rendering/RenderVideo.cpp:

(WebCore::RenderVideo::willBeDestroyed):
(WebCore::RenderVideo::updatePlayer):

Source/WebKit:

  • GPUProcess/media/RemoteMediaPlayerProxy.cpp:

(WebKit::RemoteMediaPlayerProxy::setPageIsVisible):
(WebKit::RemoteMediaPlayerProxy::setVisible): Deleted.

  • GPUProcess/media/RemoteMediaPlayerProxy.h:
  • GPUProcess/media/RemoteMediaPlayerProxy.messages.in:
  • WebProcess/GPU/media/MediaPlayerPrivateRemote.cpp:

(WebKit::MediaPlayerPrivateRemote::setPageIsVisible):
(WebKit::MediaPlayerPrivateRemote::setVisible): Deleted.

  • WebProcess/GPU/media/MediaPlayerPrivateRemote.h:

Source/WebKitLegacy/win:

  • FullscreenVideoController.cpp:

(FullscreenVideoController::exitFullscreen):

1:22 AM Changeset in webkit [281226] by youenn@apple.com
  • 6 edits in trunk/Source/WebCore

RTCRtpTransceiver does not need an ice transport
https://bugs.webkit.org/show_bug.cgi?id=229186

Reviewed by Eric Carlson.

No change of behavior, we are removing a member from RTCRtpTransceiver which is unused.
We are also updating RTCIceTransport as it does not need to have virtual methods yet.

  • Modules/mediastream/RTCIceTransport.cpp:

(WebCore::RTCIceTransport::~RTCIceTransport):

  • Modules/mediastream/RTCIceTransport.h:
  • Modules/mediastream/RTCIceTransport.idl:
  • Modules/mediastream/RTCRtpTransceiver.cpp:

(WebCore::RTCRtpTransceiver::RTCRtpTransceiver):

  • Modules/mediastream/RTCRtpTransceiver.h:
12:36 AM Changeset in webkit [281225] by youenn@apple.com
  • 44 edits
    5 copies
    3 adds in trunk

Add support for RTCDtlsTransport
https://bugs.webkit.org/show_bug.cgi?id=229133

Reviewed by Eric Carlson.

LayoutTests/imported/w3c:

  • web-platform-tests/webrtc/RTCDtlsTransport-getRemoteCertificates-expected.txt:
  • web-platform-tests/webrtc/RTCDtlsTransport-state-expected.txt:
  • web-platform-tests/webrtc/RTCPeerConnection-addIceCandidate-connectionSetup-expected.txt:
  • web-platform-tests/webrtc/RTCPeerConnection-helper-test-expected.txt:
  • web-platform-tests/webrtc/RTCPeerConnection-iceConnectionState.https-expected.txt:
  • web-platform-tests/webrtc/RTCPeerConnection-iceGatheringState-expected.txt:
  • web-platform-tests/webrtc/RTCPeerConnection-onnegotiationneeded-expected.txt:
  • web-platform-tests/webrtc/RTCPeerConnection-setLocalDescription-answer-expected.txt:
  • web-platform-tests/webrtc/RTCPeerConnection-setLocalDescription-offer-expected.txt:
  • web-platform-tests/webrtc/RTCRtpSender-transport.https-expected.txt:
  • web-platform-tests/webrtc/RTCRtpTransceiver.https-expected.txt:
  • web-platform-tests/webrtc/protocol/bundle.https-expected.txt:
  • web-platform-tests/webrtc/protocol/crypto-suite.https-expected.txt:

Source/ThirdParty/libwebrtc:

  • Configurations/libwebrtc.iOS.exp:
  • Configurations/libwebrtc.iOSsim.exp:
  • Configurations/libwebrtc.mac.exp:

Source/WebCore:

RTCDtlsTransport is an object representing the transport used by RTCRtp senders and receivers.
Add WebIDL and backend implementation.
In particular, we set sender/receiver transports as per spec when setting the descriptions.
Add support for state and certificates access. Add support for statechange event.

Covered by rebased tests.

  • CMakeLists.txt:
  • DerivedSources-input.xcfilelist:
  • DerivedSources-output.xcfilelist:
  • DerivedSources.make:
  • Modules/mediastream/PeerConnectionBackend.cpp:

(WebCore::PeerConnectionBackend::setLocalDescriptionSucceeded):
(WebCore::PeerConnectionBackend::setRemoteDescriptionSucceeded):

  • Modules/mediastream/PeerConnectionBackend.h:
  • Modules/mediastream/RTCDtlsTransport.cpp: Added.

(WebCore::RTCDtlsTransport::RTCDtlsTransport):
(WebCore::RTCDtlsTransport::~RTCDtlsTransport):
(WebCore::RTCDtlsTransport::getRemoteCertificates):
(WebCore::RTCDtlsTransport::stop):
(WebCore::RTCDtlsTransport::virtualHasPendingActivity const):
(WebCore::RTCDtlsTransport::onStateChanged):
(WebCore::RTCDtlsTransport::onError):

  • Modules/mediastream/RTCDtlsTransport.h: Added.
  • Modules/mediastream/RTCDtlsTransport.idl: Added.
  • Modules/mediastream/RTCDtlsTransportBackend.h: Added.

(WebCore::operator==):

  • Modules/mediastream/RTCDtlsTransportState.h: Added.
  • Modules/mediastream/RTCDtlsTransportState.idl: Added.
  • Modules/mediastream/RTCPeerConnection.cpp:

(WebCore::RTCPeerConnection::getOrCreateDtlsTransport):
(WebCore::RTCPeerConnection::updateTransceiverTransports):
(WebCore::RTCPeerConnection::updateTransceiversAfterSuccessfulLocalDescription):
(WebCore::RTCPeerConnection::updateTransceiversAfterSuccessfulRemoteDescription):

  • Modules/mediastream/RTCPeerConnection.h:
  • Modules/mediastream/RTCRtpReceiver.cpp:
  • Modules/mediastream/RTCRtpReceiver.h:
  • Modules/mediastream/RTCRtpReceiver.idl:
  • Modules/mediastream/RTCRtpReceiverBackend.h:
  • Modules/mediastream/RTCRtpSender.cpp:
  • Modules/mediastream/RTCRtpSender.h:
  • Modules/mediastream/RTCRtpSender.idl:
  • Modules/mediastream/RTCRtpSenderBackend.h:
  • Modules/mediastream/libwebrtc/LibWebRTCDtlsTransportBackend.cpp: Added.

(WebCore::toRTCDtlsTransportState):
(WebCore::LibWebRTCDtlsTransportBackendObserver::LibWebRTCDtlsTransportBackendObserver):
(WebCore::LibWebRTCDtlsTransportBackendObserver::updateState):
(WebCore::LibWebRTCDtlsTransportBackendObserver::start):
(WebCore::LibWebRTCDtlsTransportBackendObserver::stop):
(WebCore::LibWebRTCDtlsTransportBackendObserver::OnStateChange):
(WebCore::LibWebRTCDtlsTransportBackendObserver::OnError):
(WebCore::LibWebRTCDtlsTransportBackend::LibWebRTCDtlsTransportBackend):
(WebCore::LibWebRTCDtlsTransportBackend::~LibWebRTCDtlsTransportBackend):
(WebCore::LibWebRTCDtlsTransportBackend::registerClient):
(WebCore::LibWebRTCDtlsTransportBackend::unregisterClient):

  • Modules/mediastream/libwebrtc/LibWebRTCDtlsTransportBackend.h: Added.
  • Modules/mediastream/libwebrtc/LibWebRTCRtpReceiverBackend.cpp:

(WebCore::LibWebRTCRtpReceiverBackend::rtpDtlsTransportBackend):

  • Modules/mediastream/libwebrtc/LibWebRTCRtpReceiverBackend.h:
  • Modules/mediastream/libwebrtc/LibWebRTCRtpSenderBackend.cpp:

(WebCore::LibWebRTCRtpSenderBackend::rtpDtlsTransportBackend):

  • Modules/mediastream/libwebrtc/LibWebRTCRtpSenderBackend.h:
  • Modules/mediastream/libwebrtc/LibWebRTCUtils.cpp:
  • Modules/mediastream/libwebrtc/LibWebRTCUtils.h:
  • Sources.txt:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/WebCoreBuiltinNames.h:
  • dom/EventTargetFactory.in:
12:05 AM Changeset in webkit [281224] by Fujii Hironori
  • 2 edits in trunk/LayoutTests

[WinCairo] Unreviewed test gardening

  • platform/wincairo/TestExpectations:

Aug 18, 2021:

9:04 PM Changeset in webkit [281223] by ddkilzer@apple.com
  • 2 edits in trunk/Source/WebCore

Bug 229264: Leak of CMBufferQueueRef (up to 752 bytes each) in com.apple.WebKit.GPU.Development process
<https://webkit.org/b/229264>
<rdar://problem/82101153>

Reviewed by Anders Carlsson.

Covered by running layout tests with --leaks plus future patch
to check for leaks in the GPU process.

  • platform/mediarecorder/cocoa/VideoSampleBufferCompressor.mm:

(WebCore::VideoSampleBufferCompressor::initialize):

  • Use adoptCF() to fix the leak since CMBufferQueueCreate() returns a retained object.
8:42 PM Changeset in webkit [281222] by ysuzuki@apple.com
  • 8 edits in trunk/Source/JavaScriptCore

[JSC] Remove op_has_indexed_property related code
https://bugs.webkit.org/show_bug.cgi?id=229271

Reviewed by Saam Barati.

After our new for-in protocol, op_has_indexed_property is removed.
As a result, we can remove many ByValInfo code that is used only
for op_has_indexed_property.

  • jit/JIT.h:
  • jit/JITInlines.h:

(JSC::JIT::emitLoadForArrayMode): Deleted.

  • jit/JITOpcodes.cpp:

(JSC::JIT::privateCompileHasIndexedProperty): Deleted.

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::privateCompileHasIndexedProperty): Deleted.

  • jit/JITOperations.cpp:
  • jit/JITOperations.h:
  • jit/JITPropertyAccess.cpp:

(JSC::JIT::emitDoubleLoad): Deleted.
(JSC::JIT::emitContiguousLoad): Deleted.
(JSC::JIT::emitArrayStorageLoad): Deleted.

8:40 PM Changeset in webkit [281221] by ddkilzer@apple.com
  • 6 edits in trunk

Bug 229265: run-webkit-tests --leaks should check for leaks in the GPU process
<https://webkit.org/b/229265>
<rdar://problem/82101453>

Reviewed by Alex Christensen.

Source/WebKit:

  • UIProcess/API/C/WKPage.cpp:

(WKPageGetGPUProcessIdentifier): Add.

  • UIProcess/API/C/WKPagePrivate.h:

(WKPageGetGPUProcessIdentifier): Add.

  • Add function to return the PID for the GPU process.

Tools:

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::findAndDumpWebKitProcessIdentifiers):

  • Include the GPU process PID if it's enabled when sending a list of PIDs back to run-webkit-tests.

(WTR::TestController::gpuProcessName): Add.

  • WebKitTestRunner/TestController.h:

(WTR::TestController::databaseProcessName): Delete.

  • The implementation was removed a while ago.

(WTR::TestController::gpuProcessName): Add.

8:34 PM Changeset in webkit [281220] by ddkilzer@apple.com
  • 3 edits in trunk/Source/WebCore

Leak of CMSampleBufferRef (up to 2.25 KB each) in com.apple.WebKit.GPU.Development process
<https://webkit.org/b/229262>
<rdar://problem/82076765>

Reviewed by Darin Adler.

Covered by running layout tests with --leaks plus future patch
to check for leaks in the GPU process.

  • platform/mediarecorder/cocoa/AudioSampleBufferCompressor.h:

(WebCore::AudioSampleBufferCompressor::sampleBufferWithNumPackets):

  • Update signature to return RetainPtr<CMSampleBufferRef>.
  • platform/mediarecorder/cocoa/AudioSampleBufferCompressor.mm:

(WebCore::AudioSampleBufferCompressor::sampleBufferWithNumPackets):

  • Update signature to return RetainPtr<CMSampleBufferRef>.
  • Rename sampleBuffer to rawSampleBuffer to match similar pattern used in other code, then use sampleBuffer to store rawSampleBuffer wrapped in a RetainPtr<>.

(WebCore::AudioSampleBufferCompressor::processSampleBuffersUntilLowWaterTime):

  • Add get() to buffer variable since it is now a RetainPtr<>.
6:15 PM Changeset in webkit [281219] by clopez@igalia.com
  • 3 edits
    11 adds in trunk/LayoutTests

[GTK][WPE] Gardening of layout tests

Unreviewed test gardening.

Mark expected failures after r281108 and others and update list of flaky tests.
Rebaseline tests after r281136, r281127 and r281097.

  • platform/glib/TestExpectations:
  • platform/glib/imported/w3c/web-platform-tests/html/semantics/scripting-1/the-script-element/module/integrity-expected.txt: Added.
  • platform/gtk/TestExpectations:
  • platform/gtk/fast/repaint/line-layout-block-shrink-expected.txt: Added.
  • platform/gtk/imported/w3c/web-platform-tests/css/css-typed-om/rotate-by-added-angle-expected.txt: Added.
  • platform/gtk/imported/w3c/web-platform-tests/css/css-typed-om/width-by-max-px-em-expected.txt: Added.
  • platform/gtk/imported/w3c/web-platform-tests/css/css-typed-om/width-by-min-px-em-expected.txt: Added.
  • platform/wpe/imported/w3c/web-platform-tests/css/css-typed-om/rotate-by-added-angle-expected.txt: Added.
  • platform/wpe/imported/w3c/web-platform-tests/css/css-typed-om/width-by-max-px-em-expected.txt: Added.
  • platform/wpe/imported/w3c/web-platform-tests/css/css-typed-om/width-by-min-px-em-expected.txt: Added.
5:34 PM Changeset in webkit [281218] by Fujii Hironori
  • 5 edits in trunk/LayoutTests

[Fetch API][WebKit1] http/tests/fetch/keepalive-fetch-2.html is randomly failing
https://bugs.webkit.org/show_bug.cgi?id=229247

Unreviewed test gardening.

WebKit1 doesn't properly support keepalive fetch. Marked it as
flaky. Increased the number of fetches for testing WebKit2 more.

  • http/tests/fetch/keepalive-fetch-2.html:
  • http/tests/fetch/resources/keepalive-fetch-2-window.html:
  • platform/ios-wk1/TestExpectations:
  • platform/mac-wk1/TestExpectations:
5:20 PM Changeset in webkit [281217] by rniwa@webkit.org
  • 2 edits in trunk/Source/WTF

[ iOS Debug ] 12 TestWebKitAPI.WebKitLegacy. tests are crashing
https://bugs.webkit.org/show_bug.cgi?id=229250

Reviewed by Wenson Hsieh.

Disable the assertion when Web Thread is enabled for now.

  • wtf/CheckedRef.h:

(WTF::SingleThreadIntegralWrapper::assertThread const):

5:20 PM Changeset in webkit [281216] by Jonathan Bedard
  • 3 edits in trunk/Tools

[run-webkit-tests] Remember failures when repeating test
https://bugs.webkit.org/show_bug.cgi?id=229217
<rdar://problem/81919223>

Reviewed by Ryan Haddad.

  • Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:

(LayoutTestRunner.update_summary_with_result): Replace existing result with unexpected result so
that unexpected results always take precedence over expected ones.

  • Scripts/webkitpy/layout_tests/models/test_run_results.py:

(TestRunResults.add): Do not replace existing result.

4:14 PM Changeset in webkit [281215] by Chris Dumez
  • 7 edits in trunk

Unreviewed, reverting r281206.

Reverting because of branching, will re-land soon

Reverted changeset:

"Implement Crypto.randomUUID()"
https://bugs.webkit.org/show_bug.cgi?id=229240
https://commits.webkit.org/r281206

3:04 PM Changeset in webkit [281214] by Russell Epstein
  • 4 edits in branches/safari-612.1.27.0-branch

Revert "Cherry-pick r280463. rdar://problem/82088775"

This reverts commit r281207.

3:04 PM Changeset in webkit [281213] by Russell Epstein
  • 4 edits in branches/safari-612.1.27.0-branch

Revert "Cherry-pick r280505. rdar://problem/82088775"

This reverts commit r281208.

3:00 PM Changeset in webkit [281212] by Eric Hutchison
  • 2 edits in trunk/LayoutTests

[Mac wk1 Debug] imported/w3c/web-platform-tests/IndexedDB/idbcursor-advance-continue-async.htm is a flaky timeout.
https://bugs.webkit.org/show_bug.cgi?id=229252.

Unreviewed test gardening.

  • platform/mac-wk1/TestExpectations:
2:41 PM Changeset in webkit [281211] by Lauro Moura
  • 2 edits in trunk/Tools

REGRESSION(r279169) [WebDriver] WPT Tools now requires python3 to launch the server
https://bugs.webkit.org/show_bug.cgi?id=229248

Reviewed by Chris Dumez.

239066@main updated the layout test WPT tools to
94d018bb5d7c0d46df7ba1 and this version requires Python3 to run the
WPT server.

  • Scripts/webkitpy/webdriver_tests/webdriver_w3c_web_server.py:

(WebDriverW3CWebServer.start):

2:17 PM Changeset in webkit [281210] by Megan Gardner
  • 5 edits in trunk/Source

Remove unneeded UIKitSPI declarations
https://bugs.webkit.org/show_bug.cgi?id=210075

Reviewed by Wenson Hsieh.

Source/WebKit:

No code changes, just using the now fully public API.

  • Platform/spi/ios/UIKitSPI.h:
  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView _webTouchEventsRecognized:]):
(-[WKContentView _highlightLongPressRecognized:]):
(-[WKContentView _doubleTapRecognizedForDoubleClick:]):
(-[WKContentView _twoFingerSingleTapGestureRecognized:]):
(-[WKContentView _singleTapRecognized:]):
(gestureRecognizerModifierFlags): Deleted.

Source/WTF:

Remove unneeded feature define.

  • wtf/PlatformHave.h:
1:21 PM Changeset in webkit [281209] by Fujii Hironori
  • 3 edits in trunk/LayoutTests

[Win] http/tests/fetch/keepalive-fetch-2.html is randomly failing
https://bugs.webkit.org/show_bug.cgi?id=229247

Unreviewed test gardening.

  • platform/win/TestExpectations: Marked it as flaky.
  • platform/wincairo-wk1/TestExpectations: Ditto.
12:51 PM Changeset in webkit [281208] by Russell Epstein
  • 4 edits in branches/safari-612.1.27.0-branch

Cherry-pick r280505. rdar://problem/82088775

putInlineFastReplacingStaticPropertyIfNeeded should handle custom values
https://bugs.webkit.org/show_bug.cgi?id=227963

Reviewed by Alexey Shvayka.

JSTests:

  • stress/reflect-set-custom-value.js:

Source/JavaScriptCore:

Follow up after r280463: as it turns out, putInlineFastReplacingStaticPropertyIfNeeded also needs to handle
custom values, similar to how definePropertyOnReceiverSlow was updated. This function will be called when the
target property of the receiver is a custom value and isn't reified. The previous test case was expanded to
test both the reified and non-reified cases.

  • runtime/JSObject.cpp: (JSC::JSObject::putInlineFastReplacingStaticPropertyIfNeeded):
  • tools/JSDollarVM.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@280505 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12:51 PM Changeset in webkit [281207] by Russell Epstein
  • 4 edits in branches/safari-612.1.27.0-branch

Cherry-pick r280463. rdar://problem/82088775

definePropertyOnReceiver should check if receiver canPerformFastPutInline
https://bugs.webkit.org/show_bug.cgi?id=227963
<rdar://80259710>

Reviewed by Alexey Shvayka.

JSTests:

  • stress/reflect-set-custom-value.js: Added.

Source/JavaScriptCore:

definePropertyOnReceiver has a fast path if the slot is not opaque and the receiver doesn't
have a custom defineOwnProperty implementation, in which case it calls putInlineFast (and
transitively putDirectInternal<PutModePut>). The issue is that putDirectInternal does not
handle customValues correctly: it just overwrites the property without changing the attributes.
To fix that, we should first check if the property might be a custom value, and if that's the case
we now call definePropertyOnReceiverSlow, which has been updated to handle custom values correctly.
I also added assertions to putInlineFastReplacingStaticPropertyIfNeeded and putDirectInternal
to make sure we don't accidentally overwrite custom values in the future.

  • runtime/JSObject.cpp: (JSC::definePropertyOnReceiverSlow): (JSC::JSObject::definePropertyOnReceiver): (JSC::JSObject::putInlineFastReplacingStaticPropertyIfNeeded):
  • runtime/JSObjectInlines.h: (JSC::JSObject::putDirectInternal):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@280463 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12:13 PM Changeset in webkit [281206] by Chris Dumez
  • 7 edits in trunk

Implement Crypto.randomUUID()
https://bugs.webkit.org/show_bug.cgi?id=229240

Reviewed by Geoffrey Garen.

LayoutTests/imported/w3c:

Rebaseline WPT tests that are now passing.

  • web-platform-tests/WebCryptoAPI/randomUUID.https.any-expected.txt:
  • web-platform-tests/WebCryptoAPI/randomUUID.https.any.worker-expected.txt:

Source/WebCore:

Implement Crypto.randomUUID():

Chrome already implements this and Firefox seems to be working on it
(https://bugzilla.mozilla.org/show_bug.cgi?id=1705264).

No new tests, rebaselined existing tests.

  • page/Crypto.cpp:

(WebCore::Crypto::randomUUID const):

  • page/Crypto.h:
  • page/Crypto.idl:
12:05 PM Changeset in webkit [281205] by Eric Hutchison
  • 2 edits in trunk/LayoutTests

[Mac Debug] imported/w3c/web-platform-tests/IndexedDB/key-generators/reading-autoincrement-indexes-cursors.any.worker.html is a flaky crash.
https://bugs.webkit.org/show_bug.cgi?id=229244.

Unreviewed test gardening.

  • platform/mac/TestExpectations:
11:32 AM Changeset in webkit [281204] by Russell Epstein
  • 1 edit
    2 adds in branches/safari-612.1.27.0-branch/LayoutTests

Cherry-pick r281195. rdar://problem/82083653

Add a layout test for webkit.org/b/229200
https://bugs.webkit.org/show_bug.cgi?id=229222
rdar://81636256

Reviewed by Simon Fraser.

Add a layout test to exercise the hang fixed in bug #229200. This test can be manually run by opening it in
browser and verifying that the page does not hang (and outputs the expected PASS messages).

  • fast/canvas/draw-text-repeatedly-into-disconnected-canvas-expected.txt: Added.
  • fast/canvas/draw-text-repeatedly-into-disconnected-canvas.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@281195 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11:31 AM Changeset in webkit [281203] by Russell Epstein
  • 2 edits in branches/safari-612.1.27.0-branch/Source/WebKit

Cherry-pick r281186. rdar://problem/82083653

REGRESSION (iOS 15): DoubleDown Casino app won't load past launch page
https://bugs.webkit.org/show_bug.cgi?id=229200
rdar://81636256

Reviewed by Myles C. Maxfield.

The changes in https://webkit.org/b/228216 to fix rdar://80473805 introduced a mechanism to keep track of uses
of cached fonts and images in display list items in the web and GPU processes, via a useCount counter variable
that's incremented in the web process whenever the font or image is used in a display list item and decremented
in the GPU process whenever the item is processed.

However, the code to increment useCount in the web process currently only triggers at most once per rendering
update — this means that if there are multiple canvas drawing commands that use fonts in the same rendering
update, the web process' notion of useCount will fall out of sync with the GPU process' notion of useCount.

In most cases, this causes the cached font to remain for longer in the GPU process than necessary; however, in
this specific scenario, it's possible for the web process to tell the GPU process to release the cached font too
early, which causes the GPU process to prematurely purge the font from the cache, and subsequently wait for the
cached font to arrive (which will never arrive, since the web process has already released the font).

In other words, the timeline of events between the web and GPU processes looks like this (where f is a cached
web font, A_f is a drawing command that uses f, and B_f is another drawing command that uses f).

WEB GPU
==============================================================

  1. Cache f
  2. Append A_f
    1. Cache f
    2. Play back A_f
  3. Append B_f
  4. Release f (use count was 1 here)
    1. Release f (use count dropped from 1 to 0)
    2. Play back B_f ...and then display list playback stops due to f not being in the cache.

To address this, we simply move the useCount increment in the web process out of the rendering update check.
The original intent of the fix for bug #228216 was to allow for useCount to increment as many times as needed
per rendering update, so this limitation was unintentional.

Unfortunately, I have not been able to come up with a layout test that reliably reproduces this scenario (yet).

  • WebProcess/GPU/graphics/RemoteResourceCacheProxy.cpp: (WebKit::RemoteResourceCacheProxy::recordFontUse):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@281186 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11:31 AM Changeset in webkit [281202] by Russell Epstein
  • 4 edits in branches/safari-612.1.27.0-branch/Source/JavaScriptCore

Cherry-pick r281178. rdar://problem/82083485

Add an option for canonicalizePrePostIncrements
https://bugs.webkit.org/show_bug.cgi?id=229211
<rdar://problem/82050126>

Reviewed by Mark Lam.

The current phase has bugs. Let's disable it for now until the bugs
are fixed. See discussion about the bugs I spotted in:
https://bugs.webkit.org/show_bug.cgi?id=228538

  • b3/B3Generate.cpp: (JSC::B3::generateToAir):
  • b3/testb3_3.cpp: (addShrTests):
  • runtime/OptionsList.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@281178 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11:04 AM Changeset in webkit [281201] by youenn@apple.com
  • 3 edits in trunk/Source/WebKit

[MacOS] Use com.apple.webkit.microphone extension to gate microphone access in GPUProcess sandbox
https://bugs.webkit.org/show_bug.cgi?id=229238

Reviewed by Eric Carlson.

Manually tested.

  • GPUProcess/mac/com.apple.WebKit.GPUProcess.sb.in:

Align to iOS and only allow microphone access in sandbox if com.apple.webkit.microphone is sent to GPUProcess.

  • Shared/WebPreferencesDefaultValues.cpp:

(WebKit::defaultCaptureAudioInGPUProcessEnabled):
Do audio capture in UIProcess for non Safari applications until rdar://problem/29448368 is fixed.

10:57 AM Changeset in webkit [281200] by Andres Gonzalez
  • 9 edits
    2 adds in trunk

Add layout test for WebAccessibilityObjectWrapper handler for attribute AXLineForTextMarker on MacOS.
https://bugs.webkit.org/show_bug.cgi?id=229220
<rdar://problem/82057459>

Reviewed by Chris Fleizach.

Source/WebCore:

Test: accessibility/mac/line-index-for-textmarker.html

There was not a layout test that exercised directly the handler for the
AXLineForTextMarker attribute in [WebAccessibilityObjectWrapper
accessibilityAttributeValue:withParameter:].
This patch adds the above test to exercise this method for textarea and
contenteditable elements. The text in these elements includes soft and
hard linebreaks, which are important test cases for this API.
The handler for AXLineForTextMarker in turn calls
AccessibilityObject::lineForPosition, and analyzing this method, made a
minor optimization by getting rid off of an unnecessary local variable
and object copy.

  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::lineForPosition const):

Tools:

Added AccessibilityUIElement::lineIndexForTextMarker.

  • WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:

(WTR::AccessibilityUIElement::lineIndexForTextMarker const):

  • WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
  • WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
  • WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:

(WTR::AccessibilityUIElement::lineIndexForTextMarker const):

LayoutTests:

  • accessibility/mac/line-index-for-textmarker-expected.txt: Added.
  • accessibility/mac/line-index-for-textmarker.html: Added.
  • platform/mac-wk1/TestExpectations:
10:45 AM Changeset in webkit [281199] by sihui_liu@apple.com
  • 2 edits in trunk/Source/WebKit

Do not terminate relaunched network process when getting network process connection
https://bugs.webkit.org/show_bug.cgi?id=229236

Reviewed by Chris Dumez.

When UI process fails to get network process connection for the first time, it will retry on next runloop
iteration. On the retry, it terminates existing network process and relaunch a network process, because the
failure may indicate something is wrong in the network process. If existing network process is different from
the one on first try, the existing process can be functional and we should not terminate it.

  • UIProcess/WebsiteData/WebsiteDataStore.cpp:

(WebKit::WebsiteDataStore::getNetworkProcessConnection):

10:42 AM Changeset in webkit [281198] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Update feature statuses in features.json
https://bugs.webkit.org/show_bug.cgi?id=229212

Reviewed by Wenson Hsieh.

Update the status of various features in features.json to reflect their current state.

Remove "enabled-by-default": true from features that are marked as Supported.

  • features.json:
10:19 AM Changeset in webkit [281197] by Jonathan Bedard
  • 4 edits in trunk/Tools

[git-webkit] "IndexError: list index out of range" using log
https://bugs.webkit.org/show_bug.cgi?id=229232

Reviewed by Ryan Haddad.

  • Scripts/libraries/webkitscmpy/setup.py: Bump version.
  • Scripts/libraries/webkitscmpy/webkitscmpy/init.py: Ditto.
  • Scripts/libraries/webkitscmpy/webkitscmpy/program/command.py:

(FilteredCommand.pager):

10:16 AM Changeset in webkit [281196] by Megan Gardner
  • 2 edits in trunk/Source/WebCore

Add Highlight API to features.json
https://bugs.webkit.org/show_bug.cgi?id=208226

Reviewed by Simon Fraser.

  • features.json:
9:58 AM Changeset in webkit [281195] by Wenson Hsieh
  • 1 edit
    2 adds in trunk/LayoutTests

Add a layout test for webkit.org/b/229200
https://bugs.webkit.org/show_bug.cgi?id=229222
rdar://81636256

Reviewed by Simon Fraser.

Add a layout test to exercise the hang fixed in bug #229200. This test can be manually run by opening it in
browser and verifying that the page does not hang (and outputs the expected PASS messages).

  • fast/canvas/draw-text-repeatedly-into-disconnected-canvas-expected.txt: Added.
  • fast/canvas/draw-text-repeatedly-into-disconnected-canvas.html: Added.
9:58 AM Changeset in webkit [281194] by Eric Hutchison
  • 2 edits in trunk/LayoutTests

[Mac wk1] css/css-position/position-relative-table* tests fail.
https://bugs.webkit.org/show_bug.cgi?id=203449.

Unreviewed test gardening.

  • platform/mac-wk1/TestExpectations:
9:50 AM Changeset in webkit [281193] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

REGRESSION(r280723): Protected HLS + EME playback fails with "temporary error"
https://bugs.webkit.org/show_bug.cgi?id=229201
<rdar://81807216>

Reviewed by Eric Carlson.

In r280723, we stopped unconditionally creating an AVPlayerLayer when we create an AVPlayer. However,
we will still create an AVPlayerItemVideoOutput when we create an AVPlayerItem. This leaves our
AVPlayer in a state where AVFoundation will throw a "temporary error; try again later" when given
an otherwise valid protected HLS stream and key data through EME.

To work around this behavior, delay creating the AVPlayerItemVideoOutput until explicitly told to
create video renderers, typically simultaneous to creating an AVPlayerLayer.

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:

(WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayerItem):

9:46 AM Changeset in webkit [281192] by commit-queue@webkit.org
  • 11 edits in trunk

REGRESSION(r280382): [GTK] 2.33.3 does not build with gtk-doc enabled, installs broken pkg-config files
https://bugs.webkit.org/show_bug.cgi?id=229152

Patch by Michael Catanzaro <Michael Catanzaro> on 2021-08-18
Reviewed by Philippe Normand.

Source/JavaScriptCore:

  • PlatformGTK.cmake:
  • javascriptcoregtk.pc.in:

Source/WebKit:

CMake is expanding templates in the pkg-config files that are not supposed to be expanded.
Oops! Let's switch back to using @SVN_REVISION@ instead of ${SVN_REVISION} as the template
for inserting the SVN revision into the pkg-config file, so we can tell CMake to leave the
${} variables alone.

  • PlatformGTK.cmake:
  • PlatformWPE.cmake:
  • Shared/glib/BuildRevision.h.in:
  • gtk/webkit2gtk-web-extension.pc.in:
  • gtk/webkit2gtk.pc.in:

Tools:

  • glib/apply-build-revision-to-files.py:

(main):

9:34 AM Changeset in webkit [281191] by Jonathan Bedard
  • 3 edits
    2 adds in trunk/Tools

[webkitcorepy] Add CallByNeed object
https://bugs.webkit.org/show_bug.cgi?id=229148
<rdar://problem/81817705>

Reviewed by Dewei Zhu.

  • Scripts/libraries/webkitcorepy/setup.py: Bump version.
  • Scripts/libraries/webkitcorepy/webkitcorepy/init.py: Bump version, export Defer object.
  • Scripts/libraries/webkitcorepy/webkitcorepy/call_by_need.py: Added.

(CallByNeed):
(CallByNeed.init):
(CallByNeed.getattribute): Depending on the request attribute, either return it or attempt to
resolve the underlying value before returning the attribute of the resolved value.
(CallByNeed.value): Resolve and return underlying object.
(CallByNeed.call): Ditto.
(CallByNeed.repr): Resolve object and return representation.
(CallByNeed.str): Resolve object and return string conversion.

  • Scripts/libraries/webkitcorepy/webkitcorepy/tests/call_by_need_unittest.py: Added.

(TestCallByNeed):
(TestCallByNeed.test_basic):
(TestCallByNeed.test_string_conversion):
(TestCallByNeed.test_attribute_forwarding):
(TestCallByNeed.test_failed_attribute_forwarding):

9:22 AM Changeset in webkit [281190] by Ayumi Kojima
  • 2 edits in trunk/LayoutTests

[ MacOS EWS ] inspector/canvas/recording-2d-memoryLimit.html is flaky crashing..
https://bugs.webkit.org/show_bug.cgi?id=229237

Unreviewed test gardening.

  • platform/mac-wk2/TestExpectations:
8:59 AM Changeset in webkit [281189] by Martin Robinson
  • 6 edits in trunk

[css-scroll-snap] Don't snap to offscreen snap areas in unidirectional scrolls
https://bugs.webkit.org/show_bug.cgi?id=227949
<rdar://problem/80895783>

Reviewed by Frédéric Wang.

LayoutTests/imported/w3c:

  • web-platform-tests/css/css-scroll-snap/snap-to-visible-areas-both-expected.txt: This bidirectional

scrolling test no longer snaps because we don't have support for choosing between two candidates
properly yet.

  • web-platform-tests/css/css-scroll-snap/snap-to-visible-areas-x-axis-expected.txt: Updated to show newly passing test.
  • web-platform-tests/css/css-scroll-snap/snap-to-visible-areas-y-axis-expected.txt: Ditto.

Source/WebCore:

No new tests. This is covered by two existing WPT tests.

  • page/scrolling/ScrollSnapOffsetsInfo.cpp:

(WebCore::componentForAxis): Added this helper.
(WebCore::hasCompatibleSnapArea): Added this helper that checks to see if any of the snap areas
at a given scroll snap position are compatible with the viewport.
(WebCore::adjustPreviousAndNextForOnscreenSnapAreas): Adjusts the selected previous and next snap
positions by looking backward and forward for the first compatible snap position.
(WebCore::closestSnapOffsetWithInfoAndAxis): Use the new helper.

8:25 AM Changeset in webkit [281188] by Chris Dumez
  • 6 edits in trunk/Source/WebCore

Crash under JSIntersectionObserverCallback::handleEvent()
https://bugs.webkit.org/show_bug.cgi?id=229196
<rdar://82016054>

Reviewed by Geoffrey Garen.

Early return in IntersectionObserver::notify() if the callback has already been destroyed.
This is not supposed to happen as we're supposed to be keeping the JSIntersectionObserver
wrapper alive as long as the IntersectionObserver may fire events, which should keep the
callback alive too. However, despite Ryosuke's fix in r280549, the crash is still happening
in the wild. To address the crash, I am simply doing an early return for now, similarly to
what we already do in MutationObserver::deliver(), while keeping a debug assertion around
in hope of finding the root cause at some point.

No new tests, we do not not how this is happening yet.

  • page/IntersectionObserver.cpp:

(WebCore::IntersectionObserver::notify):

8:10 AM Changeset in webkit [281187] by Russell Epstein
  • 8 edits in branches/safari-612.1.28-branch/Source

Versioning.

WebKit-7612.1.28.4

6:42 AM Changeset in webkit [281186] by Wenson Hsieh
  • 2 edits in trunk/Source/WebKit

REGRESSION (iOS 15): DoubleDown Casino app won't load past launch page
https://bugs.webkit.org/show_bug.cgi?id=229200
rdar://81636256

Reviewed by Myles C. Maxfield.

The changes in https://webkit.org/b/228216 to fix rdar://80473805 introduced a mechanism to keep track of uses
of cached fonts and images in display list items in the web and GPU processes, via a useCount counter variable
that's incremented in the web process whenever the font or image is used in a display list item and decremented
in the GPU process whenever the item is processed.

However, the code to increment useCount in the web process currently only triggers at most once per rendering
update — this means that if there are multiple canvas drawing commands that use fonts in the same rendering
update, the web process' notion of useCount will fall out of sync with the GPU process' notion of useCount.

In most cases, this causes the cached font to remain for longer in the GPU process than necessary; however, in
this specific scenario, it's possible for the web process to tell the GPU process to release the cached font too
early, which causes the GPU process to prematurely purge the font from the cache, and subsequently wait for the
cached font to arrive (which will never arrive, since the web process has already released the font).

In other words, the timeline of events between the web and GPU processes looks like this (where f is a cached
web font, A_f is a drawing command that uses f, and B_f is another drawing command that uses f).

WEB GPU
==============================================================

  1. Cache f
  2. Append A_f
    1. Cache f
    2. Play back A_f
  3. Append B_f
  4. Release f (use count was 1 here)
    1. Release f (use count dropped from 1 to 0)
    2. Play back B_f ...and then display list playback stops due to f not being in the cache.

To address this, we simply move the useCount increment in the web process out of the rendering update check.
The original intent of the fix for bug #228216 was to allow for useCount to increment as many times as needed
per rendering update, so this limitation was unintentional.

Unfortunately, I have not been able to come up with a layout test that reliably reproduces this scenario (yet).

  • WebProcess/GPU/graphics/RemoteResourceCacheProxy.cpp:

(WebKit::RemoteResourceCacheProxy::recordFontUse):

6:30 AM Changeset in webkit [281185] by Martin Robinson
  • 6 edits in trunk

position: sticky with display: inline-block
https://bugs.webkit.org/show_bug.cgi?id=224415
<rdar://problem/76811968>

Reviewed by Simon Fraser.

Source/WebCore:

Improve sticky positioning applied to inline items. The first improvement is to
skip anonymous RenderBlock parents of inline display items when looking for the
containing block used to calculate sticky constraints. These anonymous parents
are not the containing block that constrains the movement of these kind of stickily
positioned items. Instead look for containing block for the anonymous parent,
which does limit the scroll boundaries of inline stickily position items.

Previously, when converting the frame rect from the coordinate space of the stickily
positioned item to that of the scrolling container, the code used to apply the offset
from the containing block to the scrolling ancestor directly to the frame rect. That
doesn't work when the containing block that determines sticky constraints is not the
direct containing block of the stickily positioned items (as it is for inlines).

Instead, the code now just maps the frame rect directly from the item parent to
the scrolling ancestor. This simplifies things a bit and allows it to work with
inline stickily positioned items.

Finally, this change adds comments to make it clearer what this method is doing.

No new tests. This is covered by existing WPT tests. Specifically the following
tests are now passing:

imported/w3c/web-platform-tests/css/css-position/sticky/position-sticky-hyperlink.html
imported/w3c/web-platform-tests/css/css-position/sticky/position-sticky-nested-table.html
imported/w3c/web-platform-tests/css/css-position/sticky/position-sticky-table-parts.html
imported/w3c/web-platform-tests/css/css-position/sticky/position-sticky-table-th-bottom.html
imported/w3c/web-platform-tests/css/css-position/sticky/position-sticky-nested-thead-th.html

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::positionOffsetValue): enclosingClippingBoxForStickyPosition now returns a pair
to avoid passing in a pointer. Only look at the first part of the pair here.

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::computeStickyPositionConstraints const): Modified this method
to return a pair in order to avoid dealing with input parameters. This allows simplifying this
method, making the code a bit simpler.
(WebCore::RenderBoxModelObject::enclosingClippingBoxForStickyPosition const): Deleted.
(WebCore::RenderBoxModelObject::computeStickyPositionConstraints const): Make two changes
to this method to improve sticky positioning for inline elements. The first change is
to be a bit better about finding the appropriate containing block for calculating sticky
constraints. The second is to more resiliently move from coordinate systems. In addition,
improve the comments for this method to make it clearer what is happening at each step.

  • rendering/RenderBoxModelObject.h: Updated method declaration.

LayoutTests:

a false pass previously.

2:13 AM Changeset in webkit [281184] by Martin Robinson
  • 2 edits in trunk/Tools

[Flatpak SDK] Increase the startup performance of webkit-flatpak
https://bugs.webkit.org/show_bug.cgi?id=229185

Reviewed by Philippe Normand.

Improve flatpakutils.py by ensuring that we don't make redundant
calls to flatpak during initialization of the data structures. This
saves 5 seconds on every call to build-webkit and run-webkit-tests.

Before:

$ time ./Tools/Scripts/webkit-flatpak -c true
real 0m6,297s
user 0m0,786s
sys 0m0,513s

After:

$ time ./Tools/Scripts/webkit-flatpak -c true
real 0m1,243s
user 0m0,375s
sys 0m0,162s

  • flatpak/flatpakutils.py:

(FlatpakPackages.init): Separate the update into another
method so that it can be called directly when a package is installed.
Add new packages directly to self.packages.
(FlatpakRepos.init): Ensure that we only update our repositories
and package list once we've initialized our list of repositories.
(FlatpakRepos.add): Return True if this method actually changed anything
and accept a parameter determining whether an update is done to
the repository and package list.
(FlatpakRepos.is_package_installed): Added this method which replaces
FlatpakRepo.is_app_installed.
(FlatpakRepo.init): Remove the app registry because it is duplicated
by FlatpakPackages.
(FlatpakPackage.is_installed): Now call FlatpakRepos.is_package_installed.
(WebkitFlatpak._reset_repository): Set up both repositories here and
pass then as part of the FlatpakRepos constructor.
(WebkitFlatpak.main): Separate out the check which deletes the Flatpak
repository from the one that checks if the packages are installed. This
makes sure we don't install packages and then immediately delete them.
(WebkitFlatpak.check_installed_packages): rename _get_packages to _get_dependency_packages
in order to make it clear that it doesn't return installed packages.
(WebkitFlatpak._get_dependency_packages): Ditto.
(WebkitFlatpak.install_all): Ditto.
(FlatpakRepo.is_app_installed): Deleted.
(WebkitFlatpak._get_packages): Deleted.

1:26 AM Changeset in webkit [281183] by calvaris@igalia.com
  • 5 edits
    1 add in trunk/Source

[GStreamer][EME] Try to parse XML init datas that could possibly come from MPD manifests
https://bugs.webkit.org/show_bug.cgi?id=229145

Reviewed by Alicia Boya Garcia.

Source/WebCore:

Added GStreamerEMEUtilities to include implementation of
InitData::extractCencIfNeeded. This tries to parse the possible
XML inside an init data that could come from MPD manifests. If it
succeeds, it keeps the parsed init data, if not, it returns the
original one.

Based on a patch by Philippe Normand.

  • platform/GStreamer.cmake:
  • platform/graphics/gstreamer/eme/GStreamerEMEUtilities.cpp: Added.

(WebCore::markupStartElement):
(WebCore::markupEndElement):
(WebCore::markupText):
(WebCore::markupPassthrough):
(WebCore::markupError):
(WebCore::InitData::extractCencIfNeeded):

  • platform/graphics/gstreamer/eme/GStreamerEMEUtilities.h:

(WebCore::InitData::InitData):

Source/WTF:

  • wtf/glib/GUniquePtr.h: Added deleter for GMarkupParseContext.

Aug 17, 2021:

11:50 PM Changeset in webkit [281182] by Devin Rousso
  • 9 edits in trunk/Source

Web Inspector: match the undocked tab bar style when docked bottom/side
https://bugs.webkit.org/show_bug.cgi?id=212398

Reviewed by Timothy Hatcher.

Source/WebCore:

  • inspector/InspectorFrontendHost.cpp:

(WebCore::InspectorFrontendHost::platformVersionName const):
Add macOS Monterey.

Source/WebInspectorUI:

This will avoid confusion when switching from docked to undocked (and vice versa) as the tab
bar UI will no longer be significantly different.

  • UserInterface/Views/TabBar.js:

(WI.TabBar):
(WI.TabBar.prototype.layout):
(WI.TabBar.prototype.layout.measureWidth):
(WI.TabBar.prototype._recordTabBarItemSizesAndPositions):
(WI.TabBar.prototype._applyTabBarItemSizesAndPositions):
(WI.TabBar.prototype._clearTabBarItemSizesAndPositions):
(WI.TabBar.prototype._handleMouseDown):
(WI.TabBar.prototype._handleMouseMoved):
(WI.TabBar.get horizontalPadding): Deleted.
(WI.TabBar.prototype._recordTabBarItemSizesAndPositions.add): Deleted.

  • UserInterface/Views/TabBar.css:

(.tab-bar):
(body:is(.mac-platform.monterey, .mac-platform.big-sur) .tab-bar): Added.
(body:not(.mac-platform.monterey, .mac-platform.big-sur) .tab-bar): Added.
(body:is(.mac-platform.monterey, .mac-platform.big-sur).window-inactive .tab-bar, body:not(.mac-platform.monterey, .mac-platform.big-sur).window-inactive .tab-bar): Added.
(.tab-bar > .tabs > .item):
(body:is(.mac-platform.monterey, .mac-platform.big-sur) .tab-bar > .tabs > .item): Added.
(body:not(.mac-platform.monterey, .mac-platform.big-sur) .tab-bar > .tabs > .item): Added.
(.tab-bar > .tabs:not(.calculate-width) > .item:not(.pinned)):
(.tab-bar > .tabs > .item:nth-child(n + 2 of :not(.hidden)), .tab-bar > .tabs:not(.hide-border-start) > .item:nth-child(1 of :not(.hidden)), .tab-bar > .tabs.dragging-tab > .item.selected):
(.tab-bar > .tabs:not(.hide-border-end) > .item:nth-last-child(1 of :not(.hidden))):
(body:is(.mac-platform.monterey, .mac-platform.big-sur) .tab-bar > .tabs > .item:not(.disabled).selected): Added.
(body:is(.mac-platform.monterey, .mac-platform.big-sur):not(.docked) .tab-bar > .tabs > .item:not(.disabled).selected): Added.
(body:not(.mac-platform.monterey, .mac-platform.big-sur) .tab-bar > .tabs > .item:not(.disabled).selected): Added.
(body:is(.mac-platform.monterey, .mac-platform.big-sur) .tab-bar > .tabs:not(.animating) > .item:not(.selected, .disabled):hover): Added.
(body:not(.mac-platform.monterey, .mac-platform.big-sur) .tab-bar > .tabs:not(.animating) > .item:not(.selected, .disabled):hover): Added.
(.tab-bar > .tabs:not(.animating) > .item:not(.selected, .disabled):hover, .tab-bar > .tabs:not(.animating) > .item:not(.selected, .disabled):hover + .item):
(.tab-bar > .tabs:not(.animating) > .item:last-child:not(.selected, .disabled):hover):
(body:is(.mac-platform.monterey, .mac-platform.big-sur).window-inactive .tab-bar > .tabs > .item, body:not(.mac-platform.monterey, .mac-platform.big-sur).window-inactive .tab-bar > .tabs > .item): Added.
(body.window-inactive .tab-bar > .tabs > .item):
(body.window-inactive .tab-bar > .tabs > .item:not(.disabled).selected):
(.tab-bar > .tabs.dragging-tab > .item:not(.disabled).selected, .tab-bar > .tabs.static-layout:not(.animating.inserting-tab):not(.dragging-tab) > .item:nth-last-child(1 of :not(.pinned)), .tab-bar > .tabs.animating.closing-tab > .item:not(.disabled).selected):
(body.window-inactive .tab-bar > .tabs.dragging-tab > .item:not(.disabled).selected, body.window-inactive .tab-bar > .tabs.static-layout:not(.animating.inserting-tab):not(.dragging-tab) > .item:nth-last-child(1 of :not(.pinned)), body.window-inactive .tab-bar > .tabs.animating.closing-tab > .item:not(.disabled).selected):
(@media (prefers-color-scheme: dark) body:is(.mac-platform.monterey, .mac-platform.big-sur) .tab-bar, body:not(.mac-platform.monterey, .mac-platform.big-sur) .tab-bar): Added.
(@media (prefers-color-scheme: dark) body:is(.mac-platform.monterey, .mac-platform.big-sur) .tab-bar): Added.
(@media (prefers-color-scheme: dark) body:not(.mac-platform.monterey, .mac-platform.big-sur) .tab-bar): Added.
(@media (prefers-color-scheme: dark) body:not(.mac-platform.monterey, .mac-platform.big-sur) .tab-bar > .tabs > .item): Added.
(@media (prefers-color-scheme: dark) body:is(.mac-platform.monterey, .mac-platform.big-sur) .tab-bar > .tabs > .item:not(.disabled).selected): Added.
(@media (prefers-color-scheme: dark) body:not(.mac-platform.monterey, .mac-platform.big-sur) .tab-bar > .tabs > .item:not(.disabled).selected): Added.
(@media (prefers-color-scheme: dark) body:is(.mac-platform.monterey, .mac-platform.big-sur) .tab-bar > .tabs:not(.animating) > .item:not(.selected, .disabled):hover): Added.
(@media (prefers-color-scheme: dark) body:not(.mac-platform.monterey, .mac-platform.big-sur) .tab-bar > .tabs:not(.animating) > .item:not(.selected, .disabled):hover): Added.
(@media (prefers-color-scheme: dark) .tab-bar > .tabs:not(.animating) > .item:not(.selected, .disabled):hover > .icon):
(@media (prefers-color-scheme: dark) body:is(.mac-platform.monterey, .mac-platform.big-sur).window-inactive .tab-bar, body:not(.mac-platform.monterey, .mac-platform.big-sur).window-inactive .tab-bar): Added.
(@media (prefers-color-scheme: dark) body:is(.mac-platform.monterey, .mac-platform.big-sur).window-inactive .tab-bar > .tabs > .item): Added.
(@media (prefers-color-scheme: dark) body:not(.mac-platform.monterey, .mac-platform.big-sur).window-inactive .tab-bar > .tabs > .item): Added.
(@media (prefers-color-scheme: dark) body:is(.mac-platform.monterey, .mac-platform.big-sur).window-inactive .tab-bar > .tabs > .item:not(.disabled).selected): Added.
(@media (prefers-color-scheme: dark) body:not(.mac-platform.monterey, .mac-platform.big-sur).window-inactive .tab-bar > .tabs > .item:not(.disabled).selected): Added.
(body.big-sur .tab-bar): Deleted.
(body:not(.docked) .tab-bar): Deleted.
(body.big-sur:not(.docked) .tab-bar): Deleted.
(body:not(.big-sur):not(.docked) .tab-bar): Deleted.
(body.big-sur:not(.docked).window-inactive .tab-bar, body:not(.big-sur):not(.docked).window-inactive .tab-bar): Deleted.
(body.docked.window-inactive .tab-bar): Deleted.
(body.docked.bottom .tab-bar > .border.top): Deleted.
(body.big-sur.docked .tab-bar > .border.bottom): Deleted.
(body.docked .tab-bar .tabs): Deleted.
(body.docked .tab-bar > .tabs > .flexible-space): Deleted.
(body.docked.bottom .tab-bar > .tabs > .flexible-space): Deleted.
(body:not(.docked) .tab-bar > .tabs > .item): Deleted.
(body.big-sur:not(.docked) .tab-bar > .tabs > .item): Deleted.
(body:not(.big-sur):not(.docked) .tab-bar > .tabs > .item): Deleted.
(body:not(.docked) .tab-bar > .tabs:not(.calculate-width) > .item:not(.pinned)): Deleted.
(body.docked .tab-bar > .tabs > .item): Deleted.
(body:not(.docked) .tab-bar > .tabs > .item:nth-child(n + 3 of :not(.hidden)), body:not(.docked) .tab-bar > .tabs:not(.hide-border-start) > .item:nth-child(2 of :not(.hidden)), .tab-bar > .tabs.dragging-tab > .item.selected): Deleted.
(body:not(.docked) .tab-bar > .tabs:not(.hide-border-end) > .item:nth-last-child(1 of :not(.hidden))): Deleted.
(body.docked .tab-bar > .tabs > .item.pinned): Deleted.
(body.big-sur:not(.docked) .tab-bar > .tabs > .item:not(.disabled).selected): Deleted.
(body:not(.big-sur):not(.docked) .tab-bar > .tabs > .item:not(.disabled).selected): Deleted.
(body.docked .tab-bar > .tabs > .item:not(.disabled):matches(.selected, :hover)): Deleted.
(body.docked .tab-bar > .tabs > .item:not(.disabled).selected): Deleted.
(body.big-sur:not(.docked) .tab-bar > .tabs:not(.animating) > .item:not(.selected, .disabled):hover): Deleted.
(body:not(.big-sur):not(.docked) .tab-bar > .tabs:not(.animating) > .item:not(.selected, .disabled):hover): Deleted.
(body.docked .tab-bar > .tabs:not(.animating) > .item:not(.selected, .disabled):hover): Deleted.
(body:not(.docked) .tab-bar > .tabs:not(.animating) > .item:not(.selected, .disabled):hover, body:not(.docked) .tab-bar > .tabs:not(.animating) > .item:not(.selected, .disabled):hover + .item): Deleted.
(body:not(.docked) .tab-bar > .tabs:not(.animating) > .item:last-child:not(.selected, .disabled):hover): Deleted.
(body:not(.docked).window-inactive .tab-bar > .tabs > .item): Deleted.
(body.big-sur:not(.docked).window-inactive .tab-bar > .tabs > .item, body:not(.big-sur):not(.docked).window-inactive .tab-bar > .tabs > .item): Deleted.
(body:not(.docked).window-inactive .tab-bar > .tabs > .item:not(.disabled).selected): Deleted.
(body.docked.window-inactive .tab-bar > .tabs > .item:not(.disabled).selected): Deleted.
(body:not(.docked) .tab-bar > .tabs.dragging-tab > .item:not(.disabled).selected, body:not(.docked) .tab-bar > .tabs.static-layout:not(.animating.inserting-tab):not(.dragging-tab) > .item:nth-last-child(1 of :not(.pinned)), body:not(.docked) .tab-bar > .tabs.animating.closing-tab > .item:not(.disabled).selected): Deleted.
(body:not(.docked).window-inactive .tab-bar > .tabs.dragging-tab > .item:not(.disabled).selected, body:not(.docked).window-inactive .tab-bar > .tabs.static-layout:not(.animating.inserting-tab):not(.dragging-tab) > .item:nth-last-child(1 of :not(.pinned)), body:not(.docked).window-inactive .tab-bar > .tabs.animating.closing-tab > .item:not(.disabled).selected): Deleted.
(@media (prefers-color-scheme: dark) body.big-sur .tab-bar, body:not(.big-sur) .tab-bar): Deleted.
(@media (prefers-color-scheme: dark) body.big-sur:not(.docked) .tab-bar): Deleted.
(@media (prefers-color-scheme: dark) body:not(.big-sur):not(.docked) .tab-bar): Deleted.
(@media (prefers-color-scheme: dark) body.docked .tab-bar): Deleted.
(@media (prefers-color-scheme: dark) body.docked.bottom .tab-bar > .border.top): Deleted.
(@media (prefers-color-scheme: dark) body:not(.big-sur):not(.docked) .tab-bar > .tabs > .item): Deleted.
(@media (prefers-color-scheme: dark) body.big-sur:not(.docked) .tab-bar > .tabs > .item:not(.disabled).selected): Deleted.
(@media (prefers-color-scheme: dark) body:not(.big-sur):not(.docked) .tab-bar > .tabs > .item:not(.disabled).selected): Deleted.
(@media (prefers-color-scheme: dark) body.big-sur:not(.docked) .tab-bar > .tabs:not(.animating) > .item:not(.selected, .disabled):hover): Deleted.
(@media (prefers-color-scheme: dark) body:not(.big-sur):not(.docked) .tab-bar > .tabs:not(.animating) > .item:not(.selected, .disabled):hover): Deleted.
(@media (prefers-color-scheme: dark) body.docked .tab-bar > .tabs:not(.animating) > .item:not(.selected, .disabled):hover): Deleted.
(@media (prefers-color-scheme: dark) body.docked .tab-bar > .tabs > .item:not(.disabled).selected): Deleted.
(@media (prefers-color-scheme: dark) body.docked.window-inactive .tab-bar > .tabs > .item:not(.disabled).selected): Deleted.
(@media (prefers-color-scheme: dark) body:not(.docked) .tab-bar > .tabs:not(.animating) > .item:not(.selected, .disabled):hover > .icon): Deleted.
(@media (prefers-color-scheme: dark) body:not(.docked).window-inactive .tab-bar): Deleted.
(@media (prefers-color-scheme: dark) body.big-sur:not(.docked).window-inactive .tab-bar, body:not(.big-sur):not(.docked).window-inactive .tab-bar): Deleted.
(@media (prefers-color-scheme: dark) body.big-sur:not(.docked).window-inactive .tab-bar > .tabs > .item): Deleted.
(@media (prefers-color-scheme: dark) body:not(.big-sur):not(.docked).window-inactive .tab-bar > .tabs > .item): Deleted.
(@media (prefers-color-scheme: dark) body.big-sur:not(.docked).window-inactive .tab-bar > .tabs > .item:not(.disabled).selected): Deleted.
(@media (prefers-color-scheme: dark) body:not(.big-sur):not(.docked).window-inactive .tab-bar > .tabs > .item:not(.disabled).selected): Deleted.

  • UserInterface/Views/TabBarItem.js:

(WI.TabBarItem.get horizontalMargin): Deleted.

  • remove the flexible space filler elements (and associated CSS) before and after the tabs
  • remove any .docked CSS
  • remove the (now unnecessary) :not(.docked) from all CSS related to the WI.TabBar
  • replace .big-sur with .mac-platform.big-sur for clarity
  • add .mac-platform.monterey alongside any .mac-platform.big-sur
  • UserInterface/Base/Main.js:

(WI.undockedTitleAreaHeight):

  • UserInterface/Views/Main.css:

(body:is(.mac-platform.monterey, .mac-platform.big-sur) #undocked-title-area): Added.
(body:not(.mac-platform.monterey, .mac-platform.big-sur) #undocked-title-area): Added.
(@media (prefers-color-scheme: dark) body:is(.mac-platform.monterey, .mac-platform.big-sur) #undocked-title-area): Added.
(@media (prefers-color-scheme: dark) body:not(.mac-platform.monterey, .mac-platform.big-sur) #undocked-title-area): Added.
(@media (prefers-color-scheme: dark) body:is(.mac-platform.monterey, .mac-platform.big-sur).window-inactive #undocked-title-area): Added.
(@media (prefers-color-scheme: dark) body:not(.mac-platform.monterey, .mac-platform.big-sur).window-inactive #undocked-title-area): Added.
(body.big-sur #undocked-title-area): Deleted.
(body:not(.big-sur) #undocked-title-area): Deleted.
(@media (prefers-color-scheme: dark) body.big-sur #undocked-title-area): Deleted.
(@media (prefers-color-scheme: dark) body:not(.big-sur) #undocked-title-area): Deleted.
(@media (prefers-color-scheme: dark) body.big-sur.window-inactive #undocked-title-area): Deleted.
(@media (prefers-color-scheme: dark) body:not(.big-sur).window-inactive #undocked-title-area): Deleted.

  • UserInterface/Views/Variables.css:

(body:is(.mac-platform.monterey, .mac-platform.big-sur)): Added.
(body:not(.mac-platform.monterey, .mac-platform.big-sur):not(.docked)): Added.
(body:is(.mac-platform.monterey, .mac-platform.big-sur):not(.docked)): Added.
(@media (prefers-color-scheme: dark) body:is(.mac-platform.monterey, .mac-platform.big-sur)): Added.
(body.big-sur): Deleted.
(body.mac-platform:not(.big-sur):not(.docked)): Deleted.
(body.mac-platform.big-sur:not(.docked)): Deleted.
(@media (prefers-color-scheme: dark) body.big-sur): Deleted.
Add support for macOS Monterey.

11:26 PM Changeset in webkit [281181] by achristensen@apple.com
  • 2 edits in trunk/LayoutTests

Mark test as flaky: imported/w3c/web-platform-tests/navigation-timing/nav2_test_attributes_values.html
https://bugs.webkit.org/show_bug.cgi?id=229181

r281147 changed this test from flaky to differently flaky.
It used to pass sometimes because the whole document would load before any script was executed, so there was no PerformanceNavigationTiming
object to update as the document loaded. r281147 fixed that, making it basically always pass when loaded over the real internet.
Now, sometimes it loads locally so fast that Performance::reduceTimeResolution makes some of the values 0, which is allowed by the spec but not
by the tests. In practice, pages don't load over the internet in less than 1ms, so this isn't much of an issue, just in our test bots.
I'll propose a fix for the web platform test, but for now I mark it as flaky.

8:55 PM Changeset in webkit [281180] by Russell Epstein
  • 8 edits in branches/safari-612.1.27.0-branch/Source

Versioning.

WebKit-7612.1.27.0.26

8:30 PM Changeset in webkit [281179] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[GLIB] test http/tests/security/webaudio-render-remote-audio-allowed-crossorigin-redirect.html is a flaky timeout since r278004
https://bugs.webkit.org/show_bug.cgi?id=229219

Unreviewed test gardening.

Patch by Arcady Goldmints-Orlov <Arcady Goldmints-Orlov> on 2021-08-17

  • platform/glib/TestExpectations:
7:27 PM Changeset in webkit [281178] by sbarati@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

Add an option for canonicalizePrePostIncrements
https://bugs.webkit.org/show_bug.cgi?id=229211
<rdar://problem/82050126>

Reviewed by Mark Lam.

The current phase has bugs. Let's disable it for now until the bugs
are fixed. See discussion about the bugs I spotted in:
https://bugs.webkit.org/show_bug.cgi?id=228538

  • b3/B3Generate.cpp:

(JSC::B3::generateToAir):

  • b3/testb3_3.cpp:

(addShrTests):

  • runtime/OptionsList.h:
7:20 PM Changeset in webkit [281177] by Fujii Hironori
  • 2 edits in trunk/LayoutTests

[curl] Kept alive NetworkResourceLoaders should be cancelled by NetworkLoad::didCompleteWithError on PolicyAction::Ignore of didReceiveResponse
https://bugs.webkit.org/show_bug.cgi?id=228095
<rdar://problem/81393898>

Unreviewed test failure fix.

  • http/tests/fetch/resources/get-set-temp-file.py: chmod +x.
5:57 PM Changeset in webkit [281176] by Russell Epstein
  • 1 copy in tags/Safari-612.1.28.3

Tag Safari-612.1.28.3.

5:55 PM Changeset in webkit [281175] by sihui_liu@apple.com
  • 2 edits in trunk/Source/WebKit

Fix crash in TestWebKitAPI.NetworkProcess.CrashWhenNotAssociatedWithDataStore
https://bugs.webkit.org/show_bug.cgi?id=229209
rdar://82040197

Reviewed by Geoffrey Garen.

When getting network process connection fails, we don't need to retry or crash UI process if web process is
already gone.

  • UIProcess/WebsiteData/WebsiteDataStore.cpp:

(WebKit::WebsiteDataStore::getNetworkProcessConnection):

5:12 PM Changeset in webkit [281174] by Ayumi Kojima
  • 2 edits in trunk/LayoutTests

[ MacOS wk2 Debug ] http/wpt/webrtc/sframe-transform-error.html is a flaky failure.
https://bugs.webkit.org/show_bug.cgi?id=229206

Unreviewed test gardening.

  • platform/mac-wk2/TestExpectations:
5:05 PM Changeset in webkit [281173] by Ayumi Kojima
  • 3 edits in trunk/LayoutTests

[ Win EWS ] Rebaselining 2 http/tests/security/contentSecurityPolicy/worker-* tests.
https://bugs.webkit.org/show_bug.cgi?id=229216

Unreviewed test gardening.

  • platform/win/http/tests/security/contentSecurityPolicy/worker-blob-inherits-csp-importScripts-redirect-cross-origin-blocked-expected.txt:
  • platform/win/http/tests/security/contentSecurityPolicy/worker-csp-importScripts-redirect-cross-origin-blocked-expected.txt:
4:56 PM Changeset in webkit [281172] by Eric Hutchison
  • 2 edits in trunk/LayoutTests

[Mac Guard-Malloc] imported/w3c/web-platform-tests/mathml/relations/html5-tree/display-2.html is a flaky failure.
rdar://82053210.

Unreviewed test gardening.

  • platform/mac/TestExpectations:
4:26 PM Changeset in webkit [281171] by Ayumi Kojima
  • 2 edits in trunk/LayoutTests

[ Win EWS ] http/tests/security/no-javascript-refresh-percent-escaped.py is flaky crashing.
https://bugs.webkit.org/show_bug.cgi?id=229215

Unreviewed test gardening.

  • platform/win/TestExpectations:
4:20 PM Changeset in webkit [281170] by Robert Jenner
  • 2 edits in trunk/LayoutTests

REGRESSION (r271146): [ iOS ] editing/selection/ios/scrolling-to-focused-element-inside-iframe.html is failing
https://bugs.webkit.org/show_bug.cgi?id=228200

Unreviewed test gardening.

  • platform/ios/TestExpectations:
4:10 PM Changeset in webkit [281169] by Ayumi Kojima
  • 2 edits in trunk/LayoutTests

[ Win EWS ] performance-api/performance-timeline-api.html needs to be rebaselined.
https://bugs.webkit.org/show_bug.cgi?id=229214

Unreviewed test gardening.

  • platform/win/performance-api/performance-timeline-api-expected.txt:
3:54 PM Changeset in webkit [281168] by Robert Jenner
  • 1 edit
    4 adds in trunk/LayoutTests

REBASELINE : [ iOS ] 3X imported/w3c/web-platform-t ests/css/css-typed-om layout-tests are constant text failures
https://bugs.webkit.org/show_bug.cgi?id=229207

Unreviewed test gardening/ iOS rebaseline.

  • platform/ios/imported/w3c/web-platform-tests/css/css-typed-om/rotate-by-added-angle-expected.txt: Added.
  • platform/ios/imported/w3c/web-platform-tests/css/css-typed-om/width-by-max-px-em-expected.txt: Added.
  • platform/ios/imported/w3c/web-platform-tests/css/css-typed-om/width-by-min-px-em-expected.txt: Added.
3:16 PM Changeset in webkit [281167] by Jonathan Bedard
  • 4 edits in trunk/Tools

[webkitcorepy] Return SourceFileLoader in find_module
https://bugs.webkit.org/show_bug.cgi?id=229172
<rdar://problem/82006256>

Reviewed by Stephanie Lewis.

  • Scripts/libraries/webkitcorepy/webkitcorepy/autoinstall.py:

(AutoInstall.find_module): Return SourceFileLoader object in Python 3.

2:42 PM Changeset in webkit [281166] by Ayumi Kojima
  • 2 edits in trunk/LayoutTests

[ Mac wk2 ] http/tests/webAPIStatistics/screen-functions-accessed-data-collection.html is a flaky timeout.
rdar://82047046

Unreviewed test gardening.

  • platform/mac-wk2/TestExpectations:
2:22 PM Changeset in webkit [281165] by Russell Epstein
  • 8 edits in branches/safari-612.1.28-branch/Source

Versioning.

WebKit-7612.1.28.3

2:14 PM Changeset in webkit [281164] by Russell Epstein
  • 1 copy in tags/Safari-612.1.27.0.25

Tag Safari-612.1.27.0.25.

2:14 PM Changeset in webkit [281163] by Russell Epstein
  • 8 edits in branches/safari-612.1.27.0-branch/Source

Versioning

WebKit-7612.1.27.0.25

1:44 PM Changeset in webkit [281162] by Ayumi Kojima
  • 3 edits in trunk/LayoutTests

Rebaselining [ Win EWS ] http/tests/misc/webtiming-slow-load.py.
https://bugs.webkit.org/show_bug.cgi?id=229099

Unreviewed test gardening.

  • platform/win/TestExpectations:
  • platform/win/http/tests/misc/webtiming-slow-load-expected.txt:
1:37 PM Changeset in webkit [281161] by Eric Hutchison
  • 2 edits in trunk/LayoutTests

[Monterey] imported/w3c/web-platform-tests/service-workers/service-worker/fetch-canvas-tainting-double-write.https.html is a constant failure.
rdar://82044002.

Unreviewed test gardening.

  • platform/mac-wk2/TestExpectations:
1:32 PM Changeset in webkit [281160] by ddkilzer@apple.com
  • 9 edits in trunk/Source/ThirdParty/ANGLE

[Metal ANGLE] Fix over-autorelease of rx::DisplayMtl::getMetalDeviceMatchingAttribute() and various Objective-C leaks
<https://webkit.org/b/229128>
<rdar://problem/81964007>

Reviewed by Alex Christensen.

  • src/libANGLE/renderer/metal/DisplayMtl.h:

(rx::DisplayMtl::getMetalDeviceMatchingAttribute):

  • Change to return mtl::AutoObjCPtr<> to make ownership clear.

(rx::DisplayMtl::mMetalDevice):

  • No need to initialize to nil.
  • src/libANGLE/renderer/metal/DisplayMtl.mm:

(rx::DisplayMtl::initializeImpl):

  • Update for changes to getMetalDeviceMatchingAttribute().

(rx::DisplayMtl::getMetalDeviceMatchingAttribute):

  • Change to return mtl::AutoObjCPtr<> to make ownership clear.
  • Fix leak of deviceList, externalGPUs, integratedGPUs, and discreteGPUs.
  • Use mtl::adoptObjCObj<>() to prevent leak of MTLCreateSystemDefaultDevice().
  • src/libANGLE/renderer/metal/IOSurfaceSurfaceMtl.mm:
  • Fix leak of captureDescriptor in two different if blocks.
  • src/libANGLE/renderer/metal/ProgramMtl.mm:
  • Fix leak of funcConstants in early return on error path.
  • src/libANGLE/renderer/metal/ProvokingVertexHelper.mm:

(rx::ProvokingVertexHelper::getSpecializedShader):

  • Fix leak of fcValues.
  • src/libANGLE/renderer/metal/SurfaceMtl.mm:
  • Fix leak of captureDescriptor in two different if blocks.
  • src/libANGLE/renderer/metal/mtl_common.h:

(rx::mtl::WrappedObject::retainAssign):

  • Move statement inside #if/#endif that isn't needed for ARC.

(rx::mtl::WrappedObject::unretainAssign): Add.
(rx::mtl::AutoObjCPtr::AutoObjCPtr): Add.
(rx::mtl::adoptObjCObj): Add.

  • Add a helper method to adopt an Objective-C object to eliminate the need to autorelease a +1 retained object before an mtl::AutoObjCPtr<> object wraps it. Modeled after WTF::RetainPtr<> in WebKit.
  • src/libANGLE/renderer/metal/mtl_state_cache.mm:

(rx::mtl::RenderPipelineCache::createRenderPipelineState):
(rx::mtl::ProvokingVertexComputePipelineCache::createComputePipelineState):

  • Use adoptObjCObj<>() to fix potential leak on the early return path since these methods return an mtl::AutoObjCPtr<>.
1:19 PM Changeset in webkit [281159] by Eric Hutchison
  • 2 edits in trunk/LayoutTests

[Monterey wk2 Debug arm64,iOS 15 wk2] imported/w3c/web-platform-tests/xhr/xhr-timeout-longtask.any.html is a flaky failure.
rdar://82043074.

Unreviewed test gardening.

  • platform/mac-wk2/TestExpectations:
12:57 PM Changeset in webkit [281158] by Fujii Hironori
  • 3 edits
    4 adds in trunk

[curl] Kept alive NetworkResourceLoaders should be cancelled by NetworkLoad::didCompleteWithError on PolicyAction::Ignore of didReceiveResponse
https://bugs.webkit.org/show_bug.cgi?id=228095
<rdar://problem/81393898>

Reviewed by Don Olmstead.

Source/WebKit:

If a page dispatches a keepalive fetch and the page is navigated
away, the alive NetworkResourceLoader is transferred to the
NetworkSession by NetworkConnectionToWebProcess::transferKeptAliveLoad.
After the NetworkResourceLoader receives a response, it is canceled
by PolicyAction::Ignore.

However, NetworkDataTaskCurl didn't properly cancel the kept alive
NetworkResourceLoader. They remained in m_keptAliveLoads of
NetworkSession even after the requests were canceled.

Test: http/tests/fetch/keepalive-fetch-2.html

  • NetworkProcess/curl/NetworkDataTaskCurl.cpp:

(WebKit::NetworkDataTaskCurl::invokeDidReceiveResponse): Call didCompleteWithError on PolicyAction::Ignore.

LayoutTests:

  • http/tests/fetch/keepalive-fetch-2-expected.txt: Added.
  • http/tests/fetch/keepalive-fetch-2.html: Added.
  • http/tests/fetch/resources/get-set-temp-file.py: Added.
  • http/tests/fetch/resources/keepalive-fetch-2-window.html: Added.
12:34 PM Changeset in webkit [281157] by jer.noble@apple.com
  • 6 edits in trunk/Source

De-duplicate the Cocoa-specific MediaPlayerPrivateRemote constructor
https://bugs.webkit.org/show_bug.cgi?id=229193

Reviewed by Eric Carlson.

Source/WebCore:

Don't include a Objective-C header in a file which will be included by C++ source; forward-declare
the class instead.

  • platform/graphics/avfoundation/objc/VideoLayerManagerObjC.h:
  • platform/graphics/avfoundation/objc/VideoLayerManagerObjC.mm:

Source/WebKit:

Rather than have two, separate implementations of the MediaPlayerPrivateRemote constructor (one for Cocoa),
just wrap the initializer for the Cocoa-specific ivar in PLATFORM(COCOA) guards.

  • WebProcess/GPU/media/MediaPlayerPrivateRemote.cpp:

(WebKit::MediaPlayerPrivateRemote::MediaPlayerPrivateRemote):

  • WebProcess/GPU/media/cocoa/MediaPlayerPrivateRemoteCocoa.mm:

(WebKit::MediaPlayerPrivateRemote::MediaPlayerPrivateRemote): Deleted.

12:23 PM Changeset in webkit [281156] by commit-queue@webkit.org
  • 4 edits in trunk

Unreviewed. Skip failing MIPS tests
https://bugs.webkit.org/show_bug.cgi?id=229198

Patch by Mikhail R. Gadelha <Mikhail R. Gadelha> on 2021-08-17

JSTests:

  • ChakraCore.yaml:

LayoutTests:

  • platform/wpe/TestExpectations:
12:11 PM Changeset in webkit [281155] by Lauro Moura
  • 2 edits in trunk/Tools

[GLIB] Avoid getting stuck searching for revision in some cases
https://bugs.webkit.org/show_bug.cgi?id=229199

Reviewed by Philippe Normand.

With an empty .git/svn, the git svn info command might get stuck.

  • glib/apply-build-revision-to-files.py:

(get_build_revision):

12:02 PM Changeset in webkit [281154] by Eric Hutchison
  • 2 edits in trunk/LayoutTests

[Monterey wk1 Debug Intel] inspector/css/getMatchedStylesForNodeMarkerPseudoId.html is a flaky failure).
rdar://82039967.

Unreviewed test gardening.

  • platform/mac-wk1/TestExpectations:
11:48 AM Changeset in webkit [281153] by Russell Epstein
  • 1 copy in tags/Safari-612.1.28.2

Tag Safari-612.1.28.2.

11:48 AM Changeset in webkit [281152] by Eric Hutchison
  • 2 edits in trunk/LayoutTests

[Monterey wk1 Debug] inspector/timeline/timeline-event-TimerInstall.html is a flaky crash.
rdar://82039288.

Unreviewed test gardening.

  • platform/mac-wk1/TestExpectations:
11:41 AM Changeset in webkit [281151] by Russell Epstein
  • 2 edits in branches/safari-612.1.28-branch/Source/WebInspectorUI/WebInspectorUI.vcxproj

Cherry-pick r281121. rdar://problem/82038333

Apply patch. rdar://problem/81915461

git-svn-id: https://svn.webkit.org/repository/webkit/branches/safari-612.1.15.4-branch@281121 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11:41 AM Changeset in webkit [281150] by Russell Epstein
  • 6 edits in branches/safari-612.1.28-branch/Source

Cherry-pick r280597. rdar://problem/82038333

Speculative build fix. rdar://79147214.

git-svn-id: https://svn.webkit.org/repository/webkit/branches/safari-612.1.15.4-branch@280597 268f45cc-cd09-0410-ab3c-d52691b4dbfc

git-svn-id: https://svn.webkit.org/repository/webkit/branches/safari-612.1.15.4-branch@280792 268f45cc-cd09-0410-ab3c-d52691b4dbfc

git-svn-id: https://svn.webkit.org/repository/webkit/branches/safari-612.1.15.4-branch@280800 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11:20 AM Changeset in webkit [281149] by Russell Epstein
  • 8 edits in branches/safari-612.1.28-branch/Source

Versioning.

WebKit-7612.1.28.2

10:46 AM Changeset in webkit [281148] by Eric Hutchison
  • 2 edits in trunk/LayoutTests

[Monterey wk2 Release] performance-api/paint-timing/paint-timing-with-worker.html is a flaky crash.
rdar://82036119.

Unreviewed test gardening.

  • platform/mac-wk2/TestExpectations:
10:30 AM Changeset in webkit [281147] by commit-queue@webkit.org
  • 12 edits in trunk

Document load events should update timing in PerformanceNavigationTiming even after its instantiation
https://bugs.webkit.org/show_bug.cgi?id=229181

Patch by Alex Christensen <achristensen@webkit.org> on 2021-08-17
Reviewed by Chris Dumez.

LayoutTests/imported/w3c:

  • web-platform-tests/navigation-timing/nav2_test_attributes_values-expected.txt:

Source/WebCore:

When we make a PerformanceNavigationTiming object, we copy the DocumentLoadTiming and DocumentEventTiming values.
If PerformanceNavigationTiming is accessed before the document has finished loading, we still need to update the timing values.

Covered by a newly passing WPT test, which Chrome and Firefox already pass.

  • dom/Document.cpp:

(WebCore::Document::documentEventTimingFromNavigationTiming):
(WebCore::Document::setReadyState):
(WebCore::Document::finishedParsing):

  • dom/Document.h:
  • loader/DocumentLoadTiming.h:

(WebCore::DocumentLoadTiming::setLoadEventStart):
(WebCore::DocumentLoadTiming::setLoadEventEnd):
(WebCore::DocumentLoadTiming::markLoadEventStart): Deleted.
(WebCore::DocumentLoadTiming::markLoadEventEnd): Deleted.

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::dispatchLoadEvent):

  • page/Performance.h:
  • page/PerformanceNavigationTiming.h:

LayoutTests:

This test now always passes in WK2.

10:25 AM Changeset in webkit [281146] by Eric Hutchison
  • 2 edits in trunk/LayoutTests

[Star wk2 Release] performance-api/performance-observer-no-document-leak.html is a flaky crash.
rdar://82035182.

Unreviewed test gardening.

  • platform/mac-wk2/TestExpectations:
10:05 AM Changeset in webkit [281145] by Eric Hutchison
  • 2 edits in trunk/LayoutTests

[Monterey wk2 Release] security/contentSecurityPolicy/image-with-file-url-allowed-by-img-src-star.html is flaky image-only fail.
rdar://82034073.

Unreviewed test gardening.

  • platform/mac-wk2/TestExpectations:
9:41 AM Changeset in webkit [281144] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[GTK] Mark webgl/1.0.3/conformance/textures/tex-image-and-sub-image-2d-with-video.html as flaky
https://bugs.webkit.org/show_bug.cgi?id=229192

This test now consistently either passes or fails and no longer times out.

Unreviewed test gardening.

Patch by Arcady Goldmints-Orlov <Arcady Goldmints-Orlov> on 2021-08-17

  • platform/gtk/TestExpectations:
9:38 AM Changeset in webkit [281143] by Eric Hutchison
  • 2 edits in trunk/LayoutTests

[Mac wk2] webanimations/translate-property-and-translate-animation-with-delay-on-forced-layer.html is a flaky image-only fail.
rdar://82032946.

Unreviewed test gardening.

  • platform/mac-wk2/TestExpectations:
9:36 AM Changeset in webkit [281142] by Ayumi Kojima
  • 2 edits in trunk/LayoutTests

[ Win EWS ] fast/forms/number/number-spinbutton-state.html is flaky crashing.
https://bugs.webkit.org/show_bug.cgi?id=229194

Unreviewed test gardening.

  • platform/win/TestExpectations:
9:28 AM Changeset in webkit [281141] by Ayumi Kojima
  • 2 edits in trunk/LayoutTests

[ Win EWS ] svg/custom/animate-initial-pause-unpause.html is flaky timing out.
https://bugs.webkit.org/show_bug.cgi?id=229195

Unreviewed test gardening.

  • platform/win/TestExpectations:
9:07 AM Changeset in webkit [281140] by achristensen@apple.com
  • 1 edit
    1 delete in trunk/LayoutTests/imported/w3c

Remove unused test expectation file

  • web-platform-tests/resource-timing/idlharness-expected.txt: Removed.
9:01 AM Changeset in webkit [281139] by Razvan Caliman
  • 3 edits in trunk/Source/WebInspectorUI

Web Inspector: Do not show contextual documentation popup in the Changes panel
https://bugs.webkit.org/show_bug.cgi?id=229001
<rdar://problem/81792379>

Reviewed by Devin Rousso.

Add config option to WI.SpreadsheetStyleProperty to prevent showing a contextual documentation button.

  • UserInterface/Views/ChangesDetailsSidebarPanel.js:

(WI.ChangesDetailsSidebarPanel.prototype._createRuleElement.onEach):

  • UserInterface/Views/SpreadsheetStyleProperty.js:

(WI.SpreadsheetStyleProperty.prototype._addContextualDocumentationButton):

8:42 AM Changeset in webkit [281138] by Ayumi Kojima
  • 2 edits in trunk/LayoutTests

[ Debug wk2 ] ASSERTION FAILED: willBeComposited == needsToBeComposited(layer, queryData).
https://bugs.webkit.org/show_bug.cgi?id=223750

Unreviewed test gardening.

  • platform/mac-wk2/TestExpectations:
8:14 AM Changeset in webkit [281137] by Eric Hutchison
  • 2 edits in trunk/LayoutTests

[Win10 wk1] animations/shadow-host-child-change.html is a constant failure.
https://bugs.webkit.org/show_bug.cgi?id=229191.

Unreviewed test gardening.

  • platform/win/TestExpectations:
7:11 AM Changeset in webkit [281136] by Antti Koivisto
  • 3 edits
    2 adds in trunk

Incorrect repaint when inline level box style change triggers line height change
https://bugs.webkit.org/show_bug.cgi?id=229140
<rdar://problem/81980863>

Reviewed by Alan Bujtas.

Source/WebCore:

If an existing block shrinks vertically as a result of layout we fail to invalidate the
old content area for repaint, thus potentially leaving painting artefacts behind.
This is often hidden by the content shift triggering other repaints.

Test: fast/repaint/line-layout-block-shrink.html

  • rendering/RenderBlockFlow.cpp:

(WebCore::RenderBlockFlow::layoutModernLines):

Adjust the repaint area to include the content size before the layout.

LayoutTests:

  • fast/repaint/line-layout-block-shrink-expected.txt: Added.
  • fast/repaint/line-layout-block-shrink.html: Added.
6:47 AM Changeset in webkit [281135] by Philippe Normand
  • 2 edits in trunk/Source/WebCore

REGRESSION(r218083): [GStreamer] webrtc unexpected failures
https://bugs.webkit.org/show_bug.cgi?id=229187

Reviewed by Xabier Rodriguez-Calvar.

The stream-collection messages actually don't need to be handled synchronously in the
mediastream cases. The limitations of the MSE backend do not apply there.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::MediaPlayerPrivateGStreamer::handleStreamCollectionMessage):
(WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin):

6:09 AM Changeset in webkit [281134] by Jean-Yves Avenard
  • 11 edits
    2 adds in trunk

Implement API to ensure MediaRemote key mapping is correct
https://bugs.webkit.org/show_bug.cgi?id=229070
<rdar://problem/81894480>

Reviewed by Eric Carlson.

Source/WebCore:

This change adds Internals entries to test bug 229068.
While we do not mock the MediaRemote service, we still go one step further in
ensuring that the mappings between MediaSession action handlers and
PlatformMediaSession are correct.

Test: media/media-session/actionHandlerInternalMappings.html

  • platform/NowPlayingManager.cpp:

(WebCore::NowPlayingManager::supportedCommands const):

  • platform/NowPlayingManager.h:
  • platform/audio/PlatformMediaSession.h:
  • platform/audio/PlatformMediaSessionManager.h:

(WebCore::PlatformMediaSessionManager::supportedCommands const):

  • platform/audio/cocoa/MediaSessionManagerCocoa.h:
  • platform/audio/cocoa/MediaSessionManagerCocoa.mm:

(WebCore::MediaSessionManagerCocoa::supportedCommands const):

  • testing/Internals.cpp:

(WebCore::Internals::platformSupportedCommands const):

  • testing/Internals.h:
  • testing/Internals.idl:

LayoutTests:

  • media/media-session/actionHandlerInternalMappings-expected.txt: Added.
  • media/media-session/actionHandlerInternalMappings.html: Added.
3:16 AM Changeset in webkit [281133] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

REGRESSION(r278981): [GStreamer][Debug] Assert crashes when running media/track tests
https://bugs.webkit.org/show_bug.cgi?id=229123
<rdar://problem/81978494>

Patch by Philippe Normand <pnormand@igalia.com> on 2021-08-17
Reviewed by Xabier Rodriguez-Calvar.

Implement a dummy id() method for InbandTextTrackPrivateGStreamer.

  • platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.cpp:

(WebCore::InbandTextTrackPrivateGStreamer::InbandTextTrackPrivateGStreamer):

  • platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.h:
12:22 AM Changeset in webkit [281132] by jer.noble@apple.com
  • 3 edits in trunk/Source/WebCore

LayoutTests imported/w3c/web-platform-tests/html/canvas/element/imagebitmap/createImageBitmap-* are flakey
https://bugs.webkit.org/show_bug.cgi?id=229169

Reviewed by Eric Carlson.

When a data:// URL is passed to AVFoundation, the loading of that URL is handled by WebCoreAVFResourceLoader,
which in turn relies on a PlatformMediaResourceLoader to turn the data URL into a data buffer. However, in the
case of the GPU process, this means dispatching the request from GPU, to WebContent, to Network process and to
send the data back from the Network, to WebContent, to GPU process. If a synchronous operation (like painting)
is underway, the data response can block until that synchronous operation completes. If that operation is a
paint, and the data requested is required to complete that paint, the paint will fail.

For the narrow case of a data:// URL, it's not necessary to dispatch to another process to turn that URL into
data; it can happen locally, avoiding the hop to another process and the subsequent deadlock.

  • platform/graphics/avfoundation/objc/WebCoreAVFResourceLoader.h:

(WebCore::WebCoreAVFResourceLoader::logger const):

  • platform/graphics/avfoundation/objc/WebCoreAVFResourceLoader.mm:

(WebCore::DataURLResourceMediaLoader::DataURLResourceMediaLoader):
(WebCore::WebCoreAVFResourceLoader::~WebCoreAVFResourceLoader):
(WebCore::WebCoreAVFResourceLoader::startLoading):

Aug 16, 2021:

11:59 PM Changeset in webkit [281131] by Diego Pino Garcia
  • 4 edits
    1 move in trunk/LayoutTests

[GLIB] Unreviewed test gardening. Update baselines after r277970.

This change removes the remaining test failures filed under webkit.org/b/186638.

  • platform/glib/TestExpectations:
  • platform/glib/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/operator-dictionary-combining-expected.txt:
  • platform/glib/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/operator-dictionary-stretchy-001-expected.txt: Renamed from LayoutTests/platform/gtk/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/operator-dictionary-stretchy-001-expected.txt.
  • platform/glib/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/operator-dictionary-stretchy-002-expected.txt:
11:50 PM Changeset in webkit [281130] by Diego Pino Garcia
  • 3 edits in trunk/LayoutTests

[GLIB][GTK] Unreviewed test gardening. Reassign bugs filed under webkit.org/b/186638.

webkit.org/b/186638 was used to track tests failing in EWS-GTK, but
all the current tests filed under this bug are actually failing in the
post-commit bot. The failing tests should be filed under their own bug.

  • platform/glib/TestExpectations:
  • platform/gtk/TestExpectations:
11:43 PM Changeset in webkit [281129] by Lauro Moura
  • 2 edits in trunk/Tools

REGRESSION(r281079) [GLIB] API test WebKitWebsiteData/deviceidhashsalt is not waiting for title change
https://bugs.webkit.org/show_bug.cgi?id=229174

Reviewed by Carlos Garcia Campos.

r281079 changed the helper method waitUntilTitleChangedTo to
immediately return if the current title is already the expected one.

While this is working fine in other tests, the deviceidhashsalt tries
to load the same page twice. As the title does not change, the call
returns right away, before the expected side effects of the load
happen.

This commit adds a dummy "about:blank" call between both original
calls to make sure we track the title change correctly.

  • TestWebKitAPI/Tests/WebKitGLib/TestWebsiteData.cpp:

(testWebsiteDataDeviceIdHashSalt):

10:34 PM Changeset in webkit [281128] by Antti Koivisto
  • 5 edits
    2 adds in trunk

REGRESSION (r275756): Accelerated animations freeze when invalidating layout with shadow dom
https://bugs.webkit.org/show_bug.cgi?id=228954
<rdar://problem/81750217>

Reviewed by Ryosuke Niwa.

Source/WebCore:

Test: animations/shadow-host-child-change.html

Tearing down the host renderer after slot assignments change cancels animations on it.

  • dom/SlotAssignment.cpp:

(WebCore::SlotAssignment::didChangeSlot):

  • rendering/updating/RenderTreeUpdater.cpp:

(WebCore::RenderTreeUpdater::tearDownRenderersAfterSlotChange):

Add a version that keeps the animations going on the teardown root.

(WebCore::RenderTreeUpdater::tearDownRenderers):

  • rendering/updating/RenderTreeUpdater.h:

LayoutTests:

Original test by Liam DeBeasi

  • animations/shadow-host-child-change-expected.html: Added.
  • animations/shadow-host-child-change.html: Added.
9:52 PM Changeset in webkit [281127] by achristensen@apple.com
  • 1 edit
    714 adds in trunk/LayoutTests/imported/w3c

Imported CSS Typed OM from w3c
https://bugs.webkit.org/show_bug.cgi?id=229177

Patch by Johnson Zhou <qiaosong_zhou@apple.com> on 2021-08-16
Reviewed by Alex Christensen.

  • web-platform-tests/css/css-typed-om/CSSMatrixComponent-DOMMatrix-mutable-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/CSSMatrixComponent-DOMMatrix-mutable.html: Added.
  • web-platform-tests/css/css-typed-om/META.yml: Added.
  • web-platform-tests/css/css-typed-om/declared-styleMap-accepts-inherit-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/declared-styleMap-accepts-inherit.html: Added.
  • web-platform-tests/css/css-typed-om/factory-absolute-length-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/factory-absolute-length.html: Added.
  • web-platform-tests/css/css-typed-om/factory-duration-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/factory-duration.html: Added.
  • web-platform-tests/css/css-typed-om/factory-frequency-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/factory-frequency.html: Added.
  • web-platform-tests/css/css-typed-om/idlharness-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/idlharness.html: Added.
  • web-platform-tests/css/css-typed-om/resources/testhelper.js: Added.

(epsilonForUnitType):
(assert_color_channel_approx_equals):
(assert_style_value_equals):
(assert_style_value_array_equals):
(createDivWithStyle):
(createInlineStyleMap):
(createElementWithInlineStyleMap):
(createComputedStyleMap):
(createElementWithComputedStyleMap):
(createDeclaredStyleMap):
(createRuleWithDeclaredStyleMap):
(loadImageResource):
(assert_matrix_approx_equals):

  • web-platform-tests/css/css-typed-om/rotate-by-added-angle-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/rotate-by-added-angle-ref.html: Added.
  • web-platform-tests/css/css-typed-om/rotate-by-added-angle.html: Added.
  • web-platform-tests/css/css-typed-om/set-var-reference-thcrash-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/set-var-reference-thcrash.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-normalization/normalize-ident.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-normalization/normalize-ident.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-normalization/normalize-image-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-normalization/normalize-image.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-normalization/normalize-numeric.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-normalization/normalize-numeric.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-normalization/normalize-tokens.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-normalization/normalize-tokens.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-normalization/positionvalue-normalization.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-normalization/positionvalue-normalization.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-normalization/transformvalue-normalization.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-normalization/transformvalue-normalization.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-objects/parse-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-objects/parse-invalid-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-objects/parse-invalid.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-objects/parse.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-objects/parseAll-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-objects/parseAll-invalid-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-objects/parseAll-invalid.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-objects/parseAll.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-serialization/crashtests/cssTransform-Internal-value-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-serialization/crashtests/cssTransform-Internal-value.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-serialization/cssImageValue-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-serialization/cssImageValue.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-serialization/cssKeywordValue.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-serialization/cssKeywordValue.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-serialization/cssMathValue.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-serialization/cssMathValue.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-serialization/cssPositionValue-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-serialization/cssPositionValue.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-serialization/cssStyleValue-cssom-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-serialization/cssStyleValue-cssom.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-serialization/cssStyleValue-string-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-serialization/cssStyleValue-string.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-serialization/cssTransformValue.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-serialization/cssTransformValue.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-serialization/cssUnitValue.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-serialization/cssUnitValue.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-serialization/cssUnparsedValue-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-serialization/cssUnparsedValue.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssColorValue-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssColorValue.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssHSL-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssHSL.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssKeywordValue-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssKeywordValue-invalid-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssKeywordValue-invalid.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssKeywordValue-value-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssKeywordValue-value.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssKeywordValue.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssMatrixComponent.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssMatrixComponent.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssPerspective.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssPerspective.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssPositionValue-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssPositionValue-invalid-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssPositionValue-invalid.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssPositionValue.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssRGB-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssRGB.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssRotate.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssRotate.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssScale.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssScale.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssSkew.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssSkew.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssSkewX.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssSkewX.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssSkewY.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssSkewY.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssTransformComponent-toMatrix-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssTransformComponent-toMatrix-relative-units-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssTransformComponent-toMatrix-relative-units.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssTransformComponent-toMatrix.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssTransformValue-toMatrix-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssTransformValue-toMatrix.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssTransformValue.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssTransformValue.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssTranslate.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssTranslate.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssUnparsedValue-empty-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssUnparsedValue-empty.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssUnparsedValue-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssUnparsedValue-indexed-getter-setter-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssUnparsedValue-indexed-getter-setter.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssUnparsedValue-iterable-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssUnparsedValue-iterable.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssUnparsedValue-length-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssUnparsedValue-length.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssUnparsedValue.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssVariableReferenceValue-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssVariableReferenceValue-invalid-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssVariableReferenceValue-invalid.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssVariableReferenceValue-variable-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssVariableReferenceValue-variable.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssVariableReferenceValue.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/numeric-objects/add-two-types.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/numeric-objects/add-two-types.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/numeric-objects/arithmetic.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/numeric-objects/arithmetic.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/numeric-objects/create-a-type.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/numeric-objects/create-a-type.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/numeric-objects/cssMathInvert-type-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/numeric-objects/cssMathInvert-type.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/numeric-objects/cssMathNegate-type-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/numeric-objects/cssMathNegate-type.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/numeric-objects/cssMathValue.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/numeric-objects/cssMathValue.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/numeric-objects/cssUnitValue-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/numeric-objects/cssUnitValue-value-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/numeric-objects/cssUnitValue-value.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/numeric-objects/cssUnitValue.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/numeric-objects/cssnumericvalue-multiply-two-types.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/numeric-objects/cssnumericvalue-multiply-two-types.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/numeric-objects/equals.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/numeric-objects/equals.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/numeric-objects/numeric-factory.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/numeric-objects/numeric-factory.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/numeric-objects/parse.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/numeric-objects/parse.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/numeric-objects/resources/testhelper.js: Added.

(assert_numeric_type_equals):

  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/numeric-objects/to.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/numeric-objects/to.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/numeric-objects/toSum.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/numeric-objects/toSum.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/computed/computed.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/computed/computed.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/computed/get-auto-min-size-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/computed/get-auto-min-size.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/computed/get-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/computed/get-invalid-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/computed/get-invalid.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/computed/get-position-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/computed/get-position.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/computed/get-shorthand-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/computed/get-shorthand.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/computed/get.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/computed/getAll-shorthand-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/computed/getAll-shorthand.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/computed/getAll.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/computed/getAll.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/computed/has.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/computed/has.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/computed/iterable.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/computed/iterable.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/declared/append.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/declared/append.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/declared/clear-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/declared/clear.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/declared/declared.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/declared/declared.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/declared/delete-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/declared/delete-invalid-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/declared/delete-invalid.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/declared/delete-shorthand-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/declared/delete-shorthand.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/declared/delete.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/declared/get-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/declared/get-invalid-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/declared/get-invalid.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/declared/get-shorthand-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/declared/get-shorthand.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/declared/get.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/declared/getAll-shorthand-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/declared/getAll-shorthand.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/declared/getAll.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/declared/getAll.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/declared/has.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/declared/has.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/declared/iterable.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/declared/iterable.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/declared/set-shorthand-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/declared/set-shorthand.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/declared/set.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/declared/set.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/append.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/append.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/clear-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/clear.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/delete-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/delete-invalid-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/delete-invalid.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/delete-shorthand-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/delete-shorthand.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/delete.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/get-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/get-invalid-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/get-invalid.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/get-shorthand-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/get-shorthand.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/get.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/getAll-shorthand-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/getAll-shorthand.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/getAll.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/getAll.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/has.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/has.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/iterable.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/iterable.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/set-shorthand-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/set-shorthand.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/set.tentative-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/set.tentative.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/accent-color-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/accent-color.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/alignment-baseline-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/alignment-baseline.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/all-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/all.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/animation-delay-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/animation-delay.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/animation-direction-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/animation-direction.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/animation-duration-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/animation-duration.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/animation-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/animation-fill-mode-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/animation-fill-mode.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/animation-iteration-count-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/animation-iteration-count.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/animation-name-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/animation-name.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/animation-play-state-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/animation-play-state.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/animation-timing-function-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/animation-timing-function.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/animation.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/backdrop-filter-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/backdrop-filter.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/backface-visibility-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/backface-visibility.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/background-attachment-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/background-attachment.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/background-blend-mode-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/background-blend-mode.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/background-clip-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/background-clip.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/background-color-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/background-color.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/background-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/background-image-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/background-image.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/background-origin-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/background-origin.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/background-position-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/background-position.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/background-repeat-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/background-repeat.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/background-size-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/background-size.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/background.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/baseline-shift-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/baseline-shift.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/block-size-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/block-size.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/border-collapse-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/border-collapse.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/border-color-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/border-color.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/border-image-outset-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/border-image-outset.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/border-image-repeat-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/border-image-repeat.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/border-image-slice-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/border-image-slice.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/border-image-source-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/border-image-source.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/border-image-width-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/border-image-width.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/border-radius-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/border-radius.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/border-style-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/border-style.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/border-width-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/border-width.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/bottom-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/bottom.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/box-shadow-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/box-shadow.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/box-sizing-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/box-sizing.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/break-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/break.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/caption-side-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/caption-side.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/caret-color-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/caret-color.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/center-coordinate-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/center-coordinate.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/clear-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/clear.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/clip-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/clip-path-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/clip-path.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/clip-rule-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/clip-rule.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/clip.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/color-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/color-interpolation-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/color-interpolation.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/color.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/column-count-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/column-count.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/column-rule-color-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/column-rule-color.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/column-rule-style-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/column-rule-style.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/column-rule-width-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/column-rule-width.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/column-span-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/column-span.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/column-width-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/column-width.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/contain-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/contain.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/coordinate-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/coordinate.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/counter-increment-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/counter-increment.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/counter-reset-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/counter-reset.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/counter-set-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/counter-set.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/cursor-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/cursor.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/d-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/d.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/direction-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/direction.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/display-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/display.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/dominant-baseline-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/dominant-baseline.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/empty-cells-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/empty-cells.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/fill-color-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/fill-color.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/fill-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/fill-opacity-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/fill-opacity.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/fill-rule-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/fill-rule.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/fill.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/filter-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/filter.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/flex-basis-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/flex-basis.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/flex-direction-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/flex-direction.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/flex-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/flex-flow-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/flex-flow.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/flex-grow-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/flex-grow.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/flex-shrink-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/flex-shrink.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/flex-wrap-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/flex-wrap.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/flex.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/float-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/float.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/flood-color-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/flood-color.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/flood-opacity-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/flood-opacity.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-family-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-family.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-feature-settings-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-feature-settings.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-kerning-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-kerning.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-language-override-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-language-override.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-optical-sizing-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-optical-sizing.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-palette-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-palette.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-presentation-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-presentation.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-size-adjust-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-size-adjust.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-size-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-size.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-stretch-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-stretch.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-style-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-style.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-synthesis-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-synthesis.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-variant-alternates-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-variant-alternates.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-variant-caps-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-variant-caps.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-variant-east-asian-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-variant-east-asian.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-variant-emoji-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-variant-emoji.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-variant-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-variant-ligatures-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-variant-ligatures.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-variant-numeric-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-variant-numeric.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-variant.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-variation-settings-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-variation-settings.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-weight-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font-weight.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/font.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/gap-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/gap.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/grid-area-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/grid-area.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/grid-auto-columns-rows-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/grid-auto-columns-rows.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/grid-auto-flow-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/grid-auto-flow.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/grid-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/grid-gap-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/grid-gap.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/grid-start-end-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/grid-start-end.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/grid-template-areas-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/grid-template-areas.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/grid-template-columns-rows-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/grid-template-columns-rows.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/grid-template-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/grid-template.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/grid.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/height-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/height.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/hyphens-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/hyphens.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/image-rendering-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/image-rendering.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/inline-size-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/inline-size.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/isolation-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/isolation.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/left-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/left.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/letter-spacing-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/letter-spacing.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/lighting-color-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/lighting-color.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/line-break-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/line-break.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/line-height-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/line-height-step-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/line-height-step.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/line-height.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/list-style-image-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/list-style-image.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/list-style-position-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/list-style-position.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/list-style-type-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/list-style-type.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/logical-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/logical.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/margin-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/margin.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/marker-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/marker.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/mask-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/mask-image-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/mask-image.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/mask-type-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/mask-type.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/mask.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/mix-blend-mode-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/mix-blend-mode.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/object-fit-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/object-fit.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/object-position-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/object-position.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/offset-anchor-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/offset-anchor.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/offset-distance-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/offset-distance.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/offset-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/offset-path-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/offset-path.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/offset-position-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/offset-position.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/offset-rotate-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/offset-rotate.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/offset.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/opacity-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/opacity.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/order-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/order.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/orphans-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/orphans.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/outline-color-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/outline-color.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/outline-offset-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/outline-offset.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/outline-style-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/outline-style.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/outline-width-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/outline-width.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/overflow-anchor-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/overflow-anchor.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/overflow-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/overflow-wrap-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/overflow-wrap.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/overflow.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/overscroll-behavior-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/overscroll-behavior.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/padding-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/padding.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/page-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/page.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/paint-order-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/paint-order.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/perspective-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/perspective-origin-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/perspective-origin.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/perspective.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/pointer-events-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/pointer-events.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/position-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/position.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/quotes-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/quotes.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/radius-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/radius.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/resize-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/resize.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/resources/testsuite.js: Added.

(assert_is_unit):
(assert_is_calc_sum):
(assert_is_equal_with_range_handling):
(assert_is_unsupported):
(input.new.CSSKeywordValue):
(const.gTestSyntaxExamples.string_appeared_here.input.new.CSSUnitValue):
(const.gTestSyntaxExamples.string_appeared_here.assert_is_unit):
(const.gTestSyntaxExamples.string_appeared_here.new.CSSUnitValue):
(testPropertyValid):
(set testIsImageValidForProperty):
(set testPropertyInvalid):
(get createKeywordExample):
(runPropertyTests):
(runListValuedPropertyTests):
(runUnsupportedPropertyTests):

  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/right-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/right.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/scroll-behavior-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/scroll-behavior.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/scroll-margin-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/scroll-margin.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/scroll-padding-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/scroll-padding.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/scroll-snap-align-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/scroll-snap-align.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/scroll-snap-stop-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/scroll-snap-stop.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/scroll-snap-type-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/scroll-snap-type.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/scrollbar-gutter-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/scrollbar-gutter.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/scrollbar-width-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/scrollbar-width.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/shape-image-threshold-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/shape-image-threshold.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/shape-margin-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/shape-margin.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/shape-outside-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/shape-outside.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/shape-rendering-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/shape-rendering.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/speak-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/speak.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/stop-color-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/stop-color.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/stop-opacity-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/stop-opacity.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/stroke-dasharray-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/stroke-dasharray.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/stroke-dashoffset-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/stroke-dashoffset.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/stroke-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/stroke-linecap-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/stroke-linecap.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/stroke-linejoin-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/stroke-linejoin.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/stroke-miterlimit-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/stroke-miterlimit.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/stroke-opacity-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/stroke-opacity.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/stroke-width-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/stroke-width.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/stroke.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/tab-size-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/tab-size.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/table-layout-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/table-layout.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-align-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-align-last-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-align-last.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-align.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-anchor-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-anchor.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-combine-upright-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-combine-upright.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-decoration-color-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-decoration-color.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-decoration-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-decoration-line-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-decoration-line.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-decoration-skip-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-decoration-skip-ink-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-decoration-skip-ink.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-decoration-skip.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-decoration-style-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-decoration-style.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-decoration-thickness-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-decoration-thickness.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-decoration.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-emphasis-color-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-emphasis-color.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-indent-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-indent.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-justify-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-justify.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-orientation-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-orientation.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-overflow-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-overflow.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-rendering-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-rendering.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-shadow-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-shadow.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-size-adjust-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-size-adjust.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-transform-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-transform.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-underline-offset-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-underline-offset.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-underline-position-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/text-underline-position.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/top-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/top.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/touch-action-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/touch-action.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/transform-box-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/transform-box.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/transform-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/transform-interpolated-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/transform-interpolated.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/transform-style-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/transform-style.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/transform.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/transition-delay-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/transition-delay.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/transition-duration-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/transition-duration.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/transition-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/transition-property-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/transition-property.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/transition-timing-function-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/transition-timing-function.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/transition.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/unicode-bidi-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/unicode-bidi.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/user-select-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/user-select.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/vector-effect-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/vector-effect.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/vertical-align-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/vertical-align.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/visibility-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/visibility.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/white-space-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/white-space.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/widows-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/widows.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/width-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/width.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/will-change-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/will-change.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/word-break-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/word-break.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/word-spacing-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/word-spacing.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/word-wrap-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/word-wrap.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/writing-mode-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/writing-mode.html: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/z-index-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/z-index.html: Added.
  • web-platform-tests/css/css-typed-om/width-by-max-px-em-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/width-by-max-px-em.html: Added.
  • web-platform-tests/css/css-typed-om/width-by-min-px-em-expected.txt: Added.
  • web-platform-tests/css/css-typed-om/width-by-min-px-em.html: Added.
9:32 PM Changeset in webkit [281126] by Devin Rousso
  • 4 edits in trunk

Web Share CanShare() should be called after transient activation check
https://bugs.webkit.org/show_bug.cgi?id=229132

Reviewed by Tim Horton.

LayoutTests/imported/w3c:

  • web-platform-tests/web-share/share-consume-activation.https-expected.txt:

Source/WebCore:

Test: web-platform-tests/web-share/share-consume-activation.https.html

  • page/Navigator.cpp:

(WebCore::Navigator::share):

7:43 PM Changeset in webkit [281125] by commit-queue@webkit.org
  • 10 edits in trunk

Report resource timing when SubresourceLoader::checkForHTTPStatusCodeError returns true
https://bugs.webkit.org/show_bug.cgi?id=229167

Patch by Alex Christensen <achristensen@webkit.org> on 2021-08-16
Reviewed by Chris Dumez.

LayoutTests/imported/w3c:

  • web-platform-tests/resource-timing/buffer-full-add-then-clear-expected.txt:
  • web-platform-tests/resource-timing/buffer-full-store-and-clear-during-callback-expected.txt:
  • web-platform-tests/resource-timing/buffer-full-then-increased-expected.txt:
  • web-platform-tests/resource-timing/buffer-full-when-populate-entries-expected.txt:
  • web-platform-tests/resource-timing/resource_TAO_cross_origin_redirect_chain-expected.txt:

Source/WebCore:

Since r281110 we report timing data for loads which "fail" because of HTTP status codes in the 400-599 range.
This matches the behavior of Chrome, Firefox, and the spec, but there was a code path where we still weren't reporting
those resources' timing data. This wasn't a problem before r281110 because we would've discarded it anyways, but
this code path needs to report the timing data before calling SubresourceLoader::cancel.

Covered by several newly passing WPT tests, which Chrome and Firefox already pass.

  • loader/SubresourceLoader.cpp:

(WebCore::SubresourceLoader::didReceiveResponse):
(WebCore::SubresourceLoader::checkForHTTPStatusCodeError):

5:04 PM Changeset in webkit [281124] by dino@apple.com
  • 8 edits
    2 adds in trunk

WebXR contexts have to use high-power GPUs
https://bugs.webkit.org/show_bug.cgi?id=229111
<rdar://81658893>

Reviewed by Sam Weinig.

Source/WebCore:

The WebGL context used by WebXR needs to be using the same GPU
as the headset it is talking to. However, the API allows for the
creation of the WebGL context before initializing the WebXR
session.

For now, assume this will trigger the high-performance GPU
on any dual-GPU system. i.e. when the WebGL is created, look
for the "webXRCompatible" creation attribute and force
the high-power GPU if available.

Test: webxr/high-performance.html

  • html/canvas/WebGLRenderingContextBase.h: Export the method to retrieve attributes.
  • platform/graphics/GraphicsContextGLAttributes.h: Add a flag for forcing the

high performance gpu.

  • platform/graphics/cocoa/GraphicsContextGLOpenGLCocoa.mm:

(WebCore::InitializeEGLDisplay):
(WebCore::GraphicsContextGLOpenGL::GraphicsContextGLOpenGL):

  • testing/Internals.cpp: New internals method to check what GPU was requested.

(WebCore::Internals::requestedGPU):

  • testing/Internals.h:
  • testing/Internals.idl:

LayoutTests:

  • webxr/high-performance-expected.txt: Added.
  • webxr/high-performance.html: Added.
4:58 PM Changeset in webkit [281123] by achristensen@apple.com
  • 2 edits in trunk/Source/WebCore

Fix null crash after r281110
https://bugs.webkit.org/show_bug.cgi?id=225737

  • loader/SubresourceLoader.cpp:

(WebCore::SubresourceLoader::reportResourceTiming):
I saw a nullptr crash here in EWS from bug 229167.
Looks like there's a case where we can call reportResourceTiming without a resource.
Early return if m_resource is null.

4:51 PM Changeset in webkit [281122] by Alan Coon
  • 1 copy in tags/Safari-612.1.15.4.17

Tag Safari-612.1.15.4.17.

4:47 PM Changeset in webkit [281121] by Alan Coon
  • 2 edits in branches/safari-612.1.15.4-branch/Source/WebInspectorUI/WebInspectorUI.vcxproj

Apply patch. rdar://problem/81915461

4:47 PM Changeset in webkit [281120] by Alan Coon
  • 2 edits in branches/safari-612.1.15.4-branch/Source/WebInspectorUI/WebInspectorUI.vcxproj

Revert r280993 rdar://problem/81915461

This reverts the patch applied at r280993.

4:41 PM Changeset in webkit [281119] by Alan Coon
  • 8 edits in branches/safari-612.1.15.4-branch/Source

Versioning.

WebKit-7612.1.15.4.17

4:36 PM Changeset in webkit [281118] by Eric Hutchison
  • 2 edits in trunk/LayoutTests

[Star] webaudio/codec-tests/mp3/128kbps-44khz.html is a constant failure.
rdar://82003714.

Unreviewed test gardening.

  • platform/mac/TestExpectations:
4:22 PM Changeset in webkit [281117] by Alan Coon
  • 1 copy in tags/Safari-612.1.27.0.24

Tag Safari-612.1.27.0.24.

4:17 PM Changeset in webkit [281116] by Wenson Hsieh
  • 2 edits in trunk/Source/WebKit

[GPU Process] Demote the release assertion in RemoteResourceCache::ensureResourceUseCounter
https://bugs.webkit.org/show_bug.cgi?id=229164
rdar://81999835

Reviewed by Simon Fraser.

Replace the RELEASE_ASSERT with a regular debug assertion. See bug description for more information.

  • GPUProcess/graphics/RemoteResourceCache.cpp:

(WebKit::RemoteResourceCache::ensureResourceUseCounter):

4:11 PM Changeset in webkit [281115] by mark.lam@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Ensure that unused LLInt opcodes are not inadvertently used.
https://bugs.webkit.org/show_bug.cgi?id=229161

Reviewed by Robin Morisset.

The op macro is used for generating LLInt asm code for some entry points to the
LLInt, where we don't need 16 bits and 32 bit wide versions of the entry point.
For example, we use it for llint_program_prologue.

Note that llint_program_prologue is generated using:

op(llint_program_prologue, macro () ...

where op is:

macro op(l, fn)

commonOp(l, macro () end, macro (size)

size(fn, macro() end, macro() end, macro(gen) gen() end)
# ----- wide32 generator
# `------------------ wide16 generator

end)

end

Note that the generators for the wide16 and wide32 versions of the entry point
currently emit nothing. As a result, if we ever have a bug that ends up
dispatching to llint_program_prologue_wide16 or llint_program_prologue_wide32,
we'll end up falling thru to llint_module_program_prologue, which just happens
to be the entry point positioned after those labels.

This patch adds breakpoints in those 2 unused generators so that we won't
inadvertently execute code for something else.

  • llint/LowLevelInterpreter.asm:
3:57 PM Changeset in webkit [281114] by Ayumi Kojima
  • 2 edits in trunk/LayoutTests

[ Monterey wk2 Release ] css3/blending/background-blend-mode-background-clip-content-box.html is flaky image failing.
rdar://82002352

Unreviewed test gardening.

  • platform/mac-wk2/TestExpectations:
3:23 PM Changeset in webkit [281113] by Eric Hutchison
  • 2 edits in trunk/LayoutTests

[Mac wk2] webrtc/utf8-sdp.html is a flaky failure.
https://bugs.webkit.org/show_bug.cgi?id=229166.

Unreviewed test gardening.

  • platform/mac-wk2/TestExpectations:
3:06 PM Changeset in webkit [281112] by Ayumi Kojima
  • 2 edits in trunk/LayoutTests

[ Monterey wk2 Release ] 2 css3/background/* tests are flaky image failing.
rdar://82000141

Unreviewed test gardening.

  • platform/mac-wk2/TestExpectations:
2:45 PM Changeset in webkit [281111] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WTF

Enable PerformanceNavigationAPI by default
https://bugs.webkit.org/show_bug.cgi?id=227336

Patch by Alex Christensen <achristensen@webkit.org> on 2021-08-16
Reviewed by Chris Dumez.

It passes WPT tests except the following:

navigation-timing/nav2_test_redirect_chain_xserver_partial_opt_in.html and navigation-timing/nav2_test_redirect_xserver.html pass when run from wpt.live,
and other browsers also don't pass when run from our local hosting infrastructure, which doesn't have a good cross-domain redirect.

nav2_test_attributes_values.html fails in Chrome and Firefox. There's something wrong with the port detection in the test.

  • Scripts/Preferences/WebPreferencesExperimental.yaml:
2:43 PM Changeset in webkit [281110] by achristensen@apple.com
  • 13 edits in trunk

Resource Timing: Duration is 0 in many cases
https://bugs.webkit.org/show_bug.cgi?id=225737

Reviewed by Chris Dumez.

LayoutTests/imported/w3c:

  • web-platform-tests/resource-timing/cors-preflight.any-expected.txt:
  • web-platform-tests/resource-timing/crossorigin-sandwich-no-TAO.sub-expected.txt:
  • web-platform-tests/resource-timing/crossorigin-sandwich-partial-TAO.sub-expected.txt:
  • web-platform-tests/resource-timing/resource_timing_cross_origin_redirect_chain-expected.txt:
  • web-platform-tests/resource-timing/status-codes-create-entry-expected.txt:

Source/WebCore:

This fixes two problems with our PerformanceResourceTiming implementation:

  1. ResourceTimingInformation::shouldAddResourceTiming wasn't adding timing data if CachedResource::errorOccurred returned true,

which includes when the server responds with an HTTP 404. We want loadFailedOrCanceled instead, which only returns true if
there's a network error or if the load is cancelled. This matches the behavior of other browsers.

  1. ResourceTiming::fromMemoryCache was assuming that it never had network information to report because we pulled from the cache,

not the network. However, a common case is that HTMLPreloadScanner::scan calls HTMLResourcePreloader::preload which loads the resource
while the HTML parser is blocked on loading scripts or other things, then CachedResourceLoader::requestResource pulls it out of the
memory cache. In this case, use the network metrics that we are already storing if it's the first time we are pulling this resource
out of the memory cache. After that, 0 load time is quite accurate.

Covered by newly passing Web Platform Tests, which Chrome and Firefox already passed.

  • loader/ResourceTiming.cpp:

(WebCore::ResourceTiming::fromMemoryCache):
(WebCore::ResourceTiming::ResourceTiming):
(WebCore::ResourceTiming::initServerTiming): Deleted.

  • loader/ResourceTiming.h:

(WebCore::ResourceTiming::ResourceTiming):

  • loader/ResourceTimingInformation.cpp:

(WebCore::ResourceTimingInformation::shouldAddResourceTiming):

  • loader/cache/CachedResource.h:

(WebCore::CachedResource::takeNetworkLoadMetrics):

  • loader/cache/CachedResourceLoader.cpp:

(WebCore::CachedResourceLoader::requestResource):

  • platform/network/ResourceResponseBase.h:

(WebCore::ResourceResponseBase::deprecatedNetworkLoadMetricsOrNull const):
(WebCore::ResourceResponseBase::takeNetworkLoadMetrics):

2:39 PM Changeset in webkit [281109] by Eric Hutchison
  • 2 edits in trunk/LayoutTests

[Mac wk2] webrtc/video-addTransceiver.html is a flaky failure.
https://bugs.webkit.org/show_bug.cgi?id=229163.

Unreviewed test gardening.

  • platform/mac-wk2/TestExpectations:
2:04 PM Changeset in webkit [281108] by Andres Gonzalez
  • 12 edits
    2 moves
    1 add in trunk

Expose [WebAccessibilityObjectWrapper lineRectsAndText] on MacOS.
https://bugs.webkit.org/show_bug.cgi?id=229045
<rdar://81819301>

Reviewed by Chris Fleizach.

Source/WebCore:

Test: accessibility/element-line-rects-and-text.html

Moved the [WebAccessibilityObjectWrapper lineRectsAndText] method, and
supporting methods and functions, from the iOS subclass to the base
(Cocoa) class so that it can be used in both iOS and MacOS.

  • accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:

Moved the following methods and functions to WebAccessibilityObjectWrapperBase.mm.
(-[WebAccessibilityObjectWrapper _prepareAccessibilityCall]): Deleted.
(-[WebAccessibilityObjectWrapper _addAccessibilityObject:toTextMarkerArray:]): Deleted.
(blockquoteLevel): Deleted.
(AXAttributeStringSetLanguage): Deleted.
(AXAttributeStringSetBlockquoteLevel): Deleted.
(AXAttributeStringSetHeadingLevel): Deleted.
(AXAttributeStringSetFont): Deleted.
(AXAttributeStringSetNumber): Deleted.
(AXAttributeStringSetStyle): Deleted.
(AXAttributedStringAppendText): Deleted.
(-[WebAccessibilityObjectWrapper contentForSimpleRange:attributed:]): Deleted.
(-[WebAccessibilityObjectWrapper lineRectsAndText]): Deleted.

  • accessibility/mac/WebAccessibilityObjectWrapperBase.h:
  • accessibility/mac/WebAccessibilityObjectWrapperBase.mm:

(-[WebAccessibilityObjectWrapperBase _prepareAccessibilityCall]):
(addObjectWrapperToArray):
(blockquoteLevel):
(AXAttributeStringSetLanguage):
(AXAttributeStringSetBlockquoteLevel):
(AXAttributeStringSetHeadingLevel):
(AXAttributeStringSetFont):
(AXAttributeStringSetNumber):
(AXAttributeStringSetStyle):
(AXAttributedStringAppendText):
(-[WebAccessibilityObjectWrapperBase contentForSimpleRange:attributed:]):
(-[WebAccessibilityObjectWrapperBase lineRectsAndText]):

  • accessibility/mac/WebAccessibilityObjectWrapperMac.mm:

(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):
Added handling of the attribute "AXLineRectsAndText".

Tools:

  • WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:

(WTR::AccessibilityUIElement::attributedStringForElement):
(WTR::AccessibilityUIElement::lineRectsAndText const):

  • WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:

(WTR::AccessibilityUIElement::lineRectsAndText const):

LayoutTests:

  • accessibility/element-line-rects-and-text.html: Renamed from LayoutTests/accessibility/ios-simulator/element-line-rects-and-text.html.
  • platform/ios/TestExpectations:
  • platform/ios/accessibility/element-line-rects-and-text-expected.txt: Renamed from LayoutTests/accessibility/ios-simulator/element-line-rects-and-text-expected.txt.
  • platform/mac/accessibility/element-line-rects-and-text-expected.txt: Added.
  • platform/mac-wk1/TestExpectations:
  • platform/win/TestExpectations:
1:53 PM Changeset in webkit [281107] by commit-queue@webkit.org
  • 10 edits in trunk/Source/WebCore

Unreviewed, reverting r281093.
https://bugs.webkit.org/show_bug.cgi?id=229159

broke many GTK media tests

Reverted changeset:

"REGRESSION(r278981): [GStreamer][Debug] Assert crashes when
running media/track tests"
https://bugs.webkit.org/show_bug.cgi?id=229123
https://commits.webkit.org/r281093

1:43 PM Changeset in webkit [281106] by Ayumi Kojima
  • 2 edits in trunk/LayoutTests

[ Monterey wk1 GuardMalloc ] fast/borders/hidpi-3x-input-hairline-border.html is timing out.
rdar://81996454

Unreviewed test gardening.

  • platform/mac-wk1/TestExpectations:
1:42 PM Changeset in webkit [281105] by rniwa@webkit.org
  • 4 edits in trunk

Add thread safe version of CanMakeCheckedPtr
https://bugs.webkit.org/show_bug.cgi?id=229018

Reviewed by Geoffrey Garen.

Source/WTF:

Introduce CanMakeThreadSafeCheckedPtr which is a thread safe version of CanMakeCheckedPtr.

  • wtf/CheckedRef.h:

(WTF::CanMakeCheckedPtrBase): Extracted from CanMakeCheckedPtr.
(WTF::CanMakeCheckedPtrBase::~CanMakeCheckedPtrBase):
(WTF::CanMakeCheckedPtrBase::ptrCount const):
(WTF::SingleThreadIntegralWrapper): Added.
(WTF::SingleThreadIntegralWrapper::SingleThreadIntegralWrapper):
(WTF::SingleThreadIntegralWrapper::operator IntegralType const):
(WTF::SingleThreadIntegralWrapper::operator! const):
(WTF::SingleThreadIntegralWrapper::operator++):
(WTF::SingleThreadIntegralWrapper::operator--):
(WTF::SingleThreadIntegralWrapper::assertThread const):
(WTF::CanMakeCheckedPtr): Redefined using CanMakeCheckedPtrBase and SimpleNonAtomicType.
(WTF::CanMakeThreadSafeCheckedPtr): Added.

Tools:

Added a unit test for CanMakeThreadSafeCheckedPtr

  • TestWebKitAPI/Tests/WTF/CheckedPtr.cpp:

(TestWebKitAPI.ThreadSafeCheckedPtrObject)
(WTF_CheckedPtr.CanMakeThreadSafeCheckedPtr): Added.

1:08 PM Changeset in webkit [281104] by Eric Hutchison
  • 2 edits in trunk/LayoutTests

[Mac wk2] webrtc/video-setDirection.html is a flaky failure.
https://bugs.webkit.org/show_bug.cgi?id=229158.

Unreviewed test gardening.

  • platform/mac-wk2/TestExpectations:
12:58 PM Changeset in webkit [281103] by Wenson Hsieh
  • 2 edits in trunk/LayoutTests

REGRESSION (r281054): [ iOS14 ] fast/events/touch/ios/long-press-then-drag-to-select-text.html is a constant text failure
https://bugs.webkit.org/show_bug.cgi?id=229157
<rdar://problem/81993820>

Unreviewed, mark this test as passing on iOS 14 again.

  • platform/ios-14/TestExpectations:
12:57 PM Changeset in webkit [281102] by Fujii Hironori
  • 6 edits in trunk/Source/WebKit

[WinCairo][GraphicsLayerTextureMapper] DrawingAreaProxyCoordinatedGraphics doesn't enter accelerated compositing mode
https://bugs.webkit.org/show_bug.cgi?id=228100

Reviewed by Don Olmstead.

Even if DrawingAreaCoordinatedGraphics entered AC mode in web
process side, DrawingAreaProxyCoordinatedGraphics didn't enter AC
mode in UI process side. They should sync.

There were two problems.

LayerTreeHost::layerTreeContext() always returned an empty
LayerTreeContext that means non-AC mode.
LayerTreeHost::m_layerTreeContext.contextID should be initialized.

DrawingAreaCoordinatedGraphics::layerHostDidFlushLayers should be
called after setShouldNotifyAfterNextScheduledLayerFlush(true) to
submit the current AC mode state.

  • WebProcess/WebPage/CoordinatedGraphics/DrawingAreaCoordinatedGraphics.cpp:
  • WebProcess/WebPage/CoordinatedGraphics/DrawingAreaCoordinatedGraphics.h:
  • WebProcess/WebPage/CoordinatedGraphics/LayerTreeHostTextureMapper.cpp:

(WebKit::LayerTreeHost::layerFlushTimerFired):
(WebKit::LayerTreeHost::LayerTreeHost):
(WebKit::LayerTreeHost::setShouldNotifyAfterNextScheduledLayerFlush):

  • WebProcess/WebPage/CoordinatedGraphics/LayerTreeHostTextureMapper.h:
  • WebProcess/WebPage/DrawingArea.h:
12:41 PM Changeset in webkit [281101] by Eric Hutchison
  • 2 edits in trunk/LayoutTests

[ BigSur+ ] webrtc/video-addTrack.html is a flaky failure.
https://bugs.webkit.org/show_bug.cgi?id=229156.

Unreviewed test gardening.

  • platform/mac-wk2/TestExpectations:
12:26 PM Changeset in webkit [281100] by Wenson Hsieh
  • 4 edits in trunk/LayoutTests

[iOS 15] editing/selection/ios/hide-selection-after-tap-on-prevent-default-element.html is a flaky timeout
https://bugs.webkit.org/show_bug.cgi?id=229147
rdar://80384447

Reviewed by Tim Horton.

This test verifies that we clear the text selection when tapping on an element that prevents the click event
on iOS (which matches behavior on macOS as well). To do this, the test:

  1. Long presses a piece of text to select it
  2. Taps the text we just selected (for reasons that are unclear to me)
  3. Taps the button with the click event listener, and then
  4. Waits for the platform text selection to disappear.

Currently, this test occasionally times out after step (3), and the selection is never cleared. In the success
case, the selection is cleared when UIKit's internal UITextTapRecognizer fires. Similar to the flaky timeout of
editing/selection/ios/select-all-in-readonly-input-does-not-overflow.html that was fixed in bug #229126, we
fail in the case where the text tap gesture is not reset before the synthetic touches in (3) are dispatched.

While the mitigations in #229126 sometimes kick in and keep this test from timing out, this test may still time
out after that change because the touches in steps (2) and (3) are synthesized so quickly that the text tap
gesture is still in Possible state when sending touches in (3), because the HID events created in step (2)
haven't been delivered to the UIWindow yet in the form of UITouchEvents.

As such, one potential way to fix this is to teach HIDEventGenerator to wait until the HID events synthesized
underneath -sendTaps:location:withNumberOfTouches:withNumberOfTouches:delay:completionBlock: have been
delivered to the window. However, in the context of this test failure, there's a much less intrusive way to
avoid this race.

In the failure case, we avoid resetting UITextTapRecognizer immediately after the touches in step (2) are
processed because the tap-and-a-half gesture for selecting a range of text has not failed or ended yet; this
happens because the long press in step (1) followed by the tap in the same location in step (2) causes
UITapAndAHalfRecognizer to *sometimes* remain in Possible state with gesture failure requirements that connect
it to the other text interactions (including UITextTapRecognizer) in the same gesture dependency subgraph; this
in turn causes UITapAndAHalfRecognizer to defer reset of UITextTapRecognizer *just* long enough for the tap in
step (3) not be delivered to UITextTapRecognizer.

Interestingly, it's not clear that the tap in step (2) is necessary for the purposes of this test, and
importantly, removing it prevents the UITapAndAHalfRecognizer from remaining in Possible state when tapping on
the button after the long press, which ensures that the gesture subgraph containing UITextTapRecognizer is reset
in time for the touches to be delivered to the window. Thus, we can fix this bug simply by removing step (2).

  • editing/selection/ios/hide-selection-after-tap-on-prevent-default-element.html:
  • platform/ios-14/TestExpectations:
  • platform/ios/TestExpectations:
12:16 PM Changeset in webkit [281099] by Ayumi Kojima
  • 2 edits in trunk/LayoutTests

[ Monterey wk2 Guard-Malloc arm64 ] fast/text/canvas-color-fonts/* tests are image failing.
rdar://81988829

Unreviewed test gardening.

  • platform/mac-wk2/TestExpectations:
12:11 PM Changeset in webkit [281098] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[GTK] fast/inline/incorrect-middle-baseline-alignment-with-line-height.html is passing since r277325
https://bugs.webkit.org/show_bug.cgi?id=225293

Unreviewed test gardening

Patch by Arcady Goldmints-Orlov <Arcady Goldmints-Orlov> on 2021-08-16

  • platform/gtk/TestExpectations:
12:01 PM Changeset in webkit [281097] by Brent Fulgham
  • 9 edits in trunk

REGRESSION (r281012): WebInspector console no longer shows script integrity information
https://bugs.webkit.org/show_bug.cgi?id=229097
<rdar://problem/81915909>

Reviewed by Youenn Fablet.

LayoutTests/imported/w3c:

  • web-platform-tests/html/semantics/scripting-1/the-script-element/module/integrity-expected.txt:

Source/WebCore:

  • bindings/js/ScriptModuleLoader.cpp:

(WebCore::ScriptModuleLoader::notifyFinished): Add full console message during promise rejection.

  • loader/DocumentThreadableLoader.cpp:

(WebCore::DocumentThreadableLoader::reportIntegrityMetadataError): Treat integrity mismatch as
a ResourceError::Type::AccessControl so that it gets detailed console logging.

LayoutTests:

  • http/tests/subresource-integrity/sri-fetch-expected.txt:
  • http/tests/subresource-integrity/sri-module-expected.txt:
  • js/dom/modules/module-fetch-failure-not-cached-expected.txt:
11:27 AM Changeset in webkit [281096] by sihui_liu@apple.com
  • 7 edits in trunk/Source/WebKit

Add logging for failure in getting network process connection
https://bugs.webkit.org/show_bug.cgi?id=229102

Reviewed by Geoffrey Garen.

UI process knows more about why network connection cannot be created compared to web process, so let's add
logging in UI process to help debug rdar://80760179.

  • UIProcess/AuxiliaryProcessProxy.cpp:

(WebKit::AuxiliaryProcessProxy::stateString const):

  • UIProcess/AuxiliaryProcessProxy.h:
  • UIProcess/Network/NetworkProcessProxy.cpp:

(WebKit::NetworkProcessProxy::getNetworkProcessConnection):

  • UIProcess/WebsiteData/WebsiteDataStore.cpp:

(WebKit::WebsiteDataStore::getNetworkProcessConnection):

  • UIProcess/WebsiteData/WebsiteDataStore.h:
  • WebProcess/WebProcess.cpp:

(WebKit::getNetworkProcessConnection):

11:20 AM Changeset in webkit [281095] by Eric Hutchison
  • 2 edits in trunk/LayoutTests

[iOS wk2 Release] webrtc/peer-connection-audio-mute2.html is a flaky failure.
https://bugs.webkit.org/show_bug.cgi?id=229154.

Unreviewed test gardening.

  • platform/ios/TestExpectations:
11:15 AM Changeset in webkit [281094] by Kocsen Chung
  • 8 edits in branches/safari-612.1.27.0-branch/Source

Versioning.

WebKit-7612.1.27.0.24

11:14 AM Changeset in webkit [281093] by commit-queue@webkit.org
  • 10 edits in trunk/Source/WebCore

REGRESSION(r278981): [GStreamer][Debug] Assert crashes when running media/track tests
https://bugs.webkit.org/show_bug.cgi?id=229123

Patch by Philippe Normand <pnormand@igalia.com> on 2021-08-16
Reviewed by Xabier Rodriguez-Calvar.

The TrackPrivateBaseGStreamer class now includes all the common code that is used by its
subclasses. InbandTextTrackPrivateGStreamer now returns valid track IDs (fixing the issue of
this regression: ASSERTs). The patch also includes coding style fixes, removal of un-needed
includes and a few other clean-ups related with the Track support in the GStreamer platform
layer.

  • platform/graphics/gstreamer/AudioTrackPrivateGStreamer.cpp:

(WebCore::AudioTrackPrivateGStreamer::AudioTrackPrivateGStreamer):

  • platform/graphics/gstreamer/AudioTrackPrivateGStreamer.h:
  • platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.cpp:

(WebCore::InbandTextTrackPrivateGStreamer::InbandTextTrackPrivateGStreamer):
(WebCore::InbandTextTrackPrivateGStreamer::disconnect): Deleted.
(WebCore::InbandTextTrackPrivateGStreamer::streamChanged): Deleted.
(WebCore::InbandTextTrackPrivateGStreamer::notifyTrackOfStreamChanged): Deleted.

  • platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.h:

(WebCore::InbandTextTrackPrivateGStreamer::create):
(WebCore::InbandTextTrackPrivateGStreamer::streamId const): Deleted.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfTrack):
(WebCore::MediaPlayerPrivateGStreamer::handleTextSample):

  • platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp:

(WebCore::TrackPrivateBaseGStreamer::generateUniquePlaybin2StreamID):
(WebCore::TrackPrivateBaseGStreamer::TrackPrivateBaseGStreamer):
(WebCore::TrackPrivateBaseGStreamer::setPad):
(WebCore::TrackPrivateBaseGStreamer::notifyTrackOfStreamChanged):
(WebCore::TrackPrivateBaseGStreamer::streamChanged):

  • platform/graphics/gstreamer/TrackPrivateBaseGStreamer.h:

(WebCore::TrackPrivateBaseGStreamer::setIndex):
(WebCore::TrackPrivateBaseGStreamer::stream):

  • platform/graphics/gstreamer/VideoTrackPrivateGStreamer.cpp:

(WebCore::VideoTrackPrivateGStreamer::VideoTrackPrivateGStreamer):

  • platform/graphics/gstreamer/VideoTrackPrivateGStreamer.h:
9:51 AM Changeset in webkit [281092] by Ayumi Kojima
  • 2 edits in trunk/LayoutTests

[ Win EWS ] fast/forms/* tests are flaky crashing FAULTING_IP: WebKit!WebCore::FontCache::lastResortFallbackFont+ec [C:\cygwin\home\buildbot\worker\Windows-EWS\build\Source\WebCore\platform\graphics\win\FontCacheWin.cpp @ 424].
https://bugs.webkit.org/show_bug.cgi?id=229009

Unreviewed test gardening.

  • platform/win/TestExpectations:
9:49 AM Changeset in webkit [281091] by ddkilzer@apple.com
  • 2 edits in trunk/Source/WTF

ThreadSanitizer: ignore uninteresting data races for reference counting of static WTF::StringImpl objects
<https://webkit.org/b/229113>

Reviewed by Chris Dumez.

  • wtf/text/StringImpl.h:

(WTF::StringImpl::isStatic const):

  • Add SUPPRESS_TSAN attribute since the 0x1 bit is set at construction and refcounting occurs in increments of 0x2, so the static bit never changes.

(WTF::StringImpl::ref):
(WTF::StringImpl::deref):

  • Return early for static WTF::StringImpl objects to prevent TSan from reporting data races for m_refCount.
9:36 AM Changeset in webkit [281090] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

Fix Catalyst TestWebKitAPI build
https://bugs.webkit.org/show_bug.cgi?id=229091

Patch by Alex Christensen <achristensen@webkit.org> on 2021-08-16
Reviewed by Wenson Hsieh.

  • TestWebKitAPI/Configurations/Base.xcconfig:

Search the correct SDK paths.

  • TestWebKitAPI/Tests/WebKitCocoa/ImageAnalysisTests.mm:

(TestWebKitAPI::TEST):
Use soft linking for VisionKitCore like we do elsewyere.

9:34 AM Changeset in webkit [281089] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[WPE][GTK] Clean build broken with python3 after r280382
https://bugs.webkit.org/show_bug.cgi?id=228628

Patch by Philippe Normand <pnormand@igalia.com> on 2021-08-16
Reviewed by Adrian Perez de Castro.

The webkitpy autoinstall doesn't reliably work when it's triggered from concurrent
processes. Replace webkitpy usage in apply-build-revision-to-files.py script with explicit
calls to svnversion, git svn info or git log -1, depending on the kind of SCM checkout.

  • glib/apply-build-revision-to-files.py:

(get_build_revision):
(main):

9:31 AM Changeset in webkit [281088] by ddkilzer@apple.com
  • 14 edits in trunk

"make analyze" should run clang static analyzer in deep mode
<https://webkit.org/b/229127>
<rdar://problem/81960587>

Reviewed by Alexey Proskuryakov.

.:

  • Makefile.shared:
  • Add "analyze" argument to xcodebuild command when invoking "make analyze" to run clang static analyzer in deep mode. Simplify "make analyze" since $(PATH_TO_SCAN_BUILD) does not need to be set.

Source/ThirdParty/ANGLE:

  • ANGLE.xcodeproj/project.pbxproj:
  • Treat "analyze" the same as "build" for "ACTION" environment variable.

Source/WebCore:

  • Scripts/generate-derived-sources.sh:
  • Treat "analyze" the same as "build" for "ACTION" environment variable.

Source/WebKit:

  • Scripts/generate-derived-sources.sh:
  • WebKit.xcodeproj/project.pbxproj:
  • Treat "analyze" the same as "build" for "ACTION" environment variable.

Source/WebKitLegacy/mac:

  • migrate-headers.sh:
  • Treat "analyze" the same as "build" for "ACTION" environment variable.

Tools:

  • DumpRenderTree/Scripts/generate-derived-sources.sh:
  • WebKitTestRunner/Scripts/generate-derived-sources.sh:
  • Treat "analyze" the same as "build" for "ACTION" environment variable.
9:23 AM Changeset in webkit [281087] by Eric Hutchison
  • 2 edits in trunk/LayoutTests

[Win10 wk1 Release] http/tests/security/contentSecurityPolicy/worker-blob-inherits-csp-importScripts-redirect-cross-origin-blocked.html is failing.
https://bugs.webkit.org/show_bug.cgi?id=229146.

Unreviewed test gardening.

  • platform/win/TestExpectations:
9:23 AM Changeset in webkit [281086] by Ayumi Kojima
  • 2 edits in trunk/LayoutTests

[ Win EWS ] fast/forms/input-appearance-spinbutton-size.html is flaky crashing.
https://bugs.webkit.org/show_bug.cgi?id=229143

Unreviewed test gardening.

  • platform/win/TestExpectations:
9:18 AM Changeset in webkit [281085] by commit-queue@webkit.org
  • 4 edits in trunk

[GLib] Enable mediastream setting if it's enabled at build-time
https://bugs.webkit.org/show_bug.cgi?id=229134

Patch by Philippe Normand <pnormand@igalia.com> on 2021-08-16
Reviewed by Adrian Perez de Castro.

Source/WebKit:

  • UIProcess/API/glib/WebKitSettings.cpp:

(webKitSettingsConstructed):

Tools:

  • TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp:

(testWebKitSettings):

9:14 AM Changeset in webkit [281084] by commit-queue@webkit.org
  • 10 edits in trunk/Source/WebCore

Unreviewed, reverting r281078.
https://bugs.webkit.org/show_bug.cgi?id=229144

broke GTK/WPE mediastream tests

Reverted changeset:

"REGRESSION(r278981): [GStreamer][Debug] Assert crashes when
running media/track tests"
https://bugs.webkit.org/show_bug.cgi?id=229123
https://commits.webkit.org/r281078

8:57 AM Changeset in webkit [281083] by commit-queue@webkit.org
  • 4 edits in trunk

[GTK][WPE] Test fast/mediastream/mediastreamtrack-video-clone.html is flaky timeout since r280775
https://bugs.webkit.org/show_bug.cgi?id=229063

Patch by Philippe Normand <pnormand@igalia.com> on 2021-08-16
Reviewed by Xabier Rodriguez-Calvar.

Source/WebCore:

Ignore redundant stream collections also in the mediastream case. Both the mediastream and
MSE source elements behave similarly regarding stream collections.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::MediaPlayerPrivateGStreamer::handleStreamCollectionMessage):

LayoutTests:

  • platform/glib/TestExpectations:
8:23 AM Changeset in webkit [281082] by ddkilzer@apple.com
  • 2 edits
    1 add in trunk/Tools

Fix ASan+UBSan builds with Xcode 13
<https://webkit.org/b/229122>

Reviewed by Alexey Proskuryakov.

  • Scripts/webkitdirs.pm:

(XcodeOptions):

  • Use asan+ubsan.xcconfig when both are enabled.
  • sanitizer/asan+ubsan.xcconfig: Add.
7:45 AM Changeset in webkit [281081] by ddkilzer@apple.com
  • 2 edits in trunk/Source/WebKitLegacy/mac

-[WebView initWithCoder:] should use -[NSCoder decodeValueOfObjCType:at:size:]
<https://webkit.org/b/229121>
<rdar://problem/81956163>

Reviewed by Anders Carlsson.

  • WebView/WebView.mm:

(-[WebView initWithCoder:]):

  • Switch to -[NSCoder decodeValueOfObjCType:at:size:].
7:12 AM Changeset in webkit [281080] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Unreviewed, reverting r281077.
https://bugs.webkit.org/show_bug.cgi?id=229137

broke GTK/WPE builds

Reverted changeset:

"[WPE][GTK] Clean build broken with python3 after r280382"
https://bugs.webkit.org/show_bug.cgi?id=228628
https://commits.webkit.org/r281077

6:56 AM Changeset in webkit [281079] by Carlos Garcia Campos
  • 4 edits in trunk/Tools

[GTK] Test WebKitWebView/page-visibility is a flaky timeout
https://bugs.webkit.org/show_bug.cgi?id=214804

Reviewed by Adrian Perez de Castro.

Do not wait for title change if the title already changed.

  • TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:

(testWebViewPageVisibility):

  • TestWebKitAPI/glib/TestExpectations.json:
  • TestWebKitAPI/glib/WebKitGLib/WebViewTest.cpp:

(WebViewTest::waitUntilTitleChangedTo):
(WebViewTest::waitUntilTitleChanged):

6:37 AM Changeset in webkit [281078] by commit-queue@webkit.org
  • 10 edits in trunk/Source/WebCore

REGRESSION(r278981): [GStreamer][Debug] Assert crashes when running media/track tests
https://bugs.webkit.org/show_bug.cgi?id=229123

Patch by Philippe Normand <pnormand@igalia.com> on 2021-08-16
Reviewed by Xabier Rodriguez-Calvar.

The TrackPrivateBaseGStreamer class now includes all the common code that is used by its
subclasses. InbandTextTrackPrivateGStreamer now returns valid track IDs (fixing the issue of
this regression: ASSERTs). The patch also includes coding style fixes, removal of un-needed
includes and a few other clean-ups related with the Track support in the GStreamer platform
layer.

  • platform/graphics/gstreamer/AudioTrackPrivateGStreamer.cpp:

(WebCore::AudioTrackPrivateGStreamer::AudioTrackPrivateGStreamer):

  • platform/graphics/gstreamer/AudioTrackPrivateGStreamer.h:
  • platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.cpp:

(WebCore::InbandTextTrackPrivateGStreamer::InbandTextTrackPrivateGStreamer):
(WebCore::InbandTextTrackPrivateGStreamer::disconnect): Deleted.
(WebCore::InbandTextTrackPrivateGStreamer::streamChanged): Deleted.
(WebCore::InbandTextTrackPrivateGStreamer::notifyTrackOfStreamChanged): Deleted.

  • platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.h:

(WebCore::InbandTextTrackPrivateGStreamer::create):
(WebCore::InbandTextTrackPrivateGStreamer::streamId const): Deleted.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfTrack):
(WebCore::MediaPlayerPrivateGStreamer::handleTextSample):

  • platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp:

(WebCore::TrackPrivateBaseGStreamer::generateUniquePlaybin2StreamID):
(WebCore::TrackPrivateBaseGStreamer::TrackPrivateBaseGStreamer):
(WebCore::TrackPrivateBaseGStreamer::setPad):
(WebCore::TrackPrivateBaseGStreamer::notifyTrackOfStreamChanged):
(WebCore::TrackPrivateBaseGStreamer::streamChanged):

  • platform/graphics/gstreamer/TrackPrivateBaseGStreamer.h:

(WebCore::TrackPrivateBaseGStreamer::setIndex):
(WebCore::TrackPrivateBaseGStreamer::stream):

  • platform/graphics/gstreamer/VideoTrackPrivateGStreamer.cpp:

(WebCore::VideoTrackPrivateGStreamer::VideoTrackPrivateGStreamer):

  • platform/graphics/gstreamer/VideoTrackPrivateGStreamer.h:
6:34 AM Changeset in webkit [281077] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[WPE][GTK] Clean build broken with python3 after r280382
https://bugs.webkit.org/show_bug.cgi?id=228628

Patch by Philippe Normand <pnormand@igalia.com> on 2021-08-16
Reviewed by Adrian Perez de Castro.

The webkitpy autoinstall doesn't reliably work when it's triggered from concurrent
processes. Replace webkitpy usage in apply-build-revision-to-files.py script with explicit
calls to svnversion, git svn info or git log -1, depending on the kind of SCM checkout.

  • glib/apply-build-revision-to-files.py:

(get_build_revision):
(main):

6:33 AM Changeset in webkit [281076] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebKit

[GTK] MiniBrowser crashes when closed while capturing desktop
https://bugs.webkit.org/show_bug.cgi?id=228232
<rdar://problem/81093648>

Patch by Philippe Normand <pnormand@igalia.com> on 2021-08-16
Reviewed by Adrian Perez de Castro.

Remove explicit detach call from the UIClient. Resetting the page state in the proxy *after*
the clients have been cleared is a better fix for this crash.

  • UIProcess/API/glib/WebKitUIClient.cpp:

(attachUIClientToView):
(detachUIClientFromView): Deleted.

  • UIProcess/API/glib/WebKitUIClient.h:
  • UIProcess/API/glib/WebKitWebView.cpp:

(webkitWebViewDispose):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::close):

3:31 AM Changeset in webkit [281075] by Carlos Garcia Campos
  • 1 copy in releases/WebKitGTK/webkit-2.33.3

WebKitGTK 2.33.3

3:30 AM Changeset in webkit [281074] by Carlos Garcia Campos
  • 4 edits in trunk

Unreviewed. Update OptionsGTK.cmake and NEWS for 2.33.3 release

.:

  • Source/cmake/OptionsGTK.cmake: Bump version numbers.

Source/WebKit:

  • gtk/NEWS: Add release notes for 2.33.3.
3:18 AM Changeset in webkit [281073] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebKit

Unreviewed. Fix GTK distcheck build

  • webkitglib-symbols.map: Remove symbols that are not in the library anymore.
2:39 AM Changeset in webkit [281072] by Carlos Garcia Campos
  • 2 edits in trunk/Tools

Unreviewed. Fix GTK distcheck build

2:08 AM Changeset in webkit [281071] by Carlos Garcia Campos
  • 3 edits in trunk/Source/WebCore

Move WebMAudioUtilitiesCocoa.h from Headers.cmake to PlatformMac.cmake
https://bugs.webkit.org/show_bug.cgi?id=229129

Unreviewed. Fix GTK/WPE distcheck build.

  • Headers.cmake:
  • PlatformMac.cmake:
Note: See TracTimeline for information about the timeline view.