Timeline
Jan 18, 2022:
- 11:51 PM Changeset in webkit [288182] by
-
- 2 edits in trunk/LayoutTests
Unreviewed gardening of GPU Process bot tests.
- gpu-process/TestExpectations:
- 9:15 PM Changeset in webkit [288181] by
-
- 2 edits in trunk/Source/WebCore
ColorTypes are no longer constexpr in debug builds due to std::isnan() in range assertion
https://bugs.webkit.org/show_bug.cgi?id=235346
Unreviewed build fix.
Replace std::isnan() in color type range assertions with a constexpr variant using the x != x
construction for detection.
- platform/graphics/ColorTypes.h:
(WebCore::constexprIsNaN):
(WebCore::assertInRange):
- 9:13 PM Changeset in webkit [288180] by
-
- 8 edits2 adds in trunk
Loupe sometimes flips to the bottom of the page when dragging the end of a selection to the top of a page with selection flipping.
https://bugs.webkit.org/show_bug.cgi?id=235220
Reviewed by Tim Horton.
Source/WebCore:
Test: fast/events/touch/ios/long-press-then-drag-up-to-change-selected-text-overflow.html
When selecting on an EPUB in books, if you had a selection near the top of the page,
and you dragged the end of the selection past the start and into the upper margin, sometimes
this would result in the selection ending up on the previous page of content, which would result
in the loupe being pushed to the bottom of the page (because the selection was on the previous page
at the bottom), which is incorrect. The most solid way to keep this from happening is to clamp the selection
to the unobscured content rect, which will keep selection from reaching back to the previous page.
- platform/graphics/FloatPoint.cpp:
(WebCore::FloatPoint::constrainedWithin const):
- platform/graphics/FloatPoint.h:
- platform/graphics/IntPoint.cpp:
(WebCore::IntPoint::constrainedWithin const):
- platform/graphics/IntPoint.h:
Source/WebKit:
When selecting on an EPUB in books, if you had a selection near the top of the page,
and you dragged the end of the selection past the start and into the upper margin, sometimes
this would result in the selection ending up on the previous page of content, which would result
in the loupe being pushed to the bottom of the page (because the selection was on the previous page
at the bottom), which is incorrect. The most solid way to keep this from happening is to clamp the selection
to the unobscured content rect, which will keep selection from reaching back to the previous page.
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::rangeForPointInRootViewCoordinates):
LayoutTests:
- fast/events/touch/ios/long-press-then-drag-up-to-change-selected-text-overflow-expected.txt: Added.
- fast/events/touch/ios/long-press-then-drag-up-to-change-selected-text-overflow.html: Added.
- 7:29 PM Changeset in webkit [288179] by
-
- 2 edits in trunk/Source/WTF
Enable form.requestSubmit()
https://bugs.webkit.org/show_bug.cgi?id=235342
Reviewed by Darin Adler.
Enable form.requestSubmit(). This was fully implemented via Bug 197958 and it passes the WPT tests but
we never actually enabled it.
- Scripts/Preferences/WebPreferencesExperimental.yaml:
- 7:11 PM Changeset in webkit [288178] by
-
- 14 edits2 adds in trunk
REGRESSION (r264352): Mail compose body field does not avoid the keyboard when scrolling after focus
https://bugs.webkit.org/show_bug.cgi?id=235331
rdar://79296770
Reviewed by Tim Horton.
Source/WebKit:
After r264352 added the call to
_page->scheduleFullEditorStateUpdate();during element focus, scrolling to
reveal the selection in the focused body field in Mail stopped working. This is because Mail:
- Sets
firstResponderKeyboardAvoidanceEnabledto NO on the WKScrollView, which prevents automatic inset
adjustment logic in UIKit from taking effect and adding the keyboard height to the bottom system content
inset.
- Manually sets
-contentScrollInseton the WKScrollView during a UIKeyboardDidShowNotification, which occurs
after we've already attempted to zoom to the selection.
...combined with the fact that without the call to
scheduleFullEditorStateUpdate(), the next EditorState
would've arrived only after the keyboard animation finished.
The end result is that we don't end up avoiding the keyboard at all when focusing the body field in Mail
compose. While rdar://87733414 tracks refactoring logic in WebKit2 Mail compose to ensure that the content
scroll insets on WKScrollView are applied during UIKeyboardWillShowNotification instead of after the keyboard
has finished animating in, this patch provides a short-term workaround by restoring pre-r264352 behavior, with
respect to when the element is scrolled into view.
Test: editing/selection/ios/scroll-to-reveal-selection-with-keyboard-avoidance-disabled.html
- Platform/spi/ios/UIKitSPI.h:
Add a declaration for the
-firstResponderKeyboardAvoidanceEnabledSPI property on non-internal iOS SDKs.
- UIProcess/API/ios/WKWebViewIOS.mm:
(-[WKWebView _keyboardDidShow:]):
Plumb this through to the WKContentView, so we can zoom/scroll to the focused element if needed.
- UIProcess/WebPageProxy.h:
- UIProcess/ios/WKContentViewInteraction.h:
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView cleanUpInteraction]):
(-[WKContentView _keyboardDidShow]):
If we previously deferred the call to
-_zoomToRevealFocusedElementdue to the keyboard still animating in,
schedule a call to it now on a 0-delay timer; this delay is necessary to ensure that this zoom occurs *after*
Mail has already set the content inset, which also happens underneath a "KeyboardDidShow" notification.
(-[WKContentView _zoomToRevealFocusedElement]):
In the case where the (presumably internal) client has set
firstResponderKeyboardAvoidanceEnabledto NO and
the keyboard is animating in, defer the actual call into the web view to-_zoomToRevealFocusedElementuntil
after the keyboard animation is finished. This ensures compatibility with existant logic in Mail for manually
setting the content scroll inset on the WKScrollView after the keyboard animation is complete.
(-[WKContentView resetShouldZoomToFocusRectAfterShowingKeyboard]):
(-[WKContentView _elementDidBlur]):
Tools:
Add support for a UIScriptController hook to override
firstResponderKeyboardAvoidanceEnabledon WKScrollView.
See LayoutTests for more details.
- TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
- TestRunnerShared/UIScriptContext/UIScriptController.h:
(WTR::UIScriptController::setScrollViewKeyboardAvoidanceEnabled):
- WebKitTestRunner/ios/TestControllerIOS.mm:
(WTR::TestController::platformResetStateToConsistentValues):
- WebKitTestRunner/ios/UIScriptControllerIOS.h:
- WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptControllerIOS::setScrollViewKeyboardAvoidanceEnabled):
LayoutTests:
Add a layout test that (at least) exercises the newly added codepath, where focusing an editor when the scroll
view hasfirstResponderKeyboardAvoidanceEnabledset to NO will still allow us to scroll to the selection.
- editing/selection/ios/scroll-to-reveal-selection-with-keyboard-avoidance-disabled-expected.txt: Added.
- editing/selection/ios/scroll-to-reveal-selection-with-keyboard-avoidance-disabled.html: Added.
- resources/ui-helper.js:
(window.UIHelper.setScrollViewKeyboardAvoidanceEnabled):
- 6:37 PM Changeset in webkit [288177] by
-
- 1 copy in tags/Safari-613.1.14.0.2
Tag Safari-613.1.14.0.2.
- 6:34 PM Changeset in webkit [288176] by
-
- 2 edits in branches/safari-613.1.14.0-branch/Source/WebKit
Revert r287997. rdar://problem/87274541
- 6:32 PM Changeset in webkit [288175] by
-
- 9 edits in branches/safari-613.1.14.0-branch/Source
Versioning.
WebKit-7613.1.14.0.2
- 6:31 PM Changeset in webkit [288174] by
-
- 14 edits in trunk
When inserting a selected <option> in a <select> element, its selected state should remain
https://bugs.webkit.org/show_bug.cgi?id=235237
Reviewed by Darin Adler.
LayoutTests/imported/w3c:
Rebaseline WPT tests that are now passing.
- web-platform-tests/html/semantics/forms/the-select-element/inserted-or-removed-expected.txt:
- web-platform-tests/html/semantics/forms/the-select-element/select-validity-expected.txt:
Source/WebCore:
When inserting a selected <option> in a <select> element, its selected state should remain and other selected
options should be de-selected.
This is as per the specification [1] that says:
"""
If the multiple attribute is absent, whenever an option element in the select element's list of options has
its selectedness set to true, and whenever an option element with its selectedness set to true is added to
the select element's list of options, the user agent must set the selectedness of all the other option
elements in its list of options to false.
"""
Firefox and Chrome correctly implement this.
WebKit was trying to implement this logic from inside HTMLOptionElement::insertedIntoAncestor(). However,
there were several issues with that:
- It was checking m_isSelected after calling updateValidity(). updateValidity() would call recalcListItems(), which could update m_isSelected. This part could have been addressed by saving m_isSelected before calling updateValidity() but would not have addressed the following issues.
- In the case where an <optgroup> containing several <option> elements is inserted into a <select>, insertedIntoAncestor() gets called from each options being inserted. When calling insertedIntoAncestor() from the first <option> and if this <option> is selected, it would deselect all following <option> elements even though insertedIntoAncestor() has not yet been called for them. As a result, we would end up selecting the first inserted <option> that had the selected state, instead of the last one.
- When more than one <option> is inserted at once, the current implementation would be really inefficient as every <option> would dirty and recalc the item list from insertedIntoAncestor().
To address these issues, I got rid of HTMLOptionElement::insertedIntoAncestor(). Instead we now deal with
<option> insertion from inside HTMLSelectElement::childrenChanged() and HTMLOptGroupElement::childrenChanged().
Using the parent element's childrenChanged() is useful because it only gets called once when several <option>
elements are inserted at once. I added logic to those childrenChanged() functions to keep track of the last
selected <option> element being inserted. Then, after we recalc the item list (which may change <option>s'
selected state, I make sure to this <option> is selected. This is similar to the logic that was previously
in HTMLOptionElement::insertedIntoAncestor().
[1] https://html.spec.whatwg.org/multipage/form-elements.html#the-select-element
No new tests, rebaselined existing tests.
- dom/CharacterData.cpp:
(WebCore::makeChildChange):
- dom/ContainerNode.cpp:
(WebCore::ContainerNode::removeAllChildrenWithScriptAssertion):
(WebCore::makeChildChangeForRemoval):
(WebCore::makeChildChangeForInsertion):
(WebCore::ContainerNode::childrenChanged):
(WebCore::affectsElements): Deleted.
- dom/ContainerNode.h:
(WebCore::ContainerNode::ChildChange::isInsertion const):
(WebCore::ContainerNode::ChildChange::affectsElements const):
- Add 'siblingChanged' member to ChildChange in addition to the previous / next siblings. This is useful for HTMLOptGroupElement and HTMLSelectElement where we want to know if a newly inserted child is an HTMLOptionElement (and if it is selected).
- Move affectsElements() to the header so that it can be reused by HTMLOptGroupElement and HTMLOptionElement.
- html/HTMLOptGroupElement.cpp:
(WebCore::HTMLOptGroupElement::childrenChanged):
- html/HTMLOptGroupElement.h:
- html/HTMLOptionElement.cpp:
(WebCore::HTMLOptionElement::insertedIntoAncestor): Deleted.
- html/HTMLOptionElement.h:
- html/HTMLSelectElement.cpp:
(WebCore::HTMLSelectElement::optionToSelectFromChildChangeScope): Added.
(WebCore::HTMLSelectElement::childrenChanged):
LayoutTests:
Rebaseline WPT test that is now passing.
- platform/ios-wk2/imported/w3c/web-platform-tests/html/semantics/forms/the-select-element/select-validity-expected.txt:
- 5:48 PM Changeset in webkit [288173] by
-
- 1 copy in tags/Safari-613.1.14.0.1
Tag Safari-613.1.14.0.1.
- 5:45 PM Changeset in webkit [288172] by
-
- 1 copy in tags/Safari-613.1.14.1.2
Tag Safari-613.1.14.1.2.
- 5:44 PM Changeset in webkit [288171] by
-
- 1 delete in tags/Safari-613.1.14.1.2
Remove tag.
- 5:43 PM Changeset in webkit [288170] by
-
- 1 edit in branches/safari-613.1.14.1-branch/Source/WebKit/WebKit.xcodeproj/project.pbxproj
Revert "Apply patch. rdar://problem/86298747"
This reverts commit r288142.
- 5:29 PM Changeset in webkit [288169] by
-
- 1 copy in tags/Safari-613.1.14.1.2
Tag Safari-613.1.14.1.2.
- 5:18 PM Changeset in webkit [288168] by
-
- 31 edits in trunk
Replace all uses of HAVE_ACCESSIBILITY with ENABLE_ACCESSIBILITY
https://bugs.webkit.org/show_bug.cgi?id=235335
Reviewed by Ross Kirsling.
Source/WTF:
Remove the setting of HAVE_ACCESSIBILITY. All code is now using ENABLE_ACCESSIBILITY
instead.
- wtf/PlatformHave.h:
Tools:
Does a find/replace in Tools to move from HAVE_ACCESSIBILITY to ENABLE_ACCESSIBILITY. The
same is done with HAVE(ACCESSIBILITY) with instances replaced by ENABLE(ACCESSIBILITY).
- DumpRenderTree/AccessibilityController.cpp:
- DumpRenderTree/AccessibilityController.h:
- DumpRenderTree/AccessibilityUIElement.cpp:
- DumpRenderTree/AccessibilityUIElement.h:
- MiniBrowser/wpe/main.cpp:
(main):
- WebKitTestRunner/InjectedBundle/AccessibilityController.h:
- WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
- WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
- WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::beginTesting):
(WTR::InjectedBundle::done):
- WebKitTestRunner/InjectedBundle/InjectedBundle.h:
- WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
(WTR::InjectedBundlePage::didClearWindowForFrame):
- WebKitTestRunner/InjectedBundle/atk/AccessibilityControllerAtk.cpp:
- WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.cpp:
- WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.h:
- WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
- WebKitTestRunner/InjectedBundle/atspi/AccessibilityControllerAtspi.cpp:
- WebKitTestRunner/InjectedBundle/atspi/AccessibilityNotificationHandler.cpp:
- WebKitTestRunner/InjectedBundle/atspi/AccessibilityNotificationHandler.h:
- WebKitTestRunner/InjectedBundle/atspi/AccessibilityUIElementAtspi.cpp:
- WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
- WebKitTestRunner/InjectedBundle/win/AccessibilityControllerWin.cpp:
- WebKitTestRunner/InjectedBundle/win/AccessibilityUIElementWin.cpp:
- wpe/backends/PlatformWPE.cmake:
- wpe/backends/ViewBackend.cpp:
(WPEToolingBackends::ViewBackend::dispatchInputKeyboardEvent):
- wpe/backends/ViewBackend.h:
- wpe/backends/atk/ViewBackendAtk.cpp:
- wpe/backends/atk/WebKitAccessibleApplication.cpp:
- wpe/backends/atk/WebKitAccessibleApplication.h:
- 5:18 PM Changeset in webkit [288167] by
-
- 2 edits in trunk/Source/WebCore
Fix -Wmultichar warnings in HEVCUtilities.cpp
https://bugs.webkit.org/show_bug.cgi?id=235337
Patch by Michael Catanzaro <Michael Catanzaro> on 2022-01-18
Reviewed by Darin Adler.
- platform/graphics/HEVCUtilities.cpp:
(WebCore::parseHEVCDecoderConfigurationRecord):
- 5:16 PM Changeset in webkit [288166] by
-
- 1 copy in tags/Safari-613.1.14.2.1
Tag Safari-613.1.14.2.1.
- 5:15 PM Changeset in webkit [288165] by
-
- 1 copy in tags/Safari-613.1.14.3.1
Tag Safari-613.1.14.3.1.
- 5:13 PM Changeset in webkit [288164] by
-
- 2 edits in trunk/Source/WTF
Unreviewed, disable jit-heap on non Darwin
On Linux etc., they have completely different steps to allocate executable memory.
Thus, the current jit-heap implementation does not work well. Temporarily disable it
on non Darwin OSes.
- wtf/PlatformUse.h:
- 4:50 PM Changeset in webkit [288163] by
-
- 3 edits in trunk/Source/JavaScriptCore
[JSC] Remove Wasm::Table's m_mask
https://bugs.webkit.org/show_bug.cgi?id=235329
Reviewed by Mark Lam.
This patch removes m_mask in Wasm::Table.
The mask is removed in the other places, but forgot
removing that in Wasm::Table.
- wasm/WasmTable.cpp:
(JSC::Wasm::Table::setLength):
(JSC::Wasm::Table::clear):
(JSC::Wasm::Table::set):
(JSC::Wasm::Table::get const):
(JSC::Wasm::FuncRefTable::setFunction):
(JSC::Wasm::FuncRefTable::function const):
(JSC::Wasm::FuncRefTable::instance const):
- wasm/WasmTable.h:
(JSC::Wasm::Table::offsetOfLength):
(JSC::Wasm::Table::offsetOfMask): Deleted.
(JSC::Wasm::Table::mask const): Deleted.
- 4:27 PM Changeset in webkit [288162] by
-
- 12 edits in trunk
input.labels doesn't work inside shadow DOM
https://bugs.webkit.org/show_bug.cgi?id=235326
Reviewed by Darin Adler.
LayoutTests/imported/w3c:
Rebaseline test that now has one extra passing subtest. This subtest was already passing in both
Gecko and Blink.
- web-platform-tests/html/semantics/forms/the-label-element/label-attributes.sub-expected.txt:
Source/WebCore:
HTMLCollection and LiveNodeList had the concept of "isRootedAtDocument" which meant that
we used the document as root when doing the traversal to find Nodes that belong to the
list/collection. However, when the list's owner is inside a shadow tree, this didn't
work as expected since we would traverse the main document's DOM tree instead of the
shadow tree. To address the issue, I now renamed "isRootedAtDocument" to
"isRootedAtTreeScope" and updated rootNode() to return the owner's tree scope's root
node, instead of the owner's document.
No new tests, rebaselined existing test.
- dom/Document.cpp:
(WebCore::Document::registerNodeListForInvalidation):
(WebCore::Document::registerCollection):
(WebCore::Document::unregisterCollection):
- dom/LiveNodeList.h:
(WebCore::LiveNodeList::rootNode const):
- dom/NameNodeList.h:
- dom/NodeRareData.h:
(WebCore::NodeListsNodeData::adoptDocument):
- html/HTMLCollection.cpp:
(WebCore::HTMLCollection::rootTypeFromCollectionType):
- html/HTMLCollection.h:
(WebCore::HTMLCollection::rootNode const):
(WebCore::HTMLCollection::isRootedAtTreeScope const):
(WebCore::HTMLCollection::isRootedAtDocument const): Deleted.
- html/LabelsNodeList.h:
- html/RadioNodeList.cpp:
(WebCore::RadioNodeList::RadioNodeList):
- html/RadioNodeList.h:
- 4:25 PM Changeset in webkit [288161] by
-
- 5 edits in trunk/Source/WebKit
Unreviewed, reverting r288019.
https://bugs.webkit.org/show_bug.cgi?id=235341
Introduced debug assert
Reverted changeset:
"Inject Launch Services database before NSApplication is
initialized"
https://bugs.webkit.org/show_bug.cgi?id=235186
https://commits.webkit.org/r288019
- 4:15 PM Changeset in webkit [288160] by
-
- 9 edits in branches/safari-613.1.14.3-branch/Source
Versioning.
WebKit-7613.1.14.3.1
- 4:13 PM Changeset in webkit [288159] by
-
- 9 edits in trunk
[LFC][Integration] Use IFC for preferred width computation for inline boxes
https://bugs.webkit.org/show_bug.cgi?id=232620
Reviewed by Antti Koivisto.
Source/WebCore:
- rendering/RenderBlockFlow.cpp:
LayoutTests:
- fast/text/hanging-punctuation-variable-font-size-expected.html: Adjust incorrect expected result (Both Chrome and Firefox agree).
- platform/ios/fast/css/word-space-extra-expected.txt: progression
- platform/mac/fast/css/word-space-extra-expected.txt: progression (matching Chrome).
- platform/mac/fast/text/international/003-expected.txt: progression (matching Chrome).
- platform/mac/fast/text/wbr-expected.txt: progression.
- 4:11 PM Changeset in webkit [288158] by
-
- 9 edits in branches/safari-613.1.14.2-branch/Source
Versioning.
WebKit-7613.1.14.2.1
- 4:00 PM Changeset in webkit [288157] by
-
- 1 copy in branches/safari-613.1.14.3-branch
New branch.
- 3:56 PM Changeset in webkit [288156] by
-
- 4 edits in trunk/Source
[GTK] Implement native form validation bubbles for GTK4
https://bugs.webkit.org/show_bug.cgi?id=235303
Reviewed by Carlos Garcia Campos.
The gtk port using gtk3 supports a native validation bubble for the form validation
since r288104. This change brings the same support for gtk4.
Source/WebCore:
The same features of ValidationBubble are implemented using gtk4 API.
No new tests since existing tests cover this change.
- platform/gtk/ValidationBubbleGtk.cpp:
(WebCore::ValidationBubble::ValidationBubble):
(WebCore::ValidationBubble::invalidate):
(WebCore::ValidationBubble::showRelativeTo):
Source/WebKit:
- WebProcess/WebPage/WebPage.cpp: Enable pageConfiguration.validationMessageClient for all gtk backends
(WebKit::m_appHighlightsVisible):
- 3:53 PM Changeset in webkit [288155] by
-
- 9 edits in branches/safari-613.1.14.1-branch/Source
Versioning.
WebKit-7613.1.14.1.2
- 3:40 PM Changeset in webkit [288154] by
-
- 2 edits in trunk/PerformanceTests
Speedometer should be locally runnable on Windows
https://bugs.webkit.org/show_bug.cgi?id=235334
Reviewed by Don Olmstead.
It's currently not possible to run Speedometer locally on Windows (even using Chrome or Firefox):
the EmberJS-TodoMVC test fails its subresource integrity checks due to line endings.
- .gitattributes:
Ensure two JS files never include CRLFs.
- 2:40 PM Changeset in webkit [288153] by
-
- 1 copy in tags/Safari-613.1.12.1.10
Tag Safari-613.1.12.1.10.
- 2:39 PM Changeset in webkit [288152] by
-
- 4 edits4 adds in branches/safari-613.1.12.1-branch
Cherry-pick r288078. rdar://problem/87736072
database names leak cross-origin within the same browser session
https://bugs.webkit.org/show_bug.cgi?id=233548
Reviewed by Geoff Garen.
Source/WebCore:
Test: http/tests/security/getdatabases-crossorigin.html
- Modules/indexeddb/server/IDBServer.cpp: (WebCore::IDBServer::IDBServer::getAllDatabaseNamesAndVersions): When iterating the set of all open UniqueIDBDatabases, only add them to the results list if their origins match.
- page/ClientOrigin.h: (WebCore::ClientOrigin::operator!= const):
LayoutTests:
- http/tests/security/getdatabases-crossorigin-expected.txt: Added.
- http/tests/security/getdatabases-crossorigin.html: Added.
- http/tests/security/resources/getdatabases-otherframe.html: Added.
- http/tests/security/resources/getdatabases-otherwindow.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@288078 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 2:38 PM Changeset in webkit [288151] by
-
- 9 edits in branches/safari-613.1.12.1-branch/Source
Versioning.
WebKit-7613.1.12.1.10
- 2:38 PM Changeset in webkit [288150] by
-
- 2 edits in branches/safari-613.1.12.1-branch/Source/ThirdParty/ANGLE
Revert "Cherry-pick r288041. rdar://problem/86457081"
This reverts commit r288044.
- 2:18 PM Changeset in webkit [288149] by
-
- 107 edits29 moves6 adds29 deletes in trunk/LayoutTests
[GLIB] Update test baselines after r288070 allowed LFC integration to work with the complex text path.
https://bugs.webkit.org/show_bug.cgi?id=235330
Unreviewed test gardening.
Patch by Arcady Goldmints-Orlov <Arcady Goldmints-Orlov> on 2022-01-18
- platform/glib/fast/backgrounds/border-radius-split-background-expected.txt: Renamed from LayoutTests/platform/wpe/fast/backgrounds/border-radius-split-background-expected.txt.
- platform/glib/fast/backgrounds/border-radius-split-background-image-expected.txt: Renamed from LayoutTests/platform/wpe/fast/backgrounds/border-radius-split-background-image-expected.txt.
- platform/glib/fast/block/basic/013-expected.txt: Renamed from LayoutTests/platform/wpe/fast/block/basic/013-expected.txt.
- platform/glib/fast/block/float/br-with-clear-2-expected.txt: Renamed from LayoutTests/platform/wpe/fast/block/float/br-with-clear-2-expected.txt.
- platform/glib/fast/block/margin-collapse/block-inside-inline/001-expected.txt: Renamed from LayoutTests/platform/wpe/fast/block/margin-collapse/block-inside-inline/001-expected.txt.
- platform/glib/fast/block/margin-collapse/block-inside-inline/005-expected.txt: Renamed from LayoutTests/platform/wpe/fast/block/margin-collapse/block-inside-inline/005-expected.txt.
- platform/glib/fast/borders/border-image-outset-split-inline-expected.txt: Renamed from LayoutTests/platform/wpe/fast/borders/border-image-outset-split-inline-expected.txt.
- platform/glib/fast/borders/border-styles-split-expected.txt: Renamed from LayoutTests/platform/wpe/fast/borders/border-styles-split-expected.txt.
- platform/glib/fast/css/child-style-can-override-visited-style-expected.txt: Renamed from LayoutTests/platform/wpe/fast/css/child-style-can-override-visited-style-expected.txt.
- platform/glib/fast/css/named-images-expected.txt: Renamed from LayoutTests/platform/wpe/fast/css/named-images-expected.txt.
- platform/glib/fast/dom/HTMLMeterElement/meter-element-expected.txt: Renamed from LayoutTests/platform/wpe/fast/dom/HTMLMeterElement/meter-element-expected.txt.
- platform/glib/fast/dom/HTMLMeterElement/meter-element-repaint-on-update-value-expected.txt: Renamed from LayoutTests/platform/wpe/fast/dom/HTMLMeterElement/meter-element-repaint-on-update-value-expected.txt.
- platform/glib/fast/dom/HTMLMeterElement/meter-styles-expected.txt: Renamed from LayoutTests/platform/wpe/fast/dom/HTMLMeterElement/meter-styles-expected.txt.
- platform/glib/fast/dom/HTMLProgressElement/indeterminate-progress-001-expected.txt: Renamed from LayoutTests/platform/wpe/fast/dom/HTMLProgressElement/indeterminate-progress-001-expected.txt.
- platform/glib/fast/dom/HTMLProgressElement/progress-element-expected.txt: Renamed from LayoutTests/platform/wpe/fast/dom/HTMLProgressElement/progress-element-expected.txt.
- platform/glib/fast/encoding/charset-replacement-expected.txt: Renamed from LayoutTests/platform/wpe/fast/encoding/charset-replacement-expected.txt.
- platform/glib/fast/encoding/invalid-UTF-8-expected.txt: Renamed from LayoutTests/platform/wpe/fast/encoding/invalid-UTF-8-expected.txt.
- platform/glib/fast/images/image-map-anchor-children-expected.txt: Renamed from LayoutTests/platform/wpe/fast/images/image-map-anchor-children-expected.txt.
- platform/glib/fast/inline/002-expected.txt: Renamed from LayoutTests/platform/wpe/fast/inline/002-expected.txt.
- platform/glib/fast/invalid/018-expected.txt: Renamed from LayoutTests/platform/wpe/fast/invalid/018-expected.txt.
- platform/glib/fast/selectors/018b-expected.txt: Renamed from LayoutTests/platform/wpe/fast/selectors/018b-expected.txt.
- platform/glib/fast/table/table-display-types-strict-expected.txt: Renamed from LayoutTests/platform/wpe/fast/table/table-display-types-strict-expected.txt.
- platform/glib/fast/table/unbreakable-images-quirk-expected.txt: Renamed from LayoutTests/platform/wpe/fast/table/unbreakable-images-quirk-expected.txt.
- platform/glib/fast/text/basic/004-expected.txt: Renamed from LayoutTests/platform/wpe/fast/text/basic/004-expected.txt.
- platform/glib/fast/text/basic/012-expected.txt: Renamed from LayoutTests/platform/wpe/fast/text/basic/012-expected.txt.
- platform/glib/fast/text/cg-fallback-bolding-expected.txt: Renamed from LayoutTests/platform/wpe/fast/text/cg-fallback-bolding-expected.txt.
- platform/glib/fast/text/firstline/001-expected.txt: Renamed from LayoutTests/platform/wpe/fast/text/firstline/001-expected.txt.
- platform/glib/fast/text/indic-expected.txt:
- platform/glib/fast/text/international/bidi-layout-across-linebreak-expected.txt: Renamed from LayoutTests/platform/wpe/fast/text/international/bidi-layout-across-linebreak-expected.txt.
- platform/glib/fast/text/justify-nbsp-expected.txt:
- platform/glib/fast/text/whitespace/020-expected.txt: Renamed from LayoutTests/platform/wpe/fast/text/whitespace/020-expected.txt.
- platform/gtk/fast/backgrounds/border-radius-split-background-expected.txt: Removed.
- platform/gtk/fast/backgrounds/border-radius-split-background-image-expected.txt: Removed.
- platform/gtk/fast/block/basic/013-expected.txt: Removed.
- platform/gtk/fast/block/basic/014-expected.txt:
- platform/gtk/fast/block/basic/016-expected.txt:
- platform/gtk/fast/block/float/br-with-clear-2-expected.txt: Removed.
- platform/gtk/fast/block/margin-collapse/044-expected.txt:
- platform/gtk/fast/block/margin-collapse/block-inside-inline/001-expected.txt: Removed.
- platform/gtk/fast/block/margin-collapse/block-inside-inline/005-expected.txt: Removed.
- platform/gtk/fast/block/positioning/047-expected.txt:
- platform/gtk/fast/block/positioning/057-expected.txt:
- platform/gtk/fast/borders/bidi-012-expected.txt:
- platform/gtk/fast/borders/border-image-outset-split-inline-expected.txt: Removed.
- platform/gtk/fast/borders/border-styles-split-expected.txt: Removed.
- platform/gtk/fast/borders/rtl-border-04-expected.txt:
- platform/gtk/fast/box-shadow/basic-shadows-expected.txt:
- platform/gtk/fast/css-generated-content/012-expected.txt:
- platform/gtk/fast/css-generated-content/after-duplicated-after-split-expected.txt:
- platform/gtk/fast/css/child-style-can-override-visited-style-expected.txt: Removed.
- platform/gtk/fast/css/css1_forward_compatible_parsing-expected.txt:
- platform/gtk/fast/css/empty-inline-003-quirksmode-expected.txt:
- platform/gtk/fast/css/empty-inline-line-height-first-line-expected.txt:
- platform/gtk/fast/css/empty-inline-line-height-first-line-quirksmode-expected.txt:
- platform/gtk/fast/css/first-line-text-decoration-expected.txt:
- platform/gtk/fast/css/first-line-text-decoration-inherited-from-parent-expected.txt:
- platform/gtk/fast/css/font-face-opentype-expected.txt:
- platform/gtk/fast/css/named-images-expected.txt: Removed.
- platform/gtk/fast/css/pseudo-first-line-border-width-expected.txt:
- platform/gtk/fast/css/resize-corner-tracking-expected.txt:
- platform/gtk/fast/css/text-overflow-ellipsis-bidi-expected.txt:
- platform/gtk/fast/css/text-overflow-input-expected.txt:
- platform/gtk/fast/css/word-space-extra-expected.txt:
- platform/gtk/fast/dom/34176-expected.txt:
- platform/gtk/fast/dom/52776-expected.txt:
- platform/gtk/fast/dom/HTMLElement/bdo-expected.txt:
- platform/gtk/fast/dom/HTMLMeterElement/meter-element-expected.txt: Removed.
- platform/gtk/fast/dom/HTMLMeterElement/meter-element-repaint-on-update-value-expected.txt: Removed.
- platform/gtk/fast/dom/HTMLMeterElement/meter-styles-expected.txt: Removed.
- platform/gtk/fast/dom/HTMLProgressElement/indeterminate-progress-001-expected.txt: Removed.
- platform/gtk/fast/dom/HTMLProgressElement/native-progress-bar-expected.txt:
- platform/gtk/fast/dom/HTMLProgressElement/progress-element-expected.txt: Removed.
- platform/gtk/fast/encoding/charset-replacement-expected.txt: Removed.
- platform/gtk/fast/encoding/invalid-UTF-8-expected.txt: Removed.
- platform/gtk/fast/encoding/utf-16-big-endian-expected.txt:
- platform/gtk/fast/encoding/utf-16-little-endian-expected.txt:
- platform/gtk/fast/events/updateLayoutForHitTest-expected.txt:
- platform/gtk/fast/forms/auto-fill-button/input-contacts-auto-fill-button-expected.txt:
- platform/gtk/fast/forms/input-text-scroll-left-on-blur-expected.txt:
- platform/gtk/fast/forms/listbox-hit-test-zoomed-expected.txt:
- platform/gtk/fast/forms/placeholder-pseudo-style-expected.txt:
- platform/gtk/fast/forms/select-visual-hebrew-expected.txt:
- platform/gtk/fast/frames/onlyCommentInIFrame-expected.txt:
- platform/gtk/fast/images/image-map-anchor-children-expected.txt: Removed.
- platform/gtk/fast/inline-block/inline-block-vertical-align-expected.txt:
- platform/gtk/fast/inline/002-expected.txt: Removed.
- platform/gtk/fast/inline/drawStyledEmptyInlines-expected.txt:
- platform/gtk/fast/invalid/018-expected.txt: Removed.
- platform/gtk/fast/invalid/missing-end-tag-expected.txt:
- platform/gtk/fast/multicol/span/span-margin-collapsing-expected.txt:
- platform/gtk/fast/overflow/003-expected.txt:
- platform/gtk/fast/parser/entities-in-xhtml-expected.txt:
- platform/gtk/fast/parser/nofoo-tags-inside-paragraph-expected.txt:
- platform/gtk/fast/parser/open-comment-in-textarea-expected.txt:
- platform/gtk/fast/parser/xhtml-alternate-entities-expected.txt:
- platform/gtk/fast/repaint/line-layout-block-shrink-expected.txt:
- platform/gtk/fast/repaint/simple-line-layout-shrinking-content-expected.txt:
- platform/gtk/fast/replaced/inline-box-wrapper-handover-expected.txt:
- platform/gtk/fast/selectors/018b-expected.txt: Removed.
- platform/gtk/fast/selectors/visited-descendant-expected.txt:
- platform/gtk/fast/table/col-and-colgroup-offsets-expected.txt:
- platform/gtk/fast/table/table-continuation-outline-paint-crash-expected.txt:
- platform/gtk/fast/table/table-display-types-strict-expected.txt: Removed.
- platform/gtk/fast/table/unbreakable-images-quirk-expected.txt: Removed.
- platform/gtk/fast/text/atsui-multiple-renderers-expected.txt:
- platform/gtk/fast/text/atsui-negative-spacing-features-expected.txt:
- platform/gtk/fast/text/atsui-spacing-features-expected.txt:
- platform/gtk/fast/text/basic/004-expected.txt: Removed.
- platform/gtk/fast/text/basic/005-expected.txt:
- platform/gtk/fast/text/basic/012-expected.txt: Removed.
- platform/gtk/fast/text/basic/014-expected.txt:
- platform/gtk/fast/text/bidi-reverse-runs-crash-expected.txt:
- platform/gtk/fast/text/capitalize-boundaries-expected.txt:
- platform/gtk/fast/text/cg-fallback-bolding-expected.txt: Removed.
- platform/gtk/fast/text/fallback-traits-fixup-expected.txt:
- platform/gtk/fast/text/firstline/001-expected.txt: Removed.
- platform/gtk/fast/text/format-control-expected.txt:
- platform/gtk/fast/text/hyphenate-limit-before-after-expected.txt:
- platform/gtk/fast/text/in-rendered-text-rtl-expected.txt:
- platform/gtk/fast/text/international/arabic-justify-expected.txt:
- platform/gtk/fast/text/international/bidi-AN-after-L-expected.txt:
- platform/gtk/fast/text/international/bidi-AN-after-empty-run-expected.txt:
- platform/gtk/fast/text/international/bidi-CS-after-AN-expected.txt:
- platform/gtk/fast/text/international/bidi-L2-run-reordering-expected.txt:
- platform/gtk/fast/text/international/bidi-LDB-2-CSS-expected.txt:
- platform/gtk/fast/text/international/bidi-LDB-2-HTML-expected.txt:
- platform/gtk/fast/text/international/bidi-LDB-2-formatting-characters-expected.txt:
- platform/gtk/fast/text/international/bidi-control-chars-treated-as-ZWS-expected.txt:
- platform/gtk/fast/text/international/bidi-european-terminators-expected.txt:
- platform/gtk/fast/text/international/bidi-ignored-for-first-child-inline-expected.txt:
- platform/gtk/fast/text/international/bidi-innertext-expected.txt:
- platform/gtk/fast/text/international/bidi-layout-across-linebreak-expected.txt: Removed.
- platform/gtk/fast/text/international/bidi-linebreak-001-expected.txt:
- platform/gtk/fast/text/international/bidi-linebreak-002-expected.txt:
- platform/gtk/fast/text/international/bidi-linebreak-003-expected.txt:
- platform/gtk/fast/text/international/bidi-listbox-atsui-expected.txt:
- platform/gtk/fast/text/international/bidi-listbox-expected.txt:
- platform/gtk/fast/text/international/bidi-menulist-expected.txt:
- platform/gtk/fast/text/international/bidi-mirror-he-ar-expected.txt:
- platform/gtk/fast/text/international/bidi-neutral-directionality-paragraph-start-expected.txt:
- platform/gtk/fast/text/international/bidi-neutral-run-expected.txt:
- platform/gtk/fast/text/international/bidi-override-expected.txt:
- platform/gtk/fast/text/international/bold-bengali-expected.txt:
- platform/gtk/fast/text/international/danda-space-expected.txt:
- platform/gtk/fast/text/international/hebrew-vowels-expected.txt:
- platform/gtk/fast/text/international/hindi-whitespace-expected.txt:
- platform/gtk/fast/text/international/rtl-caret-expected.txt:
- platform/gtk/fast/text/international/rtl-white-space-pre-wrap-expected.txt:
- platform/gtk/fast/text/international/thai-baht-space-expected.txt:
- platform/gtk/fast/text/international/thai-line-breaks-expected.txt:
- platform/gtk/fast/text/midword-break-after-breakable-char-expected.txt:
- platform/gtk/fast/text/text-letter-spacing-expected.txt:
- platform/gtk/fast/text/unicode-variation-selector-expected.txt:
- platform/gtk/fast/text/wbr-expected.txt:
- platform/gtk/fast/text/whitespace/004-expected.txt:
- platform/gtk/fast/text/whitespace/005-expected.txt:
- platform/gtk/fast/text/whitespace/006-expected.txt:
- platform/gtk/fast/text/whitespace/007-expected.txt:
- platform/gtk/fast/text/whitespace/010-expected.txt:
- platform/gtk/fast/text/whitespace/011-expected.txt:
- platform/gtk/fast/text/whitespace/015-expected.txt:
- platform/gtk/fast/text/whitespace/016-expected.txt:
- platform/gtk/fast/text/whitespace/018-expected.txt:
- platform/gtk/fast/text/whitespace/020-expected.txt: Removed.
- 2:14 PM Changeset in webkit [288148] by
-
- 1 copy in tags/Safari-613.1.14.1.1
Tag Safari-613.1.14.1.1.
- 2:09 PM Changeset in webkit [288147] by
-
- 4 edits in trunk
Build WebKitSwift when building with make or build-webkit
https://bugs.webkit.org/show_bug.cgi?id=235093
Reviewed by Alexey Proskuryakov.
Source/WebKit:
For various internal reasons, we have to have no depency between the two,
but we command line builders want to build and test it just like everyone else.
- Makefile:
Tools:
- Scripts/build-webkit:
- 1:46 PM Changeset in webkit [288146] by
-
- 39 edits in trunk
Use c++2a instead of gnu++2a for Cocoa builds
https://bugs.webkit.org/show_bug.cgi?id=234936
Patch by Alex Christensen <achristensen@webkit.org> on 2022-01-18
Reviewed by Sam Weinig.
Source/bmalloc:
- Configurations/Base.xcconfig:
Source/JavaScriptCore:
- Configurations/Base.xcconfig:
- Configurations/JavaScriptCore.xcconfig:
- DerivedSources.make:
Source/ThirdParty:
- gtest/xcode/Config/General.xcconfig:
Source/ThirdParty/ANGLE:
- Configurations/Base.xcconfig:
Source/ThirdParty/libwebrtc:
- Configurations/Base.xcconfig:
Source/WebCore:
The only need for it was for two calls to memset_s, for which we define STDC_WANT_LIB_EXT1
- Configurations/Base.xcconfig:
- DerivedSources.make:
Source/WebCore/PAL:
- Configurations/Base.xcconfig:
Source/WebGPU:
- Configurations/Base.xcconfig:
Source/WebInspectorUI:
- Configurations/Base.xcconfig:
Source/WebKit:
- Configurations/Base.xcconfig:
- Configurations/BaseTarget.xcconfig:
Source/WebKitLegacy/mac:
- Configurations/Base.xcconfig:
- Configurations/WebKitLegacy.xcconfig:
- MigrateHeaders.make:
Source/WTF:
- Configurations/Base.xcconfig:
Tools:
- DumpRenderTree/DerivedSources.make:
- DumpRenderTree/mac/Configurations/Base.xcconfig:
- MiniBrowser/Configurations/Base.xcconfig:
- MobileMiniBrowser/Configurations/Base.xcconfig:
- TestWebKitAPI/Configurations/Base.xcconfig:
- WebKitTestRunner/Configurations/Base.xcconfig:
- WebKitTestRunner/DerivedSources.make:
- 1:43 PM Changeset in webkit [288145] by
-
- 1 edit in trunk/Tools/CISupport/ews-build/master.cfg
[ews] Load credentials from passwords.json in master.cfg
https://bugs.webkit.org/show_bug.cgi?id=235296
Reviewed by Jonathan Bedard.
- Tools/CISupport/ews-build/master.cfg:
Canonical link: https://commits.webkit.org/246145@main
- 1:11 PM Changeset in webkit [288144] by
-
- 3 edits in trunk/Source/WebKit
Don't build WKGroupSession.swift when using Monterey public SDK
https://bugs.webkit.org/show_bug.cgi?id=235324
Patch by Alex Christensen <achristensen@webkit.org> on 2022-01-18
Reviewed by Jer Noble.
- Configurations/WebKit.xcconfig:
Remove unused exclusion of WKGroupSession.swift which is only built in WebKitSwift.
- Configurations/WebKitSwift.xcconfig:
Remove unused reference to WKCoordinator.mm and WKCoordinator.h which don't exist any more.
Don't build WKGroupSession.swift with the public SDK since it uses "@_spi(Safari)"
- 1:03 PM Changeset in webkit [288143] by
-
- 19 edits in trunk
[CSS Color 4] Add support for "Missing"/"none" color components
https://bugs.webkit.org/show_bug.cgi?id=233526
<rdar://problem/86026087>
Reviewed by Dean Jackson.
LayoutTests/imported/w3c:
Update color pasing tests to include 'none' components.
- web-platform-tests/css/css-color/parsing/color-computed-expected.txt:
- web-platform-tests/css/css-color/parsing/color-computed.html:
- web-platform-tests/css/css-color/parsing/color-invalid-expected.txt:
- web-platform-tests/css/css-color/parsing/color-invalid.html:
- web-platform-tests/css/css-color/parsing/color-valid-expected.txt:
- web-platform-tests/css/css-color/parsing/color-valid.html:
- web-platform-tests/css/css-color/parsing/relative-color-computed-expected.txt:
- web-platform-tests/css/css-color/parsing/relative-color-computed.html:
- web-platform-tests/css/css-color/parsing/relative-color-invalid-expected.txt:
- web-platform-tests/css/css-color/parsing/relative-color-invalid.html:
- web-platform-tests/css/css-color/parsing/relative-color-valid-expected.txt:
- web-platform-tests/css/css-color/parsing/relative-color-valid.html:
Source/WebCore:
Adds support for parsing an identifier, 'none', as a CSS color component for all specified
grammars, including rgb() (space separated), hsl() (space separated), hwb(), color(), lab(),
lch(), oklab(), oklch() as well as all the respective relative forms.
For color types that were already being stored using float components, the 'none' value
is stored as NaN. For the types that were not (rgb(), hsl() and hwb()) we now store the
value using float components if and only if there are any 'none' components (bounded SRGBA<float>
for rgb(), HSLA<float> for hsl() and HWBA<float> for hwb()). This is necessary for both
serialization, which has been updated to handle the new values, as well as interpolation,
which is not included in this change.
- css/parser/CSSPropertyParserHelpers.cpp:
(WebCore::CSSPropertyParserHelpers::NoneRawKnownTokenTypeIdentConsumer::consume):
(WebCore::CSSPropertyParserHelpers::AngleOrNumberRawKnownTokenTypeIdentConsumer::consume):
(WebCore::CSSPropertyParserHelpers::NumberOrPercentRawKnownTokenTypeIdentConsumer::consume):
(WebCore::CSSPropertyParserHelpers::IdentityTransformer::transform):
(WebCore::CSSPropertyParserHelpers::RawIdentityTransformer::transform):
(WebCore::CSSPropertyParserHelpers::RawVariantTransformerBase::transform):
(WebCore::CSSPropertyParserHelpers::consumeNumberRaw):
(WebCore::CSSPropertyParserHelpers::consumeNumberRawAllowingSymbolTableIdent):
(WebCore::CSSPropertyParserHelpers::consumePercentRaw):
(WebCore::CSSPropertyParserHelpers::consumePercentRawAllowingSymbolTableIdent):
(WebCore::CSSPropertyParserHelpers::consumeLengthRaw):
(WebCore::CSSPropertyParserHelpers::consumeAngleRaw):
(WebCore::CSSPropertyParserHelpers::consumeLengthOrPercentRaw):
(WebCore::CSSPropertyParserHelpers::consumeAngleOrNumberOrNoneRaw):
(WebCore::CSSPropertyParserHelpers::consumeAngleOrNumberOrNoneRawAllowingSymbolTableIdent):
(WebCore::CSSPropertyParserHelpers::consumeNumberOrPercentRawAllowingSymbolTableIdent):
(WebCore::CSSPropertyParserHelpers::consumeNumberOrNoneRaw):
(WebCore::CSSPropertyParserHelpers::consumeNumberOrNoneRawAllowingSymbolTableIdent):
(WebCore::CSSPropertyParserHelpers::consumePercentOrNoneRaw):
(WebCore::CSSPropertyParserHelpers::consumePercentOrNoneRawAllowingSymbolTableIdent):
(WebCore::CSSPropertyParserHelpers::consumeNumberOrPercentOrNoneRaw):
(WebCore::CSSPropertyParserHelpers::consumeNumberOrPercentOrNoneRawAllowingSymbolTableIdent):
(WebCore::CSSPropertyParserHelpers::consumeOptionalAlpha):
(WebCore::CSSPropertyParserHelpers::consumeOptionalAlphaAllowingSymbolTableIdent):
(WebCore::CSSPropertyParserHelpers::normalizeRGBComponentToSRGBAByte):
(WebCore::CSSPropertyParserHelpers::consumeRGBOrHSLOptionalAlpha):
(WebCore::CSSPropertyParserHelpers::parseRelativeRGBParameters):
(WebCore::CSSPropertyParserHelpers::parseNonRelativeRGBParameters):
(WebCore::CSSPropertyParserHelpers::colorByNormalizingHSLComponents):
(WebCore::CSSPropertyParserHelpers::parseRelativeHSLParameters):
(WebCore::CSSPropertyParserHelpers::parseNonRelativeHSLParameters):
(WebCore::CSSPropertyParserHelpers::parseHWBParameters):
(WebCore::CSSPropertyParserHelpers::parseRelativeHWBParameters):
(WebCore::CSSPropertyParserHelpers::parseNonRelativeHWBParameters):
(WebCore::CSSPropertyParserHelpers::parseLabParameters):
(WebCore::CSSPropertyParserHelpers::parseRelativeLabParameters):
(WebCore::CSSPropertyParserHelpers::parseNonRelativeLabParameters):
(WebCore::CSSPropertyParserHelpers::parseLCHParameters):
(WebCore::CSSPropertyParserHelpers::parseRelativeLCHParameters):
(WebCore::CSSPropertyParserHelpers::parseNonRelativeLCHParameters):
(WebCore::CSSPropertyParserHelpers::parseColorFunctionForRGBTypes):
(WebCore::CSSPropertyParserHelpers::parseRelativeColorFunctionForRGBTypes):
(WebCore::CSSPropertyParserHelpers::parseColorFunctionForXYZTypes):
(WebCore::CSSPropertyParserHelpers::parseRelativeColorFunctionForXYZTypes):
(WebCore::CSSPropertyParserHelpers::AngleOrNumberRawToDegressTransformer::transform): Deleted.
(WebCore::CSSPropertyParserHelpers::LengthOrPercentRawTransformer::transform): Deleted.
(WebCore::CSSPropertyParserHelpers::consumeNumberAllowingSymbolTableIdent): Deleted.
(WebCore::CSSPropertyParserHelpers::consumePercentAllowingSymbolTableIdent): Deleted.
(WebCore::CSSPropertyParserHelpers::normalizeRGBComponentNumber): Deleted.
(WebCore::CSSPropertyParserHelpers::normalizeRGBComponentPercentage): Deleted.
(WebCore::CSSPropertyParserHelpers::RGBNormalizingTransformer::transform): Deleted.
(WebCore::CSSPropertyParserHelpers::consumeRelativeRGBComponent): Deleted.
(WebCore::CSSPropertyParserHelpers::clampRGBComponent): Deleted.
- css/parser/CSSPropertyParserHelpers.h:
- platform/graphics/ColorNormalization.h:
(WebCore::normalizeClampedWhitenessBlacknessDisallowingNone):
(WebCore::normalizeClampedWhitenessBlacknessAllowingNone):
Pipe through support for parsing and normalizing 'none' components.
- platform/graphics/ColorSerialization.cpp:
(WebCore::legacyRGBComponent):
(WebCore::numericComponent):
(WebCore::percentageComponent):
(WTF::StringTypeAdapter<WebCore::LegacyRGBComponent>::StringTypeAdapter):
(WTF::StringTypeAdapter<WebCore::LegacyRGBComponent>::length const):
(WTF::StringTypeAdapter<WebCore::LegacyRGBComponent>::is8Bit const):
(WTF::StringTypeAdapter<WebCore::LegacyRGBComponent>::writeTo const):
(WTF::StringTypeAdapter<WebCore::LegacyRGBComponent>::buffer const):
(WTF::StringTypeAdapter<WebCore::NumericComponent>::StringTypeAdapter):
(WTF::StringTypeAdapter<WebCore::NumericComponent>::length const):
(WTF::StringTypeAdapter<WebCore::NumericComponent>::is8Bit const):
(WTF::StringTypeAdapter<WebCore::NumericComponent>::writeTo const):
(WTF::StringTypeAdapter<WebCore::NumericComponent>::buffer const):
(WTF::StringTypeAdapter<WebCore::PercentageComponent>::StringTypeAdapter):
(WTF::StringTypeAdapter<WebCore::PercentageComponent>::length const):
(WTF::StringTypeAdapter<WebCore::PercentageComponent>::is8Bit const):
(WTF::StringTypeAdapter<WebCore::PercentageComponent>::writeTo const):
(WTF::StringTypeAdapter<WebCore::PercentageComponent>::buffer const):
Add helper StringTypeAdapter to efficiently encode "none" or the number
when used with makeString().
(WebCore::serializationUsingColorFunction):
(WebCore::serializationForCSS):
(WebCore::serializationForHTML):
(WebCore::serializationForRenderTreeAsText):
Add support for serializing bounded SRGBA<float> in the rgba() form rather
than the color function form for the case when it is used to store NaNs. This
serialization is a bit different than the normal 8-bit serialization as it uses
the whitespace syntax rather than comma syntax to allow round tripping of 'none'
components. This is currently unders discussion with the editors:
- platform/graphics/ColorTypes.h:
(WebCore::assertInRange):
Update bounds assertion to allow NaN for all components regardless of bounds.
- 12:23 PM Changeset in webkit [288142] by
-
- 1 edit in branches/safari-613.1.14.1-branch/Source/WebKit/WebKit.xcodeproj/project.pbxproj
Apply patch. rdar://problem/86298747
- 12:13 PM Changeset in webkit [288141] by
-
- 4 edits4 adds in branches/safari-613.1.14.1-branch
Cherry-pick r288078. rdar://problem/87662271
database names leak cross-origin within the same browser session
https://bugs.webkit.org/show_bug.cgi?id=233548
Reviewed by Geoff Garen.
Source/WebCore:
Test: http/tests/security/getdatabases-crossorigin.html
- Modules/indexeddb/server/IDBServer.cpp: (WebCore::IDBServer::IDBServer::getAllDatabaseNamesAndVersions): When iterating the set of all open UniqueIDBDatabases, only add them to the results list if their origins match.
- page/ClientOrigin.h: (WebCore::ClientOrigin::operator!= const):
LayoutTests:
- http/tests/security/getdatabases-crossorigin-expected.txt: Added.
- http/tests/security/getdatabases-crossorigin.html: Added.
- http/tests/security/resources/getdatabases-otherframe.html: Added.
- http/tests/security/resources/getdatabases-otherwindow.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@288078 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 12:13 PM Changeset in webkit [288140] by
-
- 2 edits in branches/safari-613.1.14.1-branch/Source/WebKit
Cherry-pick r287997. rdar://problem/87274541
Sometimes cannot scroll after using internal trackpad
https://bugs.webkit.org/show_bug.cgi?id=235206
<rdar://problem/87274541>
Reviewed by Simon Fraser.
- WebProcess/WebPage/MomentumEventDispatcher.cpp: (WebKit::MomentumEventDispatcher::didStartMomentumPhase): (WebKit::MomentumEventDispatcher::setScrollingAccelerationCurve):
- WebProcess/WebPage/MomentumEventDispatcher.h: We store std::optional<ScrollingAccelerationCurve> in a map, but then when looking at whether we have a curve (to decide whether or not to even use MomentumEventDispatcher), we check if the map has *any* value for the given page... even an unengaged optional. To fix, check if the optional is engaged.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@287997 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 12:13 PM Changeset in webkit [288139] by
-
- 4 edits4 adds in branches/safari-613.1.14.0-branch
Cherry-pick r288078. rdar://problem/87662271
database names leak cross-origin within the same browser session
https://bugs.webkit.org/show_bug.cgi?id=233548
Reviewed by Geoff Garen.
Source/WebCore:
Test: http/tests/security/getdatabases-crossorigin.html
- Modules/indexeddb/server/IDBServer.cpp: (WebCore::IDBServer::IDBServer::getAllDatabaseNamesAndVersions): When iterating the set of all open UniqueIDBDatabases, only add them to the results list if their origins match.
- page/ClientOrigin.h: (WebCore::ClientOrigin::operator!= const):
LayoutTests:
- http/tests/security/getdatabases-crossorigin-expected.txt: Added.
- http/tests/security/getdatabases-crossorigin.html: Added.
- http/tests/security/resources/getdatabases-otherframe.html: Added.
- http/tests/security/resources/getdatabases-otherwindow.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@288078 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 12:13 PM Changeset in webkit [288138] by
-
- 2 edits in branches/safari-613.1.14.0-branch/Source/WebKit
Cherry-pick r287997. rdar://problem/87274541
Sometimes cannot scroll after using internal trackpad
https://bugs.webkit.org/show_bug.cgi?id=235206
<rdar://problem/87274541>
Reviewed by Simon Fraser.
- WebProcess/WebPage/MomentumEventDispatcher.cpp: (WebKit::MomentumEventDispatcher::didStartMomentumPhase): (WebKit::MomentumEventDispatcher::setScrollingAccelerationCurve):
- WebProcess/WebPage/MomentumEventDispatcher.h: We store std::optional<ScrollingAccelerationCurve> in a map, but then when looking at whether we have a curve (to decide whether or not to even use MomentumEventDispatcher), we check if the map has *any* value for the given page... even an unengaged optional. To fix, check if the optional is engaged.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@287997 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 12:13 PM Changeset in webkit [288137] by
-
- 4 edits in branches/safari-613.1.14.0-branch
Cherry-pick r287957. rdar://problem/87327557
[WebAuthn] Fix freebie call without user gesture not being given
https://bugs.webkit.org/show_bug.cgi?id=235078
rdar://87327557
Reviewed by Brent Fulgham.
Source/WebKit:
This logic was previously always requiring a user gesture. The desired
behavior of giving pages a single "freebie" webauthn call without gesture
was lost in a refactor.
Tested manually on iOS device with webauthn.me.
- WebProcess/WebAuthentication/WebAuthenticatorCoordinator.cpp: (WebKit::WebAuthenticatorCoordinator::processingUserGesture):
Tools:
Updated API test to reflect user gesture freebie.
- TestWebKitAPI/Tests/WebKitCocoa/web-authentication-make-credential-la-no-mock.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@287957 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 12:07 PM Changeset in webkit [288136] by
-
- 2 edits1 move3 adds in trunk/LayoutTests
Move dialog-form-submission-expected.txt iPad test expectations in correct directory
https://bugs.webkit.org/show_bug.cgi?id=229566
Unreviewed test gardening.
This is not a flaky failure, but a iPad only failure (or unexpected pass).
- platform/ipad/TestExpectations:
- platform/ipad/imported/w3c/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/dialog-form-submission-expected.txt: Renamed from LayoutTests/platform/ipad/imported/w3c/web-platform-tests/html/browsers/the-window-object/dialog-form-submission-expected.txt.
- 12:05 PM Changeset in webkit [288135] by
-
- 9 edits in branches/safari-613.1.14.0-branch/Source
Versioning.
WebKit-7613.1.14.0.1
- 11:59 AM Changeset in webkit [288134] by
-
- 18 edits in trunk
Canvas functions that take colors as strings don't support all the syntax that CSS supports
https://bugs.webkit.org/show_bug.cgi?id=235269
Reviewed by Darin Adler.
LayoutTests/imported/w3c:
Update expected results now that the test is passing.
- web-platform-tests/html/canvas/element/fill-and-stroke-styles/2d.fillStyle.toStringFunctionCallback-expected.txt:
Source/WebCore:
Add a variant of CSSParser::parseColor() that takes a CSSParserContext
and use it (and parser context created from a document) to get the parser
to respect the settings. Rename the existing CSSParser::parseColor() to
CSSParser::parseColorWithoutContext() and add a comment indicating all
uses should eventually be removed.
Offscreen canvas and custom paint canvas are using the old path with https://webkit.org/b/235270
tracking finding a solution for them.
- Modules/applicationmanifest/ApplicationManifestParser.cpp:
(WebCore::ApplicationManifestParser::parseColor):
- css/StyleProperties.cpp:
(WebCore::StyleProperties::propertyAsColor const):
- css/parser/CSSParser.cpp:
(WebCore::CSSParser::parseColor):
(WebCore::CSSParser::parseColorWithoutContext):
- css/parser/CSSParser.h:
- editing/EditingStyle.cpp:
(WebCore::cssValueToColor):
- html/HTMLBodyElement.cpp:
(WebCore::HTMLBodyElement::parseAttribute):
- html/HTMLMetaElement.cpp:
(WebCore::HTMLMetaElement::contentColor):
- html/canvas/CanvasStyle.cpp:
(WebCore::parseColor):
(WebCore::currentColor):
- svg/properties/SVGAnimationAdditiveValueFunctionImpl.h:
- svg/properties/SVGPropertyTraits.h:
(WebCore::SVGPropertyTraits<Color>::fromString):
(WebCore::SVGPropertyTraits<Color>::parse):
Source/WebKit:
Update for rename of CSSParser::parseColor() to CSSParser::parseColorWithoutContext().
- UIProcess/API/wpe/WebKitColor.cpp:
(webkit_color_parse):
- WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
(WKBundlePageSetComposition):
LayoutTests:
- fast/canvas/canvas-color-serialization.html:
Update doctype to set the correct CSS parsing mode which now needs to be set correctly for canvas color setting functions.
- 11:36 AM Changeset in webkit [288133] by
-
- 3 edits2 deletes in trunk/Source/WebCore
Remove ImplementationLacksVTable IDL attribute
https://bugs.webkit.org/show_bug.cgi?id=235170
Patch by Alex Christensen <achristensen@webkit.org> on 2022-01-18
Reviewed by Yusuke Suzuki.
Also remove some bindings test results that don't seem to be used any more.
- Modules/indexeddb/IDBKeyRange.idl:
- bindings/scripts/IDLAttributes.json:
- bindings/scripts/test/JS/JSInterfaceName.cpp: Removed.
- bindings/scripts/test/JS/JSMapLike.cpp: Removed.
- 11:33 AM Changeset in webkit [288132] by
-
- 41 edits1 add in trunk
CSP: Improve handling of multiple policies
https://bugs.webkit.org/show_bug.cgi?id=235199
Reviewed by Kate Cheney.
LayoutTests/imported/w3c:
Add new test expectations with more passes.
- web-platform-tests/content-security-policy/script-src/script-src-multiple-policies-one-using-hashing-algorithms-expected.txt:
- web-platform-tests/content-security-policy/script-src/script-src-strict_dynamic_parser_inserted-expected.txt:
- web-platform-tests/content-security-policy/style-src/style-src-error-event-fires-expected.txt:
- web-platform-tests/content-security-policy/style-src/style-src-inline-style-nonce-blocked-error-event-expected.txt:
- web-platform-tests/content-security-policy/style-src/style-src-multiple-policies-multiple-hashing-algorithms-expected.txt: Added.
Source/WebCore:
This fixes many issues with multiple CSP policies.
To quote the spec for script-src:
Their behavior will be blocked unless every policy allows inline script, either implicitly by not
specifying a script-src (or default-src) directive, or explicitly, by specifying "unsafe-inline",
a nonce-source or a hash-source that matches the inline block.
The previous structure was many distinct calls to check if there was a nonce in any policy, then if there
was a hash in any policy, etc, rather than actually checking the policies as a whole to know if they
allow or block a behavior. This lead to various issues where polices were not properly respected and where
reports were inaccurate.
The allScriptPoliciesAllow() function did try to consider all policies but was not very flexible and had buggy
behavior like for each policy it would call findHashOfContentInPolicies() meaning hashes from other policies
incorrectly applied to the current policy, plus general inefficiency of hashing the same content many
times over.
The new behavior relies more on passing all required information in a single function call to verify all
policies in a single pass.
- bindings/js/CachedScriptFetcher.cpp:
(WebCore::CachedScriptFetcher::requestScriptWithCache const):
- dom/InlineStyleSheetOwner.cpp:
(WebCore::InlineStyleSheetOwner::createSheet):
- dom/ScriptElement.cpp:
(WebCore::ScriptElement::requestModuleScript):
(WebCore::ScriptElement::executeClassicScript):
- dom/StyledElement.cpp:
(WebCore::StyledElement::styleAttributeChanged):
- html/HTMLLinkElement.cpp:
(WebCore::HTMLLinkElement::process):
- loader/DocumentThreadableLoader.cpp:
(WebCore::DocumentThreadableLoader::isAllowedByContentSecurityPolicy):
- loader/ResourceLoaderOptions.h:
- loader/cache/CachedResourceLoader.cpp:
(WebCore::CachedResourceLoader::allowedByContentSecurityPolicy const):
- page/csp/ContentSecurityPolicy.cpp:
(WebCore::parseSubResourceIntegrityIntoDigests):
(WebCore::generateHashesForContent):
(WebCore::ContentSecurityPolicy::allowJavaScriptURLs const):
(WebCore::ContentSecurityPolicy::allowInlineEventHandlers const):
(WebCore::ContentSecurityPolicy::allowNonParserInsertedScripts const):
(WebCore::ContentSecurityPolicy::allowInlineScript const):
(WebCore::ContentSecurityPolicy::allowInlineStyle const):
(WebCore::ContentSecurityPolicy::allowScriptFromSource const):
(WebCore::ContentSecurityPolicy::allowStyleFromSource const):
(WebCore::ContentSecurityPolicy::allScriptPoliciesAllow const): Deleted.
(WebCore::ContentSecurityPolicy::findHashOfContentInPolicies const): Deleted.
(WebCore::ContentSecurityPolicy::checkHashAndReportViolation const): Deleted.
- page/csp/ContentSecurityPolicy.h:
- page/csp/ContentSecurityPolicyDirectiveList.cpp:
(WebCore::ContentSecurityPolicyDirectiveList::violatedDirectiveForUnsafeInlineScriptElement const):
(WebCore::ContentSecurityPolicyDirectiveList::violatedDirectiveForInlineJavascriptURL const):
(WebCore::ContentSecurityPolicyDirectiveList::violatedDirectiveForInlineEventHandlers const):
(WebCore::ContentSecurityPolicyDirectiveList::violatedDirectiveForNonParserInsertedScripts const):
(WebCore::ContentSecurityPolicyDirectiveList::violatedDirectiveForUnsafeInlineStyleElement const):
(WebCore::ContentSecurityPolicyDirectiveList::violatedDirectiveForUnsafeInlineStyleAttribute const):
(WebCore::ContentSecurityPolicyDirectiveList::violatedDirectiveForScript const):
(WebCore::ContentSecurityPolicyDirectiveList::violatedDirectiveForStyle const):
(WebCore::ContentSecurityPolicyDirectiveList::violatedDirectiveForUnsafeHashScript const): Deleted.
(WebCore::ContentSecurityPolicyDirectiveList::violatedDirectiveForUnsafeHashStyle const): Deleted.
(WebCore::ContentSecurityPolicyDirectiveList::violatedDirectiveForParserInsertedScript const): Deleted.
(WebCore::ContentSecurityPolicyDirectiveList::violatedDirectiveForUnsafeInlineScriptAttribute const): Deleted.
(WebCore::ContentSecurityPolicyDirectiveList::violatedDirectiveForScriptHash const): Deleted.
(WebCore::ContentSecurityPolicyDirectiveList::violatedDirectiveForStyleHash const): Deleted.
- page/csp/ContentSecurityPolicyDirectiveList.h:
LayoutTests:
Update test expectations, Some newly passing tests are no longer skipped and some have new reports.
- TestExpectations:
- http/tests/security/contentSecurityPolicy/1.1/module-scriptnonce-in-enforced-policy-and-not-in-report-only-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/module-scriptnonce-multiple-policies-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-in-enforced-policy-and-not-in-report-only-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-multiple-policies-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-allowed-by-enforced-policy-and-blocked-by-report-policy-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-allowed-by-enforced-policy-and-blocked-by-report-policy2-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-allowed-by-legacy-enforced-policy-and-blocked-by-report-policy-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-allowed-by-legacy-enforced-policy-and-blocked-by-report-policy2-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-enforced-policy-and-allowed-by-report-policy-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-enforced-policy-and-allowed-by-report-policy2-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-legacy-enforced-policy-and-blocked-by-report-policy-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-legacy-enforced-policy-and-blocked-by-report-policy2-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-in-enforced-policy-and-not-in-report-only-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-multiple-policies-expected.txt:
- http/tests/security/contentSecurityPolicy/inline-script-blocked-javascript-url-expected.txt:
- http/tests/security/contentSecurityPolicy/javascript-url-blocked-by-default-src-star-expected.txt:
- http/tests/security/contentSecurityPolicy/javascript-url-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/window-open-javascript-url-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/window-open-javascript-url-with-target-blocked-expected.txt:
- platform/glib/TestExpectations:
- platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-css-in-iframe-report-only-expected.txt:
- 10:47 AM Changeset in webkit [288131] by
-
- 1 copy in branches/safari-613.1.14.2-branch
New branch.
- 10:47 AM Changeset in webkit [288130] by
-
- 1 copy in branches/safari-613.1.14.1-branch
New branch.
- 10:46 AM Changeset in webkit [288129] by
-
- 1 copy in branches/safari-613.1.14.0-branch
New branch.
- 10:46 AM Changeset in webkit [288128] by
-
- 2 edits in trunk/Source/WebKit
Copy com.apple.WebKit.adattributiond.sb into place with other iOS sandbox profiles
https://bugs.webkit.org/show_bug.cgi?id=235320
<rdar://87711220>
Patch by Alex Christensen <achristensen@webkit.org> on 2022-01-18
Reviewed by Per Arne Vollan.
Ever since r287100 we are using the sandbox profile, but it doesn't exist so we just crash.
- WebKit.xcodeproj/project.pbxproj:
- 10:44 AM Changeset in webkit [288127] by
-
- 4 edits in trunk/Source/WebCore
Clean up some code around RenderElement::addLayers()
https://bugs.webkit.org/show_bug.cgi?id=235272
Reviewed by Darin Adler.
The code that looks for the next layer via render tree traversal is tricky and
hard to understand. Do some initial cleanup prior to fixing it for top layer.
First, use std::optional<> in the static addLayers() to make the beforeChild
finding easier to understand (no longer need a null newObject as the signal that
you've tried to look).
Second, use references in findNextLayer() and rename 'startPoint' to make its
purpose more clear.
- rendering/RenderElement.cpp:
(WebCore::addLayers):
(WebCore::RenderElement::addLayers):
(WebCore::RenderElement::findNextLayer const):
(WebCore::RenderElement::findNextLayer): Deleted.
- rendering/RenderElement.h:
- rendering/RenderLayer.cpp:
(WebCore::RenderLayer::insertOnlyThisLayer):
- 10:42 AM Changeset in webkit [288126] by
-
- 2 edits in trunk
Fix typos in Introduction.md
https://bugs.webkit.org/show_bug.cgi?id=235321
Patch by Brandon Stewart <Brandon> on 2022-01-18
Reviewed by Michael Saboff.
Fix several typos in Introduction file.
- Introduction.md:
- 10:40 AM Changeset in webkit [288125] by
-
- 1 copy in tags/Safari-612.4.9.1.6
Tag Safari-612.4.9.1.6.
- 10:38 AM Changeset in webkit [288124] by
-
- 4 edits in trunk/Source/WebCore
Reduce failure timer in CoreAudioSharedUnit in the case we only render audio samples
https://bugs.webkit.org/show_bug.cgi?id=235318
Reviewed by Eric Carlson.
As shown in https://bugs.webkit.org/show_bug.cgi?id=235317, it might be possible for a VPIO that is only used for
audio rendering to fail sometimes. Waiting for 10 seconds in that case is very long, so we reduce the verification delay to 2 seconds.
Manually tested.
- platform/mediastream/mac/BaseAudioSharedUnit.cpp:
- platform/mediastream/mac/BaseAudioSharedUnit.h:
- platform/mediastream/mac/CoreAudioCaptureSource.cpp:
- 10:29 AM Changeset in webkit [288123] by
-
- 8 edits in branches/safari-612.4.9.1-branch/Source
Versioning.
WebKit-7612.4.9.1.6
- 10:16 AM Changeset in webkit [288122] by
-
- 1 edit in branches/safari-613-branch/Source/WebKit/WebKit.xcodeproj/project.pbxproj
Apply patch. rdar://problem/86298747
- 10:15 AM Changeset in webkit [288121] by
-
- 9 edits in branches/safari-613-branch/Source
Versioning.
WebKit-7613.1.15
- 10:14 AM Changeset in webkit [288120] by
-
- 2 edits in trunk/JSTests
Gardening: resolve test failure on CLoop.
Not reviewed.
Change test to not rely on WebAssembly.
- stress/max-typed-array-length-toString.js:
- 10:11 AM Changeset in webkit [288119] by
-
- 2 edits in trunk/Source/WTF
UUID decode routine should check for deleted value
https://bugs.webkit.org/show_bug.cgi?id=235315
Reviewed by Chris Dumez.
- wtf/UUID.h:
(WTF::UUID::decode):
- 10:09 AM Changeset in webkit [288118] by
-
- 264 edits in trunk/Source/WebCore
Remove ImplementationLacksVTable IDL attribute
https://bugs.webkit.org/show_bug.cgi?id=235170
Patch by Alex Christensen <achristensen@webkit.org> on 2022-01-18
Reviewed by Yusuke Suzuki.
It can be replaced by if constexpr (std::is_polymorphic_v<T>).
- Modules/WebGPU/GPU.idl:
- Modules/WebGPU/GPUAdapter.idl:
- Modules/WebGPU/GPUBindGroup.idl:
- Modules/WebGPU/GPUBindGroupLayout.idl:
- Modules/WebGPU/GPUBuffer.idl:
- Modules/WebGPU/GPUBufferUsage.idl:
- Modules/WebGPU/GPUCanvasContext.idl:
- Modules/WebGPU/GPUColorWrite.idl:
- Modules/WebGPU/GPUCommandBuffer.idl:
- Modules/WebGPU/GPUCommandEncoder.idl:
- Modules/WebGPU/GPUCompilationInfo.idl:
- Modules/WebGPU/GPUCompilationMessage.idl:
- Modules/WebGPU/GPUComputePassEncoder.idl:
- Modules/WebGPU/GPUComputePipeline.idl:
- Modules/WebGPU/GPUDeviceLostInfo.idl:
- Modules/WebGPU/GPUExternalTexture.idl:
- Modules/WebGPU/GPUMapMode.idl:
- Modules/WebGPU/GPUOutOfMemoryError.idl:
- Modules/WebGPU/GPUPipelineLayout.idl:
- Modules/WebGPU/GPUQuerySet.idl:
- Modules/WebGPU/GPUQueue.idl:
- Modules/WebGPU/GPURenderBundle.idl:
- Modules/WebGPU/GPURenderBundleEncoder.idl:
- Modules/WebGPU/GPURenderPassEncoder.idl:
- Modules/WebGPU/GPURenderPipeline.idl:
- Modules/WebGPU/GPUSampler.idl:
- Modules/WebGPU/GPUShaderModule.idl:
- Modules/WebGPU/GPUShaderStage.idl:
- Modules/WebGPU/GPUSupportedFeatures.idl:
- Modules/WebGPU/GPUSupportedLimits.idl:
- Modules/WebGPU/GPUTexture.idl:
- Modules/WebGPU/GPUTextureUsage.idl:
- Modules/WebGPU/GPUTextureView.idl:
- Modules/WebGPU/GPUValidationError.idl:
- Modules/async-clipboard/ClipboardItem.idl:
- Modules/contact-picker/ContactsManager.idl:
- Modules/credentialmanagement/CredentialsContainer.idl:
- Modules/encryptedmedia/MediaKeySystemAccess.idl:
- Modules/entriesapi/DOMFileSystem.idl:
- Modules/fetch/FetchHeaders.idl:
- Modules/gamepad/Gamepad.idl:
- Modules/gamepad/GamepadButton.idl:
- Modules/geolocation/GeolocationCoordinates.idl:
- Modules/geolocation/GeolocationPosition.idl:
- Modules/geolocation/GeolocationPositionError.idl:
- Modules/highlight/Highlight.idl:
- Modules/highlight/HighlightRegister.idl:
- Modules/indexeddb/IDBKeyRange.idl:
- Modules/mediacapabilities/MediaCapabilities.idl:
- Modules/mediacontrols/MediaControlsHost.idl:
- Modules/mediasession/MediaMetadata.idl:
- Modules/mediasource/VideoPlaybackQuality.idl:
- Modules/mediastream/OverconstrainedError.idl:
- Modules/mediastream/RTCCertificate.idl:
- Modules/mediastream/RTCEncodedAudioFrame.idl:
- Modules/mediastream/RTCEncodedVideoFrame.idl:
- Modules/mediastream/RTCIceCandidate.idl:
- Modules/mediastream/RTCSessionDescription.idl:
- Modules/mediastream/RTCStatsReport.idl:
- Modules/paymentrequest/PaymentAddress.idl:
- Modules/permissions/Permissions.idl:
- Modules/push-api/PushManager.idl:
- Modules/push-api/PushMessageData.idl:
- Modules/push-api/PushSubscription.idl:
- Modules/push-api/PushSubscriptionOptions.idl:
- Modules/speech/SpeechRecognitionAlternative.idl:
- Modules/speech/SpeechRecognitionResult.idl:
- Modules/speech/SpeechRecognitionResultList.idl:
- Modules/storage/StorageManager.idl:
- Modules/web-locks/WebLock.idl:
- Modules/webaudio/AudioBuffer.idl:
- Modules/webaudio/AudioListener.idl:
- Modules/webaudio/AudioWorkletProcessor.idl:
- Modules/webaudio/PeriodicWave.idl:
- Modules/webcodecs/VideoColorSpace.idl:
- Modules/webdatabase/Database.idl:
- Modules/webdatabase/SQLError.idl:
- Modules/webdatabase/SQLResultSet.idl:
- Modules/webdatabase/SQLResultSetRowList.idl:
- Modules/webxr/WebXRFrame.idl:
- Modules/webxr/WebXRHand.idl:
- Modules/webxr/WebXRInputSource.idl:
- Modules/webxr/WebXRInputSourceArray.idl:
- Modules/webxr/WebXRJointPose.idl:
- Modules/webxr/WebXRRenderState.idl:
- Modules/webxr/WebXRRigidTransform.idl:
- Modules/webxr/WebXRView.idl:
- Modules/webxr/WebXRViewport.idl:
- bindings/scripts/CodeGeneratorJS.pm:
(GetGnuVTableNameForInterface):
(GetWinVTableNameForInterface):
(GenerateImplementation):
(GetImplementationLacksVTableForInterface): Deleted.
- bindings/scripts/IDLAttributes.json:
- bindings/scripts/test/ExposedToWorkerAndWindow.idl:
- bindings/scripts/test/JS/JSExposedStar.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSExposedToWorkerAndWindow.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestCEReactions.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestCEReactionsStringifier.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestCallTracer.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestClassWithJSBuiltinConstructor.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestConditionalIncludes.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestConditionallyReadWrite.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestDefaultToJSON.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestDefaultToJSONFilteredByExposed.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestDelegateToSharedSyntheticAttribute.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestDomainSecurity.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestEnabledBySetting.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestEnabledForContext.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestEventConstructor.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestEventTarget.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestException.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestGenerateAddOpaqueRoot.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestIndexedSetterNoIdentifier.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestIndexedSetterThrowingException.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestIndexedSetterWithIdentifier.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestInterface.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestInterfaceLeadingUnderscore.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestIterable.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestLegacyFactoryFunction.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestLegacyNoInterfaceObject.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestLegacyOverrideBuiltIns.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestMapLike.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestMapLikeWithOverriddenOperations.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestNamedAndIndexedSetterNoIdentifier.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestNamedAndIndexedSetterThrowingException.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestNamedAndIndexedSetterWithIdentifier.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestNamedDeleterNoIdentifier.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestNamedDeleterThrowingException.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestNamedDeleterWithIdentifier.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestNamedDeleterWithIndexedGetter.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestNamedGetterCallWith.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestNamedGetterNoIdentifier.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestNamedGetterWithIdentifier.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestNamedSetterNoIdentifier.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestNamedSetterThrowingException.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestNamedSetterWithIdentifier.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestNamedSetterWithIndexedGetter.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestNamedSetterWithIndexedGetterAndSetter.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestNamedSetterWithLegacyOverrideBuiltIns.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestNamedSetterWithLegacyUnforgeableProperties.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestNamedSetterWithLegacyUnforgeablePropertiesAndLegacyOverrideBuiltIns.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestNode.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestOperationConditional.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestOverloadedConstructorsWithSequence.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestPluginInterface.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestPromiseRejectionEvent.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestReadOnlyMapLike.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestReadOnlySetLike.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestReportExtraMemoryCost.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestSetLike.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestSetLikeWithOverriddenOperations.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestStringifier.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestStringifierAnonymousOperation.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestStringifierNamedOperation.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestStringifierOperationImplementedAs.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestStringifierOperationNamedToString.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestStringifierReadOnlyAttribute.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestStringifierReadWriteAttribute.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/JS/JSTestTypedefs.cpp:
(WebCore::toJSNewlyCreated):
- bindings/scripts/test/TestInterface.idl:
- bindings/scripts/test/TestInterfaceLeadingUnderscore.idl:
- css/CSSPaintSize.idl:
- css/DOMMatrix.idl:
- css/DOMMatrixReadOnly.idl:
- css/DeprecatedCSSOMCounter.idl:
- css/DeprecatedCSSOMPrimitiveValue.idl:
- css/DeprecatedCSSOMRGBColor.idl:
- css/DeprecatedCSSOMRect.idl:
- css/DeprecatedCSSOMValue.idl:
- css/DeprecatedCSSOMValueList.idl:
- css/MediaList.idl:
- css/StyleMedia.idl:
- css/StyleSheetList.idl:
- css/typedom/CSSOMVariableReferenceValue.idl:
- css/typedom/numeric/CSSNumericArray.idl:
- dom/AbortController.idl:
- dom/DOMException.idl:
- dom/DOMImplementation.idl:
- dom/DOMPoint.idl:
- dom/DOMPointReadOnly.idl:
- dom/DOMQuad.idl:
- dom/DOMRect.idl:
- dom/DOMRectList.idl:
- dom/DOMRectReadOnly.idl:
- dom/DOMStringList.idl:
- dom/DataTransferItem.idl:
- dom/IdleDeadline.idl:
- dom/MessageChannel.idl:
- dom/MutationObserver.idl:
- dom/NamedNodeMap.idl:
- dom/NodeIterator.idl:
- dom/TextDecoder.idl:
- dom/TextDecoderStreamDecoder.idl:
- dom/TextEncoder.idl:
- dom/TextEncoderStreamEncoder.idl:
- dom/Touch.idl:
- dom/TouchList.idl:
- dom/TreeWalker.idl:
- fileapi/FileList.idl:
- fileapi/FileReaderSync.idl:
- html/DOMFormData.idl:
- html/ImageBitmap.idl:
- html/ImageData.idl:
- html/MediaError.idl:
- html/TextMetrics.idl:
- html/TimeRanges.idl:
- html/URLSearchParams.idl:
- html/WebKitMediaKeyError.idl:
- html/canvas/CanvasGradient.idl:
- html/canvas/CanvasPattern.idl:
- html/canvas/WebGLActiveInfo.idl:
- html/canvas/WebGLShaderPrecisionFormat.idl:
- html/canvas/WebGLUniformLocation.idl:
- html/track/AudioTrackConfiguration.idl:
- html/track/TextTrackCueList.idl:
- html/track/VTTRegionList.idl:
- html/track/VideoTrackConfiguration.idl:
- inspector/CommandLineAPIHost.idl:
- inspector/InspectorAuditAccessibilityObject.idl:
- inspector/InspectorAuditDOMObject.idl:
- inspector/InspectorAuditResourcesObject.idl:
- inspector/InspectorFrontendHost.idl:
- page/BarProp.idl:
- page/DOMSelection.idl:
- page/History.idl:
- page/IntersectionObserver.idl:
- page/IntersectionObserverEntry.idl:
- page/Location.idl:
- page/PerformanceNavigation.idl:
- page/PerformanceObserver.idl:
- page/PerformanceObserverEntryList.idl:
- page/PerformanceServerTiming.idl:
- page/PerformanceTiming.idl:
- page/ResizeObserver.idl:
- page/ResizeObserverEntry.idl:
- page/Screen.idl:
- page/UndoItem.idl:
- page/UndoManager.idl:
- page/WebKitPoint.idl:
- plugins/DOMMimeType.idl:
- plugins/DOMMimeTypeArray.idl:
- plugins/DOMPlugin.idl:
- plugins/DOMPluginArray.idl:
- svg/SVGPathSeg.idl:
- svg/SVGRenderingIntent.idl:
- svg/SVGUnitTypes.idl:
- svg/SVGViewSpec.idl:
- testing/GCObservation.idl:
- testing/MallocStatistics.idl:
- testing/MemoryInfo.idl:
- testing/MockContentFilterSettings.idl:
- testing/MockPageOverlay.idl:
- testing/ServiceWorkerInternals.idl:
- testing/TypeConversions.idl:
- testing/WebFakeXRDevice.idl:
- testing/WebFakeXRInputController.idl:
- workers/WorkerLocation.idl:
- workers/service/ServiceWorkerClients.idl:
- xml/DOMParser.idl:
- xml/XMLSerializer.idl:
- xml/XPathEvaluator.idl:
- xml/XPathExpression.idl:
- xml/XPathResult.idl:
- xml/XSLTProcessor.idl:
- 8:45 AM Changeset in webkit [288117] by
-
- 6 edits2 adds in trunk
AX: Improve support for aria-owns in aria trees
https://bugs.webkit.org/show_bug.cgi?id=233383
Patch by Sepand Parhami <sparhami@apple.com> on 2022-01-18
Reviewed by Chris Fleizach.
Source/WebCore:
Better supports aria-owns in trees by following children specified through ownership similar
to how DOM children are handled. Previously, you could use aria-owns for only one level of
ownership. This change also fixes tree items being included twice (once as a DOM child and
another time via aria-owns) and supports using both DOM children and aria-owns on a single
element. This change only affects trees via a change to ariaTreeRows and does not change
aria-owns behavior in general.
Tests: accessibility/mac/treeitem-row-delegation.html
accessibility/mac/treeitem-row-delegation-poorly-formed.html
- accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::ariaTreeRows):
- accessibility/AccessibilityObject.h:
LayoutTests:
Adds test cases for additional specified behavior of aria-owns in trees as well as tests to
make sure incorrect aria-owns usage does not cause crashes.
- accessibility/mac/treeitem-row-delegation-expected.txt:
- accessibility/mac/treeitem-row-delegation-poorly-formed-expected.txt: Added.
- accessibility/mac/treeitem-row-delegation-poorly-formed.html: Added.
- accessibility/mac/treeitem-row-delegation.html:
- 8:16 AM Changeset in webkit [288116] by
-
- 7 edits in trunk
Make ServiceWorkerClient.id a UUID instead of a string derived from a ScriptExecutionContextIdentifier
https://bugs.webkit.org/show_bug.cgi?id=235070
<rdar://problem/87673540>
Reviewed by Darin Adler and Chris Dumez.
Source/WebCore:
Covered by existing and beefed-up API tests.
- platform/ScriptExecutionContextIdentifier.h:
Remove unneeded const & and && constructors and use by value constructor instead.
Add computeHash direct specialization to remove UUID Hasher specialization.
Source/WTF:
- wtf/UUID.cpp:
- wtf/UUID.h:
Use uint64_t logic to generate UUIDs and remove some reinterpret_cast.
Remove the Hasher add since we directly use UUID hash in WebCore.
Simplify parsing logic by using more parseIntegers and bit logic.
Also make sure we are not able to create empty/deleted UUID value from strings.
Tools:
- TestWebKitAPI/Tests/WTF/UUID.cpp:
Improve test coverage.
- 7:25 AM Changeset in webkit [288115] by
-
- 2 edits in trunk/Source/JavaScriptCore
Non-unified build fails due to missing header in WasmCalleeGroup.cpp
Unreviewed non-unified build fix.
- wasm/WasmCalleeGroup.cpp: Add missing inclusion of the LinkBuffer.h header.
- 4:28 AM Changeset in webkit [288114] by
-
- 2 edits in trunk/Source/WebCore
[css-logical] Simplify logical property groups
https://bugs.webkit.org/show_bug.cgi?id=228130
Reviewed by Antti Koivisto.
Refactors logical property group code in makeprop.pl to make it a bit
more simple and easy the extend if new kinds of logical properties are
introduced in the future.
No new tests since no change in behavior.
- css/makeprop.pl:
(addProperty):
- 3:02 AM Changeset in webkit [288113] by
-
- 7 edits in trunk
[css-flexbox] Add support for intrinsic sizes in flex-basis
https://bugs.webkit.org/show_bug.cgi?id=235291
Reviewed by Darin Adler.
LayoutTests/imported/w3c:
- web-platform-tests/css/css-flexbox/flex-basis-intrinsics-001-expected.txt: Replaced FAIL by PASS expectations.
- web-platform-tests/css/css-flexbox/parsing/flex-basis-computed-expected.txt: Ditto.
- web-platform-tests/css/css-flexbox/parsing/flex-basis-valid-expected.txt: Ditto.
Source/WebCore:
The flex-basis property should allow the same values as <'width'>. However we were only allowing 'auto', 'content'
and any Length. That did not include intrinsic sizes like 'min-content', 'fit-content' etc. Added the proper parsing
machinery in order to fix that.
Apart from that, a change in the flexbox code was needed. In particular the code was incorrectly assuming that a
flex-basis with intrinsic size in a column flexbox was always an indefinite size. That's true as long as the flexbox
has an horizontal writing mode (in that case the main axis would be the block axis). However that's totally wrong for
a flexbox with vertical writing mode (as in that case the main axis would be the inline axis).
The flexbox fix + the parsing additions allow us to pass 12 more WPT subtests.
- css/parser/CSSPropertyParser.cpp:
(WebCore::consumeFlexBasis): Additionally check for any validWidthOrHeightKeyword().
(WebCore::CSSPropertyParser::parseSingleValue): Pass the context instead of the mode.
- rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::childMainSizeIsDefinite): Replaced isColumnFlow() by !mainAxisIsChildInlineAxis().
- 12:30 AM Changeset in webkit [288112] by
-
- 68 edits26 moves26 deletes in trunk/LayoutTests
[GLIB] Update test baselines after r288070.
https://bugs.webkit.org/show_bug.cgi?id=235300
Unreviewed test gardening.
Since r288070 enabled LFC integration to be used on GTK as well as WPE, many test baselines can now be merged.
Patch by Arcady Goldmints-Orlov <Arcady Goldmints-Orlov> on 2022-01-18
- platform/glib/css2.1/t0805-c5521-brdr-l-01-e-expected.txt: Renamed from LayoutTests/platform/wpe/css2.1/t0805-c5521-brdr-l-01-e-expected.txt.
- platform/glib/css2.1/t0905-c5525-fltwrap-00-b-expected.txt: Renamed from LayoutTests/platform/wpe/css2.1/t0905-c5525-fltwrap-00-b-expected.txt.
- platform/glib/css2.1/t090501-c414-flt-03-b-g-expected.txt: Renamed from LayoutTests/platform/wpe/css2.1/t090501-c414-flt-03-b-g-expected.txt.
- platform/glib/css2.1/t100801-c544-valgn-03-d-agi-expected.txt: Renamed from LayoutTests/platform/wpe/css2.1/t100801-c544-valgn-03-d-agi-expected.txt.
- platform/glib/css2.1/t1202-counter-08-b-expected.txt: Renamed from LayoutTests/platform/wpe/css2.1/t1202-counter-08-b-expected.txt.
- platform/glib/css2.1/t1202-counter-13-b-expected.txt: Renamed from LayoutTests/platform/wpe/css2.1/t1202-counter-13-b-expected.txt.
- platform/glib/css2.1/t1202-counter-14-b-expected.txt: Renamed from LayoutTests/platform/wpe/css2.1/t1202-counter-14-b-expected.txt.
- platform/glib/css2.1/t1202-counters-08-b-expected.txt: Renamed from LayoutTests/platform/wpe/css2.1/t1202-counters-08-b-expected.txt.
- platform/glib/css2.1/t1202-counters-13-b-expected.txt: Renamed from LayoutTests/platform/wpe/css2.1/t1202-counters-13-b-expected.txt.
- platform/glib/css2.1/t1202-counters-14-b-expected.txt: Renamed from LayoutTests/platform/wpe/css2.1/t1202-counters-14-b-expected.txt.
- platform/glib/css3/filters/effect-combined-expected.txt: Renamed from LayoutTests/platform/wpe/css3/filters/effect-combined-expected.txt.
- platform/glib/css3/filters/effect-combined-hw-expected.txt: Renamed from LayoutTests/platform/wpe/css3/filters/effect-combined-hw-expected.txt.
- platform/glib/css3/filters/effect-contrast-expected.txt: Renamed from LayoutTests/platform/wpe/css3/filters/effect-contrast-expected.txt.
- platform/glib/css3/filters/effect-contrast-hw-expected.txt: Renamed from LayoutTests/platform/wpe/css3/filters/effect-contrast-hw-expected.txt.
- platform/glib/css3/filters/effect-grayscale-expected.txt: Renamed from LayoutTests/platform/wpe/css3/filters/effect-grayscale-expected.txt.
- platform/glib/css3/filters/effect-grayscale-hw-expected.txt: Renamed from LayoutTests/platform/wpe/css3/filters/effect-grayscale-hw-expected.txt.
- platform/glib/css3/filters/effect-hue-rotate-expected.txt: Renamed from LayoutTests/platform/wpe/css3/filters/effect-hue-rotate-expected.txt.
- platform/glib/css3/filters/effect-hue-rotate-hw-expected.txt: Renamed from LayoutTests/platform/wpe/css3/filters/effect-hue-rotate-hw-expected.txt.
- platform/glib/css3/filters/effect-invert-expected.txt: Renamed from LayoutTests/platform/wpe/css3/filters/effect-invert-expected.txt.
- platform/glib/css3/filters/effect-invert-hw-expected.txt: Renamed from LayoutTests/platform/wpe/css3/filters/effect-invert-hw-expected.txt.
- platform/glib/css3/filters/effect-opacity-expected.txt: Renamed from LayoutTests/platform/wpe/css3/filters/effect-opacity-expected.txt.
- platform/glib/css3/filters/effect-opacity-hw-expected.txt: Renamed from LayoutTests/platform/wpe/css3/filters/effect-opacity-hw-expected.txt.
- platform/glib/css3/filters/effect-saturate-expected.txt: Renamed from LayoutTests/platform/wpe/css3/filters/effect-saturate-expected.txt.
- platform/glib/css3/filters/effect-saturate-hw-expected.txt: Renamed from LayoutTests/platform/wpe/css3/filters/effect-saturate-hw-expected.txt.
- platform/glib/css3/filters/effect-sepia-expected.txt: Renamed from LayoutTests/platform/wpe/css3/filters/effect-sepia-expected.txt.
- platform/glib/css3/filters/effect-sepia-hw-expected.txt: Renamed from LayoutTests/platform/wpe/css3/filters/effect-sepia-hw-expected.txt.
- platform/gtk/css1/box_properties/border-expected.txt:
- platform/gtk/css1/box_properties/float_on_text_elements-expected.txt:
- platform/gtk/css1/font_properties/font-expected.txt:
- platform/gtk/css1/formatting_model/height_of_lines-expected.txt:
- platform/gtk/css1/text_properties/letter_spacing-expected.txt:
- platform/gtk/css1/text_properties/line_height-expected.txt:
- platform/gtk/css1/text_properties/text_decoration-expected.txt:
- platform/gtk/css1/text_properties/text_transform-expected.txt:
- platform/gtk/css1/text_properties/vertical_align-expected.txt:
- platform/gtk/css1/text_properties/word_spacing-expected.txt:
- platform/gtk/css2.1/t0805-c5521-brdr-l-01-e-expected.txt: Removed.
- platform/gtk/css2.1/t0905-c5525-fltwidth-00-c-g-expected.txt:
- platform/gtk/css2.1/t0905-c5525-fltwidth-03-c-g-expected.txt:
- platform/gtk/css2.1/t0905-c5525-fltwrap-00-b-expected.txt: Removed.
- platform/gtk/css2.1/t090501-c414-flt-01-b-expected.txt:
- platform/gtk/css2.1/t090501-c414-flt-03-b-g-expected.txt: Removed.
- platform/gtk/css2.1/t100801-c544-valgn-00-a-ag-expected.txt:
- platform/gtk/css2.1/t100801-c544-valgn-03-d-agi-expected.txt: Removed.
- platform/gtk/css2.1/t1202-counter-08-b-expected.txt: Removed.
- platform/gtk/css2.1/t1202-counter-13-b-expected.txt: Removed.
- platform/gtk/css2.1/t1202-counter-14-b-expected.txt: Removed.
- platform/gtk/css2.1/t1202-counters-08-b-expected.txt: Removed.
- platform/gtk/css2.1/t1202-counters-13-b-expected.txt: Removed.
- platform/gtk/css2.1/t1202-counters-14-b-expected.txt: Removed.
- platform/gtk/css2.1/t1508-c527-font-01-b-expected.txt:
- platform/gtk/css2.1/t1508-c527-font-02-b-expected.txt:
- platform/gtk/css3/filters/effect-combined-expected.txt: Removed.
- platform/gtk/css3/filters/effect-combined-hw-expected.txt: Removed.
- platform/gtk/css3/filters/effect-contrast-expected.txt: Removed.
- platform/gtk/css3/filters/effect-contrast-hw-expected.txt: Removed.
- platform/gtk/css3/filters/effect-grayscale-expected.txt: Removed.
- platform/gtk/css3/filters/effect-grayscale-hw-expected.txt: Removed.
- platform/gtk/css3/filters/effect-hue-rotate-expected.txt: Removed.
- platform/gtk/css3/filters/effect-hue-rotate-hw-expected.txt: Removed.
- platform/gtk/css3/filters/effect-invert-expected.txt: Removed.
- platform/gtk/css3/filters/effect-invert-hw-expected.txt: Removed.
- platform/gtk/css3/filters/effect-opacity-expected.txt: Removed.
- platform/gtk/css3/filters/effect-opacity-hw-expected.txt: Removed.
- platform/gtk/css3/filters/effect-saturate-expected.txt: Removed.
- platform/gtk/css3/filters/effect-saturate-hw-expected.txt: Removed.
- platform/gtk/css3/filters/effect-sepia-expected.txt: Removed.
- platform/gtk/css3/filters/effect-sepia-hw-expected.txt: Removed.
- platform/gtk/editing/deleting/5144139-2-expected.txt:
- platform/gtk/editing/deleting/delete-at-paragraph-boundaries-002-expected.txt:
- platform/gtk/editing/deleting/delete-at-paragraph-boundaries-003-expected.txt:
- platform/gtk/editing/deleting/delete-at-paragraph-boundaries-004-expected.txt:
- platform/gtk/editing/deleting/delete-at-paragraph-boundaries-005-expected.txt:
- platform/gtk/editing/deleting/delete-at-paragraph-boundaries-006-expected.txt:
- platform/gtk/editing/deleting/delete-at-paragraph-boundaries-007-expected.txt:
- platform/gtk/editing/deleting/delete-at-paragraph-boundaries-008-expected.txt:
- platform/gtk/editing/deleting/delete-at-paragraph-boundaries-009-expected.txt:
- platform/gtk/editing/deleting/delete-at-paragraph-boundaries-010-expected.txt:
- platform/gtk/editing/deleting/delete-at-paragraph-boundaries-011-expected.txt:
- platform/gtk/editing/deleting/non-smart-delete-expected.txt:
- platform/gtk/editing/inserting/insert-br-quoted-001-expected.txt:
- platform/gtk/editing/inserting/insert-br-quoted-002-expected.txt:
- platform/gtk/editing/inserting/insert-br-quoted-003-expected.txt:
- platform/gtk/editing/inserting/insert-br-quoted-004-expected.txt:
- platform/gtk/editing/inserting/insert-br-quoted-005-expected.txt:
- platform/gtk/editing/inserting/insert-br-quoted-006-expected.txt:
- platform/gtk/editing/inserting/insert-div-025-expected.txt:
- platform/gtk/editing/inserting/insert-div-026-expected.txt:
- platform/gtk/editing/inserting/return-key-with-selection-001-expected.txt:
- platform/gtk/editing/inserting/return-key-with-selection-002-expected.txt:
- platform/gtk/editing/inserting/return-key-with-selection-003-expected.txt:
- platform/gtk/editing/pasteboard/emacs-ctrl-k-y-001-expected.txt:
- platform/gtk/editing/pasteboard/paste-4038267-fix-expected.txt:
- platform/gtk/editing/pasteboard/paste-line-endings-001-expected.txt:
- platform/gtk/editing/pasteboard/paste-line-endings-002-expected.txt:
- platform/gtk/editing/pasteboard/paste-line-endings-003-expected.txt:
- platform/gtk/editing/pasteboard/paste-line-endings-004-expected.txt:
- platform/gtk/editing/pasteboard/paste-line-endings-005-expected.txt:
- platform/gtk/editing/pasteboard/paste-line-endings-006-expected.txt:
- platform/gtk/editing/pasteboard/paste-line-endings-007-expected.txt:
- platform/gtk/editing/pasteboard/paste-line-endings-008-expected.txt:
- platform/gtk/editing/pasteboard/paste-line-endings-009-expected.txt:
- platform/gtk/editing/pasteboard/paste-line-endings-010-expected.txt:
- platform/gtk/editing/pasteboard/paste-match-style-001-expected.txt:
- platform/gtk/editing/pasteboard/paste-match-style-002-expected.txt:
- platform/gtk/editing/pasteboard/paste-text-019-expected.txt:
- platform/gtk/editing/style/block-styles-007-expected.txt:
- platform/gtk/editing/style/style-3998892-fix-expected.txt:
- platform/gtk/editing/style/style-boundary-001-expected.txt:
- platform/gtk/editing/style/style-boundary-002-expected.txt:
- platform/gtk/editing/style/style-boundary-003-expected.txt:
- platform/gtk/editing/style/style-boundary-004-expected.txt:
- platform/gtk/editing/unsupported-content/list-delete-001-expected.txt:
- platform/gtk/editing/unsupported-content/list-delete-003-expected.txt:
- platform/gtk/editing/unsupported-content/list-type-after-expected.txt:
- platform/gtk/editing/unsupported-content/list-type-before-expected.txt:
- platform/gtk/editing/unsupported-content/table-delete-002-expected.txt:
- platform/gtk/editing/unsupported-content/table-type-after-expected.txt:
- platform/gtk/editing/unsupported-content/table-type-before-expected.txt:
Jan 17, 2022:
- 11:57 PM Changeset in webkit [288111] by
-
- 7 edits in trunk
[:has() pseudo-class] Disallow nested :has()
https://bugs.webkit.org/show_bug.cgi?id=235231
Reviewed by Dean Jackson.
LayoutTests/imported/w3c:
- web-platform-tests/css/selectors/has-argument-with-explicit-scope.tentative-expected.txt:
- web-platform-tests/css/selectors/has-basic-expected.txt:
- web-platform-tests/css/selectors/parsing/parse-has-expected.txt:
Source/WebCore:
Nested case ':has(:has(foo))' adds no meaningful capability and would complicate invalidation.
See https://github.com/w3c/csswg-drafts/issues/6952 for more details.
- css/parser/CSSSelectorParser.cpp:
(WebCore::CSSSelectorParser::consumePseudo):
Also set m_resistDefaultNamespace like other logical combination pseudo-classes.
- css/parser/CSSSelectorParser.h:
- 11:54 PM Changeset in webkit [288110] by
-
- 2 edits in trunk/Source/WebCore
BaseAudioSharedUnit::devicesChanged is failing capture too much in GPUProcess
https://bugs.webkit.org/show_bug.cgi?id=235288
Reviewed by Eric Carlson.
Manually tested.
- platform/mediastream/mac/CoreAudioCaptureDeviceManager.h:
In GPUProcess, we do not need to filter tap enabled devices, since this may filter out valid devices, which may break capture.
Given we only need to filter tap enabled devices in the process that enumerates devices for selecting the one to use,
We can reverse the default value to not filter, and enable the filtering in UIProcess as done currently based on whether capturing in GPUProcess or not.
- 11:35 PM Changeset in webkit [288109] by
-
- 3 edits in trunk/Source/WebCore
AudioMediaStreamTrackRendererUnit::reset should hop to the main thread before calling its observers
https://bugs.webkit.org/show_bug.cgi?id=235290
Reviewed by Darin Adler.
In case of doing audio rendering in WebProcess, we need to hop to main thread since the callback might get called from a background thread.
- platform/mediastream/cocoa/AudioMediaStreamTrackRendererUnit.cpp:
- platform/mediastream/cocoa/AudioMediaStreamTrackRendererUnit.h:
- 9:21 PM Changeset in webkit [288108] by
-
- 2 edits in trunk
Fix typo in README
https://bugs.webkit.org/show_bug.cgi?id=235309
Patch by Brandon Stewart <Brandon> on 2022-01-17
Reviewed by Michael Saboff.
Fix typo in ReadMe. Updated 'embededded' to 'embedded'.
- ReadMe.md:
- 7:02 PM Changeset in webkit [288107] by
-
- 5 edits4 adds in trunk
REGRESSION(r281389): using font-variant-ligatures causes Unicode bidi isolation control characters to render
https://bugs.webkit.org/show_bug.cgi?id=235053
<rdar://problem/87425066>
Reviewed by Darin Adler.
LayoutTests/imported/w3c:
- web-platform-tests/css/css-text/white-space/default-ignorable-complex-expected.html: Added.
- web-platform-tests/css/css-text/white-space/default-ignorable-complex.html: Added.
- web-platform-tests/css/css-text/white-space/default-ignorable-expected.html: Added.
- web-platform-tests/css/css-text/white-space/default-ignorable.html: Added.
Source/WebCore:
The spec says (https://drafts.csswg.org/css-text-3/#white-space-processing)
unsupported Default_ignorable characters must be ignored for text rendering.
Previously, we were handling this by mapping the characters to the zero width space character. r281389 changed
that to be more faithful to the original string (and not do the mapping). One somewhat unexpected result of
this patch was that, now that we're not mapping these code points to the zero width space character, fewer fonts
on the system will support those code points. It became much more common for no font at all to support the code
point in question. r281389 handled the situation where the code points were supported by a font but shouldn't be
rendered, but didn't handle the case where the code points *weren't* supported by any fonts (in the complex text
codepath). This patch updates that path to handle it.
This patch also replaces our previous hardcoded list of Default_ignorable characters with the proper call to ICU
to check the Unicode property. It does this in both the fast text codepath and the simple text codepath, to make
sure they match.
Tests: imported/w3c/web-platform-tests/css/css-text/white-space/default-ignorable-complex.html
imported/w3c/web-platform-tests/css/css-text/white-space/default-ignorable.html
- platform/graphics/ComplexTextController.cpp:
(WebCore::ComplexTextController::ComplexTextRun::ComplexTextRun):
- platform/graphics/WidthIterator.cpp:
(WebCore::WidthIterator::applyCSSVisibilityRules):
- 5:39 PM Changeset in webkit [288106] by
-
- 4 edits in trunk/Source/ThirdParty/ANGLE
REGRESSION (r249823): gl::Context::onProgramLink() leaks gl::Framebuffer object due early return when an error occurs in ANGLE_TRY() macro
<https://webkit.org/b/235284>
<rdar://problem/87656747>
Reviewed by Darin Adler.
- src/libANGLE/Context.cpp:
(gl::Context::setDefaultFramebuffer):
- Use std::unique_ptr<> to store gl::Framebuffer so the object is released on early return.
- src/libANGLE/Surface.cpp:
(egl::Surface::createDefaultFramebuffer):
- Update to return std::unique_ptr<gl::Framebuffer>.
- src/libANGLE/Surface.h:
(egl::Surface::createDefaultFramebuffer):
- Update declaration to return std::unique_ptr<gl::Framebuffer>.
(egl::Surface::createDefaultFramebuffer): Delete.
- Remove the second, protected method that is currently unimplemented.
- 4:56 PM Changeset in webkit [288105] by
-
- 2 edits in trunk/Source/ThirdParty/ANGLE
REGRESSION (r286603): rx::ProgramMtl::getSpecializedShader() leaks MTLFunctionConstantValues object due early return when an error occurs in ANGLE_TRY() macro
<https://webkit.org/b/235281>
<rdar://problem/87656387>
Reviewed by Darin Adler.
- src/libANGLE/renderer/metal/ProgramMtl.mm:
(rx::ProgramMtl::getSpecializedShader):
- Use mtl::AutoObjCObj<> to release MTLFunctionConstantValues object on early return.
- 4:50 PM Changeset in webkit [288104] by
-
- 15 edits1 add in trunk
[GTK] Implement form validation with gtk3 widgets in the UI process
https://bugs.webkit.org/show_bug.cgi?id=234629
Reviewed by Carlos Garcia Campos.
Source/WebCore:
This change re-implements form validation with gtk3 widgets in the UI process.
The current form validation is implemented by using shadow DOM in the web process.
The overall design is similar to that of mac port but the gtk port adds
a callback of webkitWebViewBaseSetShouldNotifyFocusEvents to WebCore::ValidationBubble
to suppress a focus event triggered by the popover widget. Otherwise, the native
bubble does not display properly.
This change does not support gtk4 yet. A follow-up patch will add the gtk4 support.
No new tests because existing tests cover this change.
- SourcesGTK.txt:
- platform/ValidationBubble.h:
(WebCore::ValidationBubble::create):
- platform/gtk/ValidationBubbleGtk.cpp: Added.
(WebCore::ValidationBubble::ValidationBubble):
(WebCore::ValidationBubble::~ValidationBubble):
(WebCore::ValidationBubble::invalidate):
(WebCore::ValidationBubble::showRelativeTo):
Source/WebKit:
This change re-implements form validation with gtk3 widgets in the UI process.
The current form validation is implemented by using shadow DOM in the web process.
The overall design is similar to that of mac port but the gtk port adds
a callback of webkitWebViewBaseSetShouldNotifyFocusEvents to WebCore::ValidationBubble
to suppress a focus event triggered by the popover widget. Otherwise, the native
bubble does not display properly.
This change does not support gtk4 yet. A follow-up patch will add the gtk4 support.
To avoid complaints from the gtk4 EWS, we guard implementation of ValidationBubbleGtk
temporarily and install pageConfiguration.validationMessageClient for gtk3 only.
The gtk4 keeps using the shadow DOM bubble until having native bubble support.
- SourcesGTK.txt:
- UIProcess/API/gtk/PageClientImpl.cpp:
(WebKit::PageClientImpl::createValidationBubble):
- UIProcess/API/gtk/PageClientImpl.h:
- UIProcess/PageClient.h:
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::hideValidationMessage):
- UIProcess/WebPageProxy.h:
- UIProcess/WebPageProxy.messages.in:
- UIProcess/gtk/WebPageProxyGtk.cpp:
(WebKit::WebPageProxy::showValidationMessage):
- WebProcess/WebPage/WebPage.cpp:
(WebKit::m_appHighlightsVisible):
LayoutTests:
We skip fast/forms/validation-message-clone.html for now. Although this patch
implements a validation bubble with a native widget, related tests cannot be enabled
due to missing JS APIs for the UI script controller (e.g., contentsOfUserInterfaceItem).
- platform/gtk/TestExpectations: Skip fast/forms/validation-message-clone.html
- 1:32 PM Changeset in webkit [288103] by
-
- 3 edits2 adds in trunk
Fractional td width is not rendering correctly
https://bugs.webkit.org/show_bug.cgi?id=234745
<rdar://problem/87162997>
Reviewed by Darin Adler.
Source/WebCore:
This is based on the following Blink commit
https://chromium.googlesource.com/chromium/src/+/bfade5f8c943d322f5aca3ab0341824e4ae885a1
The code that ignores a width of zero was incorrectly parsing as an integer and ignoring fractional values.
Test: fast/table/table-cell-percent-width-between-0-and-1.html
- html/HTMLTableCellElement.cpp:
(WebCore::HTMLTableCellElement::collectPresentationalHintsForAttribute):
LayoutTests:
- fast/table/table-cell-percent-width-between-0-and-1-expected.html: Added.
- fast/table/table-cell-percent-width-between-0-and-1.html: Added.
- 12:17 PM Changeset in webkit [288102] by
-
- 8 edits in trunk
ImageAnalysisQueue should analyze image elements that are loaded after the call to enqueueAllImages()
https://bugs.webkit.org/show_bug.cgi?id=233266
rdar://85731875
Reviewed by Darin Adler.
Source/WebCore:
Make a few adjustments to ImageAnalysisQueue, such that it continues to analyze images in the document that have
finished loading after triggering the initial call toenqueueAllImages()in the document.
Test: ImageAnalysisTests.AnalyzeDynamicallyLoadedImages
ImageAnalysisTests.ResetImageAnalysisAfterNavigation
- page/ImageAnalysisQueue.cpp:
(WebCore::ImageAnalysisQueue::enqueueIfNeeded):
Pull logic for queueing an image element for analysis into a separate helper method; we only attempt to analyze
image elements that have successfully loaded and contain aCachedImagethat is larger than an arbitrarily
chosen size of 20px by 20px.
(WebCore::ImageAnalysisQueue::enqueueAllImages):
Refactor this to use the new
enqueueIfNeededmethod above.
(WebCore::ImageAnalysisQueue::resumeProcessing):
(WebCore::ImageAnalysisQueue::clear):
- page/ImageAnalysisQueue.h:
Add a weak hashset of elements that we've already added to the image analysis queue at some point. This prevents
us from continually performing image analysis on the same image if it's only being removed and reinserted in the
document.
- page/Page.cpp:
(WebCore::Page::didCommitLoad):
Additionally reset the image analysis queue when committing page load, so that the image analysis queue doesn't
persist and continue analyzing images even after reloading the page (or navigating away).
(WebCore::Page::didFinishLoadingImageForElement):
If it exists, tell the page's image analysis queue to add the newly loaded image.
(WebCore::Page::resetImageAnalysisQueue):
- page/Page.h:
Tools:
Add new API tests to check that image elements that are created and inserted after kicking off the image
analysis queue are successfully added to the queue, and result in platform image analysis requests, and to also
verify that the image analysis queue is reset after navigation.
- TestWebKitAPI/Tests/WebKitCocoa/ImageAnalysisTests.mm:
(TestWebKitAPI::processRequestWithResults):
(TestWebKitAPI::makeImageAnalysisRequestSwizzler):
(TestWebKitAPI::processRequestWithError):
(TestWebKitAPI::TEST):
(TestWebKitAPI::swizzledProcessRequestWithResults): Deleted.
(TestWebKitAPI::swizzledProcessRequestWithError): Deleted.
- TestWebKitAPI/Tests/WebKitCocoa/multiple-images.html:
- 12:10 PM Changeset in webkit [288101] by
-
- 2 edits in trunk/Source/WebCore
Crash may occur under ComputedStyleExtractor::propertyValue()
https://bugs.webkit.org/show_bug.cgi?id=235255
Reviewed by Antti Koivisto.
When calling getComputedStyle() after an element has had its style set to "display: none",
ComputedStyleExtractor::propertyValue() will first start with a non-null renderer but it will
become null after document.updateLayoutIgnorePendingStylesheets() is called.
To avoid this problem, we stop storing the renderer throughout the method, and instead call
styledRenderer() to obtain a valid renderer each time we need to access it.
- css/CSSComputedStyleDeclaration.cpp:
(WebCore::ComputedStyleExtractor::propertyValue):
- 11:50 AM Changeset in webkit [288100] by
-
- 6 edits in trunk
AX: Expose toggle buttons using role="button" as form controls.
https://bugs.webkit.org/show_bug.cgi?id=234119
Patch by Sepand Parhami <sparhami@apple.com> on 2022-01-17
Reviewed by Chris Fleizach.
Source/WebCore:
Add the ToggleButton role to the list of aria controls in isARIAControl so that it
is a control when checked by the accessibility object search.
Tests: LayoutTests/accessibility/mac/search-predicate-element-count.html
- accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::isLabelable const):
Remove redundant check, isControl already covers it.
- accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::isARIAControl):
LayoutTests:
Added a test case for button/role="button" with aria-presssed. Reordered a few things as
the previously named "inputs" section was not what was being checked in the test (it was
the number of buttons) and it had previously matched the number by coincidence.
- accessibility/mac/search-predicate-element-count-expected.txt:
- accessibility/mac/search-predicate-element-count.html:
- 11:44 AM Changeset in webkit [288099] by
-
- 4 edits2 adds in trunk
Layered @import rules in <style> should be preloaded
https://bugs.webkit.org/show_bug.cgi?id=234094
<rdar://problem/86586969>
Reviewed by Dean Jackson.
Source/WebCore:
Test: http/tests/loading/preload-css-import-layer.html
- html/parser/CSSPreloadScanner.cpp:
(WebCore::CSSPreloadScanner::tokenize):
(WebCore::hasValidImportConditions):
(WebCore::CSSPreloadScanner::emitRule):
- html/parser/CSSPreloadScanner.h:
Allow @import rule containing layer condition to be preloaded.
LayoutTests:
- http/tests/loading/preload-css-import-layer-expected.txt: Added.
- http/tests/loading/preload-css-import-layer.html: Added.
- 11:35 AM Changeset in webkit [288098] by
-
- 2 edits in trunk/Tools
Add an API test to ensure indexedDB.databases() does not create files on disk
https://bugs.webkit.org/show_bug.cgi?id=235289
Reviewed by Darin Adler.
Add test coverage.
- TestWebKitAPI/Tests/WebKitCocoa/IndexedDBPersistence.mm:
- 10:30 AM Changeset in webkit [288097] by
-
- 2 edits in trunk/Source/ThirdParty/ANGLE
Follow-up: REGRESSION (r286603): Leak of three NSMutableDictionary objects each time rx::DisplayMtl::getMetalDeviceMatchingAttribute() is called
<https://webkit.org/b/235278>
<rdar://problem/87653812>
Unreviewed follow-up fix from Bug 235281, Comment #5.
- src/libANGLE/renderer/metal/DisplayMtl.mm:
(rx::DisplayMtl::getMetalDeviceMatchingAttribute):
- Remove unneeded calls to .get().
- 9:27 AM Changeset in webkit [288096] by
-
- 3 edits in trunk/LayoutTests
[GLIB] Update test expectations after r288070 allowed LFC integration to work on GTK.
https://bugs.webkit.org/show_bug.cgi?id=235293
Unreviewed test gardening.
Patch by Arcady Goldmints-Orlov <Arcady Goldmints-Orlov> on 2022-01-17
- platform/glib/TestExpectations:
- platform/gtk/TestExpectations:
- 9:21 AM Changeset in webkit [288095] by
-
- 5 edits2 adds in trunk
[LFC][IFC] ASSERT in InlineContentBreaker::tryBreakingPreviousNonOverflowingRuns (!partialRun->length) when webinspector is open
https://bugs.webkit.org/show_bug.cgi?id=235286
Reviewed by Antti Koivisto.
Source/WebCore:
When the overflowing run is non-breakable (in this case an "inline box end" with padding), we try to find a breakable
previous run in the candidate list. If we find such text run, we try to break it by looking at the applicable CSS properties
(e.g. word-break, overflow-wrap). Now text runs with 1 (and 0) length and no adjacent text runs need special handling
as they can't be broken "within word" or at boundary (they treated as "unbreakable").
Test: fast/text/overflow-wrap-assert-with-zero-width-overflowing-content.html
- layout/formattingContexts/inline/InlineContentBreaker.cpp:
(WebCore::Layout::InlineContentBreaker::tryBreakingTextRun const):
(WebCore::Layout::InlineContentBreaker::tryBreakingPreviousNonOverflowingRuns const): The trailing run starts
at the beginning of the run and ends right before at the last character.
LayoutTests:
- fast/text/overflow-wrap-assert-with-zero-width-overflowing-content-expected.txt: Added.
- fast/text/overflow-wrap-assert-with-zero-width-overflowing-content.html: Added.
- platform/ios/fast/text/basic/015-expected.txt: Progressions.
- platform/mac/fast/text/basic/015-expected.txt:
- 6:31 AM Changeset in webkit [288094] by
-
- 2 edits in trunk/Source/bmalloc
[CMake] Fix bmalloc build
https://bugs.webkit.org/show_bug.cgi?id=235292
Unreviewed build fix.
Patch by Xan Lopez <Xan Lopez> on 2022-01-17
- CMakeLists.txt: fix location of headers and source files.
- 2:49 AM Changeset in webkit [288093] by
-
- 61 edits in trunk
Make ServiceWorkerClient.id a UUID instead of a string derived from a ScriptExecutionContextIdentifier
https://bugs.webkit.org/show_bug.cgi?id=235070
Reviewed by Chris Dumez.
LayoutTests/imported/w3c:
- web-platform-tests/service-workers/service-worker/fetch-event.https-expected.txt:
Source/WebCore:
Update ScriptExecutionContextIdentifier to be a process-scoped UUID.
This allows to identify the process running a process as well as exposing to JavaScript context identifiers as UUIDs.
This is matching what Chrome and Firefox are doing.
Make SWServer store the maping from context UUID strings to the internal ScriptExecutionContextIdentifiers.
This allows to find a ServiceWorkerClient directly from its JavaScript exposed identifier.
Rename reservedClientId in resultingClientId to match the spec.
Covered by existing tests.
- Modules/web-locks/WebLockRegistry.cpp:
- dom/ScriptExecutionContext.cpp:
- loader/DocumentLoader.cpp:
- page/mac/PageMac.mm:
- platform/ProcessQualified.h:
- platform/ScriptExecutionContextIdentifier.h:
- testing/Internals.cpp:
- testing/Internals.h:
- testing/Internals.idl:
- testing/ServiceWorkerInternals.cpp:
- testing/ServiceWorkerInternals.h:
- testing/ServiceWorkerInternals.idl:
- workers/service/FetchEvent.cpp:
- workers/service/FetchEvent.h:
- workers/service/FetchEvent.idl:
- workers/service/ServiceWorkerClient.cpp:
- workers/service/ServiceWorkerClient.idl:
- workers/service/ServiceWorkerClients.cpp:
- workers/service/context/SWContextManager.h:
- workers/service/context/ServiceWorkerFetch.cpp:
- workers/service/context/ServiceWorkerFetch.h:
- workers/service/context/ServiceWorkerThread.cpp:
- workers/service/context/ServiceWorkerThread.h:
- workers/service/context/ServiceWorkerThreadProxy.cpp:
- workers/service/context/ServiceWorkerThreadProxy.h:
- workers/service/server/SWServer.cpp:
- workers/service/server/SWServer.h:
- workers/service/server/SWServerToContextConnection.cpp:
- workers/service/server/SWServerToContextConnection.h:
- workers/service/server/SWServerWorker.cpp:
- workers/service/server/SWServerWorker.h:
Source/WebKit:
Change findByClientIdentifier into findByVisibleClientIdentifieran and make it asn async reply.
Update fetch event code path to send the visible IDs of the FetchEvent from network process to worker context process.
We store these IDs in NetworkResourceLoader so that we can change them in case of redirection for navigations.
- NetworkProcess/NetworkResourceLoader.h:
- NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.cpp:
- NetworkProcess/ServiceWorker/WebSWServerConnection.cpp:
- NetworkProcess/ServiceWorker/WebSWServerToContextConnection.cpp:
- NetworkProcess/ServiceWorker/WebSWServerToContextConnection.h:
- NetworkProcess/ServiceWorker/WebSWServerToContextConnection.messages.in:
- WebProcess/InjectedBundle/API/c/WKBundle.cpp:
- WebProcess/InjectedBundle/InjectedBundle.cpp:
- WebProcess/InjectedBundle/InjectedBundle.h:
- WebProcess/Storage/WebSWContextManagerConnection.cpp:
- WebProcess/Storage/WebSWContextManagerConnection.h:
- WebProcess/Storage/WebSWContextManagerConnection.messages.in:
Source/WTF:
- wtf/UUID.cpp:
- wtf/UUID.h: Add routine to stringify a UUID. Add routine to parse a stringified UUID. We restrict UUID::create to values for which the version 4 UUID stringification is bijective.
Tools:
- TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
- TestWebKitAPI/Tests/WTF/UUID.cpp:
- TestWebKitAPI/Tests/WebKitCocoa/SystemPreview.mm:
LayoutTests:
Updated tests to not rely on visible ID to be the serialization of a ScriptExecutionContextIdentifier.
For that reason, add internals API to get the internal ID from a ServiceWorkerClient.
- http/tests/workers/service/client-added-to-clients-when-restored-from-page-cache.html:
- http/tests/workers/service/client-removed-from-clients-while-in-page-cache.html:
- http/tests/workers/service/resources/getClientIds-worker.js:
- http/tests/workers/service/serviceworkerclients-matchAll-worker.js:
- http/tests/workers/service/serviceworkerclients-matchAll.https.html:
- 1:50 AM Changeset in webkit [288092] by
-
- 9 edits in trunk
[GStreamer] tests media/track/audio-track-configuration.html and media/track/video-track-configuration.html fail
https://bugs.webkit.org/show_bug.cgi?id=234084
Patch by Philippe Normand <pnormand@igalia.com> on 2022-01-17
Reviewed by Xabier Rodriguez-Calvar.
Source/WebCore:
The known caps and tags of the track GstStream are now exposed through the corresponding
Platform{Audio,Video}TrackConfiguration. This is supported only when playbin3 is used at
runtime. Supporting playbin2 would be some work (pad probes upfront of decoders?) that could
be done as a follow-up. The codec string is generated with the new GStreamer API
gst_codec_utils_caps_get_mime_codec(), which will ship in 1.20.
- platform/graphics/gstreamer/AudioTrackPrivateGStreamer.cpp:
(WebCore::AudioTrackPrivateGStreamer::AudioTrackPrivateGStreamer):
- platform/graphics/gstreamer/VideoTrackPrivateGStreamer.cpp:
(WebCore::VideoTrackPrivateGStreamer::VideoTrackPrivateGStreamer):
LayoutTests:
- media/track/audio-track-configuration.html: Add a timeout to each promise, allowing for
nicer actual results when a sub-set of the promises time out. Without this a single promise
timeout would make the entire test time out and the actual results would not be reported
properly.
- media/track/video-track-configuration.html: Ditto.
- platform/glib/TestExpectations: Update {audio,video}-track expectations, tests still
expected to fail but some improvements will be available when we switch to playbin3.
- 1:29 AM Changeset in webkit [288091] by
-
- 2 edits in trunk/Source/WebCore
[Debug][GStreamer] Crash in fast/mediastream/get-display-media-settings.html
https://bugs.webkit.org/show_bug.cgi?id=235221
Patch by Philippe Normand <pnormand@igalia.com> on 2022-01-17
Reviewed by Xabier Rodriguez-Calvar.
Fix use-after-move issue in MockDisplayCaptureSourceGStreamer. The hashSalt string was moved
to the wrapped mock video source, and then again as a parent class constructor parameter.
- platform/mediastream/gstreamer/MockRealtimeVideoSourceGStreamer.cpp:
(WebCore::MockDisplayCaptureSourceGStreamer::create):
- 12:21 AM Changeset in webkit [288090] by
-
- 5 edits in trunk/Source/WebKit
Frequent GPU process jetsams due to RemoteRenderingBackendProxy not claiming ownership of SharedMemory buffers
https://bugs.webkit.org/show_bug.cgi?id=235226
Patch by Kimmo Kinnunen <kkinnunen@apple.com> on 2022-01-17
Reviewed by Simon Fraser.
Claim memory from SharedBitmaps and SharedMemory that RemoteRenderingBackendProxy
asks and receives from RemoteRenderingBackend. This is not very good,
as GPUP allocates most of the memory and thus might jetsam
before WP claims them. However, that is a bigger change to be done
after this one.
No new tests, hard to test currently.
- Shared/ShareableBitmap.cpp:
(WebKit::ShareableBitmap::Handle::takeOwnershipOfMemory const):
- Shared/ShareableBitmap.h:
- WebProcess/GPU/graphics/RemoteRenderingBackendProxy.cpp:
(WebKit::RemoteRenderingBackendProxy::getShareableBitmap):
(WebKit::RemoteRenderingBackendProxy::getFilteredImage):
- WebProcess/GPU/graphics/RemoteResourceCacheProxy.cpp:
(WebKit::RemoteResourceCacheProxy::recordNativeImageUse):
- 12:16 AM Changeset in webkit [288089] by
-
- 26 edits1 delete in trunk
[GTK][a11y] Stop using isolated tree for the ATSPI implementation
https://bugs.webkit.org/show_bug.cgi?id=235229
Reviewed by Adrian Perez de Castro.
.:
Do not enable isolated tree for ATSPI.
- Source/cmake/OptionsGTK.cmake:
Source/WebCore:
Isolated tree performance is not good enough with many websites, so for now we will stop using it.
- SourcesGTK.txt:
- accessibility/atspi/AXObjectCacheAtspi.cpp:
(WebCore::AXObjectCache::postPlatformNotification):
(WebCore::AXObjectCache::postTextStateChangePlatformNotification):
(WebCore::AXObjectCache::postTextReplacementPlatformNotificationForTextControl):
(WebCore::AXObjectCache::postTextReplacementPlatformNotification):
(WebCore::AXObjectCache::frameLoadingEventPlatformNotification):
(WebCore::AXObjectCache::isIsolatedTreeEnabled): Deleted.
(WebCore::AXObjectCache::initializeSecondaryAXThread): Deleted.
(WebCore::AXObjectCache::usedOnAXThread): Deleted.
- accessibility/atspi/AccessibilityAtspi.cpp:
(WebCore::AccessibilityAtspi::connect):
(WebCore::AccessibilityAtspi::didConnect):
(WebCore::AccessibilityAtspi::initializeRegistry):
(WebCore::AccessibilityAtspi::addEventListener):
(WebCore::AccessibilityAtspi::removeEventListener):
(WebCore::AccessibilityAtspi::addClient):
(WebCore::AccessibilityAtspi::removeClient):
(WebCore::AccessibilityAtspi::shouldEmitSignal):
(WebCore::AccessibilityAtspi::uniqueName const):
(WebCore::AccessibilityAtspi::nullReference const):
(WebCore::AccessibilityAtspi::applicationReference const):
(WebCore::AccessibilityAtspi::registerRoot):
(WebCore::AccessibilityAtspi::unregisterRoot):
(WebCore::AccessibilityAtspi::registerObject):
(WebCore::AccessibilityAtspi::unregisterObject):
(WebCore::AccessibilityAtspi::registerHyperlink):
(WebCore::AccessibilityAtspi::parentChanged):
(WebCore::AccessibilityAtspi::childrenChanged):
(WebCore::AccessibilityAtspi::stateChanged):
(WebCore::AccessibilityAtspi::textChanged):
(WebCore::AccessibilityAtspi::textAttributesChanged):
(WebCore::AccessibilityAtspi::textCaretMoved):
(WebCore::AccessibilityAtspi::textSelectionChanged):
(WebCore::AccessibilityAtspi::valueChanged):
(WebCore::AccessibilityAtspi::selectionChanged):
(WebCore::AccessibilityAtspi::loadEvent):
(WebCore::AccessibilityAtspi::ensureCache):
(WebCore::AccessibilityAtspi::addToCacheIfNeeded):
(WebCore::AccessibilityAtspi::scheduleCacheUpdate):
(WebCore::AccessibilityAtspi::addAccessible):
(WebCore::AccessibilityAtspi::removeAccessible):
(WebCore::AccessibilityAtspi::AccessibilityAtspi): Deleted.
(WebCore::AccessibilityAtspi::runLoop const): Deleted.
- accessibility/atspi/AccessibilityAtspi.h:
- accessibility/atspi/AccessibilityObjectActionAtspi.cpp:
(WebCore::AccessibilityObjectAtspi::actionName const):
(WebCore::AccessibilityObjectAtspi::localizedActionName const):
(WebCore::AccessibilityObjectAtspi::actionKeyBinding const):
(WebCore::AccessibilityObjectAtspi::doAction const):
- accessibility/atspi/AccessibilityObjectAtspi.cpp:
(WebCore::AccessibilityObjectAtspi::AccessibilityObjectAtspi):
(WebCore::AccessibilityObjectAtspi::cacheDestroyed):
(WebCore::AccessibilityObjectAtspi::elementDestroyed):
(WebCore::AccessibilityObjectAtspi::root):
(WebCore::AccessibilityObjectAtspi::registerObject):
(WebCore::AccessibilityObjectAtspi::didUnregisterObject):
(WebCore::AccessibilityObjectAtspi::path):
(WebCore::AccessibilityObjectAtspi::reference):
(WebCore::AccessibilityObjectAtspi::hyperlinkReference):
(WebCore::AccessibilityObjectAtspi::setParent):
(WebCore:: const):
(WebCore::AccessibilityObjectAtspi::childCount const):
(WebCore::AccessibilityObjectAtspi::childAt const):
(WebCore::AccessibilityObjectAtspi::children const):
(WebCore::AccessibilityObjectAtspi::indexInParent const):
(WebCore::AccessibilityObjectAtspi::name const):
(WebCore::AccessibilityObjectAtspi::description const):
(WebCore::AccessibilityObjectAtspi::locale const):
(WebCore::AccessibilityObjectAtspi::state const):
(WebCore::AccessibilityObjectAtspi::isDefunct const):
(WebCore::AccessibilityObjectAtspi::id const):
(WebCore::AccessibilityObjectAtspi::attributes const):
(WebCore::AccessibilityObjectAtspi::buildAttributes const):
(WebCore::AccessibilityObjectAtspi::relationMap const):
(WebCore::AccessibilityObjectAtspi::buildRelationSet const):
(WebCore::AccessibilityObjectAtspi::buildInterfaces const):
(WebCore::AccessibilityObjectAtspi::serialize const):
(WebCore::AccessibilityObjectAtspi::childAdded):
(WebCore::AccessibilityObjectAtspi::childRemoved):
(WebCore::AccessibilityObjectAtspi::stateChanged):
(WebCore::AccessibilityObjectAtspi::loadEvent):
(WebCore::AccessibilityObjectAtspi::effectiveRole const):
(WebCore::AccessibilityObjectAtspi::role const):
(WebCore::AccessibilityObjectAtspi::roleName const):
(WebCore::AccessibilityObjectAtspi::localizedRoleName const):
(WebCore::AccessibilityObjectAtspi::updateBackingStore):
(WebCore::AccessibilityObject::accessibilityPlatformIncludesObject const):
(WebCore::AccessibilityObjectAtspi::attach): Deleted.
(WebCore::AccessibilityObjectAtspi::detach): Deleted.
- accessibility/atspi/AccessibilityObjectAtspi.h:
- accessibility/atspi/AccessibilityObjectComponentAtspi.cpp:
(WebCore::AccessibilityObjectAtspi::hitTest const):
(WebCore::AccessibilityObjectAtspi::elementRect const):
(WebCore::AccessibilityObjectAtspi::focus const):
(WebCore::AccessibilityObjectAtspi::opacity const):
(WebCore::AccessibilityObjectAtspi::scrollToMakeVisible const):
(WebCore::AccessibilityObjectAtspi::scrollToPoint const):
- accessibility/atspi/AccessibilityObjectDocumentAtspi.cpp:
(WebCore::AccessibilityObjectAtspi::documentAttribute const):
(WebCore::AccessibilityObjectAtspi::documentAttributes const):
(WebCore::AccessibilityObjectAtspi::documentLocale const):
- accessibility/atspi/AccessibilityObjectHyperlinkAtspi.cpp:
(WebCore::AccessibilityObjectAtspi::url const):
(WebCore::AccessibilityObjectAtspi::offsetInParent const):
- accessibility/atspi/AccessibilityObjectHypertextAtspi.cpp:
(WebCore::AccessibilityObjectAtspi::hyperlinkCount const):
(WebCore::AccessibilityObjectAtspi::hyperlink const):
- accessibility/atspi/AccessibilityObjectImageAtspi.cpp:
(WebCore::AccessibilityObjectAtspi::imageDescription const):
- accessibility/atspi/AccessibilityObjectSelectionAtspi.cpp:
(WebCore::AccessibilityObjectAtspi::selectionCount const):
(WebCore::AccessibilityObjectAtspi::selectedChild const):
(WebCore::AccessibilityObjectAtspi::setChildSelected const):
(WebCore::AccessibilityObjectAtspi::deselectSelectedChild const):
(WebCore::AccessibilityObjectAtspi::isChildSelected const):
(WebCore::AccessibilityObjectAtspi::selectAll const):
(WebCore::AccessibilityObjectAtspi::clearSelection const):
(WebCore::AccessibilityObjectAtspi::selectionChanged):
- accessibility/atspi/AccessibilityObjectTableAtspi.cpp:
(WebCore::AccessibilityObjectAtspi::rowCount const):
(WebCore::AccessibilityObjectAtspi::columnCount const):
(WebCore::AccessibilityObjectAtspi::cell const):
(WebCore::AccessibilityObjectAtspi::tableCaption const):
(WebCore::AccessibilityObjectAtspi::cellIndex const):
(WebCore::AccessibilityObjectAtspi::rowAtIndex const):
(WebCore::AccessibilityObjectAtspi::columnAtIndex const):
(WebCore::AccessibilityObjectAtspi::rowHeader const):
(WebCore::AccessibilityObjectAtspi::columnHeader const):
(WebCore::AccessibilityObjectAtspi::rowDescription const):
(WebCore::AccessibilityObjectAtspi::columnDescription const):
(WebCore::AccessibilityObjectAtspi::rowExtent const):
(WebCore::AccessibilityObjectAtspi::columnExtent const):
(WebCore::AccessibilityObjectAtspi::cells const):
(WebCore::AccessibilityObjectAtspi::rows const):
(WebCore::AccessibilityObjectAtspi::rowHeaders const):
(WebCore::AccessibilityObjectAtspi::columnHeaders const):
- accessibility/atspi/AccessibilityObjectTableCellAtspi.cpp:
(WebCore::AccessibilityObjectAtspi::cellRowHeaders const):
(WebCore::AccessibilityObjectAtspi::cellColumnHeaders const):
(WebCore::AccessibilityObjectAtspi::rowSpan const):
(WebCore::AccessibilityObjectAtspi::columnSpan const):
(WebCore::AccessibilityObjectAtspi::cellPosition const):
- accessibility/atspi/AccessibilityObjectTextAtspi.cpp:
(WebCore::AccessibilityObjectAtspi::text const):
(WebCore::AccessibilityObject::getLengthForTextRange const):
(WebCore::AccessibilityObjectAtspi::textInserted):
(WebCore::AccessibilityObjectAtspi::textDeleted):
(WebCore::AccessibilityObjectAtspi::boundaryOffset const):
(WebCore::AccessibilityObjectAtspi::textAtOffset const):
(WebCore::AccessibilityObjectAtspi::characterAtOffset const):
(WebCore::AccessibilityObjectAtspi::boundsForRange const):
(WebCore::AccessibilityObjectAtspi::textExtents const):
(WebCore::AccessibilityObjectAtspi::offsetAtPoint const):
(WebCore::AccessibilityObjectAtspi::boundsForSelection const):
(WebCore::AccessibilityObjectAtspi::selectedRange const):
(WebCore::AccessibilityObjectAtspi::selectionBounds const):
(WebCore::AccessibilityObjectAtspi::setSelectedRange):
(WebCore::AccessibilityObjectAtspi::selectRange):
(WebCore::AccessibilityObjectAtspi::selectionChanged):
(WebCore::AccessibilityObjectAtspi::textAttributes const):
(WebCore::AccessibilityObjectAtspi::textAttributesWithUTF8Offset const):
(WebCore::AccessibilityObjectAtspi::textAttributesChanged):
(WebCore::AccessibilityObjectAtspi::scrollToMakeVisible const):
(WebCore::AccessibilityObjectAtspi::scrollToPoint const):
- accessibility/atspi/AccessibilityObjectValueAtspi.cpp:
(WebCore::AccessibilityObjectAtspi::currentValue const):
(WebCore::AccessibilityObjectAtspi::setCurrentValue):
(WebCore::AccessibilityObjectAtspi::minimumValue const):
(WebCore::AccessibilityObjectAtspi::maximumValue const):
(WebCore::AccessibilityObjectAtspi::minimumIncrement const):
(WebCore::AccessibilityObjectAtspi::valueChanged):
- accessibility/atspi/AccessibilityRootAtspi.cpp:
(WebCore::AccessibilityRootAtspi::AccessibilityRootAtspi):
(WebCore::AccessibilityRootAtspi::registerObject):
(WebCore::AccessibilityRootAtspi::unregisterObject):
(WebCore::AccessibilityRootAtspi::registerTree):
(WebCore::AccessibilityRootAtspi::didUnregisterTree):
(WebCore::AccessibilityRootAtspi::setPath):
(WebCore::AccessibilityRootAtspi::embedded):
(WebCore::AccessibilityRootAtspi::applicationReference const):
(WebCore::AccessibilityRootAtspi::reference const):
(WebCore::AccessibilityRootAtspi::parentReference const):
(WebCore::AccessibilityRootAtspi::child const):
(WebCore::AccessibilityRootAtspi::childAdded):
(WebCore::AccessibilityRootAtspi::serialize const):
(WebCore::AccessibilityRootAtspi::frameRect const):
- accessibility/atspi/AccessibilityRootAtspi.h:
- accessibility/isolatedtree/atspi/AXIsolatedObjectAtspi.cpp: Removed.
(WebCore::AXIsolatedObject::initializePlatformProperties): Deleted.
(WebCore::AXIsolatedObject::attachPlatformWrapper): Deleted.
(WebCore::AXIsolatedObject::detachPlatformWrapper): Deleted.
Tools:
Update WTR to not use the ax thread.
- WebKitTestRunner/InjectedBundle/AccessibilityController.h:
- WebKitTestRunner/InjectedBundle/atspi/AccessibilityControllerAtspi.cpp:
(WTR::findAccessibleObjectById):
(WTR::AccessibilityController::updateIsolatedTreeMode): Deleted.
(WTR::AccessibilityController::axRunLoop): Deleted.
(WTR::AccessibilityController::executeOnAXThreadAndWait): Deleted.
(WTR::AccessibilityController::executeOnAXThread): Deleted.
(WTR::AccessibilityController::executeOnMainThread): Deleted.
- WebKitTestRunner/InjectedBundle/atspi/AccessibilityUIElementAtspi.cpp:
(WTR::AccessibilityUIElement::childrenCount):
(WTR::AccessibilityUIElement::elementAtPoint):
(WTR::AccessibilityUIElement::childAtIndex):
(WTR::elementForRelationAtIndex):
(WTR::AccessibilityUIElement::selectedChildAtIndex const):
(WTR::AccessibilityUIElement::selectedChildrenCount const):
(WTR::AccessibilityUIElement::parentElement):
(WTR::AccessibilityUIElement::attributesOfChildren):
(WTR::AccessibilityUIElement::stringAttributeValue):
(WTR::AccessibilityUIElement::numberAttributeValue):
(WTR::AccessibilityUIElement::currentStateValue const):
(WTR::AccessibilityUIElement::rowHeaders const):
(WTR::AccessibilityUIElement::columnHeaders const):
(WTR::AccessibilityUIElement::boolAttributeValue):
(WTR::AccessibilityUIElement::isAttributeSettable):
(WTR::AccessibilityUIElement::isAttributeSupported):
(WTR::AccessibilityUIElement::role):
(WTR::AccessibilityUIElement::roleDescription):
(WTR::AccessibilityUIElement::computedRoleString):
(WTR::AccessibilityUIElement::title):
(WTR::AccessibilityUIElement::description):
(WTR::AccessibilityUIElement::orientation const):
(WTR::AccessibilityUIElement::helpText const):
(WTR::AccessibilityUIElement::x):
(WTR::AccessibilityUIElement::y):
(WTR::AccessibilityUIElement::width):
(WTR::AccessibilityUIElement::height):
(WTR::AccessibilityUIElement::clickPointX):
(WTR::AccessibilityUIElement::clickPointY):
(WTR::AccessibilityUIElement::intValue const):
(WTR::AccessibilityUIElement::minValue):
(WTR::AccessibilityUIElement::maxValue):
(WTR::AccessibilityUIElement::valueDescription):
(WTR::AccessibilityUIElement::isEnabled):
(WTR::AccessibilityUIElement::isRequired const):
(WTR::AccessibilityUIElement::isFocused const):
(WTR::AccessibilityUIElement::isSelected const):
(WTR::AccessibilityUIElement::isSelectedOptionActive const):
(WTR::AccessibilityUIElement::isExpanded const):
(WTR::AccessibilityUIElement::isChecked const):
(WTR::AccessibilityUIElement::isIndeterminate const):
(WTR::AccessibilityUIElement::hierarchicalLevel const):
(WTR::AccessibilityUIElement::ariaIsGrabbed const):
(WTR::AccessibilityUIElement::ariaDropEffects const):
(WTR::AccessibilityUIElement::rangeForLine):
(WTR::AccessibilityUIElement::boundsForRange):
(WTR::AccessibilityUIElement::attributedStringForRange):
(WTR::AccessibilityUIElement::rowCount):
(WTR::AccessibilityUIElement::columnCount):
(WTR::AccessibilityUIElement::rowIndexRange):
(WTR::AccessibilityUIElement::columnIndexRange):
(WTR::AccessibilityUIElement::cellForColumnAndRow):
(WTR::AccessibilityUIElement::selectedTextRange):
(WTR::AccessibilityUIElement::increment):
(WTR::AccessibilityUIElement::decrement):
(WTR::AccessibilityUIElement::press):
(WTR::AccessibilityUIElement::setSelectedChildAtIndex const):
(WTR::AccessibilityUIElement::removeSelectionAtIndex const):
(WTR::AccessibilityUIElement::clearSelectedChildren const):
(WTR::AccessibilityUIElement::documentEncoding):
(WTR::AccessibilityUIElement::documentURI):
(WTR::AccessibilityUIElement::isFocusable const):
(WTR::AccessibilityUIElement::isSelectable const):
(WTR::AccessibilityUIElement::isMultiSelectable const):
(WTR::AccessibilityUIElement::isVisible const):
(WTR::AccessibilityUIElement::isOffScreen const):
(WTR::AccessibilityUIElement::isCollapsed const):
(WTR::AccessibilityUIElement::isSingleLine const):
(WTR::AccessibilityUIElement::isMultiLine const):
(WTR::AccessibilityUIElement::hasPopup const):
(WTR::AccessibilityUIElement::scrollToMakeVisible):
(WTR::AccessibilityUIElement::scrollToGlobalPoint):
(WTR::AccessibilityUIElement::isIsolatedObject const): Deleted.
- 12:04 AM Changeset in webkit [288088] by
-
- 39 edits3 adds in trunk
Transmit network load metrics when service worker is using one of its network load to respond to FetchEvents
https://bugs.webkit.org/show_bug.cgi?id=235179
Reviewed by Darin Adler.
LayoutTests/imported/w3c:
- web-platform-tests/service-workers/service-worker/next-hop-protocol.https-expected.txt:
Test is progressing further but is failing as the test checks cached responses for which we do not store metrics.
Source/WebCore:
Allow FetchResponses to get their network metrics.
This requires all ThreadableLoaderClients to receive these metrics.
ServiceWorkerFetch is then able to get the metrics from its FetchResponse to send it to the service worker load client.
Test: http/wpt/service-workers/fetch-metrics-via-service-worker.https.html
- Modules/fetch/FetchBodyOwner.h:
- Modules/fetch/FetchLoader.cpp:
- Modules/fetch/FetchLoader.h:
- Modules/fetch/FetchLoaderClient.h:
- Modules/fetch/FetchResponse.cpp:
- Modules/fetch/FetchResponse.h:
- fileapi/FileReaderLoader.cpp:
- fileapi/FileReaderLoader.h:
- inspector/agents/InspectorNetworkAgent.cpp:
- loader/DocumentThreadableLoader.cpp:
- loader/DocumentThreadableLoader.h:
- loader/ThreadableLoaderClient.h:
- loader/ThreadableLoaderClientWrapper.h:
- loader/WorkerThreadableLoader.cpp:
- loader/WorkerThreadableLoader.h:
- page/EventSource.cpp:
- page/EventSource.h:
- testing/Internals.cpp:
- testing/Internals.h:
- testing/Internals.idl:
- workers/WorkerFontLoadRequest.cpp:
- workers/WorkerFontLoadRequest.h:
- workers/WorkerScriptLoader.cpp:
- workers/WorkerScriptLoader.h:
- workers/service/context/ServiceWorkerFetch.cpp:
- workers/service/context/ServiceWorkerFetch.h:
- xml/XMLHttpRequest.cpp:
- xml/XMLHttpRequest.h:
Source/WebKit:
Pipe network metrics down to WebProcess.
- NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.cpp:
- NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.h:
- NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.messages.in:
- WebProcess/Storage/WebServiceWorkerFetchTaskClient.cpp:
- WebProcess/Storage/WebServiceWorkerFetchTaskClient.h:
LayoutTests:
- http/wpt/service-workers/fetch-metrics-via-service-worker.https-expected.txt: Added.
- http/wpt/service-workers/fetch-metrics-via-service-worker.https.html: Added.
- http/wpt/service-workers/fetch-metrics-worker.js: Added.