Timeline
Oct 16, 2017:
- 11:56 PM Changeset in webkit [223471] by
-
- 5 edits in trunk
Allow reading data and blob URLs via DataTransfer when the pasteboard contains files
https://bugs.webkit.org/show_bug.cgi?id=178377
Reviewed by Ryosuke Niwa.
Source/WebCore:
Adds data and blob URLs, alongside http(s), as URL protocols safe to expose to bindings.
Test: editing/pasteboard/drag-drop-href-as-url.html
- platform/Pasteboard.cpp:
(WebCore::Pasteboard::canExposeURLToDOMWhenPasteboardContainsFiles):
LayoutTests:
Tweaks an existing layout test to test dragging and dropping more URL protocols (ftp:, data: and blob:).
- editing/pasteboard/drag-drop-href-as-url-expected.txt:
- editing/pasteboard/drag-drop-href-as-url.html:
- 11:51 PM Changeset in webkit [223470] by
-
- 3 edits2 adds in releases/WebKitGTK/webkit-2.18
Merge r222588 - Minimum font size may cause elements to have an infinite line-height
https://bugs.webkit.org/show_bug.cgi?id=177573
<rdar://problem/34573792>
Reviewed by Dan Bernstein.
Source/WebCore:
When minimum font size is specified, we were trying to preserve the ratio of specified font-size
and specified line-height in order to boost the computed font size proportionately to the font-size
boost. However, this doesn't work when the specified font-size is 0, because the ratio between
line-height and font-size is infinite.
The most straightforward solution is just to make small font-sizes opt out of the line-height
adjustment because the result would be too big.
Test: fast/text/line-height-minimumFontSize-text-small-font-size.html
- css/StyleBuilderCustom.h:
(WebCore::computeLineHeightMultiplierDueToFontSize):
(WebCore::StyleBuilderCustom::applyValueLineHeight):
LayoutTests:
- fast/text/line-height-minimumFontSize-text-small-font-size-expected.txt: Added.
- fast/text/line-height-minimumFontSize-text-small-font-size.html: Added.
- 11:48 PM Changeset in webkit [223469] by
-
- 3 edits2 adds in releases/WebKitGTK/webkit-2.18
Merge r222576 - "Tag" codepoints require the complex text codepath
https://bugs.webkit.org/show_bug.cgi?id=177251
<rdar://problem/34384001>
Reviewed by David Hyatt.
Source/WebCore:
Previously, Tag codepoints (U+E0000 - U+E007F) weren't triggering the
complex text codepath.
Eventually, we should migrate the default from simple to complex. I'll do
that in a separate patch.
Test: fast/text/flag-codepoint.html
- platform/graphics/FontCascade.cpp:
(WebCore::FontCascade::characterRangeCodePath):
LayoutTests:
- fast/text/flag-codepoint-expected.html: Added.
- fast/text/flag-codepoint.html: Added.
- 11:38 PM Changeset in webkit [223468] by
-
- 5 edits in releases/WebKitGTK/webkit-2.18
Merge r222551 - [ATK] atk_table_cell_get_position() should return values of aria-rowindex and aria-colindex, if present
https://bugs.webkit.org/show_bug.cgi?id=171176
Reviewed by Chris Fleizach.
Source/WebCore:
Modify webKitAccessibleTableCellGetPosition() to prefer the ARIA value
over the DOM-based value.
No new tests needed: We have coverage through aria-table-attributes.html.
Platform expectations for this test were updated.
- accessibility/atk/WebKitAccessibleInterfaceTableCell.cpp:
(webkitAccessibleTableCellGetPosition):
LayoutTests:
- accessibility/aria-table-attributes.html: Updated to reflect new behavior.
- platform/gtk/accessibility/aria-table-attributes-expected.txt: Updated to reflect new behavior.
- 11:33 PM Changeset in webkit [223467] by
-
- 4 edits2 adds in releases/WebKitGTK/webkit-2.18
Merge r222544 - AX: Several ARIA roles with presentational children are exposing children
https://bugs.webkit.org/show_bug.cgi?id=177502
Reviewed by Chris Fleizach.
Source/WebCore:
Add MenuItemCheckboxRole, MenuItemRadioRole, and SplitterRole to the list
of AccessibilityRole types which cannot have children. In the case of
DocumentMathRole, only treat children as presentational (excluded from the
accessibility tree) if the element is not MathML.
Test: accessibility/presentational-children.html
- accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::canHaveChildren const):
LayoutTests:
New test. Also update the results for the inspector because ARIA separators
and their subclass roles should not expose (claim to have) children.
- accessibility/presentational-children-expected.txt: Added.
- accessibility/presentational-children.html: Added.
- inspector/dom/getAccessibilityPropertiesForNode-expected.txt: Updated.
- 11:32 PM Changeset in webkit [223466] by
-
- 4 edits2 adds in releases/WebKitGTK/webkit-2.18
Merge r222539 - Fall back to normal line layout position, when simple line layout fails to find one.
https://bugs.webkit.org/show_bug.cgi?id=176220
<rdar://problem/34205774>
Reviewed by Brent Fulgham.
Source/WebCore:
In case of empty content, let's just fall back to normal line layout and try to
find the visually correct one.
Test: fast/text/invalid-positionForPoint-offset.html
- rendering/RenderText.cpp:
(WebCore::RenderText::positionForPoint):
- rendering/SimpleLineLayoutResolver.cpp:
(WebCore::SimpleLineLayout::RunResolver::runForPoint const):
LayoutTests:
- fast/text/invalid-positionForPoint-offset-expected.txt: Added.
- fast/text/invalid-positionForPoint-offset.html: Added.
- 11:31 PM Changeset in webkit [223465] by
-
- 2 edits in releases/WebKitGTK/webkit-2.18/Source/WebKit
Merge r222536 - Web Automation: overflow:hidden elements with no children are mistakenly reported as not visible
https://bugs.webkit.org/show_bug.cgi?id=177514
<rdar://problem/31936291>
Reviewed by Joseph Pecoraro.
- UIProcess/Automation/atoms/ElementDisplayed.js:
(isShown.isElementSubtreeHiddenByOverflow):
Array.prototype.every returns true when passed an empty list, so we need
to check for the case where the element has no children and return 'false'.
- 11:29 PM Changeset in webkit [223464] by
-
- 4 edits2 adds in releases/WebKitGTK/webkit-2.18
Merge r222527 - AX: ARIA grids claim to be multiselectable even with aria-multiselectable is set to false
https://bugs.webkit.org/show_bug.cgi?id=177498
Reviewed by Chris Fleizach.
Source/WebCore:
AccessibilityARIAGrid::isMultiSelectable() was unconditionally returning
true. Modify it to return false if aria-multiselectable has been set to
false by the author.
Test: accessibility/aria-multiselectable-grid.html
- accessibility/AccessibilityARIAGrid.cpp:
(WebCore::AccessibilityARIAGrid::isMultiSelectable const):
- accessibility/AccessibilityARIAGrid.h:
LayoutTests:
- accessibility/aria-multiselectable-grid-expected.txt: Added.
- accessibility/aria-multiselectable-grid.html: Added.
- 11:28 PM Changeset in webkit [223463] by
-
- 2 edits in releases/WebKitGTK/webkit-2.18/Source/WebKit
Merge r222520 - Harden our access to the vector of URL schemes.
https://bugs.webkit.org/show_bug.cgi?id=177470
<rdar://problem/33881522>
Reviewed by Chris Dumez.
Instead of asserting, use MESSAGE_CHECK so that we actually refuse to access an invalid iterator.
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::startURLSchemeTask):
(WebKit::WebPageProxy::stopURLSchemeTask):
- 11:25 PM Changeset in webkit [223462] by
-
- 5 edits2 adds in trunk
Strip away event handlers and JavaScript URLs when copying
https://bugs.webkit.org/show_bug.cgi?id=178375
Reviewed by Wenson Hsieh.
Source/WebCore:
Don't serialize event handlers and URLs with javascript protocol when serializing HTML
since they're not safe to be pasted elsewhere.
Test: editing/pasteboard/copying-html-strips-javascript-url-and-event-handler.html
- dom/Element.cpp:
(WebCore::Element::isEventHandlerAttribute const):
(WebCore::isEventHandlerAttribute): Deleted.
- dom/Element.h:
- editing/markup.cpp:
(WebCore::StyledMarkupAccumulator::appendElement):
LayoutTests:
Added a regression test.
- editing/pasteboard/copying-html-strips-javascript-url-and-event-handler-expected.txt: Added.
- editing/pasteboard/copying-html-strips-javascript-url-and-event-handler.html: Added.
- 11:24 PM Changeset in webkit [223461] by
-
- 2 edits in releases/WebKitGTK/webkit-2.18/Source/WebCore/PAL
Merge r222497 - [GCrypt] Only report libgcrypt errors when logging is enabled
https://bugs.webkit.org/show_bug.cgi?id=177360
Reviewed by Xabier Rodriguez-Calvar.
- pal/crypto/gcrypt/Utilities.h:
(PAL::GCrypt::logError): Only print out the libgcrypt error on stderr
when logging is enabled at build-time, avoiding unnecessary output in
non-debugging use cases.
- 11:23 PM Changeset in webkit [223460] by
-
- 2 edits in releases/WebKitGTK/webkit-2.18
Merge r222494 - [CMake] Use implicit include directories for Clang as well
https://bugs.webkit.org/show_bug.cgi?id=177426
Reviewed by Michael Catanzaro.
In WebKitCompilerFlags.cmake, also gather and use the system
include directories for C and C++ build targets when compiling
with Clang. This fixes compilation errors when cross-building
WebKit with a Clang-based toolchain.
COMPILER_IS_GCC_OR_CLANG is used to check for GCC or Clang
compilers. That only checks for the C++ compiler, but it's not
reasonable to expect two widely different compilers being used
for C and C++ compilation.
- Source/cmake/WebKitCompilerFlags.cmake:
- 11:21 PM Changeset in webkit [223459] by
-
- 3 edits2 adds in trunk
WebGL clamps drawingBufferWidth to 4096 pixels on a 5120 monitor/canvas
https://bugs.webkit.org/show_bug.cgi?id=178223
<rdar://problem/34597567>
Reviewed by Antoine Quint.
Source/WebCore:
Remove the limit of 4k on the width/height of the renderbuffer.
Test: fast/canvas/webgl/large-drawing-buffer-resize.html
- html/canvas/WebGLRenderingContextBase.cpp:
(WebCore::WebGLRenderingContextBase::reshape):
LayoutTests:
Test that resizes an already large buffer to make sure it
doesn't get clamped to 4k.
- fast/canvas/webgl/large-drawing-buffer-resize-expected.txt: Added.
- fast/canvas/webgl/large-drawing-buffer-resize.html: Added.
- 10:52 PM Changeset in webkit [223458] by
-
- 6 edits in trunk/Source/WebCore
Assert that Node::insertedInto doesn't fire an event
https://bugs.webkit.org/show_bug.cgi?id=178376
<rdar://problem/35022857>
Reviewed by Daniel Bates.
Fixed the assertion in notifyChildNodeInserted since this function MUST NOT dispatch an event,
and moved a bunch of event-dispatching code from Node::insertedInto into Node::finishedInsertingSubtree.
No new tests since the existing tests cover the behavioral change.
- dom/ContainerNodeAlgorithms.cpp:
(WebCore::notifyChildNodeInserted): Fixed the assertion.
- dom/ProcessingInstruction.cpp:
(WebCore::ProcessingInstruction::insertedInto):
(WebCore::ProcessingInstruction::finishedInsertingSubtree): Extracted from insertedInto since
checkStyleSheet can dispatch an event.
- dom/ProcessingInstruction.h:
- html/HTMLBodyElement.cpp:
(WebCore::HTMLBodyElement::insertedInto):
(WebCore::HTMLBodyElement::finishedInsertingSubtree): Extracted from insertedInto since
setIntegralAttribute could dispatch DOMAttrModified synchronously.
- html/HTMLBodyElement.h:
- 10:12 PM Changeset in webkit [223457] by
-
- 2 edits in trunk/Source/WebCore
ServiceWorkerRegistration should subclass RefCounted<>
https://bugs.webkit.org/show_bug.cgi?id=178374
Reviewed by Ryosuke Niwa.
ServiceWorkerRegistration should subclass RefCounted<> or we end up with an infinite recursion
when constructing such object. This is because ServiceWorkerRegistration subclasses
EventTargetWithInlineData which implements ref() / deref() by calling refEventTarget() /
derefEventTarget(). refEventTarget() / derefEventTarget() are implemented in
ServiceWorkerRegistration so that they call ref() / deref() (which ends up being EventTarget's
methods).
- workers/service/ServiceWorkerRegistration.h:
- 10:00 PM Changeset in webkit [223456] by
-
- 2 edits in trunk/Source/WebKit
Unreviewed, fix the iOS build after r223431
Remove an unused variable captured in a lambda.
- NetworkProcess/cocoa/NetworkSessionCocoa.mm:
(-[WKNetworkSessionDelegate URLSession:task:didReceiveChallenge:completionHandler:]):
- 8:26 PM Changeset in webkit [223455] by
-
- 2 edits in trunk/Websites/webkit.org
No nightlies listed on nightly.webkit.org when using shipping Safari on macOS Sierra and OS X El Capitan
https://bugs.webkit.org/show_bug.cgi?id=178372
Reviewed by Tim Horton.
The Build Archive page depends on the collections (e.g. HTMLCollection) being
iterable so as to support iteration using ES6 for-of loop. Such support postdates
the version of WebKit shipped in macOS Sierra and OS X El Capitan. We should
make <https://webkit.org/build-archives/> work for these OSes since we still publish
nightlies for them.
- wp-content/themes/webkit/build-archives.php: Use Array.prototype.slice() to
convert the HTMLCollection to an array that can be iterated using a ES6 for-of loop.
- 7:30 PM Changeset in webkit [223454] by
-
- 2 edits in trunk/Tools
[Win] Webkit should still be able to build when unable to check if libraries are up to date
https://bugs.webkit.org/show_bug.cgi?id=178367
Adding a option to skip the check to see if windows libraries are up to date.
This option is useful when testing modified libraries. This option also allows
building webkit when GitHub blocks requests to verify the latest library version.
Patch by Christopher Reid <chris.reid@sony.com> on 2017-10-16
Reviewed by Per Arne Vollan.
- Scripts/build-webkit:
- 7:25 PM Changeset in webkit [223453] by
-
- 7 edits in trunk/Source/WebInspectorUI
Web Inspector: Styles Redesign: apply syntax highlighting to property values
https://bugs.webkit.org/show_bug.cgi?id=178176
Reviewed by Matt Baker.
- Highlight links blue and CSS strings dark red.
- Truncate URLs and strings over 150 characters.
- UserInterface/Views/CodeMirrorAdditions.js:
Parse CSS values using CodeMirror.
- UserInterface/Views/SpreadsheetCSSStyleDeclarationEditor.css:
(.spreadsheet-style-declaration-editor .property:not(.disabled) .token-link):
(.spreadsheet-style-declaration-editor .property:not(.disabled) .token-string):
- UserInterface/Views/SpreadsheetStyleProperty.js:
(WI.SpreadsheetStyleProperty.prototype._update):
(WI.SpreadsheetStyleProperty.prototype.spreadsheetTextFieldWillStartEditing):
Replace trancated values with their full version.
(WI.SpreadsheetStyleProperty.prototype.spreadsheetTextFieldDidCommit):
(WI.SpreadsheetStyleProperty.prototype.spreadsheetTextFieldDidBlur):
(WI.SpreadsheetStyleProperty.prototype._renderValue):
Highlight links and CSS strings in values when not editing.
- UserInterface/Views/SpreadsheetTextField.js:
(WI.SpreadsheetTextField.prototype.startEditing):
Disabling of syntax highlighting moved to spreadsheetTextFieldWillStartEditing.
- UserInterface/Views/SyntaxHighlightingDefaultTheme.css:
(.syntax-highlighted a):
- UserInterface/Views/Variables.css:
(:root):
Make link color a variable.
- 5:35 PM Changeset in webkit [223452] by
-
- 4 edits in trunk/Source/WebCore
ImageDecoderAVFObjC fails to create more CMSampleBuffers after creating about 32MB worth.
https://bugs.webkit.org/show_bug.cgi?id=178360
Reviewed by Eric Carlson.
AVSampleBufferGenerator has a constrained memory pool of about 32MB in size. Once
CMSampleBuffers representing about 32MB of memory are allocated, no more can be created
until previously created ones are released. So rather than (only) creating the sample
buffers up front in readSampleMetadata(), also create them dynamically, if missing, in
createFrameImageAtIndex(...) and release them in storeSampleBuffer(...) after they have been
decoded.
Drive-by fix: the expected content length was never actually set by the owner of ImageDecoderAVFObjC.
Now that the expected content length is available, we don't have to wait until the data is complete
to respond to requests.
- platform/graphics/ImageSource.cpp:
(WebCore::ImageSource::ensureDecoderAvailable):
- platform/graphics/avfoundation/objc/ImageDecoderAVFObjC.h:
- platform/graphics/avfoundation/objc/ImageDecoderAVFObjC.mm:
(SOFT_LINK_POINTER_OPTIONAL):
(-[WebCoreSharedBufferResourceLoaderDelegate canFulfillRequest:]):
(-[WebCoreSharedBufferResourceLoaderDelegate fulfillRequest:]):
(-[WebCoreSharedBufferResourceLoaderDelegate resourceLoader:shouldWaitForLoadingOfRequestedResource:]):
(WebCore::imageDecoderAssetOptions):
(WebCore::ImageDecoderAVFObjC::firstEnabledTrack):
(WebCore::ImageDecoderAVFObjC::storeSampleBuffer):
(WebCore::ImageDecoderAVFObjC::createFrameImageAtIndex):
(WebCore::ImageDecoderAVFObjC::setExpectedContentSize):
- 5:30 PM Changeset in webkit [223451] by
-
- 13 edits in trunk
Add API support for quirk that lets an arbitrary click allow auto-play.
https://bugs.webkit.org/show_bug.cgi?id=178227
Reviewed by Alex Christensen.
Source/WebCore:
Added API test.
Instead of hardcoding sites in WebCore, let API clients control which websites opt into the quirk that lets
an arbitrary click allow auto-play via website policies.
- html/MediaElementSession.cpp:
(WebCore::needsArbitraryUserGestureAutoplayQuirk):
- loader/DocumentLoader.h:
Source/WebKit:
Instead of hardcoding sites in WebCore, let API clients control which websites opt into the quirk that lets
an arbitrary click allow auto-play via website policies.
- Shared/WebsitePolicies.h:
- UIProcess/API/C/WKWebsitePolicies.cpp:
(WKWebsitePoliciesSetAllowedAutoplayQuirks):
(WKWebsitePoliciesGetAllowedAutoplayQuirks):
- UIProcess/API/C/WKWebsitePolicies.h:
- UIProcess/API/Cocoa/_WKWebsitePolicies.h:
- UIProcess/API/Cocoa/_WKWebsitePolicies.mm:
(-[_WKWebsitePolicies setAllowedAutoplayQuirks:]):
(-[_WKWebsitePolicies allowedAutoplayQuirks]):
- WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::applyToDocumentLoader):
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updateWebsitePolicies):
Tools:
- TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
(TEST): Added API test.
- 5:15 PM Changeset in webkit [223450] by
-
- 7 edits in branches/safari-604.3.5.2-branch/Source
Versioning.
- 5:12 PM Changeset in webkit [223449] by
-
- 1 copy in tags/Safari-604.3.5.2.1
Tag Safari-604.3.5.2.1.
- 5:03 PM Changeset in webkit [223448] by
-
- 3 edits1 add in trunk
DOMQuad.p1 / p2 / p3 / p4 should behave as [SameObject]
https://bugs.webkit.org/show_bug.cgi?id=178366
Reviewed by Youenn Fablet.
Source/WebCore:
DOMQuad.p1 / p2 / p3 / p4 should behave as [SameObject]. We attempted to do so using JSDOMQuad::visitAdditionalChildren()
but the code did not work because we failed to generate a "isReachableFromOpaqueRoots()" function for JSDOMPoint.
Test: fast/css/DOMQuad-points-SameObject.html
- dom/DOMPoint.idl:
LayoutTests:
Add layout test coverage.
- fast/css/DOMQuad-points-SameObject.html: Added.
- 5:00 PM Changeset in webkit [223447] by
-
- 12 edits in trunk
[Apple Pay] Add subLocality and subAdministrativeArea to ApplePayPaymentContact and ApplePayError
https://bugs.webkit.org/show_bug.cgi?id=178191
<rdar://problem/34906367>
Reviewed by Tim Horton.
Source/WebCore:
Added test cases to http/tests/ssl/applepay/ApplePaySession.html.
- Modules/applepay/ApplePayError.idl:
- Modules/applepay/ApplePayPaymentContact.h:
- Modules/applepay/ApplePayPaymentContact.idl:
- Modules/applepay/ApplePaySessionPaymentRequest.h:
- Modules/applepay/cocoa/PaymentContactCocoa.mm:
(WebCore::subLocality):
(WebCore::setSubLocality):
(WebCore::subAdministrativeArea):
(WebCore::setSubAdministrativeArea):
(WebCore::convert):
Source/WebKit:
- UIProcess/ApplePay/cocoa/WebPaymentCoordinatorProxyCocoa.mm:
(WebKit::toNSError):
LayoutTests:
- http/tests/ssl/applepay/ApplePayError-expected.txt:
- http/tests/ssl/applepay/ApplePaySession-expected.txt:
- http/tests/ssl/applepay/ApplePaySession.html:
- 4:29 PM Changeset in webkit [223446] by
-
- 2 edits in trunk/Source/WebCore
Allow modern decoding of URLs
https://bugs.webkit.org/show_bug.cgi?id=178265
Patch by Alex Christensen <achristensen@webkit.org> on 2017-10-16
Reviewed by Chris Dumez.
- platform/URL.h:
(WebCore::URL::decode):
- 4:10 PM Changeset in webkit [223445] by
-
- 6 edits in trunk/LayoutTests
De-flakify http/tests/loading/basic-credentials-sent-automatically.html
https://bugs.webkit.org/show_bug.cgi?id=178365
Reviewed by Andy Estes.
- http/tests/loading/basic-credentials-sent-automatically-expected.txt:
- http/tests/loading/basic-credentials-sent-automatically.html:
- platform/ios-wk2/TestExpectations:
- platform/mac-wk2/TestExpectations:
- platform/wk2/http/tests/loading/basic-credentials-sent-automatically-expected.txt:
- 4:03 PM Changeset in webkit [223444] by
-
- 2 edits in trunk/Source/WebKit
Safari crashes after searching PDF (under [WKPDFView zoom:to:atPoint:kind:])
https://bugs.webkit.org/show_bug.cgi?id=178358
<rdar://problem/34676899>
Reviewed by Wenson Hsieh.
- UIProcess/ios/WKPDFView.mm:
(-[WKPDFView _didFindMatch:]):
UIPDFSelection can return a null rect as the selection's bounds.
We can't zoom to a null rect (and doing so results in CA throwing an
exception later).
- 3:40 PM Changeset in webkit [223443] by
-
- 3 edits in trunk/Source/WebCore
Unreviewed, rolling out r223425.
This change broke internal builds.
Reverted changeset:
"Remove unnecessary include from Document.h"
https://bugs.webkit.org/show_bug.cgi?id=178247
https://trac.webkit.org/changeset/223425
- 3:22 PM Changeset in webkit [223442] by
-
- 4 edits in trunk
If an origin doesn't have databases in the Databases table we should still remove its information from disk in DatabaseTracker::deleteOrigin()
https://bugs.webkit.org/show_bug.cgi?id=178281
<rdar://problem/34576132>
Patch by Maureen Daum <mdaum@apple.com> on 2017-10-16
Reviewed by Brent Fulgham.
Source/WebCore:
New test:
DatabaseTracker.DeleteOriginWithMissingEntryInDatabasesTable
- Modules/webdatabase/DatabaseTracker.cpp:
(WebCore::DatabaseTracker::deleteOrigin):
If databaseNames is empty, don't bail early. Instead, delete everything in the directory
containing the databases for this origin. This condition indicates that we previously
tried to remove the origin but didn't get all of the way through the deletion process.
Because we have lost track of the databases for this origin, we can assume that no
other process is accessing them. This means it should be safe to delete them outright.
Tools:
Verify that if there is an entry in the Origins table but no entries in the Databases
table that we still remove the directory for the origin, and that we remove the
entry from the Origins table.
- TestWebKitAPI/Tests/WebCore/cocoa/DatabaseTrackerTest.mm:
(TestWebKitAPI::TEST):
- 2:57 PM Changeset in webkit [223441] by
-
- 9 edits4 adds in trunk
[FETCH] Remove Request.type getter
https://bugs.webkit.org/show_bug.cgi?id=177798
Patch by Youenn Fablet <youenn@apple.com> on 2017-10-16
Reviewed by Chris Dumez.
LayoutTests/imported/w3c:
Refreshing fetch WPT tests.
- web-platform-tests/fetch/api/request/request-type-attribute-historical-expected.txt: Added.
- web-platform-tests/fetch/api/request/request-type-attribute-historical.html: Added.
- web-platform-tests/fetch/api/request/url-encoding-expected.txt: Added.
- web-platform-tests/fetch/api/request/url-encoding.html: Added.
Source/WebCore:
Tests: imported/w3c/web-platform-tests/fetch/api/request/request-type-attribute-historical.html
imported/w3c/web-platform-tests/fetch/api/request/url-encoding.html
Removing FetchRequest type getter.
Merging Type and Destination as per https://fetch.spec.whatwg.org/#concept-request-destination.
Setting destination of request within CachedResourceLoader as this will be useful to Service Workers.
- Modules/fetch/FetchRequest.h:
- Modules/fetch/FetchRequest.idl:
- loader/FetchOptions.h:
(WebCore::FetchOptions::isolatedCopy const):
(WebCore::FetchOptions::FetchOptions):
(WebCore::FetchOptions::encode const):
(WebCore::FetchOptions::decode):
- loader/ThreadableLoader.cpp:
(WebCore::ThreadableLoaderOptions::isolatedCopy const):
- loader/cache/CachedResourceLoader.cpp:
(WebCore::CachedResourceLoader::requestImage):
(WebCore::CachedResourceLoader::requestFont):
(WebCore::CachedResourceLoader::requestTextTrack):
(WebCore::CachedResourceLoader::requestCSSStyleSheet):
(WebCore::CachedResourceLoader::requestUserCSSStyleSheet):
(WebCore::CachedResourceLoader::requestScript):
(WebCore::CachedResourceLoader::requestXSLStyleSheet):
(WebCore::CachedResourceLoader::requestMedia):
(WebCore::CachedResourceLoader::requestIcon):
(WebCore::CachedResourceLoader::requestRawResource):
(WebCore::CachedResourceLoader::requestBeaconResource):
(WebCore::CachedResourceLoader::requestMainResource):
- loader/cache/CachedResourceRequest.cpp:
(WebCore::CachedResourceRequest::setDestinationIfNotSet):
- loader/cache/CachedResourceRequest.h:
- 2:44 PM Changeset in webkit [223440] by
-
- 37 edits15 adds3 deletes in trunk
Cannot access images included in the content pasted from Microsoft Word
https://bugs.webkit.org/show_bug.cgi?id=124391
<rdar://problem/26862741>
Reviewed by Antti Koivisto.
Source/WebCore:
The bug is caused by the fact Microsoft Word generates HTML content which references an image using file URL.
Because the websites don't have access to arbtirary file URLs, this prevents editors such as TinyMCE to save
those images.
This patch fixes the problem by converting file URLs for images and all other subresources in the web archive
generated by Microsoft Word by blob URLs like r222839 for RTF/RTFD and r222119 for images.
To avoid revealing privacy sensitive information such as the absolute local file path to the user's home directory
Microsoft Word and other applications in the system includes in the web archive placed in the system pasteboard,
this patch also introduces the mechanism to sanitize when the HTML content is read by DataTransfer's getData.
This patch also introduces the sanitization for when writing HTML into the pasteboard since other applications
in the syste which is capable to processing web archives are not necessarily equipped to pretect itself and the
rest of the system from potentially dangerous JavaScript included in the web archive placed in the system pasteboard.
Finally, this patch expands the list of clipboard types that are exposed as "text/html" to the Web platform by
adding the capability to convert RTF, RTFD, and web archive into HTML markup by introducing WebContentMarkupReader,
a new subclass of PasteboardWebContentReader which creates a HTML markup instead of a document fragment. Most of
the sanitization process happens in this new class, and will be expanded to WebContentReader to make pasting safer.
Tests: editing/pasteboard/data-transfer-get-data-on-pasting-html-uses-blob-url.html
editing/pasteboard/data-transfer-set-data-sanitizes-html-when-copying-in-null-origin.html
editing/pasteboard/data-transfer-set-data-sanitizes-html-when-copying.html
editing/pasteboard/data-transfer-set-data-sanitlize-html-when-dragging-in-null-origin.html
http/tests/security/clipboard/copy-paste-html-across-origin-sanitizes-html.html
CopyHTML.Sanitizes
DataInteractionTests.DataTransferSanitizeHTML
PasteRTF.ExposesHTMLTypeInDataTransfer
PasteRTFD.ExposesHTMLTypeInDataTransfer
PasteRTFD.ImageElementUsesBlobURLInHTML
PasteWebArchive.ExposesHTMLTypeInDataTransfer
- dom/DataTransfer.cpp:
(WebCore::originIdentifierForDocument): Moved to Document::originIdentifierForPasteboard.
(WebCore::DataTransfer::createForCopyAndPaste):
(WebCore::DataTransfer::getDataForItem const): Use WebContentMarkupReader read HTMl content so that we can read
web arhive, RTF, and RTFD as text/html.
(WebCore::DataTransfer::getData const):
(WebCore::DataTransfer::setData):
(WebCore::DataTransfer::setDataFromItemList): Sanitize the HTML before placing into the system pasteboard.
(WebCore::DataTransfer::createForDragStartEvent):
(WebCore::DataTransfer::createForDrop):
(WebCore::DataTransfer::createForUpdatingDropTarget):
- dom/DataTransfer.h:
- dom/DataTransfer.idl:
- dom/DataTransferItem.cpp:
(WebCore::DataTransferItem::getAsString const):
- dom/Document.cpp:
(WebCore::Document::originIdentifierForPasteboard): Renamed from uniqueIdentifier. Moved the code to use the origin
string and then falling back to the UUID here from originIdentifierForDocument in DataTransfer.cpp.
- dom/Document.h:
- editing/WebContentReader.cpp:
(WebCore::WebContentMarkupReader::shouldSanitize const): Added.
- editing/WebContentReader.h:
(WebCore::WebContentMarkupReader): Added.
(WebCore::WebContentMarkupReader::WebContentMarkupReader):
- editing/cocoa/WebContentReaderCocoa.mm:
(WebCore::createFragmentFromWebArchive): Extracted out of WebContentReader::readWebArchive to share code.
(WebCore::WebContentReader::readWebArchive):
(WebCore::WebContentMarkupReader::readWebArchive): Added. Reads the web archive, replace all subresource URLs by
blob URLs, and re-generate the markup using our copy & paste code. The last step is requied to strip away any privacy
sensitive information as well as potentially dangerous JavaScript code.
(WebCore::stripMicrosoftPrefix): Extracted out of WebContentReader::readHTML to share code.
(WebCore::WebContentReader::readHTML):
(WebCore::WebContentMarkupReader::readHTML): Added. Only sanitize the markup when it comes from a different origin.
(WebCore::WebContentReader::readRTFD): Added a nullity check for frame.document().
(WebCore::WebContentMarkupReader::readRTFD): Added.
(WebCore::WebContentMarkupReader::readRTF): Added.
- editing/markup.h:
- editing/markup.cpp:
(WebCore::createPageForSanitizingWebContent): Added.
(WebCore::sanitizeMarkup): Added. This function "pastes" the markup into a new isolated document then reserializes
using our serialization code for copy. It strips away all invisible information such as comments, and strips away
event handlers and script elements to remove potentially dangerous scripts.
- platform/Pasteboard.h:
- platform/ios/PasteboardIOS.mm:
(WebCore::Pasteboard::readPasteboardWebContentDataForType): Now that this code can be called by DataTransfer, added
the checks for the change count to make sure we stop letting web content read if the pasteboard had been changed by
some other applications. To do this, turned this function into a member of Pasteboard. Also changed the return type
to an enum with tri-state to exist the loop early in the call sites.
(WebCore::Pasteboard::read):
(WebCore::Pasteboard::readRespectingUTIFidelities):
- platform/ios/PlatformPasteboardIOS.mm:
(WebCore::safeTypeForDOMToReadAndWriteForPlatformType): Treat RTF, RTFD, and web archive as HTML.
- platform/mac/PasteboardMac.mm:
(WebCore::Pasteboard::read): Add the change count checks now that this code can be called by DataTransfer.
- platform/mac/PlatformPasteboardMac.mm:
(WebCore::safeTypeForDOMToReadAndWriteForPlatformType): Treat RTF, RTFD, and web archive as HTML.
Tools:
Added tests for sanitizing HTML contents for copy & paste and drag & drop.
- TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
- TestWebKitAPI/Tests/WebKitCocoa/CopyHTML.mm: Added.
(readHTMLFromPasteboard): Added.
(createWebViewWithCustomPasteboardDataEnabled): Added.
(CopyHTML.Sanitizes): Added.
- TestWebKitAPI/Tests/WebKitCocoa/CopyURL.mm:
(createWebViewWithCustomPasteboardDataEnabled): Added to enable more tests on bots.
- TestWebKitAPI/Tests/WebKitCocoa/PasteRTFD.mm:
(writeRTFToPasteboard): Added.
(createWebViewWithCustomPasteboardDataEnabled): Added.
(createHelloWorldString): Added.
(PasteRTF.ExposesHTMLTypeInDataTransfer): Added.
(PasteRTFD.ExposesHTMLTypeInDataTransfer): Added.
(PasteRTFD.ImageElementUsesBlobURLInHTML): Added.
- TestWebKitAPI/Tests/WebKitCocoa/copy-html.html: Added.
- TestWebKitAPI/Tests/WebKitCocoa/paste-rtfd.html: Store the clipboardData contents for
PasteRTF.ExposesHTMLTypeInDataTransfer and PasteRTFD.ExposesHTMLTypeInDataTransfer.
- TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
(DataInteractionTests.DataTransferSanitizeHTML):
LayoutTests:
Added tests for copying & pasting and dragging & dropping HTML contents.
- TestExpectations:
- editing/pasteboard/data-transfer-get-data-on-drop-rich-text-expected.txt: Rebaselined.
- editing/pasteboard/data-transfer-get-data-on-paste-rich-text-expected.txt: Ditto.
- editing/pasteboard/data-transfer-get-data-on-paste-rich-text.html: Modified the test to strip away platform specific
inline style properties.
- editing/pasteboard/data-transfer-get-data-on-pasting-html-uses-blob-url-expected.txt: Added.
- editing/pasteboard/data-transfer-get-data-on-pasting-html-uses-blob-url.html: Added.
- editing/pasteboard/data-transfer-set-data-sanitizes-html-when-copying-expected.txt: Added.
- editing/pasteboard/data-transfer-set-data-sanitizes-html-when-copying-in-null-origin-expected.txt: Added.
- editing/pasteboard/data-transfer-set-data-sanitizes-html-when-copying-in-null-origin.html: Added.
- editing/pasteboard/data-transfer-set-data-sanitizes-html-when-copying.html: Added.
- editing/pasteboard/data-transfer-set-data-sanitizes-html-when-dragging-in-null-origin-expected.txt: Added.
- editing/pasteboard/data-transfer-set-data-sanitizes-html-when-dragging-in-null-origin.html: Added.
- editing/pasteboard/data-transfer-set-data-sanitizes-url-when-dragging-in-null-origin.html: Removed the superflous
call to setTimeout that was errornously added during debugging. Also updated the test to not claim all URL and
HTML values are read in the same origin, and updated the assertion for cross-origin case as it's now sanitized.
- editing/pasteboard/onpaste-text-html-expected.txt: Rebaselined. The order of CSS properties have changed.
- http/tests/security/clipboard/copy-paste-html-across-origin-sanitizes-html-expected.txt: Added.
- http/tests/security/clipboard/copy-paste-html-across-origin-sanitizes-html.html: Added.
- http/tests/security/clipboard/copy-paste-url-across-origin-sanitizes-url.html:
- http/tests/security/clipboard/resources/copy-html.html: Added.
- http/tests/security/clipboard/resources/copy-url.html: Renamed from copy.html.
- platform/ios-wk2/editing/pasteboard/data-transfer-get-data-on-paste-rich-text-expected.txt: Remoevd.
- platform/ios-wk1/editing/pasteboard/data-transfer-get-data-on-paste-rich-text-expected.txt: Remoevd.
- platform/mac-wk1/TestExpectations:
- 2:33 PM Changeset in webkit [223439] by
-
- 6 edits in trunk/Source/WebKit
Add a _WKThumbnailView initializer with a WKWebView
https://bugs.webkit.org/show_bug.cgi?id=178351
<rdar://problem/34979453>
Reviewed by Tim Horton.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _page]):
(-[WKWebView _setThumbnailView:]):
(-[WKWebView _thumbnailView]):
(-[WKWebView _setIgnoresAllEvents:]):
(-[WKWebView _ignoresAllEvents]):
- UIProcess/API/Cocoa/WKWebViewInternal.h:
- UIProcess/API/Cocoa/WKWebViewPrivate.h:
- UIProcess/API/Cocoa/_WKThumbnailView.h:
- UIProcess/API/Cocoa/_WKThumbnailView.mm:
(-[_WKThumbnailView initWithFrame:fromWKWebView:]):
(-[_WKThumbnailView _viewWasUnparented]):
(-[_WKThumbnailView _viewWasParented]):
- 2:33 PM Changeset in webkit [223438] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed attempt to fix the Windows debug build.
- Modules/webdatabase/DatabaseTracker.cpp:
(WebCore::DatabaseTracker::deleteOrigin):
- 2:02 PM Changeset in webkit [223437] by
-
- 3 edits in trunk/Source/WebKit
Expose more WKView properties as WKWebViewPrivate SPI
https://bugs.webkit.org/show_bug.cgi?id=178349
<rdar://problem/34980919>
Reviewed by Tim Horton.
_backgroundExtendsBeyondPage was already exposed on iOS, but we need it on Mac, too.
A few other properties also need exposing.
- UIProcess/API/Cocoa/WKWebView.mm:
(toAPIScrollbarStyle):
(toCoreScrollbarStyle):
(-[WKWebView _setBackgroundExtendsBeyondPage:]):
(-[WKWebView _backgroundExtendsBeyondPage]):
(-[WKWebView _setOverlayScrollbarStyle:]):
(-[WKWebView _overlayScrollbarStyle]):
- UIProcess/API/Cocoa/WKWebViewPrivate.h:
- 1:52 PM Changeset in webkit [223436] by
-
- 7 edits in trunk/Source
Log using differential privacy domains where the WebContent process crashes
https://bugs.webkit.org/show_bug.cgi?id=178346
<rdar://problem/33293830>
Reviewed by Alex Christensen.
Source/WebCore:
Add new diagnostic logging key for domain causing crashes.
- page/DiagnosticLoggingKeys.cpp:
(WebCore::DiagnosticLoggingKeys::domainCausingCrashKey):
- page/DiagnosticLoggingKeys.h:
Source/WebKit:
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::reload):
(WebKit::WebPageProxy::currentURL const):
(WebKit::WebPageProxy::processDidTerminate):
- UIProcess/WebPageProxy.h:
- UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::didClose):
- 1:50 PM Changeset in webkit [223435] by
-
- 2 edits in branches/safari-604.3.5.2-branch/Source/JavaScriptCore
Cherry-pick r222417. rdar://problem/35010838
- 1:50 PM Changeset in webkit [223434] by
-
- 7 edits in branches/safari-604.3.5.2-branch/Source
Versioning.
- 1:36 PM Changeset in webkit [223433] by
-
- 6 edits in trunk
Activate Cache API by default
https://bugs.webkit.org/show_bug.cgi?id=178186
Patch by Youenn Fablet <youenn@apple.com> on 2017-10-16
Reviewed by Chris Dumez.
Source/WebKit:
- Shared/WebPreferencesDefinitions.h:
Tools:
Removing explicit activation of cache api.
- WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::beginTesting):
- WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setCacheAPIEnabled): Deleted.
- WebKitTestRunner/InjectedBundle/TestRunner.h:
- 1:33 PM Changeset in webkit [223432] by
-
- 23 edits1 add in trunk/Source
[Settings] Remove all custom code from Settings.h/cpp
https://bugs.webkit.org/show_bug.cgi?id=178330
Reviewed by Simon Fraser.
Source/WebCore:
Removes the two remaining functions out of Settings paving the way
for the file to be generated.
- pageDestroyed was moved down into SettingsBase.
- effectiveFrameFlattening was moved to FrameView (to reduce the need for additional includes, the FrameFlattening enum was converted to an enum class to allow it to be forward declared).
Also moves default values into SettingsDefaultValues.h
- WebCore.xcodeproj/project.pbxproj:
Add new files.
- page/FrameView.cpp:
- page/FrameView.h:
Move effectiveFrameFlattening function here from Settings.
- page/Settings.cpp:
- page/Settings.h:
Move effectiveFrameFlattening, pageDestroyed and default values out.
- page/Settings.in:
Update for turning FrameFlattening into an enum class.
- page/SettingsBase.h:
Turn FrameFlattening into an enum class and move pageDestroyed here.
- page/SettingsDefaultValues.h: Added.
Move all the default values from Settings here.
- rendering/RenderFrameSet.cpp:
- rendering/RenderIFrame.cpp:
- rendering/RenderView.cpp:
Get effectiveFrameFlattening from the FrameView.
- testing/InternalSettings.cpp:
- testing/InternalSettings.h:
Update now that FrameFlattening is an enum class.
Source/WebKit:
- Shared/WebPreferencesDefinitions.h:
- UIProcess/API/C/WKPreferences.cpp:
(WKPreferencesSetFrameFlatteningEnabled):
(WKPreferencesGetFrameFlatteningEnabled):
- UIProcess/API/glib/WebKitSettings.cpp:
(webkit_settings_get_enable_frame_flattening):
(webkit_settings_set_enable_frame_flattening):
- WebProcess/InjectedBundle/InjectedBundle.cpp:
(WebKit::InjectedBundle::setFrameFlatteningEnabled):
Update for naming changes of FrameFlattening now that it is an enum class.
- WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::contentsSizeChanged const):
Ge the effectiveFrameFlattening from the FrameView, rather than the Settings.
Source/WebKitLegacy/mac:
- WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
Update for naming changes of FrameFlattening now that it is an enum class.
Source/WebKitLegacy/win:
- WebView.cpp:
(WebView::notifyPreferencesChanged):
Update for naming changes of FrameFlattening now that it is an enum class.
- 1:29 PM Changeset in webkit [223431] by
-
- 9 edits in trunk/Source/WebKit
[WK2][NetworkSession] Add support for resuming downloads
https://bugs.webkit.org/show_bug.cgi?id=177625
<rdar://problem/34345975>
Reviewed by Alex Christensen.
Add support for resuming downloads for the WK2 NETWORK_SESSION code path.
This was tested manually. I was unable to write an API test because our tests
do not run an HTTP server and CFNetwork does not seem to generate resume data
when cancelling a download over non-HTTP.
- NetworkProcess/Downloads/Download.cpp:
(WebKit::Download::didReceiveChallenge):
(WebKit::Download::continueCanAuthenticateAgainstProtectionSpace):
- NetworkProcess/Downloads/Download.h:
- NetworkProcess/Downloads/DownloadManager.cpp:
(WebKit::DownloadManager::continueCanAuthenticateAgainstProtectionSpace):
(WebKit::DownloadManager::resumeDownload):
- NetworkProcess/Downloads/cocoa/DownloadCocoa.mm:
(WebKit::Download::resume):
This currently includes a workaround for <rdar://problem/34745171>. We update the
resume data to include the NSURLSessionResumeInfoLocalPath key with the final
destination path so that CFNetwork looks for the temporary data at the right
location.
- NetworkProcess/cocoa/NetworkSessionCocoa.h:
- NetworkProcess/cocoa/NetworkSessionCocoa.mm:
(-[WKNetworkSessionDelegate URLSession:task:didReceiveChallenge:completionHandler:]):
(WebKit::NetworkSessionCocoa::downloadTaskWithResumeData):
- Shared/Authentication/AuthenticationManager.cpp:
(WebKit::AuthenticationManager::didReceiveAuthenticationChallenge):
- Shared/Authentication/AuthenticationManager.h:
- 1:28 PM Changeset in webkit [223430] by
-
- 1 copy in branches/safari-604.3.5.2-branch
New branch.
- 1:27 PM Changeset in webkit [223429] by
-
- 2 edits in trunk/Tools
run-webkit-tests help text should mention arguments too
https://bugs.webkit.org/show_bug.cgi?id=178352
Patch by Ross Kirsling <Ross Kirsling> on 2017-10-16
Reviewed by Tim Horton.
- Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(parse_args):
- 1:25 PM Changeset in webkit [223428] by
-
- 7 edits2 adds in trunk
Web Inspector: Layers tab mistakenly throws out the root element's layer.
https://bugs.webkit.org/show_bug.cgi?id=178222
Patch by Ross Kirsling <Ross Kirsling> on 2017-10-16
Reviewed by Brian Burg.
Source/WebInspectorUI:
- UserInterface/Controllers/LayerTreeManager.js:
(WI.LayerTreeManager.prototype.layersForNode):
Fix the issue at the manager level.
- UserInterface/Views/Layers3DContentView.js:
(WI.Layers3DContentView.prototype.layout):
Update new sidebar based on simplified manager API.
- UserInterface/Views/LayerTreeDetailsSidebarPanel.js:
(WI.LayerTreeDetailsSidebarPanel.prototype.layout):
Move overtailored code from manager to legacy sidebar.
LayoutTests:
- inspector/layers/layer-tree-manager-expected.txt: Added.
- inspector/layers/layer-tree-manager.html: Added.
- 1:20 PM Changeset in webkit [223427] by
-
- 6 edits1 add1 delete in trunk
If we fail to delete any database file, don't remove its information from the tracker database
<rdar://problem/34576132> and https://bugs.webkit.org/show_bug.cgi?id=178251
Patch by Maureen Daum <mdaum@apple.com> on 2017-10-16
Reviewed by Brady Eidson.
Source/WebCore:
New tests:
DatabaseTracker.DeleteDatabase
DatabaseTracker.DeleteDatabaseWhenDatabaseDoesNotExist
DatabaseTracker.DeleteOrigin
DatabaseTracker.DeleteOriginWhenDeletingADatabaseFails
DatabaseTracker.DeleteOriginWhenDatabaseDoesNotExist
- Modules/webdatabase/DatabaseTracker.cpp:
(WebCore::DatabaseTracker::deleteDatabasesModifiedSince):
If the database doesn't exist, we previously deleted it but failed to remove the
information from the tracker database. We still want to delete all of the information
associated with this database from the tracker database, so add it to databaseNamesToDelete.
(WebCore::DatabaseTracker::deleteOrigin):
If a database doesn't exist, don't try to delete it. We don't need to, but more
importantly, deleteDatabaseFile() will fail if the database doesn't exist, which
will cause us to incorrectly think we failed to remove database information from disk.
If we actually fail to delete any database file, return before we remove the origin
information from the tracker database so we don't lose track of the database.
(WebCore::DatabaseTracker::deleteDatabase):
If a database doesn't exist, don't try to delete it. We don't need to, but also it
will cause us to incorrectly think that we were unable to delete a database, so we
would bail before we remove the database information from the tracker database. We
want to remove the database information from the tracker database because the database
doesn't exist.
- Modules/webdatabase/DatabaseTracker.h:
Expose fullPathForDatabase() for use by tests.
- platform/Logging.h:
Add a logging channel.
Tools:
Add tests that verify we correctly delete databases and remove their information from
the tracker database, even if the database doesn't exist. Verify that if we fail to
delete a database, we don't remove its information from the tracker database.
- TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
Move DatabaseTrackerTest.cpp to DatabaseTrackerTest.mm so that we can use the cocoa
method for creating a temporary directory in the tests.
- TestWebKitAPI/Tests/WebCore/DatabaseTrackerTest.cpp: Removed.
The existing test was copied to DatabaseTrackerTest.mm.
- TestWebKitAPI/Tests/WebCore/cocoa/DatabaseTrackerTest.mm: Added.
(TestWebKitAPI::TEST):
(TestWebKitAPI::addToDatabasesTable):
(TestWebKitAPI::removeDirectoryAndAllContents):
(TestWebKitAPI::createFileAtPath):
- 1:16 PM Changeset in webkit [223426] by
-
- 2 edits1 add1 delete in trunk/Tools
Unreviewed, rolling out r223422.
These tests are for a change that was rolled out in r223420
Reverted changeset:
"If we fail to delete any database file, don't remove its
information from the tracker database"
https://bugs.webkit.org/show_bug.cgi?id=178251
https://trac.webkit.org/changeset/223422
- 12:49 PM Changeset in webkit [223425] by
-
- 3 edits in trunk/Source/WebCore
Remove unnecessary include from Document.h
https://bugs.webkit.org/show_bug.cgi?id=178247
Reviewed by Darin Adler.
- dom/Document.cpp:
(WebCore::Document::hasTouchEventHandlers const):
(WebCore::Document::touchEventTargetsContain const):
- dom/Document.h:
(WebCore::Document::hasTouchEventHandlers const): Deleted.
(WebCore::Document::touchEventTargetsContain const): Deleted.
- 12:46 PM Changeset in webkit [223424] by
-
- 2 edits in trunk/Source/WebCore
Fix iOS build after r223422
https://bugs.webkit.org/show_bug.cgi?id=178251
- Modules/webdatabase/DatabaseManager.h:
- 12:21 PM Changeset in webkit [223423] by
-
- 2 edits in trunk/Source/WebCore
We should wrap the removal of information from the tracker database in a transaction in DatabaseTracker::deleteOrigin()
https://bugs.webkit.org/show_bug.cgi?id=178274
<rdar://problem/34576132>
Patch by Maureen Daum <mdaum@apple.com> on 2017-10-16
Reviewed by Tim Horton.
- Modules/webdatabase/DatabaseTracker.cpp:
(WebCore::DatabaseTracker::deleteOrigin):
Wrap the removal of information from the tracker database in a transaction so that
we don't end up in a case where only one of the tables contains information about
an origin.
If anything goes wrong when we're modifying the tracker database, rollback the transaction
before bailing.
- 12:20 PM Changeset in webkit [223422] by
-
- 2 edits1 move in trunk/Tools
If we fail to delete any database file, don't remove its information from the tracker database
<rdar://problem/34576132> and https://bugs.webkit.org/show_bug.cgi?id=178251
Patch by Maureen Daum <mdaum@apple.com> on 2017-10-16
Reviewed by Brady Eidson.
Add tests that verify we correctly delete databases and remove their information from
the tracker database, even if the database doesn't exist. Verify that if we fail to
delete a database, we don't remove its information from the tracker database.
- TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
Move DatabaseTrackerTest.cpp to DatabaseTrackerTest.mm so that we can use the cocoa
method for creating a temporary directory in the tests.
- TestWebKitAPI/Tests/WebCore/DatabaseTrackerTest.cpp: Removed.
The existing test was copied to DatabaseTrackerTest.mm.
- TestWebKitAPI/Tests/WebCore/cocoa/DatabaseTrackerTest.mm: Added.
(TestWebKitAPI::TEST):
(TestWebKitAPI::addToDatabasesTable):
(TestWebKitAPI::removeDirectoryAndAllContents):
(TestWebKitAPI::createFileAtPath):
- 12:02 PM Changeset in webkit [223421] by
-
- 5 edits in trunk
Add RELEASE_ASSERT_WITH_SECURITY_IMPLICATION() macro
<https://webkit.org/b/178269>
Reviewed by Alex Christensen.
Source/WTF:
- wtf/Assertions.h:
(RELEASE_ASSERT_WITH_SECURITY_IMPLICATION): Add macro.
Tools:
- Scripts/webkitpy/style/checkers/cpp.py:
(check_language): Add checker to warn about using
ASSERT_WITH_SECURITY_IMPLICATION().
(CppChecker.categories): Add 'security/assertion' to list of
enabled checkers.
- Scripts/webkitpy/style/checkers/cpp_unittest.py:
(CppStyleTest.test_debug_security_assertion): Add tests for
new checker.
- 11:53 AM Changeset in webkit [223420] by
-
- 4 edits in trunk/Source/WebCore
Unreviewed, rolling out r223419.
This change broke the Windows build.
Reverted changeset:
"If we fail to delete any database file, don't remove its
information from the tracker database"
https://bugs.webkit.org/show_bug.cgi?id=178251
https://trac.webkit.org/changeset/223419
- 11:08 AM Changeset in webkit [223419] by
-
- 4 edits in trunk/Source/WebCore
If we fail to delete any database file, don't remove its information from the tracker database
<rdar://problem/34576132> and https://bugs.webkit.org/show_bug.cgi?id=178251
Patch by Maureen Daum <mdaum@apple.com> on 2017-10-16
Reviewed by Brady Eidson.
New tests:
DatabaseTracker.DeleteDatabase
DatabaseTracker.DeleteDatabaseWhenDatabaseDoesNotExist
DatabaseTracker.DeleteOrigin
DatabaseTracker.DeleteOriginWhenDeletingADatabaseFails
DatabaseTracker.DeleteOriginWhenDatabaseDoesNotExist
- Modules/webdatabase/DatabaseTracker.cpp:
(WebCore::DatabaseTracker::deleteDatabasesModifiedSince):
If the database doesn't exist, we previously deleted it but failed to remove the
information from the tracker database. We still want to delete all of the information
associated with this database from the tracker database, so add it to databaseNamesToDelete.
(WebCore::DatabaseTracker::deleteOrigin):
If a database doesn't exist, don't try to delete it. We don't need to, but more
importantly, deleteDatabaseFile() will fail if the database doesn't exist, which
will cause us to incorrectly think we failed to remove database information from disk.
If we actually fail to delete any database file, return before we remove the origin
information from the tracker database so we don't lose track of the database.
(WebCore::DatabaseTracker::deleteDatabase):
If a database doesn't exist, don't try to delete it. We don't need to, but also it
will cause us to incorrectly think that we were unable to delete a database, so we
would bail before we remove the database information from the tracker database. We
want to remove the database information from the tracker database because the database
doesn't exist.
- Modules/webdatabase/DatabaseTracker.h:
Expose fullPathForDatabase() for use by tests.
- platform/Logging.h:
Add a logging channel.
- 11:05 AM Changeset in webkit [223418] by
-
- 3 edits in trunk/Source/WebCore
REGRESSION(223307): ASSERTION in WebCore::ResourceLoadObserver::logUserInteractionWithReducedTimeResolution
https://bugs.webkit.org/show_bug.cgi?id=178342
<rdar://problem/35008505>
Reviewed by Chris Dumez.
In r223307 I mistakenly used 'topDocument->topDocument()' because of a copy/paste error. I should have just used
'topDocument'.
Tests: CommandBackForwardTestWKWebView in TestWebKitAPI.
- loader/ResourceLoadObserver.cpp:
(WebCore::ResourceLoadObserver::logUserInteractionWithReducedTimeResolution): We might enter this routine at a time
where there is no page. If so, we should return early and not log credit.
- page/EventHandler.cpp:
(WebCore::EventHandler::keyEvent): Correct the argument passed to the log function.
- 11:00 AM Changeset in webkit [223417] by
-
- 2 edits in trunk/LayoutTests
Adjust one more test from constant() to env() after r177581
- fast/events/ios/rotation/safe-area-insets-during-safari-type-rotation.html:
- 10:30 AM Changeset in webkit [223416] by
-
- 2 edits in trunk/Source/WebKit
[WPE] Build failure due to invalid cast of EGLNativeWindowType when targetting 64-bit ARM
https://bugs.webkit.org/show_bug.cgi?id=178090
Reviewed by Michael Catanzaro.
EGLNativeWindowType can be aliased to a different type depending (at least) on the EGL
implementation, its build options, and the libepoxy build options. Using "static_cast"
works when it is a numeric value and the width of the value needs to be optionally
extended to 64 bits (e.g. the EGL type is "int" in a 32-bit CPU) but not for pointers,
and using "reinterpret_cast" works when the size of a pointer is 64 bits but not in other
cases. Therefore it seems reasonable to use a plain C cast expression to solve this
particular situation.
- WebProcess/WebPage/wpe/AcceleratedSurfaceWPE.cpp:
(WebKit::AcceleratedSurfaceWPE::window const): Use a good old plain C cast expression.
- 10:19 AM Changeset in webkit [223415] by
-
- 7 edits in trunk/Source
Make some asserts into release asserts
https://bugs.webkit.org/show_bug.cgi?id=178324
Reviewed by Saam Barati.
Source/JavaScriptCore:
These asserts are not on perf critical paths, so they might as well be release asserts.
- runtime/DataView.h:
(JSC::DataView::get):
(JSC::DataView::set):
Source/WebCore:
No new tests because no change in behavior.
This introduces some release asserts. Perf testing shows that it's neutral. So, we get some extra
safety without losing any perf.
- dom/ContainerNodeAlgorithms.cpp:
(WebCore::notifyChildNodeInserted):
- dom/Document.cpp:
(WebCore::Document::adoptNode):
(WebCore::Document::frameDestroyed):
(WebCore::Document::attachToCachedFrame):
(WebCore::Document::detachFromCachedFrame):
(WebCore::Document::prepareForDestruction):
(WebCore::Document::dispatchWindowEvent):
(WebCore::Document::dispatchWindowLoadEvent):
(WebCore::Document::applyQuickLookSandbox):
- dom/DocumentOrderedMap.cpp:
(WebCore::DocumentOrderedMap::add):
(WebCore::DocumentOrderedMap::remove):
(WebCore::DocumentOrderedMap::get const):
(WebCore:: const):
- dom/Node.cpp:
(WebCore::Node::~Node):
(WebCore::DidMoveToNewDocumentAssertionScope::~DidMoveToNewDocumentAssertionScope):
(WebCore::DidMoveToNewDocumentAssertionScope::didRecieveCall):
(WebCore::moveNodeToNewDocument):
(WebCore::moveShadowTreeToNewDocument):
(WebCore::Node::moveTreeToNewScope):
(WebCore::Node::didMoveToNewDocument):
(WebCore::Node::dispatchSubtreeModifiedEvent):
(WebCore::Node::dispatchDOMActivateEvent):
- 10:18 AM Changeset in webkit [223414] by
-
- 4 edits in trunk/LayoutTests
LayoutTest http/tests/cache-storage/cache-clearing-origin.https.html is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=178305
<rdar://problem/34990264>
Unreviewed.
Removing flaky test expectations based on dashboard.
Patch by Youenn Fablet <youenn@apple.com> on 2017-10-16
- TestExpectations:
- platform/ios/TestExpectations:
- platform/mac/TestExpectations:
- 9:59 AM Changeset in webkit [223413] by
-
- 11 edits1 copy3 adds in trunk
Clicks on Link with download attribute causes all (other) links to trigger download when clicked
https://bugs.webkit.org/show_bug.cgi?id=178267
<rdar://problem/34985016>
Reviewed by Darin Adler.
LayoutTests/imported/w3c:
Rebaseline test which behave differently now in WebKit2 due to WKTR's injected bundle
using PassThrough policy for new windows. The new result is identical to what you
would get when you open the test in Safari so I think this is a good thing.
- web-platform-tests/html/browsers/windows/noreferrer-window-name-expected.txt:
Source/WebKit:
When clicking on an anchor with the download attribute, the m_syncNavigationActionHasDownloadAttribute
flag on WebPageProxy would get set. This flag would not get reset right away and instead, it would get
updated during the next call to WebPageProxy::decidePolicyForNavigationAction(). The issue is that if
you later click on a link with target="_blank", WebPageProxy::decidePolicyForNewWindowAction() gets
called instead of WebPageProxy::decidePolicyForNavigationAction() and we do not reset the
m_syncNavigationActionHasDownloadAttribute flag and we force a download.
To address the problem, I got rid of this flag on WebPageProxy and it is error-prone and should really
not be at page-level. Instead, I added a shouldForceDownload flag on the navigation object. It makes
more sense to associate the flag with the navigation and makes it less error-prone.
- UIProcess/API/APINavigation.h:
(API::Navigation::setShouldForceDownload):
(API::Navigation::shouldForceDownload const):
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::receivedPolicyDecision):
(WebKit::WebPageProxy::decidePolicyForNavigationAction):
- UIProcess/WebPageProxy.h:
Tools:
Use PassThrough policy in WKTR's InjectedBundle's decidePolicyForNewWindowAction so that the
request is sent to the UIProcess. This gets WKTR's closer to Safari behavior and helps
reproduce the bug. Without this change, I would not be able to write a regression test for
this bug that is very easily reproducible in Safari.
- WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
(WTR::InjectedBundlePage::decidePolicyForNewWindowAction):
LayoutTests:
Add layout test coverage.
- http/tests/download/anchor-load-after-download-expected.txt: Added.
- http/tests/download/anchor-load-after-download.html: Added.
- platform/ios-wk2/TestExpectations:
- platform/mac-wk1/TestExpectations:
- platform/mac-wk1/imported/w3c/web-platform-tests/html/browsers/windows/noreferrer-window-name-expected.txt: Copied from LayoutTests/imported/w3c/web-platform-tests/html/browsers/windows/noreferrer-window-name-expected.txt.
- 9:40 AM Changeset in webkit [223412] by
-
- 3 edits2 copies4 moves2 adds in trunk/Source/WebCore
Make RealtimeIncomingAudioSources and RealtimeOutgoingAudioSources port agnostic
https://bugs.webkit.org/show_bug.cgi?id=177928
Patch by Alejandro G. Castro <alex@igalia.com> on 2017-10-16
Reviewed by Youenn Fablet.
Refactor the RealtimeIncomingAudioSource and RealtimeOutgoingAudioSource classes,
move the mac specific code to a different class. This way we can use them from
other ports.
No new tests, we are not adding new functionality just refactoring.
- CMakeLists.txt:
- WebCore.xcodeproj/project.pbxproj:
- platform/mediastream/RealtimeIncomingAudioSource.cpp: Copied from Source/WebCore/platform/mediastream/mac/RealtimeIncomingAudioSource.h. Just the port agnostic parts.
- platform/mediastream/RealtimeIncomingAudioSource.h: Copied from Source/WebCore/platform/mediastream/mac/RealtimeIncomingAudioSource.h. Ditto.
- platform/mediastream/RealtimeOutgoingAudioSource.cpp: Copied from Source/WebCore/platform/mediastream/mac/RealtimeOutgoingAudioSource.cpp. Ditto.
- platform/mediastream/RealtimeOutgoingAudioSource.h: Copied from Source/WebCore/platform/mediastream/mac/RealtimeOutgoingAudioSource.h. Ditto.
- platform/mediastream/mac/RealtimeIncomingAudioSourceCocoa.cpp: Added, it adds Cocoa code parts from original Source/WebCore/platform/mediastream/mac/RealtimeIncomingAudioSource.cpp.
(WebCore::RealtimeIncomingAudioSource::create): Moved this function from the RealtimeOutgoingAudioSource.cpp file to avoid including the Cocoa file there.
- platform/mediastream/mac/RealtimeIncomingAudioSourceCocoa.h: Added Cocoa code from original Source/WebCore/platform/mediastream/mac/RealtimeIncomingAudioSource.h.
- platform/mediastream/mac/RealtimeOutgoingAudioSourceCocoa.cpp: Added Cocoa code from original Source/WebCore/platform/mediastream/mac/RealtimeOutgoingAudioSource.cpp.
(WebCore::RealtimeOutgoingAudioSource::create): Moved this function from the RealtimeOutgoingAudioSource.cpp file to avoid including the Cocoa file there.
- platform/mediastream/mac/RealtimeOutgoingAudioSourceCocoa.h: Added Cocoa code from the original Source/WebCore/platform/mediastream/mac/RealtimeOutgoingAudioSource.h.
- 9:38 AM Changeset in webkit [223411] by
-
- 1 edit3 adds in trunk/LayoutTests
Rebaseline imported/w3c/web-platform-tests/beacon/headers/header-content-type.html for macOS.
https://bugs.webkit.org/show_bug.cgi?id=178343
Unreviewed test gardening.
- platform/mac-wk2/imported/w3c/web-platform-tests/beacon/headers/header-content-type-expected.txt: Added.
- 9:21 AM Changeset in webkit [223410] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed, fix the tvOS build after r223340.
Add a new #define in PlatformPasteboardIOS.mm for item provider support, and guard usages of
WebItemProviderPasteboard using it.
- platform/ios/PlatformPasteboardIOS.mm:
(WebCore::pasteboardMayContainFilePaths):
(WebCore::PlatformPasteboard::readURL):
- 9:19 AM Changeset in webkit [223409] by
-
- 2 edits in trunk/Source/JavaScriptCore
JSRunLoopTimer: reduce likely race when used improperly
https://bugs.webkit.org/show_bug.cgi?id=178298
<rdar://problem/32899816>
Reviewed by Saam Barati.
If an API user sets a timer on JSRunLoopTimer, and then racily
destroys the JSRunLoopTimer while the timer is firing then it's
possible for timerDidFire to cause a use-after-free and / or crash
because e.g. m_apiLock becomes a nullptr while timerDidFire is
executing. That results from an invalid use of JSRunLoopTimer, but
we should try to be more resilient for that type of misuse because
it's not necessarily easy to catch by inspection.
With this change the only remaining race is if the timer fires,
and then only timerDidFire's prologue executes, but not the load
of the m_apiLock pointer fromthis
. It's a much smaller race.
Separately, I'll reach out to API users who are seemingly misusing
the API.
- runtime/JSRunLoopTimer.cpp:
(JSC::JSRunLoopTimer::timerDidFire): put m_apiLock on the stack,
and checks for nullptr. This prevents loading it twice off of
this
and turns a nullptr deref into "just" a use-after-free.
(JSC::JSRunLoopTimer::~JSRunLoopTimer): acquire m_apiLock before
calling m_vm->unregisterRunLoopTimer(this), which in turn does
CFRunLoopRemoveTimer / CFRunLoopTimerInvalidate. This prevents
timerDidFire from doing much while the timers are un-registered.
~JSRunLoopTimer also needs to set m_apiLock to nullptr before
releasing the lock, so it needs its own local copy.
- 9:12 AM Changeset in webkit [223408] by
-
- 49 edits2 copies2 adds in trunk
Unreviewed, rolling out r223271.
This change introduced LayoutTest failures on WK1.
Reverted changeset:
"Use asynchronous ResourceHandleClient calls for WebKit1"
https://bugs.webkit.org/show_bug.cgi?id=160677
https://trac.webkit.org/changeset/223271
- 8:23 AM Changeset in webkit [223407] by
-
- 2 edits in trunk/LayoutTests
Mark animations/play-state-in-shorthand.html as flaky on Windows.
https://bugs.webkit.org/show_bug.cgi?id=178341
Unreviewed test gardening.
- platform/win/TestExpectations:
- 7:44 AM Changeset in webkit [223406] by
-
- 3 edits1 copy4 moves3 adds in trunk/Source/WebCore
Make RealtimeIncomingVideoSources and RealtimeOutgoingVideoSources port agnostic
https://bugs.webkit.org/show_bug.cgi?id=177869
Patch by Alejandro G. Castro <alex@igalia.com> on 2017-10-16
Reviewed by Youenn Fablet.
Refactor the RealtimeIncomingVideoSource and RealtimeOutgoingVideoSource classes,
move the cocoa specific code to a different class. This way we can use them from
other ports.
No new functionality, just a refactor.
- CMakeLists.txt:
- WebCore.xcodeproj/project.pbxproj:
- platform/mediastream/RealtimeIncomingVideoSource.cpp: Moved from Source/WebCore/platform/mediastream/mac/RealtimeIncomingVideoSource.h. Just the port agnostic parts.
- platform/mediastream/RealtimeIncomingVideoSource.h: Moved from Source/WebCore/platform/mediastream/mac/RealtimeIncomingVideoSource.h. DItto
- platform/mediastream/RealtimeOutgoingVideoSource.cpp: Moved from Source/WebCore/platform/mediastream/mac/RealtimeOutgoingVideoSource.cpp. Ditto
- platform/mediastream/RealtimeOutgoingVideoSource.h: Moved from Source/WebCore/platform/mediastream/mac/RealtimeOutgoingVideoSource.h. Ditto
- platform/mediastream/mac/RealtimeIncomingVideoSourceMac.cpp: Added, it adds the Cocoa specific parts from Source/WebCore/platform/mediastream/mac/RealtimeIncomingVideoSource.cpp.
(WebCore::RealtimeIncomingVideoSource::create): Moved this function from the base class, it allows avoiding the include.
- platform/mediastream/mac/RealtimeIncomingVideoSourceCocoa.h: Added, cocoa dependent code from Source/WebCore/platform/mediastream/mac/RealtimeIncomingVideoSource.h.
(WebCore::RealtimeOutgoingVideoSource::create): Moved this funtion from the base class, now we can use the Cocoa create without including it in the base class.
- platform/mediastream/mac/RealtimeOutgoingVideoSourceCocoa.cpp: Added, cocoa dependent code.
- platform/mediastream/mac/RealtimeOutgoingVideoSourceCocoa.h: Added, cocoa dependent code.
- 6:40 AM Changeset in webkit [223405] by
-
- 3 edits2 adds in releases/WebKitGTK/webkit-2.18
Merge r222474 - Crash in WebCore::TreeScope::documentScope
https://bugs.webkit.org/show_bug.cgi?id=176159
Reviewed by Ryosuke Niwa.
Source/WebCore:
When all children are replaced with a new node in ContainerNode::replaceAllChildren,
the treescope of the new node should be set after the call to willRemoveChildren,
since this call can fire events, and execute JS code, which might change the treescope
of the container node.
Test: fast/dom/crash-moving-subtree-between-documents.html
- dom/ContainerNode.cpp:
(WebCore::ContainerNode::replaceAllChildren):
LayoutTests:
- fast/dom/crash-moving-subtree-between-documents-expected.txt: Added.
- fast/dom/crash-moving-subtree-between-documents.html: Added.
- 6:34 AM Changeset in webkit [223404] by
-
- 30 edits in releases/WebKitGTK/webkit-2.18/Source
Merge r222456 - Separate form submission from PolicyChecker infrastructure
https://bugs.webkit.org/show_bug.cgi?id=177396
Reviewed by Geoffrey Garen.
Source/WebCore:
We used PolicyChecker for WillSubmitForm even though we just need a completion handler
with no parameters. That is what lambdas and WTF::Functions are for.
No change in behavior.
- loader/EmptyClients.cpp:
(WebCore::EmptyFrameLoaderClient::dispatchWillSubmitForm):
- loader/FrameLoader.cpp:
(WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
(WebCore::FrameLoader::continueLoadAfterWillSubmitForm): Deleted.
- loader/FrameLoader.h:
- loader/FrameLoaderClient.h:
- loader/PolicyChecker.cpp:
(WebCore::PolicyChecker::continueLoadAfterWillSubmitForm): Deleted.
- loader/PolicyChecker.h:
Source/WebKit:
- UIProcess/API/APIFormClient.h:
(API::FormClient::willSubmitForm):
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _setInputDelegate:]):
- UIProcess/WebFormClient.cpp:
(WebKit::WebFormClient::willSubmitForm):
- UIProcess/WebFormClient.h:
- UIProcess/WebFormSubmissionListenerProxy.cpp:
(WebKit::WebFormSubmissionListenerProxy::continueSubmission):
(WebKit::WebFormSubmissionListenerProxy::WebFormSubmissionListenerProxy): Deleted.
- UIProcess/WebFormSubmissionListenerProxy.h:
(WebKit::WebFormSubmissionListenerProxy::create):
(WebKit::WebFormSubmissionListenerProxy::WebFormSubmissionListenerProxy):
(): Deleted.
(WebKit::WebFormSubmissionListenerProxy::operator new): Deleted.
- UIProcess/WebFrameProxy.cpp:
(WebKit::WebFrameProxy::setUpFormSubmissionListenerProxy): Deleted.
- UIProcess/WebFrameProxy.h:
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::willSubmitForm):
- WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
(WebKit::WebFrameLoaderClient::dispatchWillSubmitForm):
- WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
- WebProcess/WebPage/WebFrame.cpp:
(WebKit::WebFrame::setUpWillSubmitFormListener):
(WebKit::WebFrame::continueWillSubmitForm):
- WebProcess/WebPage/WebFrame.h:
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::continueWillSubmitForm):
- WebProcess/WebPage/WebPage.h:
- WebProcess/WebPage/WebPage.messages.in:
Source/WebKitLegacy/mac:
- WebCoreSupport/WebFrameLoaderClient.h:
- WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::dispatchWillSubmitForm):
- 6:28 AM Changeset in webkit [223403] by
-
- 6 edits in releases/WebKitGTK/webkit-2.18/Source/WebCore
Merge r222441 - [css-grid] Small refactoring adding RenderGrid::contentAlignment()
https://bugs.webkit.org/show_bug.cgi?id=177130
Reviewed by Sergio Villar Senin.
As a follow-up of r221931, this patch does a small refactoring
adding a new method RenderGrid::contentAlignment()
that is used from RenderGrid and GridTrackSizingAlgorithm.
No new tests, no change of behavior.
- rendering/GridTrackSizingAlgorithm.cpp:
(WebCore::GridTrackSizingAlgorithm::stretchAutoTracks):
- rendering/RenderGrid.cpp:
(WebCore::contentAlignmentNormalBehaviorGrid):
(WebCore::RenderGrid::contentAlignment const):
(WebCore::RenderGrid::computeContentPositionAndDistributionOffset const):
(WebCore::RenderGrid::contentAlignmentNormalBehaviorGrid): Deleted.
- rendering/RenderGrid.h:
- rendering/style/RenderStyle.cpp:
(WebCore::resolvedContentAlignment):
(WebCore::RenderStyle::resolvedAlignContent const):
(WebCore::RenderStyle::resolvedJustifyContent const):
- rendering/style/RenderStyle.h:
- 6:16 AM Changeset in webkit [223402] by
-
- 9 edits2 adds in releases/WebKitGTK/webkit-2.18
Merge r222440 - [css-grid] fit-content() tracks shouldn't stretch
https://bugs.webkit.org/show_bug.cgi?id=177300
Reviewed by Sergio Villar Senin.
LayoutTests/imported/w3c:
Imported a new test in WPT covering several cases for this issue.
- web-platform-tests/css/css-grid-1/alignment/grid-fit-content-tracks-dont-stretch-001-expected.txt: Added.
- web-platform-tests/css/css-grid-1/alignment/grid-fit-content-tracks-dont-stretch-001.html: Added.
- web-platform-tests/css/css-grid-1/alignment/w3c-import.log:
Source/WebCore:
The spec is pretty clear regarding this
(https://drafts.csswg.org/css-grid/#algo-stretch):
"This step sizes expands tracks that have an auto max track sizing
function by dividing any remaining positive, definite free space
equally amongst them."
The fit-content() tracks don't have an auto max track sizing function,
so they shouldn't be considered in this step of the algorithm.
The patch modifies GridTrackSizingAlgorithm::initializeTrackSizes()
so it doesn't consider fit-content() tracks as auto sized ones
(which are the ones later stretched in the last step of the algorithm).
Test: imported/w3c/web-platform-tests/css/css-grid-1/alignment/grid-fit-content-tracks-dont-stretch-001.html
- rendering/GridTrackSizingAlgorithm.cpp:
(WebCore::GridTrackSizingAlgorithm::initializeTrackSizes):
(WebCore::GridTrackSizingAlgorithm::stretchAutoTracks):
(WebCore::GridTrackSizingAlgorithm::setup):
(WebCore::GridTrackSizingAlgorithm::reset):
- rendering/GridTrackSizingAlgorithm.h:
LayoutTests:
Added new case to an existent test and also modified
the expected result in another one.
- fast/css-grid-layout/grid-content-alignment-stretch-only-valid-for-auto-sized-tracks-expected.txt:
- fast/css-grid-layout/grid-content-alignment-stretch-only-valid-for-auto-sized-tracks.html:
- fast/css-grid-layout/grid-intrinsic-maximums-expected.html:
- 6:14 AM Changeset in webkit [223401] by
-
- 2 edits in releases/WebKitGTK/webkit-2.18/Source/WebKit
Merge r222437 - [GTK] Unreviewed, move webkit_hit_test_result_context_is_scrollbar in documentation
- UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt:
- 6:14 AM Changeset in webkit [223400] by
-
- 8 edits4 moves in releases/WebKitGTK/webkit-2.18
Merge r222433 - [ATK] Object attributes are missing for ARIA live region roles
https://bugs.webkit.org/show_bug.cgi?id=171174
Reviewed by Chris Fleizach.
Source/WebCore:
Expose the values of aria-live, aria-atomic, and aria-relevant via AtkObject
attributes on live region elements and their descendants. In order to accomplish
exposure on descendants, add AccessibilityObject::ariaLiveRegionAncestor(). Add an
optional argument, excludeIfOff, to AccessibilityObject::isInsideARIALiveRegion()
and AccessibilityObject::supportsARIALiveRegion(). This is needed because we need
to expose live region properties via ATK even in the case where the live region
is disabled/off, but supportsARIALiveRegion() deliberately checks if the live
region is enabled.
Tests: accessibility/aria-liveregion-marquee-default.html
accessibility/aria-liveregions-attributes.html
- accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::isInsideARIALiveRegion const):
(WebCore::AccessibilityObject::ariaLiveRegionAncestor const):
(WebCore::AccessibilityObject::supportsARIALiveRegion const):
- accessibility/AccessibilityObject.h:
- accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
(webkitAccessibleGetAttributes):
Tools:
Add support for testing property values for AXARIALive, AXARIAAtomic, and
AXARIARelevant. Also add handling for testing whether AXElementBusy is
"supported" (in ATK, busy is a state and is supported on all elements
regardless of whether the state is present or absent from the state set).
- WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
(WTR::AccessibilityUIElement::boolAttributeValue):
(WTR::AccessibilityUIElement::isAttributeSupported):
LayoutTests:
Move two macOS tests to the shared layout test set.
- accessibility/aria-liveregion-marquee-default-expected.txt: Renamed from LayoutTests/accessibility/mac/aria-liveregion-marquee-default-expected.txt.
- accessibility/aria-liveregion-marquee-default.html: Renamed from LayoutTests/accessibility/mac/aria-liveregion-marquee-default.html.
- accessibility/aria-liveregions-attributes-expected.txt: Renamed from LayoutTests/accessibility/mac/aria-liveregions-attributes-expected.txt.
- accessibility/aria-liveregions-attributes.html: Renamed from LayoutTests/accessibility/mac/aria-liveregions-attributes.html.
- platform/win/TestExpectations: Add the above tests to the list of known failures.
- 6:10 AM Changeset in webkit [223399] by
-
- 7 edits in releases/WebKitGTK/webkit-2.18
Merge r222530 - Followup (r222427): SynchronizedFixedQueue should not have a public constructor
https://bugs.webkit.org/show_bug.cgi?id=177458
Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2017-09-26
Reviewed by Tim Horton.
Source/WebCore:
ImageFrameCache::decodingQueue() and frameRequestQueue() should return
raw references instead of Ref objects.
- platform/graphics/ImageFrameCache.cpp:
(WebCore::ImageFrameCache::decodingQueue):
(WebCore::ImageFrameCache::frameRequestQueue):
(WebCore::ImageFrameCache::startAsyncDecodingQueue):
- platform/graphics/ImageFrameCache.h:
Source/WTF:
Since SynchronizedFixedQueue is now derived from ThreadSafeRefCounted<SynchronizedFixedQueue>,
the standard way to have an instance of it is to call SynchronizedFixedQueue::create()
which returns a Ref<SynchronizedFixedQueue>. Now it does not make sense to still
have the constructor public.
- wtf/SynchronizedFixedQueue.h:
(WTF::SynchronizedFixedQueue::SynchronizedFixedQueue):
Tools:
Fix the definition and the creation of SynchronizedFixedQueue.
- TestWebKitAPI/Tests/WTF/SynchronizedFixedQueue.cpp:
(TestWebKitAPI::ToUpperConverter::ToUpperConverter):
(TestWebKitAPI::ToUpperConverter::startProducing):
(TestWebKitAPI::ToUpperConverter::startConsuming):
(TestWebKitAPI::ToUpperConverter::stopProducing):
(TestWebKitAPI::ToUpperConverter::stopConsuming):
(TestWebKitAPI::ToUpperConverter::enqueueLower):
- 6:10 AM Changeset in webkit [223398] by
-
- 5 edits in releases/WebKitGTK/webkit-2.18/Source
Merge r222427 - Images may render partial frames even after loading all the encoded data
https://bugs.webkit.org/show_bug.cgi?id=177406
Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2017-09-23
Reviewed by Simon Fraser.
Source/WebCore:
Because we do not want to block the main thread waiting for the image decoding
thread to terminate, we let the decoding thread finish its work even it will
be thrown away. If a new decoding thread is created and the SynchronizedFixedQueue
is reopened, the terminating decoding thread might have the chance to process
a new frame request. After it finishes decoding it, it realize that it is
terminating so it will drop the decoded frame to the floor. So the new request
was not processed by the new thread and because it was processed by the
terminating thread, nothing will be reported to the BitmapImage object and
the renderer will not be repainted.
The fix is to create a new SynchronizedFixedQueue every time a decoding
thread is created. This will guarantee that the terminating thread won't
have access to the new frame request and will shut down after being notified
by the old SynchronizedFixedQueue that it has been closed.
- platform/graphics/ImageFrameCache.cpp:
(WebCore::ImageFrameCache::frameRequestQueue):
(WebCore::ImageFrameCache::startAsyncDecodingQueue):
(WebCore::ImageFrameCache::requestFrameAsyncDecodingAtIndex):
(WebCore::ImageFrameCache::stopAsyncDecodingQueue):
- platform/graphics/ImageFrameCache.h:
Source/WTF:
Make it possible to create a RefPtr<SynchronizedFixedQueue>.
- wtf/SynchronizedFixedQueue.h:
(WTF::SynchronizedFixedQueue::create):
(WTF::SynchronizedFixedQueue::enqueue):
(WTF::SynchronizedFixedQueue::dequeue):
- 6:05 AM Changeset in webkit [223397] by
-
- 9 edits in releases/WebKitGTK/webkit-2.18
Merge r222388 - [GTK] HTMLMediaElement resize event not fired when video size changes
https://bugs.webkit.org/show_bug.cgi?id=174582
Reviewed by Xabier Rodriguez-Calvar.
Modify AppendPipeline to notify MediaPlayerPrivateGStreamerMSE that a track is detected
not only for the initial track detection but also for subsequent in particular when the
video size has changed.
Update test expectation for new passing tests.
Source/WebCore:
- platform/graphics/gstreamer/mse/AppendPipeline.cpp:
(WebCore::AppendPipeline::appsinkCapsChanged):
(WebCore::AppendPipeline::connectDemuxerSrcPadToAppsink):
- platform/graphics/gstreamer/mse/AppendPipeline.h:
- platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.cpp:
(WebCore::MediaPlayerPrivateGStreamerMSE::trackDetected):
- platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.h:
- platform/graphics/gstreamer/mse/PlaybackPipeline.cpp:
(WebCore::PlaybackPipeline::reattachTrack):
- platform/graphics/gstreamer/mse/PlaybackPipeline.h:
LayoutTests:
- platform/gtk/TestExpectations:
- 5:59 AM Changeset in webkit [223396] by
-
- 3 edits2 adds in releases/WebKitGTK/webkit-2.18
Merge r222321 - In regular block layout, the width of a child's margin box should always be equal to that of its containing block
Merge from Blink https://bugs.chromium.org/p/chromium/issues/detail?id=708751
https://bugs.webkit.org/show_bug.cgi?id=176620
Patch by Zhifei FANG <facetothefate@gmail.com> on 2017-09-21
Reviewed by Zalan Bujtas.
Source/WebCore:
Test: fast/block/over-constrained-auto-margin.html
- rendering/RenderBox.cpp:
(WebCore::RenderBox::computeLogicalWidthInRegion const):
LayoutTests:
- fast/block/over-constrained-auto-margin-expected.txt: Added.
- fast/block/over-constrained-auto-margin.html: Added.
- 5:56 AM Changeset in webkit [223395] by
-
- 5 edits2 adds in releases/WebKitGTK/webkit-2.18
Merge r222304 - REGRESSION(r191731): SVGPatternElement can only reference another SVGPatternElement in the same SVG document
https://bugs.webkit.org/show_bug.cgi?id=176221
Reviewed by Tim Horton.
Source/WebCore:
According to the specs:
https://www.w3.org/TR/SVG11/filters.html#FilterElementHrefAttribute
https://www.w3.org/TR/SVG11/pservers.html#LinearGradientElementHrefAttribute
https://www.w3.org/TR/SVG11/pservers.html#RadialGradientElementHrefAttribute
https://www.w3.org/TR/SVG11/pservers.html#PatternElementHrefAttribute
The xlink:href attribute of the SVG filter, gradient and pattern elements
must reference another element within the current SVG of the same type.
In r191731, the code of SVGPatternElement::collectPatternAttributes() was
removed and replaced by RenderSVGResourcePattern::collectPatternAttributes()
to avoid cyclic reference in the pattern element. The problem is the old
code used to check whether the referenced element is<SVGPatternElement>
before casting it. This code was not copied to the new function. So we
now allow the SVGPatternElement to reference any SVG resource element.
To fix this issue, we need to prevent SVGResources from chaining an incorrect
type of element to the SVG filter, gradient and pattern elements.
We also need to use the SVGResources for getting the referenced element
when collecting the attributes for the gradient elements. SVGResources solves
the cyclic referencing issue so there is no need to repeat the same code
in many places. Also, from now on the SVGResources will have valid linked
resource only. So casting the referenced element should always be valid.
Tests: svg/custom/pattern-invalid-content-inheritance.svg
- rendering/svg/RenderSVGResourcePattern.cpp:
(WebCore::RenderSVGResourcePattern::collectPatternAttributes const): Asserts
the linkedResource is of type RenderSVGResourcePattern.
- rendering/svg/SVGResources.cpp:
(WebCore::SVGResources::SVGResources):
(WebCore::isChainableResource): Ensure that an SVG resource can reference
only an SVG resource with the valid type.
(WebCore::SVGResources::buildCachedResources):
- rendering/svg/SVGResources.h:
LayoutTests:
- svg/custom/pattern-invalid-content-inheritance-expected.svg: Added.
- svg/custom/pattern-invalid-content-inheritance.svg: Added.
- 5:53 AM Changeset in webkit [223394] by
-
- 4 edits1 add in releases/WebKitGTK/webkit-2.18
Merge r222276 - [ATK] atk_table_get_n_rows() and atk_table_get_n_columns() should return values of aria-rowcount and aria-colcount, if present
https://bugs.webkit.org/show_bug.cgi?id=171172
Reviewed by Chris Fleizach.
Source/WebCore:
Modify webKitAccessibleTableGetNColumns() and webkitAccessibleTableGetNRows()
to prefer the ARIA value over the DOM-based value.
No new tests needed: We already have coverage through aria-table-attributes.html.
Platform expectations for this test were updated.
- accessibility/atk/WebKitAccessibleInterfaceTable.cpp:
(webkitAccessibleTableGetNColumns):
(webkitAccessibleTableGetNRows):
LayoutTests:
Generated platform-specific expectations to reflect the new behavior.
- accessibility/aria-table-attributes.html: Modified to handle platform differences.
- platform/gtk/accessibility/aria-table-attributes-expected.txt: Added.
- 5:19 AM Changeset in webkit [223393] by
-
- 6 edits in releases/WebKitGTK/webkit-2.18
Merge r222275 - Fix HPPA and Alpha builds
https://bugs.webkit.org/show_bug.cgi?id=177224
Reviewed by Alex Christensen.
.:
- CMakeLists.txt:
Source/JavaScriptCore:
- CMakeLists.txt:
Source/WTF:
- wtf/Platform.h:
- 5:18 AM Changeset in webkit [223392] by
-
- 2 edits in releases/WebKitGTK/webkit-2.18/Source/WebCore
Merge r222264 - [GTK] Completely garbled display in GMail
https://bugs.webkit.org/show_bug.cgi?id=168964
Reviewed by Carlos Garcia Campos.
Do not try to decode images that are bigger than 32768 pixels, as cairo won't be able to render them,
and they will break the rendering of the rest of the page.
Covered by existent tests.
- platform/graphics/ImageBackingStore.h:
(WebCore::ImageBackingStore::isOverSize):
- 5:16 AM Changeset in webkit [223391] by
-
- 5 edits in releases/WebKitGTK/webkit-2.18/Source/WebDriver
Merge r222256 - WebDriver: Implement commands to get and set the window rect
https://bugs.webkit.org/show_bug.cgi?id=177134
Reviewed by Brian Burg.
We are currently implementing the selenium legacy ones, we should implement the w3c ones instead.
https://w3c.github.io/webdriver/webdriver-spec.html#resizing-and-positioning-windows
- Session.cpp:
(WebDriver::Session::getToplevelBrowsingContextRect): Helper to get the window rect. This is used by both get
and set window rect commands.
(WebDriver::Session::moveToplevelBrowsingContextwindow): Helper to ask automation to move the window.
(WebDriver::Session::resizeToplevelBrowsingContextwindow): Helper to ask automation to resize the window.
(WebDriver::Session::getWindowRect): Handle prompts and then call getToplevelBrowsingContextRect().
(WebDriver::Session::setWindowRect): Handle prompts and then move and resize the window according to the given
parameters and finish the operation calling getToplevelBrowsingContextRect().
- Session.h:
- WebDriverService.cpp:
(WebDriver::WebDriverService::getWindowRect): Ask the session to get the window rect.
(WebDriver::valueAsNumberInRange): Helper to check a value is a valid number in the given range.
(WebDriver::WebDriverService::setWindowRect): Get and check size and position from parameters and then ask the
session to set the window rect.
- WebDriverService.h:
- 5:15 AM Changeset in webkit [223390] by
-
- 2 edits in releases/WebKitGTK/webkit-2.18/Source/WebDriver
Merge r222255 - WebDriver: wrong response in case of errors
https://bugs.webkit.org/show_bug.cgi?id=177127
Reviewed by Brian Burg.
I misunderstood the spec when I implemented this, so we either return a "value" key with the result in case of
success or the error object as the body in case of error. We should always add a "value" key to the body and set
it with either the result or the error object.
https://w3c.github.io/webdriver/webdriver-spec.html#dfn-send-an-error
- WebDriverService.cpp:
(WebDriver::WebDriverService::sendResponse const):
- 5:10 AM Changeset in webkit [223389] by
-
- 9 edits2 adds in trunk
Don't use intrinsic width if our container's width is zero
https://bugs.webkit.org/show_bug.cgi?id=178073
Reviewed by Sergio Villar Senin.
Source/WebCore:
Based on Blink r173212 by <robhogan@gmail.com>.
https://chromium.googlesource.com/chromium/src/+/1592e8a1e8e56dfa6e5d709c50b129ae659c2fad
Since at least r798 we use a replaced element's intrinsic width
if its containing block has a width of zero. As a result our rendering
of width100percent-image.html has disagreed with all other browsers
and we display replaced elements when they should be invisible.
Test: fast/replaced/container-width-zero.html
- rendering/RenderBox.cpp:
(WebCore::RenderBox::computeReplacedLogicalWidthUsing const):
If our container has zero width then let our width be zero too.
LayoutTests:
New rebaseline for width100percent-image.html test.
- fast/replaced/container-width-zero-expected.txt: Added.
- fast/replaced/container-width-zero.html: Added.
- platform/ios/fast/replaced/width100percent-image-expected.txt:
- platform/gtk/fast/replaced/width100percent-image-expected.png:
- platform/gtk/fast/replaced/width100percent-image-expected.txt:
- platform/mac/fast/replaced/width100percent-image-expected.png:
- platform/mac/fast/replaced/width100percent-image-expected.txt:
- platform/win/TestExpectations: Skips test as it needs a rebaseline.
- 4:59 AM Changeset in webkit [223388] by
-
- 5 edits1 add in releases/WebKitGTK/webkit-2.18
Merge r222245 - REGRESSION (r215613): Incorrect corners clipping with border-radius
https://bugs.webkit.org/show_bug.cgi?id=176498
<rdar://problem/34112607>
Reviewed by Tim Horton.
Source/WebCore:
http://trac.webkit.org/r215613 introduced an optimization to bail out of repainting borders if the invalidated
rect to paint is fully contained within the inner rounded rect of the border. However, due to issues with
coordinate and intersection math in RoundedRect::contains() and ellipseContainsPoint(), this causes
RenderBoxModelObject::paintBorder to return early even in circumstances where the border requires a repaint.
This patch fixes the contains() helper in RoundedRect and adds a new API test suite for RoundedRect that covers
these changes.
Test: WebCore.RoundedRectContainsRect
- platform/graphics/GeometryUtilities.cpp:
(WebCore::ellipseContainsPoint):
This function attempts to return early if the Manhattan distance of the transformed point is less than the
radius of the circle that results from applying the same transformation to the ellipse. However, this bails and
returns true ifx + y <= R
, but this means that if x and y are negative, we'll always end up returning true.
We fix this by adding the absolute values instead, so the check becomes: |x| + |y| <= R.
- platform/graphics/RoundedRect.cpp:
(WebCore::RoundedRect::contains const):
Before this patch, otherRect's upper left location was being used to hit-test against the ellipses formed from
each of the 4 corners of the rounded rect. Instead, this should use (x, y), (maxX, y), (x, maxY), (maxX, maxY)
for the top left, top right, bottom left, and bottom right corners, respectively.
Additionally, the checks for the bottom left and bottom right to determine whether the rect corner should be
checked for intersection against the ellipse's corner are incorrect. In the bottom left corner, the check for
otherRect.maxX() >= center.x()
should instead beotherRect.x() <= center.x()
, and the check for
otherRect.x() <= center.x()
should instead beotherRect.maxX() >= center.x()
.
- platform/graphics/RoundedRect.h:
Tools:
Add WebCore API tests for RoundedRect::contains().
- TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
- TestWebKitAPI/Tests/WebCore/RoundedRectTests.cpp: Added.
(TestWebKitAPI::layoutRect):
(TestWebKitAPI::TEST):
- 4:22 AM Changeset in webkit [223387] by
-
- 2 edits in releases/WebKitGTK/webkit-2.18/LayoutTests
Merge r222237 - Add missing text after r222226.
- accessibility/crash-table-recursive-layout.html:
- 4:22 AM Changeset in webkit [223386] by
-
- 4 edits2 adds in releases/WebKitGTK/webkit-2.18
Merge r222226 - AXObjectCache::performDeferredCacheUpdate is called recursively through FrameView::layout.
https://bugs.webkit.org/show_bug.cgi?id=176218
<rdar://problem/34205612>
Reviewed by Simon Fraser.
Source/WebCore:
There are certain cases when we might re-enter performDeferredCacheUpdate through recursive
layout calls (see webkit.org/b/177176) and mutate m_deferredTextChangedList multiple times.
Test: accessibility/crash-table-recursive-layout.html
- accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::performDeferredCacheUpdate):
- accessibility/AXObjectCache.h:
LayoutTests:
- accessibility/crash-table-recursive-layout-expected.txt: Added.
- accessibility/crash-table-recursive-layout.html: Added.
- 4:13 AM Changeset in webkit [223385] by
-
- 4 edits in releases/WebKitGTK/webkit-2.18
Merge r222222 - [CMake] Add ENABLE_WEB_CRYPTO option and make ENABLE_SUBTLE_CRYPTO depend on it.
https://bugs.webkit.org/show_bug.cgi?id=177180
Reviewed by Michael Catanzaro.
This adds a ENABLE_WEB_CRYPTO flag and makes ENABLE_SUBTLE_CRYPTO depend on it.
The GTK and WPE ports enable them and set ENABLE_WEB_CRYPTO to public.
- Source/cmake/OptionsGTK.cmake: Set both features to ON and ENABLE_WEB_CRYPTO to public. No change in behaviour for GTK.
- Source/cmake/OptionsWPE.cmake: Do like on the GTK port. The public flag is now ENABLE_WEB_CRYPTO.
- Source/cmake/WebKitFeatures.cmake: Add the definition of ENABLE_WEB_CRYPTO and make ENABLE_SUBTLE_CRYPTO depend on it.
- 4:06 AM Changeset in webkit [223384] by
-
- 10 edits2 adds in releases/WebKitGTK/webkit-2.18
Merge r222221 - Do not mutate RenderText content during layout.
https://bugs.webkit.org/show_bug.cgi?id=176219
<rdar://problem/34205724>
Reviewed by David Hyatt.
Source/WebCore:
Update combined text when the style/content change as opposed to lazily, during layout.
-content mutation during layout might make the inline tree go out of sync.
Test: fast/text/international/dynamic-text-combine-crash.html
- rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::computeInlinePreferredLogicalWidths const):
- rendering/RenderCombineText.cpp:
(WebCore::RenderCombineText::styleDidChange):
(WebCore::RenderCombineText::setRenderedText):
(WebCore::RenderCombineText::combineTextIfNeeded):
(WebCore::RenderCombineText::combineText): Deleted.
- rendering/RenderCombineText.h:
- rendering/RenderText.h:
- rendering/line/BreakingContext.h:
(WebCore::BreakingContext::handleText):
- rendering/line/LineBreaker.cpp:
(WebCore::LineBreaker::skipLeadingWhitespace):
LayoutTests:
- fast/text/international/dynamic-text-combine-crash.html: Added.
- fast/text/text-combine-crash-expected.txt:
- 4:02 AM Changeset in webkit [223383] by
-
- 4 edits2 adds in releases/WebKitGTK/webkit-2.18
Merge r222220 - createMarkupInternal should protect its pointer to the Range's common ancestor
https://bugs.webkit.org/show_bug.cgi?id=177033
<rdar://problem/34265390>
Reviewed by Tim Horton.
Source/WebCore:
Adds basic safeguarding to codepaths hit while executing an outdent command.
Test: editing/execCommand/outdent-with-media-query-listener-in-iframe.html
- editing/IndentOutdentCommand.cpp:
(WebCore::IndentOutdentCommand::outdentRegion):
Avoid an infinite loop if endOfCurrentParagraph is a null position.
- editing/markup.cpp:
(WebCore::createMarkupInternal):
Protect the raw pointer to the Range's common ancestor node.
LayoutTests:
Adds a test that removes the common ancestor node of a range in the middle of executing an outdent.
- editing/execCommand/outdent-with-media-query-listener-in-iframe-expected.txt: Added.
- editing/execCommand/outdent-with-media-query-listener-in-iframe.html: Added.
- 4:00 AM Changeset in webkit [223382] by
-
- 2 edits in releases/WebKitGTK/webkit-2.18/Source/WebDriver
Merge r222204 - WebDriver: wrong key name for capabilities in new session response
https://bugs.webkit.org/show_bug.cgi?id=177074
Reviewed by Brian Burg.
We are using "value", it should be "capabilities".
https://w3c.github.io/webdriver/webdriver-spec.html#new-session
- WebDriverService.cpp:
(WebDriver::WebDriverService::newSession):
- 3:59 AM Changeset in webkit [223381] by
-
- 2 edits in releases/WebKitGTK/webkit-2.18/Source/WebDriver
Merge r222203 - WebDriver: HTTP responses should include Cache-Control header with no-cache value
https://bugs.webkit.org/show_bug.cgi?id=177073
Reviewed by Sergio Villar Senin.
6.3 Processing Model.
Set the response’s header with name and value with the following values:
Content-Type "application/json; charset=utf-8"
Cache-Control "no-cache"
https://w3c.github.io/webdriver/webdriver-spec.html#dfn-send-a-response
We were setting the Content-Type, but not the Cache-Control. This is checked by all WPT WebDriver tests.
- soup/HTTPServerSoup.cpp:
(WebDriver::HTTPServer::listen): Add Cache-Control header.
- 3:56 AM Changeset in webkit [223380] by
-
- 4 edits2 adds in releases/WebKitGTK/webkit-2.18
Merge r222168 - Always update display: contents styles in RenderTreeUpdater.
https://bugs.webkit.org/show_bug.cgi?id=177065
Patch by Emilio Cobos Álvarez <emilio> on 2017-09-18
Reviewed by Antti Koivisto.
Source/WebCore:
Otherwise we keep an old style around, making following style updates wrong.
Test: fast/css/display-contents-style-update.html
- style/RenderTreeUpdater.cpp:
(WebCore::RenderTreeUpdater::updateElementRenderer):
LayoutTests:
- fast/css/display-contents-style-update-expected.html: Added.
- fast/css/display-contents-style-update.html: Added.
- 3:55 AM Changeset in webkit [223379] by
-
- 1 edit2 adds in releases/WebKitGTK/webkit-2.18/LayoutTests
Merge r222167 - Avoid style resolution when clearing focused element.
https://bugs.webkit.org/show_bug.cgi?id=176224
<rdar://problem/34206409>
Reviewed by Zalan Bujtas.
LayoutTests:
- fast/dom/focus-style-resolution-expected.txt: Added.
- fast/dom/focus-style-resolution.html: Added.
- 3:53 AM Changeset in webkit [223378] by
-
- 3 edits in releases/WebKitGTK/webkit-2.18/Source/WebCore
Merge r222164 - Avoid style resolution when clearing focused element.
https://bugs.webkit.org/show_bug.cgi?id=176224
<rdar://problem/34206409>
Reviewed by Zalan Bujtas.
Test: fast/dom/focus-style-resolution.html
- dom/Document.cpp:
(WebCore::Document::setFocusedElement):
Don't do synchronous style resolution with FocusRemovalEventsMode::DoNotDispatch.
Style resolution may dispatch events.
- html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::didBlur):
Move resolveStyleIfNeeded call to setFocusedElement. It is the only client for didBlur.
- 3:50 AM Changeset in webkit [223377] by
-
- 2 edits in releases/WebKitGTK/webkit-2.18/Source/WebKit
Merge r222134 - [WPE][GTK] Merge ProcessLauncher[WPE,GTK]
https://bugs.webkit.org/show_bug.cgi?id=177041
Unreviewed fixup, I broke the size of the argv buffer when experimenting with how to respond
to review comments. Not sure why this didn't blow up everything during testing.
- UIProcess/Launcher/glib/ProcessLauncherGLib.cpp:
(WebKit::ProcessLauncher::launchProcess):
- 3:50 AM Changeset in webkit [223376] by
-
- 3 edits1 move1 add1 delete in releases/WebKitGTK/webkit-2.18/Source/WebKit
Merge r222133 - [WPE][GTK] Merge ProcessLauncher[WPE,GTK]
https://bugs.webkit.org/show_bug.cgi?id=177041
Reviewed by Carlos Garcia Campos.
- PlatformGTK.cmake:
- PlatformWPE.cmake:
- UIProcess/Launcher/glib/ProcessLauncherGLib.cpp: Renamed from Source/WebKit/UIProcess/Launcher/gtk/ProcessLauncherGtk.cpp.
(WebKit::childSetupFunction):
(WebKit::ProcessLauncher::launchProcess):
(WebKit::ProcessLauncher::terminateProcess):
(WebKit::ProcessLauncher::platformInvalidate):
- UIProcess/Launcher/wpe/ProcessLauncherWPE.cpp: Removed.
- 3:48 AM Changeset in webkit [223375] by
-
- 2 edits in releases/WebKitGTK/webkit-2.18/Source/WebCore
Merge r222130 - [GTK] Build failure with enchant-2.1.1
https://bugs.webkit.org/show_bug.cgi?id=176877
Unreviewed build fix for enchant 2.1.1.
enchant_dict_free_suggestions() has been deprecated since at least 2005. Use its
replacement, enchant_dict_free_string_list(), instead. That's also been around since at
least 2005.
- platform/text/enchant/TextCheckerEnchant.cpp:
(WebCore::TextCheckerEnchant::getGuessesForWord):
- 3:45 AM Changeset in webkit [223374] by
-
- 8 edits2 adds in releases/WebKitGTK/webkit-2.18
Merge r222114 - Avoid style recomputation when forwarding a focus event to an text field's input type
https://bugs.webkit.org/show_bug.cgi?id=176160
<rdar://problem/34184820>
Reviewed by Ryosuke Niwa.
Source/WebCore:
Currently, TextFieldInputType::forwardEvent synchronously triggers style recomputation, for the purpose of
scrolling to the origin upon handling a blur event, and also for updating caps lock state after a blur or focus.
In synchronously triggering style recomputation, we may end up running arbitrary JavaScript, which may change
the HTMLInputElement's type and cause the current TextFieldInputType to be destroyed.
To mitigate this, we only update caps lock state when forwarding a focus or blur event to the InputType, and
instead scroll blurred text fields to the origin later, in HTMLInputElement::didBlur (invoked from
Document::setFocusedElement after blur and focusout events have fired). Instead of having the InputType update
style, lift the call to Document::updateStyleIfNeeded up into HTMLInputElement so that we gracefully handle the
case where the page destroys and sets a new InputType within the scope of this style update.
Test: fast/forms/change-input-type-in-focus-handler.html
- dom/Document.cpp:
(WebCore::Document::setFocusedElement):
- html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::didBlur):
- html/HTMLInputElement.h:
- html/InputType.h:
(WebCore::InputType::elementDidBlur):
- html/TextFieldInputType.cpp:
(WebCore::TextFieldInputType::forwardEvent):
(WebCore::TextFieldInputType::elementDidBlur):
- html/TextFieldInputType.h:
LayoutTests:
Adds a new layout test verifying that we don't crash when changing the input type from within a focus event listener.
- fast/forms/change-input-type-in-focus-handler-expected.txt: Added.
- fast/forms/change-input-type-in-focus-handler.html: Added.
- 3:42 AM Changeset in webkit [223373] by
-
- 11 edits2 adds in releases/WebKitGTK/webkit-2.18
Merge r222097 - Make DocumentLoader a FrameDestructionObserver
https://bugs.webkit.org/show_bug.cgi?id=176364
<rdar://problem/34254780>
Reviewed by Alex Christensen.
The DocumentLoader needs to know when its Frame is destroyed so that it can
perform properly cleanup.
Test: fast/events/beforeunload-dom-manipulation-crash.html
- loader/DocumentLoader.cpp:
(WebCore::DocumentLoader::DocumentLoader): Call FrameDestructionObserver constructor.
(WebCore::DocumentLoader::responseReceived): Drive-by fix. Make sure the current
object is valid during the callback.
(WebCore::DocumentLoader::attachToFrame): Use FrameDestructionObserver::observerFrame rather
than setting the m_frame variable directly.
(WebCore::DocumentLoader::detachFromFrame): Ditto.
- loader/DocumentLoader.h:
(WebCore::DocumentLoader::frame const): Deleted, as this is provided by the FrameDestructionObserver.
Tools:
Provide mechanism to immediately end tests
https://bugs.webkit.org/show_bug.cgi?id=176364
<rdar://problem/34254780>
Reviewed by Alex Christensen.
WebKitTestRunner does not output state if the top loading frame has not been removed. This prevents some
tests that attempt to exercise failed load state from working properly.
This change adds a new 'forceImmediateCompletion' handler for DumpRenderTree and WebKitTestRunner so
that we can properly test these conditions.
- DumpRenderTree/TestRunner.h:
- DumpRenderTree/mac/TestRunnerMac.mm:
(TestRunner::forceImmediateCompletion): Added.
- DumpRenderTree/win/TestRunnerWin.cpp:
(TestRunner::forceImmediateCompletion): Ditto.
- WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
- WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::forceImmediateCompletion): Ditto.
- WebKitTestRunner/InjectedBundle/TestRunner.h:
LayoutTests:
Make DocumentLoader a FrameDestructionObserver
https://bugs.webkit.org/show_bug.cgi?id=176364
<rdar://problem/34254780>
Reviewed by Alex Christensen.
- fast/events/beforeunload-dom-manipulation-crash-expected.txt: Added.
- fast/events/beforeunload-dom-manipulation-crash.html: Added.
- 3:37 AM Changeset in webkit [223372] by
-
- 2 edits in releases/WebKitGTK/webkit-2.18/Source/WebCore
Merge r222090 - [Harfbuzz] Material icons not rendered correctly when using the web font
https://bugs.webkit.org/show_bug.cgi?id=176995
Reviewed by Michael Catanzaro.
Only a few of them are correctly rendered and some others are wrong. We only render correctly the ones that
don't have an underscore in their name (or that start with a number like 3d_rotation). In the cases where the
name before the underscore is also an icon, we render that icon instead, that's why some of them are wrong. This
is happening because the underscore is causing the HarfbuffShaper to split the text in 3 runs, one for the word
before the underscore, another one for the underscore and another for the word after the underscore. So, we
end up trying to shape the 3 runs independently and we fail when the icon doesn't exist, or when it exists but
it's not the one we are looking for. The cause of this is that the underscore has a different script (Common)
than the rest of characters (Latin) which is a condition in HarfbuffShaper to create a different run. The
unicode spec says that characters with Common script should be handled differently, but we are just ignoring
it. The spec proposes to use an heuristic based on simply inheriting the script of the previous character, which
should work in most of the cases. We could take a more conservative approach and do that only if both characters
are ASCII. We should also consider handling other cases mentioned by the spec like brackets and quotation marks,
but that belongs to a different bug/commit.
- platform/graphics/harfbuzz/HarfBuzzShaper.cpp:
(WebCore::scriptsAreCompatibleForCharacters): Helper function to check if the current and previous scripts are
compatible,
(WebCore::HarfBuzzShaper::collectHarfBuzzRuns): Use scriptsAreCompatibleForCharacters() to decided whether to
finish the current run or not. In case of Common script, inherit also the script from the previous character.
- 3:29 AM Changeset in webkit [223371] by
-
- 2 edits in trunk/Tools
Add Emilio Cobos Álvarez to the contributors list.
https://bugs.webkit.org/show_bug.cgi?id=178334
Patch by Emilio Cobos Álvarez <emilio> on 2017-10-16
Reviewed by Antti Koivisto.
- Scripts/webkitpy/common/config/contributors.json:
- 3:28 AM Changeset in webkit [223370] by
-
- 2 edits in releases/WebKitGTK/webkit-2.18/Tools
Merge r222032 - [GTK] Add a switch to start the mini-browser in full-screen mode
https://bugs.webkit.org/show_bug.cgi?id=176904
Reviewed by Carlos Garcia Campos.
- MiniBrowser/gtk/main.c:
(main):
- 3:27 AM Changeset in webkit [223369] by
-
- 2 edits in releases/WebKitGTK/webkit-2.18/Source/WebKit
Merge r222027 - [GTK][Wayland] Flickering when resizing the window
https://bugs.webkit.org/show_bug.cgi?id=176774
Reviewed by Michael Catanzaro.
This regressed when we switched to always start the wayland compositor. In
AcceleratedDrawingAreaProxy::waitForAndDispatchDidUpdateBackingStoreState() we check if the nested compositor is
running, which is always true now (if EGL and the required extensions are available). We should check if we are
in AC mode instead.
- UIProcess/AcceleratedDrawingAreaProxy.cpp:
(WebKit::AcceleratedDrawingAreaProxy::waitForAndDispatchDidUpdateBackingStoreState):
- 3:25 AM Changeset in webkit [223368] by
-
- 3 edits in releases/WebKitGTK/webkit-2.18/LayoutTests
Merge r222046 - fast/forms/append-children-during-form-submission.html fails due to a text diff on iOS
https://bugs.webkit.org/show_bug.cgi?id=176908
Reviewed by Tim Horton.
Tweak an existing layout test added in r222005 to make its expectation consistent across all platforms.
- fast/forms/append-children-during-form-submission-expected.txt:
- fast/forms/append-children-during-form-submission.html:
- platform/ios/fast/forms/append-children-during-form-submission-expected.txt: Removed.
- platform/mac-elcapitan/fast/forms/append-children-during-form-submission-expected.txt: Removed.
- 3:25 AM Changeset in webkit [223367] by
-
- 3 edits2 adds in releases/WebKitGTK/webkit-2.18
Merge r222005 - Submitting a form can cause HTMLFormElement's associated elements vector to be mutated during iteration
https://bugs.webkit.org/show_bug.cgi?id=176368
<rdar://problem/34254998>
Reviewed by Ryosuke Niwa.
Source/WebCore:
In the process of iterating over form.associatedElements() during form submission in FormSubmission::create, the
page may cause us to clobber the vector of FormAssociatedElements* we're currently iterating over by inserting
new form controls beneath the form element we're in the process of submitting. This happens because
FormSubmission::create calls HTMLTextAreaElement::appendFormData, which requires layout to be up to date, which
in turn makes us updateLayout() and set focus, which fires achange
event, upon which the page's JavaScript
inserts additonal DOM nodes into the form, modifying the vector of associated elements.
To mitigate this, instead of iterating over HTMLFormElement::associatedElements(), which returns a reference to
the HTMLFormElement's actual m_associatedElements vector, we iterate over a new vector of
Ref<FormAssociatedElement>s created from m_associatedElements.
This patch also removes an event dispatch assertion added in r212026. This assertion was added to catch any
other events dispatched in this scope, since dispatching events there would have had security implications, but
after making iteration over associated elements robust, this NoEventDispatchAssertion is no longer useful.
Test: fast/forms/append-children-during-form-submission.html
- loader/FormSubmission.cpp:
(WebCore::FormSubmission::create):
LayoutTests:
Adds a new test to make sure we don't crash when mutating a form's associated elements during form submission.
- fast/forms/append-children-during-form-submission-expected.txt: Added.
- fast/forms/append-children-during-form-submission.html: Added.
- 3:21 AM Changeset in webkit [223366] by
-
- 2 edits in releases/WebKitGTK/webkit-2.18/Source/WebCore
Merge r221989 - [GTK] Fails to build because 'Float32Array' has not been declared in AudioContext.h
https://bugs.webkit.org/show_bug.cgi?id=176870
Reviewed by Konstantin Tokarev.
Add missing include of Float32Array.h
No new tests, its a build fix.
- Modules/webaudio/AudioContext.h:
- 3:15 AM Changeset in webkit [223365] by
-
- 4 edits2 adds in releases/WebKitGTK/webkit-2.18
Merge r221948 - ASSERTION FAILED: !m_valueOrException under FontFaceSet::completedLoading loading a Serious Eats page
https://bugs.webkit.org/show_bug.cgi?id=175899
Reviewed by Tim Horton.
Source/WebCore:
Slight style update to r221835. Also adds a test.
Test: fast/text/document-fonts-while-loading-crash.html
- css/CSSFontFaceSet.h:
- css/FontFaceSet.cpp:
(WebCore::FontFaceSet::FontFaceSet):
LayoutTests:
- fast/text/document-fonts-while-loading-crash-expected.txt: Added.
- fast/text/document-fonts-while-loading-crash.html: Added.
- 3:13 AM Changeset in webkit [223364] by
-
- 7 edits in releases/WebKitGTK/webkit-2.18
Merge r221931 - [css-grid] Stretching auto tracks should be done as part of the track sizing algorithm
https://bugs.webkit.org/show_bug.cgi?id=176783
Reviewed by Sergio Villar Senin.
LayoutTests/imported/w3c:
Import changes on the test related to the new behavior.
- web-platform-tests/css/css-grid-1/grid-items/grid-minimum-size-grid-items-021.html:
Source/WebCore:
CSS WG has agreed to modify the track sizing algorithm to include
a new step: https://drafts.csswg.org/css-grid/#algo-stretch
We used to do the stretch of the "auto" tracks at the end of
the track sizing algorithm, however this change integrates it
into the algorithm itself as the last step.
See: https://github.com/w3c/csswg-drafts/issues/1150
The patch moves the method
RenderGrid::applyStretchAlignmentToTracksIfNeeded() to
GridTrackSizingAlgorithm::stretchAutoTracks().
And then modifies the grid track sizing algorithm to execute
the new step.
This patch uses the WPT test updated to check the new behavior.
- rendering/GridTrackSizingAlgorithm.cpp:
(WebCore::GridTrackSizingAlgorithm::initializeTrackSizes): Initialize
the list of auto tracks.
(WebCore::GridTrackSizingAlgorithm::stretchFlexibleTracks): Add
early return if there are not flexible tracks.
(WebCore::GridTrackSizingAlgorithm::stretchAutoTracks): Code moved from
RenderGrid::applyStretchAlignmentToTracksIfNeeded().
(WebCore::GridTrackSizingAlgorithm::setup): Reset list of auto tracks.
(WebCore::GridTrackSizingAlgorithm::run): Add new step
stretchAutoTracks().
(WebCore::GridTrackSizingAlgorithm::reset): Reset auto tracks.
- rendering/GridTrackSizingAlgorithm.h: Add m_autoSizedTracksIndex.
- rendering/RenderGrid.cpp:
(WebCore::RenderGrid::layoutBlock): Avoid applying stretch here.
(WebCore::RenderGrid::contentAlignmentNormalBehaviorGrid): Make public.
(WebCore::RenderGrid::applyStretchAlignmentToTracksIfNeeded): Moved to
GridTrackSizingAlgorithm::stretchAutoTracks().
- rendering/RenderGrid.h:
- 3:08 AM Changeset in webkit [223363] by
-
- 4 edits2 adds in releases/WebKitGTK/webkit-2.18
Merge r221918 - AX: On generic container elements, WebKit should distinguish between tooltip (e.g. @title) and label (e.g. @aria-label) attributes
https://bugs.webkit.org/show_bug.cgi?id=170475
<rdar://problem/31439222>
Reviewed by Joanmarie Diggs.
Source/WebCore:
Test: accessibility/title-tag-on-unimportant-elements-is-help-text.html
- accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::helpText):
(WebCore::AccessibilityNodeObject::accessibilityDescription):
(WebCore::AccessibilityNodeObject::roleIgnoresTitle):
- accessibility/AccessibilityNodeObject.h:
LayoutTests:
- accessibility/title-tag-on-unimportant-elements-is-help-text-expected.txt: Added.
- accessibility/title-tag-on-unimportant-elements-is-help-text.html: Added.
- 3:07 AM Changeset in webkit [223362] by
-
- 6 edits in releases/WebKitGTK/webkit-2.18/Source/WebCore
Merge r221916 - Remove RenderElement::isCSSAnimating boolean
https://bugs.webkit.org/show_bug.cgi?id=176779
Reviewed by Andreas Kling.
This optimization can be replaced with a simple style test that doesn't require keeping
two sources of truth in sync.
- page/animation/CSSAnimationController.cpp:
(WebCore::CSSAnimationControllerPrivate::ensureCompositeAnimation):
(WebCore::CSSAnimationControllerPrivate::clear):
Can't test here as style might have become non-animating and we don't clear animation when that happens.
This is only called on renderer destruction so it is not an important optimization.
(WebCore::CSSAnimationControllerPrivate::isRunningAnimationOnRenderer const):
(WebCore::CSSAnimationControllerPrivate::isRunningAcceleratedAnimationOnRenderer const):
(WebCore::CSSAnimationControllerPrivate::getAnimatedStyleForRenderer):
(WebCore::CSSAnimationControllerPrivate::computeExtentOfAnimation const):
(WebCore::CSSAnimationController::cancelAnimations):
(WebCore::CSSAnimationController::getAnimatedStyleForRenderer):
(WebCore::CSSAnimationController::computeExtentOfAnimation const):
(WebCore::CSSAnimationController::isRunningAnimationOnRenderer const):
(WebCore::CSSAnimationController::isRunningAcceleratedAnimationOnRenderer const):
Test if the style has any animations. This is roughly equivalent of the old test.
(it is actually somewhat better as the boolean was never cleared on style changes)
- rendering/RenderElement.cpp:
(WebCore::RenderElement::RenderElement):
- rendering/RenderElement.h:
(WebCore::RenderElement::isCSSAnimating const): Deleted.
(WebCore::RenderElement::setIsCSSAnimating): Deleted.
- rendering/style/RenderStyle.h:
(WebCore::RenderStyle::hasAnimationsOrTransitions const):
- 2:56 AM Changeset in webkit [223361] by
-
- 9 edits2 adds2 deletes in releases/WebKitGTK/webkit-2.18
Merge r221910 - [css-grid] Use transferred size over content size for automatic minimum size
https://bugs.webkit.org/show_bug.cgi?id=176688
Reviewed by Sergio Villar Senin.
LayoutTests/imported/w3c:
Import changes on the tests related to the new behavior.
- web-platform-tests/css/css-grid-1/grid-items/grid-minimum-size-grid-items-006.html:
- web-platform-tests/css/css-grid-1/grid-items/grid-minimum-size-grid-items-007.html:
- web-platform-tests/css/css-grid-1/grid-items/grid-minimum-size-grid-items-008.html:
- web-platform-tests/css/css-grid-1/grid-items/grid-minimum-size-grid-items-009.html:
- web-platform-tests/css/css-grid-1/grid-items/grid-minimum-size-grid-items-021.html:
- web-platform-tests/css/css-grid-1/grid-items/support/100x50-green.png: Removed.
- web-platform-tests/css/css-grid-1/grid-items/support/25x50-green.png: Added.
- web-platform-tests/css/css-grid-1/grid-items/support/50x100-green.png: Removed.
- web-platform-tests/css/css-grid-1/grid-items/support/50x25-green.png: Added.
- web-platform-tests/css/css-grid-1/grid-items/support/w3c-import.log:
Source/WebCore:
CSS WG has agreed to modify the spec so now the transferred size is used
(if it exists) independently if it's bigger or smaller
than the content size.
See: https://github.com/w3c/csswg-drafts/issues/1149
The spec text (https://drafts.csswg.org/css-grid/#min-size-auto):
"The automatic minimum size for a grid item in a given dimension is
its specified size if it exists, otherwise its transferred size
if that exists, else its content size"
This patch use the WPT tests updated to check the new behavior.
- rendering/GridTrackSizingAlgorithm.cpp:
(WebCore::GridTrackSizingAlgorithmStrategy::minSizeForChild const):
Modified so it always returns the transferred size (if any).
- 2:53 AM Changeset in webkit [223360] by
-
- 5 edits in releases/WebKitGTK/webkit-2.18
Merge r221879 - AX: [ATK] aria-autocomplete not exposed on comboboxes
https://bugs.webkit.org/show_bug.cgi?id=176724
Reviewed by Chris Fleizach.
Source/WebCore:
Add a check to AccessibilityObject::supportsARIAAutoComplete() for
combobox because isARIATextControl() returns false for that role.
Add new combobox test cases to existing aria-autocomplete.html test.
- accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::supportsARIAAutoComplete const):
LayoutTests:
- accessibility/gtk/aria-autocomplete-expected.txt: Updated for new test cases
- accessibility/gtk/aria-autocomplete.html: New test cases for combobox added
- 2:50 AM Changeset in webkit [223359] by
-
- 2 edits in releases/WebKitGTK/webkit-2.18/Source/WebCore
Merge r221850 - [GStreamer] Drop libgcrypt initialization in webkit_media_clear_key_decrypt_init()
https://bugs.webkit.org/show_bug.cgi?id=176656
Reviewed by Michael Catanzaro.
- platform/graphics/gstreamer/eme/WebKitClearKeyDecryptorGStreamer.cpp:
(webkit_media_clear_key_decrypt_init): Don't re-initialize libgcrypt here
since that's already done in the WebProcess main(), and the calls here
only result in libgcrypt writing out 'Oops' warnings on stderr.
- 2:46 AM Changeset in webkit [223358] by
-
- 2 edits in releases/WebKitGTK/webkit-2.18/Source/WebCore
Merge r221835 - Fix double resolve assertion in FontFaceSet seen while running tests
https://bugs.webkit.org/show_bug.cgi?id=176525
Reviewed by Brent Fulgham.
- css/FontFaceSet.cpp:
(WebCore::FontFaceSet::FontFaceSet): Only resolve the promise if the CSSFontFaceSet
is already loaded. Otherwise, we will resolve it later when it calls completedLoading.
- 2:41 AM Changeset in webkit [223357] by
-
- 2 edits in releases/WebKitGTK/webkit-2.18/Tools
Merge r221833 - [GTK] Improve Ctrl+W and Ctrl+Q shortcuts in MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=176619
Reviewed by Carlos Garcia Campos.
There are two different problems here. First, Ctrl+W is closing the entire window. That made
sense when I implemented the shortcut a couple years ago, but now MiniBrowser supports tabs
and it should really close only one single tab. Fix that.
Next, the keyboard shortcuts are not using webkit_web_view_try_close() and so are bypassing
onbeforeunload handlers, which are respected when closing with the mouse. Fix that too.
- MiniBrowser/gtk/BrowserWindow.c:
(browserWindowTryCloseCurrentWebView):
(browserWindowTryClose):
(browser_window_init):
- 2:40 AM Changeset in webkit [223356] by
-
- 4 edits2 adds in releases/WebKitGTK/webkit-2.18
Merge r221831 - gl.detachShader breaks shader program
https://bugs.webkit.org/show_bug.cgi?id=137689
<rdar://problem/34025056>
Reviewed by Sam Weinig.
Source/WebCore:
It should be possible to compile shaders, attach them to a program,
link the program, detach the shaders, delete the shaders, and then
ask for the uniform and attribute locations. That is, once you've
linked, the shaders can be thrown away.
We were using the attached shaders to look up uniform locations, so
we now keep around a separate map that remembers what shaders were
attached when the program links.
This fixes the bug, but the whole area is still a bit messy. For one,
we're keeping around all the shader information even after it is
no longer used.
See https://bugs.webkit.org/show_bug.cgi?id=98204
Test: fast/canvas/webgl/detachShader-before-accessing-uniform.html
- platform/graphics/GraphicsContext3D.h: Add another map to remember
what shaders were used when a program was linked.
- platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
(WebCore::GraphicsContext3D::mappedSymbolInShaderSourceMap): New helper
to look up a name in our source maps.
(WebCore::GraphicsContext3D::mappedSymbolName): Use the helper, and look
at linked shaders if there are no attached shaders.
(WebCore::GraphicsContext3D::originalSymbolInShaderSourceMap): Does the
reverse of the above.
(WebCore::GraphicsContext3D::originalSymbolName):
(WebCore::GraphicsContext3D::linkProgram): Add to the new map.
(WebCore::GraphicsContext3D::deleteProgram): Delete the program from
our shader entries.
LayoutTests:
Test that detaches and deletes shaders after linking, but before
asking for uniform locations.
- fast/canvas/webgl/detachShader-before-accessing-uniform-expected.txt: Added.
- fast/canvas/webgl/detachShader-before-accessing-uniform.html: Added.
- 2:34 AM Changeset in webkit [223355] by
-
- 2 edits in releases/WebKitGTK/webkit-2.18/Tools
Merge r221827 - [GTK] Unreviewed, fix typo forwad -> forward
- MiniBrowser/gtk/BrowserWindow.c:
(browserWindowUpdateNavigationActions):
(backForwardlistChanged):
(browserWindowSwitchTab):
(backForwadlistChanged): Deleted.
- 2:33 AM Changeset in webkit [223354] by
-
- 2 edits in releases/WebKitGTK/webkit-2.18/Tools
Merge r221819 - MiniBrowser closes tab instead of window on close signal
https://bugs.webkit.org/show_bug.cgi?id=176587
Reviewed by Carlos Garcia Campos.
This has been broken since we added support for multiple tabs. We need to run try_close for
every open tab, not just the current one. If there are no onbeforeonload handlers then all
tabs will close; if there are some, then they'll be respected, but the remaining tabs will
be closed.
Note that we cannot simply iterate through the tabs of the GtkNotebook, as we'd be deleting
tabs as we go, so save all the tabs into a separate list and then try to close each in turn.
- MiniBrowser/gtk/BrowserWindow.c:
(browserWindowTryClose):
(browserWindowDeleteEvent):
- 2:32 AM Changeset in webkit [223353] by
-
- 3 edits in releases/WebKitGTK/webkit-2.18/Source/WebCore
Merge r221815 - [GStreamer] Missing GRefPtr adoptions in MediaPlayerPrivateGStreamerBase, PlaybackPipeline
https://bugs.webkit.org/show_bug.cgi?id=176646
Reviewed by Carlos Garcia Campos.
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
(WebCore::registerWebKitGStreamerElements): Adopt the return value
of gst_element_factory_find(), which is transferred in full.
- platform/graphics/gstreamer/mse/PlaybackPipeline.cpp:
(WebCore::PlaybackPipeline::flush): Adopt the return values
of gst_element_get_static_pad() and gst_pad_get_peer(), both being
transferred in full.
- 2:31 AM Changeset in webkit [223352] by
-
- 2 edits in releases/WebKitGTK/webkit-2.18/Tools
Merge r221814 - Unreviewed WPE build fix.
- TestWebKitAPI/PlatformWPE.cmake:
Link WebCore archives into the TestWebCore binary as a group.
- 2:28 AM Changeset in webkit [223351] by
-
- 3 edits in releases/WebKitGTK/webkit-2.18/Source/WebCore
Merge r221781 - [GStreamer] Add GRefPtr specializations for GstGLDisplay, GstGLContext
https://bugs.webkit.org/show_bug.cgi?id=176543
Reviewed by Xabier Rodriguez-Calvar.
Both GstGLDisplay and GstGLContext inherit from GstObject, meaning
gst_object_ref_sink() and gst_object_unref() should be used for
incrementing and decrementing reference count. Template specializations
for the adoptGRef(), refGPtr() and derefGPtr() are added for both types,
preventing GRefPtr<> from falling back to using g_object_ref() and
g_object_unref() for reference count modification purposes.
- platform/graphics/gstreamer/GRefPtrGStreamer.cpp:
(WTF::adoptGRef):
(WTF::refGPtr<GstGLDisplay>):
(WTF::derefGPtr<GstGLDisplay>):
(WTF::refGPtr<GstGLContext>):
(WTF::derefGPtr<GstGLContext>):
- platform/graphics/gstreamer/GRefPtrGStreamer.h:
- 2:24 AM Changeset in webkit [223350] by
-
- 2 edits in releases/WebKitGTK/webkit-2.18/Source/WebKit
Merge r221779 - [GTK][WPE] UI process crash in WebBackForwardList::restoreFromState
https://bugs.webkit.org/show_bug.cgi?id=176303
Reviewed by Michael Catanzaro.
Ensure the current index provided by the session state is not out of actual item list bounds. This is a bug in
the session state decoder, but WebBackForwardList::backForwardListState() is already doing the check and using
the last item index instead, so it's not easy to know where the actual problem is. In any case we should
still protect the decoder.
- UIProcess/API/glib/WebKitWebViewSessionState.cpp:
(decodeSessionState):
- 2:23 AM Changeset in webkit [223349] by
-
- 7 edits2 adds in releases/WebKitGTK/webkit-2.18
Merge r221778 - WebKit should claim that it can show responses for a broader range of JSON MIMETypes
https://bugs.webkit.org/show_bug.cgi?id=176252
<rdar://problem/34212885>
Patch by Joseph Pecoraro <Joseph Pecoraro> on 2017-09-07
Reviewed by Ryosuke Niwa.
Source/WebCore:
- platform/MIMETypeRegistry.h:
- platform/MIMETypeRegistry.cpp:
(WebCore::MIMETypeRegistry::canShowMIMEType):
Extend this to support JavaScript and JSON MIMETypes that WebKit
knows how to treat as text.
Tools:
- TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
- TestWebKitAPI/Tests/WebKitCocoa/WKNavigationResponse.mm: Added.
(-[WKNavigationResponseTestNavigationDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]):
(-[WKNavigationResponseTestNavigationDelegate webView:didCommitNavigation:]):
(-[WKNavigationResponseTestSchemeHandler webView:startURLSchemeTask:]):
(-[WKNavigationResponseTestSchemeHandler webView:stopURLSchemeTask:]):
(TEST):
Test for canShowMIMEType with multiple JSON mime types and a garbage mime type.
Previously canShowMIMEType would have been YES for "application/json" but
NO for "application/vnd.api+json". Now it shows YES for both.
- TestWebKitAPI/PlatformGTK.cmake:
- TestWebKitAPI/PlatformWPE.cmake:
- TestWebKitAPI/PlatformWin.cmake:
- TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
- TestWebKitAPI/Tests/WebCore/MIMETypeRegistry.cpp: Added.
(TestWebKitAPI::TEST):
Tests for MIMETypeRegistry's dynamic JSON mime type detection.
- 2:16 AM Changeset in webkit [223348] by
-
- 2 edits3 adds in releases/WebKitGTK/webkit-2.18
Merge r221734 - [WPE][CMake] Add "dist" and "distcheck" targets
https://bugs.webkit.org/show_bug.cgi?id=176448
Reviewed by Carlos Garcia Campos.
Add "dist" and "distcheck" CMake targets, which create release tarballs.
These are available only when configuring with -DDEVELOPER_MODE=TRUE.
.:
- Source/PlatformWPE.cmake: Added.
- Source/cmake/FindXz.cmake: Added.
Tools:
- wpe/manifest.txt.in: Added.
- 2:12 AM Changeset in webkit [223347] by
-
- 2 edits in releases/WebKitGTK/webkit-2.18/Source/WebKit
Merge r221681 - [WPE][CMake] Fix path to the WebKitApplicationInfo.h header.
Unreviewed build fix.
This doesn't really make a difference for the build bots, but it makes
it possible to craft working release tarballs of WPE.
- PlatformWPE.cmake: Use the WPE version of WebKitApplicationInfo.h
- 2:11 AM Changeset in webkit [223346] by
-
- 8 edits2 adds in releases/WebKitGTK/webkit-2.18
Merge r221668 - [css-grid] grid shorthand should not reset the gutter properties
https://bugs.webkit.org/show_bug.cgi?id=176375
Reviewed by Sergio Villar Senin.
LayoutTests/imported/w3c:
Import new test from WPT.
- web-platform-tests/css/css-grid-1/grid-definition/grid-shorthand-001-expected.txt: Added.
- web-platform-tests/css/css-grid-1/grid-definition/grid-shorthand-001.html: Added.
- web-platform-tests/css/css-grid-1/grid-definition/w3c-import.log:
Source/WebCore:
The CSS WG has resolved that the "grid" shorthand shouldn't reset
the gutter properties anymore:
https://github.com/w3c/csswg-drafts/issues/1036
This was originally implemented in r195529, so this is somehow
a revert of that change.
Test: imported/w3c/web-platform-tests/css/css-grid-1/grid-definition/grid-shorthand-001.html
- css/CSSProperties.json:
- css/parser/CSSPropertyParser.cpp:
(WebCore::CSSPropertyParser::consumeGridShorthand):
LayoutTests:
Update the test to check the new behavior.
- fast/css-grid-layout/grid-shorthand-get-set-expected.txt:
- fast/css-grid-layout/grid-shorthand-get-set.html:
- 1:48 AM Changeset in webkit [223345] by
-
- 15 edits1 move1 add in releases/WebKitGTK/webkit-2.18/Source/WebKit
Merge r221610 - [GTK] Rename PLUGIN_ARCHITECTURE(X11) as PLUGIN_ARCHITECTURE(UNIX)
https://bugs.webkit.org/show_bug.cgi?id=176330
Reviewed by Michael Catanzaro.
It's no longer X11 specific since it's also used in Wayland when the X11 target is enabled. It should be renamed
as UNIX and make it available when building the wayland target even if the X11 on is disabled.
- PlatformGTK.cmake:
- PlatformWPE.cmake:
- PluginProcess/unix/PluginProcessMainUnix.cpp:
- Shared/Plugins/Netscape/NetscapePluginModule.cpp:
(WebKit::NetscapePluginModule::tryLoad):
- Shared/Plugins/Netscape/NetscapePluginModule.h:
- Shared/Plugins/Netscape/unix/NetscapePluginModuleUnix.cpp: Renamed from Source/WebKit/Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp.
- UIProcess/Plugins/PluginProcessProxy.h:
- UIProcess/Plugins/gtk/PluginInfoCache.cpp:
(WebKit::PluginInfoCache::getPluginInfo):
(WebKit::PluginInfoCache::updatePluginInfo):
- UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp:
(WebKit::PluginProcessProxy::scanPlugin):
- WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
(WebKit::NPN_InvalidateRect):
- WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
(WebKit::NetscapePlugin::initialize):
(WebKit::NetscapePlugin::destroy):
(WebKit::NetscapePlugin::geometryDidChange):
- WebProcess/Plugins/Netscape/NetscapePlugin.h:
- WebProcess/Plugins/Netscape/unix/NetscapePluginUnix.cpp:
- WebProcess/Plugins/Netscape/unix/NetscapePluginUnix.h:
- config.h:
- 1:48 AM Changeset in webkit [223344] by
-
- 26 edits1 move1 add in releases/WebKitGTK/webkit-2.18
Merge r221609 - [GTK] Wrong use of PLUGIN_ARCHITECTURE(X11) in several places
https://bugs.webkit.org/show_bug.cgi?id=176329
Reviewed by Michael Catanzaro.
.:
Only define MOZ_X11 if X11 target is enabled and always define XP_UNIX if NETSCAPE_PLUGIN_API is enabled.
- Source/cmake/OptionsGTK.cmake:
Source/WebKit:
We are using PLUGIN_ARCHITECTURE(X11) in several places where we should actually be using PLATFORM(X11). This is
confusing because PLUGIN_ARCHITECTURE(X11) is no longer specific to X11, it will be renamed as UNIX in a follow
up patch. Because of this we only support plugins in Wayland when building with both X11 and Wayland targets
enabled.
- PluginProcess/PluginControllerProxy.cpp:
- PluginProcess/PluginControllerProxy.h:
- PluginProcess/unix/PluginProcessMainUnix.cpp:
- Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp:
(WebKit::NetscapePluginModule::determineQuirks):
- Shared/Plugins/PluginQuirks.h:
- UIProcess/WebPageProxy.h:
- UIProcess/WebPageProxy.messages.in:
- UIProcess/gtk/WebPageProxyGtk.cpp:
- WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
(WebKit::NPN_GetValue):
- WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
(WebKit::NetscapePlugin::shouldLoadSrcURL):
(WebKit::NetscapePlugin::initialize):
- WebProcess/Plugins/Netscape/unix/NetscapePluginUnix.cpp:
(WebKit::NetscapePlugin::platformHandleMouseEvent):
- WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:
- WebProcess/Plugins/Netscape/x11/NetscapePluginX11.h:
- WebProcess/Plugins/PluginController.h:
- WebProcess/Plugins/PluginProxy.cpp:
- WebProcess/Plugins/PluginProxy.h:
- WebProcess/Plugins/PluginProxy.messages.in:
- WebProcess/Plugins/PluginView.cpp:
- WebProcess/Plugins/PluginView.h:
Tools:
- CMakeLists.txt: Build TestNetscapePlugIn when NETSCAPE_PLUGIN_API is enabled and only link to X11 libraries
when building the X11 target.
- DumpRenderTree/TestNetscapePlugIn/CMakeLists.txt:
- DumpRenderTree/TestNetscapePlugIn/Tests/unix/CallInvalidateRectWithNullNPPArgument.cpp: Renamed from Tools/DumpRenderTree/TestNetscapePlugIn/Tests/x11/CallInvalidateRectWithNullNPPArgument.cpp.
- DumpRenderTree/TestNetscapePlugIn/main.cpp:
(NP_Initialize):
(NPP_HandleEvent):
(NPP_GetValue):
- 1:34 AM Changeset in webkit [223343] by
-
- 3 edits2 adds in releases/WebKitGTK/webkit-2.18
Merge r223313 - Protect FrameView during style calculations
https://bugs.webkit.org/show_bug.cgi?id=178300
<rdar://problem/34869329>
Reviewed by Ryosuke Niwa.
Source/WebCore:
Protect the FrameView during layout and style updates in case arbitrary script
is run that might clear it.
Test: fast/html/marquee-reparent-check.html
- page/FrameView.cpp:
(WebCore::FrameView::updateLayoutAndStyleIfNeededRecursive):
LayoutTests:
- fast/html/marquee-reparent-check-expected.txt: Added.
- fast/html/marquee-reparent-check.html: Added.
- 1:33 AM Changeset in webkit [223342] by
-
- 3 edits in releases/WebKitGTK/webkit-2.18/Source/WebCore
Merge r221596 - Follow up FrameView::updateLayoutAndStyleIfNeededRecursive changes with related improvements
https://bugs.webkit.org/show_bug.cgi?id=176277
Reviewed by Antti Koivisto.
- page/FrameView.cpp:
(WebCore::FrameView::needsStyleRecalcOrLayout): Deleted. This function was only used
by an assertion inside updateLayoutAndStyleIfNeededRecursive, and thus there is no reason
for it to be in the header file, or for it to be a public member function.
(WebCore::appendRenderedChildren): Deleted. This function was only used inside
updateLayoutAndStyleIfNeededRecursive, and it is now packaged in an even better way
for efficient use inside that function.
(WebCore::FrameView::renderedChildFrameViews): Deleted. This function was only used
inside needsStyleRecalcOrLayout, and it's now packaged in a better way inside that function.
(WebCore::FrameView::updateLayoutAndStyleIfNeededRecursive): Created a new lambda called
nextRendereredDescendant that packages up the process of repeatedly iterating this view
and all of its descendants in an easy-to-use way. Replaces both of the functions above.
Rewrote to use it; it made the logic clear enough that it was good to get rid of the
updateOneFrame lambda, too. Added two separate functions, one that checks for needed
style recalculation and a separate one that checked for needed layout. Using those,
replaced the old single assertion with two separate assertions.
- page/FrameView.h: Removed needsStyleRecalcOrLayout, renderedChildFrameViews, and
FrameViewList.
- 1:16 AM Changeset in webkit [223341] by
-
- 3 edits in trunk/Tools
Improve --help documentation and add --list-plans to show available benchmarks.
https://bugs.webkit.org/show_bug.cgi?id=178059
Reviewed by Ryosuke Niwa.
- Scripts/webkitpy/benchmark_runner/benchmark_runner.py:
(BenchmarkRunner.available_plans): New function that returns the list of available plans.
(BenchmarkRunner.plan_directory): New method to centralize knowledge of where the plan files live.
(BenchmarkRunner._find_plan_file): Updated to use BenchmarkRunner.plan_directory
- Scripts/webkitpy/benchmark_runner/run_benchmark.py:
(parse_args): Help cleanup: Reordered options to put more common
ones at the top. Fixed wording. Added help for each
option. Explained default for each option that has one.
New option: --list-plans which tells you the available benchmarks.
Code cleanup: Removed use of dest where redundant, made variable
names conforming to Python coding style.
(run_benchmark_plan): Adapted for new variable names.
(list_benchmark_plans): New helper for --list-plans option.
(start): Account for --list-plans. Also use
BechmarkRunner.available_plans and use
BenchmarkRunner.plan_directory instead of duplicating
code/knowledge here.
- 12:59 AM Changeset in webkit [223340] by
-
- 17 edits2 adds2 deletes in trunk
On ToT, event.dataTransfer.getData("text/uri-list") returns an empty string when dragging an image
https://bugs.webkit.org/show_bug.cgi?id=178301
<rdar://problem/34990050>
Reviewed by Darin Adler.
Source/WebCore:
After r222656, we consider images on the pasteboard to be files. This causes DataTransfer.getData to return the
empty string for all types, which brings back https://bugs.webkit.org/show_bug.cgi?id=170637. To allow pages to
access the URL part of a dragged image, we exempt "text/uri-list" from our heurstics to hide pasteboard data
which may contain files, and return the URL as long as its protocol is either HTTP or HTTPS.
Tweaked an existing layout test to cover this scenario, as well as the scenario in which the dragged image links
to a file URL (in which case we should avoid exposing the data).
Test: editing/pasteboard/drag-drop-href-as-url.html
DataInteractionTests.DataTransferGetDataWhenDroppingImageWithHTTPURL
- dom/DataTransfer.cpp:
(WebCore::DataTransfer::getDataForItem const):
When the pasteboard contains files, allow data for "text/uri-list" to be returned, as long as the URL string has
a white-listed protocol (currently, this is just http and https).
(WebCore::DataTransfer::shouldSuppressGetAndSetDataToAvoidExposingFilePaths const):
(WebCore::DataTransfer::setData):
(WebCore::DataTransfer::types const):
When the pasteboard contains files, allow "text/uri-list" to be added, alongside the "Files" type, if it would
have been exposed in the list of safe DOM types.
- dom/DataTransfer.h:
- platform/Pasteboard.cpp:
(WebCore::Pasteboard::canExposeURLToDOMWhenPasteboardContainsFiles):
Add a new helper method to determine whether it is safe to expose an URL string as "text/uri-list" to bindings,
if the pasteboard contains files. While this currently checks whether or not the URL is in the HTTP family, we
may want to consider tweaking this to blacklist the "file" protocol instead, and allow all other valid URLs by
default.
- platform/Pasteboard.h:
- platform/PlatformPasteboard.h:
- platform/ios/PlatformPasteboardIOS.mm:
(WebCore::pasteboardMayContainFilePaths):
(WebCore::PlatformPasteboard::stringForType const):
Mark stringForType as const, and also teach stringForType to return the null string for the platform URL type if
the pasteboard might contain file paths.
(WebCore::PlatformPasteboard::typesSafeForDOMToReadAndWrite const):
Before coercing a platform type to "text/uri-list" when building the list of DOM-safe types, check that the
stringForType is not the empty string, in which case we don't expose the type to the DOM at all. This ensures
that in cases where the URL might reveal a file path, we don't advertise "text/uri-list" as a type. We adopt a
similar strategy on iOS.
(WebCore::PlatformPasteboard::stringForType): Deleted.
- platform/mac/PlatformPasteboardMac.mm:
(WebCore::pasteboardMayContainFilePaths):
(WebCore::PlatformPasteboard::stringForType const):
(WebCore::PlatformPasteboard::typesSafeForDOMToReadAndWrite const):
(WebCore::PlatformPasteboard::stringForType): Deleted.
Tools:
Fixes issues in DumpRenderTree's LocalPasteboard to ensure that drag-drop-href-as-url.html exposes files, and
also adds a new iOS drag and drop API test.
- DumpRenderTree/mac/DumpRenderTreePasteboard.mm:
(-[LocalPasteboard addTypes:owner:]):
(-[LocalPasteboard setData:forType:]):
Fixes LocalPasteboard's implementation of changeCount to incremement when the pasteboard owner changes, rather
than every time data is changed. This is consistent with NSPasteboard behavior.
- TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
(TestWebKitAPI::TEST):
Adds a new API test to verify that an image and HTTP URL written by the platform is correctly web exposed.
LayoutTests:
Fixes an existing test to account for asynchronous image decoding, and also rebaselines results to expect that
only the URL can be read, and not text.
- TestExpectations:
- editing/pasteboard/data-transfer-item-list-add-file-multiple-times-expected.txt:
- editing/pasteboard/drag-drop-href-as-text-data-expected.txt: Removed.
- editing/pasteboard/drag-drop-href-as-text-data.html: Removed.
- editing/pasteboard/drag-drop-href-as-url-expected.txt: Added.
- editing/pasteboard/drag-drop-href-as-url.html: Added.
Tweaks an existing drag and drop test to verify that an URL can be read back when dragging an image, but not
when if the URL is a file URL.
- editing/pasteboard/files-during-page-drags-expected.txt:
- editing/pasteboard/files-during-page-drags.html:
Fixes this test by decoding the dragged image element before starting the drag and drop simulation.
- platform/mac-wk1/TestExpectations:
- 12:58 AM Changeset in webkit [223339] by
-
- 9 edits in trunk/Source/WebCore
Use auto/nullptr in scrolling code
https://bugs.webkit.org/show_bug.cgi?id=178306
Patch by Frederic Wang <fwang@igalia.com> on 2017-10-16
Reviewed by Carlos Garcia Campos.
This patch modifies the scrolling code to use the auto keyword when
possible. It also replaces '0' with 'nullptr' for the return value of
ScrollingStateTree::stateNodeForID.
No new tests, behavior unchanged.
- page/scrolling/AsyncScrollingCoordinator.cpp:
(WebCore::AsyncScrollingCoordinator::frameViewLayoutUpdated):
(WebCore::AsyncScrollingCoordinator::frameViewRootLayerDidChange):
(WebCore::AsyncScrollingCoordinator::requestScrollPositionUpdate):
(WebCore::AsyncScrollingCoordinator::frameViewForScrollingNode const):
(WebCore::AsyncScrollingCoordinator::updateScrollPositionAfterAsyncScroll):
(WebCore::AsyncScrollingCoordinator::reconcileScrollingState):
(WebCore::AsyncScrollingCoordinator::updateFrameScrollingNode):
(WebCore::AsyncScrollingCoordinator::updateOverflowScrollingNode):
(WebCore::AsyncScrollingCoordinator::updateNodeLayer):
(WebCore::AsyncScrollingCoordinator::updateNodeViewportConstraints):
(WebCore::AsyncScrollingCoordinator::setSynchronousScrollingReasons):
(WebCore::AsyncScrollingCoordinator::updateScrollLayerPosition):
(WebCore::AsyncScrollingCoordinator::setActiveScrollSnapIndices):
- page/scrolling/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::coordinatesScrollingForFrameView const):
(WebCore::ScrollingCoordinator::absoluteEventTrackingRegionsForFrame const):
(WebCore::ScrollingCoordinator::scrollLayerForFrameView):
(WebCore::ScrollingCoordinator::headerLayerForFrameView):
(WebCore::ScrollingCoordinator::footerLayerForFrameView):
(WebCore::ScrollingCoordinator::counterScrollingLayerForFrameView):
(WebCore::ScrollingCoordinator::insetClipLayerForFrameView):
(WebCore::ScrollingCoordinator::contentShadowLayerForFrameView):
(WebCore::ScrollingCoordinator::rootContentLayerForFrameView):
(WebCore::ScrollingCoordinator::handleWheelEventPhase):
(WebCore::ScrollingCoordinator::hasVisibleSlowRepaintViewportConstrainedObjects const):
(WebCore::ScrollingCoordinator::updateSynchronousScrollingReasonsForAllFrames):
(WebCore::ScrollingCoordinator::synchronousScrollingReasonsAsText const):
- page/scrolling/ScrollingStateFixedNode.cpp:
(WebCore::ScrollingStateFixedNode::reconcileLayerPositionForViewportRect):
- page/scrolling/ScrollingStateStickyNode.cpp:
(WebCore::ScrollingStateStickyNode::reconcileLayerPositionForViewportRect):
- page/scrolling/ScrollingStateTree.cpp:
(WebCore::ScrollingStateTree::nodeTypeAndParentMatch const):
(WebCore::ScrollingStateTree::attachNode):
(WebCore::ScrollingStateTree::detachNode):
(WebCore::ScrollingStateTree::removeNodeAndAllDescendants):
(WebCore::ScrollingStateTree::stateNodeForID const):
- page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::shouldHandleWheelEventSynchronously):
(WebCore::ScrollingTree::viewportChangedViaDelegatedScrolling):
(WebCore::ScrollingTree::scrollPositionChangedViaDelegatedScrolling):
(WebCore::ScrollingTree::commitTreeState):
(WebCore::ScrollingTree::updateTreeFromStateNode):
- page/scrolling/ScrollingTreeNode.cpp:
(WebCore::ScrollingTreeNode::enclosingFrameNode const):
- page/scrolling/coordinatedgraphics/ScrollingCoordinatorCoordinatedGraphics.cpp:
(WebCore::ScrollingCoordinatorCoordinatedGraphics::detachFromStateTree):
(WebCore::ScrollingCoordinatorCoordinatedGraphics::updateNodeLayer):
(WebCore::ScrollingCoordinatorCoordinatedGraphics::updateNodeViewportConstraints):
(WebCore::ScrollingCoordinatorCoordinatedGraphics::scrollableAreaScrollLayerDidChange):
(WebCore::ScrollingCoordinatorCoordinatedGraphics::willDestroyScrollableArea):
- 12:48 AM Changeset in webkit [223338] by
-
- 3 edits in trunk/Source/WebCore
A lot of "Can't stat WebCore/animation: No such file or directory" since r223328
https://bugs.webkit.org/show_bug.cgi?id=178326
Unreviewed build fix
The directory WebCore/animation was removed in r223328.
No new tests because there is no behavior change.
Patch by Fujii Hironori <Fujii Hironori> on 2017-10-16
- CMakeLists.txt: Removed animation from
WebCore_INCLUDE_DIRECTORIES and WebCore_IDL_INCLUDES.
- DerivedSources.make: Removed animation from VPATH and IDL_INCLUDES
- 12:04 AM Changeset in webkit [223337] by
-
- 6 edits in trunk/Source/WebCore
Replace some ScrollingTreeNode::nodeType() calls with is*Node()
https://bugs.webkit.org/show_bug.cgi?id=178259
Patch by Frederic Wang <fwang@igalia.com> on 2017-10-16
Reviewed by Darin Adler.
No new tests, behavior unchanged.
- page/scrolling/AsyncScrollingCoordinator.cpp:
(WebCore::AsyncScrollingCoordinator::frameViewForScrollingNode const):
- page/scrolling/ScrollingStateNode.h:
(WebCore::ScrollingStateNode::isScrollingNode const):
- page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::updateTreeFromStateNode):
- page/scrolling/ScrollingTreeNode.cpp:
(WebCore::ScrollingTreeNode::enclosingFrameNode const):
- page/scrolling/ScrollingTreeNode.h:
(WebCore::ScrollingTreeNode::isScrollingNode const):
Oct 15, 2017:
- 11:25 PM Changeset in webkit [223336] by
-
- 5 edits2 adds in trunk
Web Inspector: Modify CSS number values with up key and down key
https://bugs.webkit.org/show_bug.cgi?id=170779
<rdar://problem/33170633>
Reviewed by Matt Baker.
Source/WebInspectorUI:
Up key increments a number, Down key decrements it.
Holding modifier keys changes the step value:
- Option modifies the value by 0.1
- Shift modifies the value by 10
- Command modifies the value by 100
- UserInterface/Test.html:
- UserInterface/Views/EditingSupport.js:
(WI.incrementElementValue):
Abstract away incrementElementValue into a public method.
- UserInterface/Views/SpreadsheetTextField.js:
(WI.SpreadsheetTextField.prototype._handleKeyDown):
LayoutTests:
Add tests for WI.incrementElementValue defined in WebInspectorUI/UserInterface/Views/EditingSupport.js.
- inspector/unit-tests/editing-support-expected.txt: Added.
- inspector/unit-tests/editing-support.html: Added.
- 9:46 PM Changeset in webkit [223335] by
-
- 7 edits in trunk/Source/WebInspectorUI
Web Inspector: show warning when recorded Canvas action caused no visual change
https://bugs.webkit.org/show_bug.cgi?id=175282
Reviewed by Joseph Pecoraro.
- Localizations/en.lproj/localizedStrings.js:
- UserInterface/Models/RecordingAction.js:
(WI.RecordingAction):
(WI.RecordingAction.prototype.get valid):
(WI.RecordingAction.prototype.get hasVisibleEffect):
(WI.RecordingAction.prototype.markInvalid):
(WI.RecordingAction.prototype.apply):
(WI.RecordingAction.prototype.async._swizzle):
If the selected action is visual, save a copy of the preview canvas' dataURL before
applying the action and compare it to its dataURL after. If there is no difference, the
action had no visual effect.
- UserInterface/Models/Recording.js:
(WI.Recording):
- UserInterface/Views/RecordingActionTreeElement.js:
(WI.RecordingActionTreeElement):
(WI.RecordingActionTreeElement.prototype._handleValidityChanged):
(WI.RecordingActionTreeElement.prototype._handleHasVisibleEffectChanged):
- UserInterface/Views/RecordingActionTreeElement.css:
(.item.action.visual.no-visible-effect:not(.invalid) > .status > .warning):
- UserInterface/Views/RecordingContentView.js:
(WI.RecordingContentView):
(WI.RecordingContentView.prototype.async._generateContentCanvas2D):
(WI.RecordingContentView.prototype._applyAction): Deleted.
- 9:16 PM Changeset in webkit [223334] by
-
- 2 edits in trunk/Source/WebCore
DataTransfer.cpp triggers -Wunused-but-set-variable
https://bugs.webkit.org/show_bug.cgi?id=178209
Reviewed by Wenson Hsieh.
Use the ASSERT_UNUSED to silence it.
- dom/DataTransfer.cpp:
(WebCore::DataTransfer::filesFromPasteboardAndItemList const):
- 8:42 PM Changeset in webkit [223333] by
-
- 6 edits in trunk/Source/WebInspectorUI
Web Inspector: [PARITY] Styles Redesign: clicking on the go-to arrow in Computed tab should work
https://bugs.webkit.org/show_bug.cgi?id=178286
<rdar://problem/34986379>
Reviewed by Joseph Pecoraro.
Highlight the matching property using a yellow background and focus on the property value
if the property is editable (e.g., not a User Agent style).
- UserInterface/Views/SpreadsheetCSSStyleDeclarationEditor.css:
(.spreadsheet-style-declaration-editor):
(.spreadsheet-style-declaration-editor .property):
Move left padding to the property element so there's no awkward gap on the left side
when the property is highlighted.
(.spreadsheet-style-declaration-editor .property.highlighted):
(@keyframes style-property-highlight):
Use the same animation duration as we used in.text-editor > .CodeMirror .highlighted
.
The highlight color was changed from light blue to yellow.
- UserInterface/Views/SpreadsheetCSSStyleDeclarationEditor.js:
(WI.SpreadsheetCSSStyleDeclarationEditor.prototype.highlightProperty):
Use the same logic as in WI.CSSStyleDeclarationTextEditor.prototype.highlightProperty
to find matching style property to highlight.
- UserInterface/Views/SpreadsheetCSSStyleDeclarationSection.js:
(WI.SpreadsheetCSSStyleDeclarationSection.prototype.highlightProperty):
Use the same logic as in WI.CSSStyleDeclarationSection.prototype.highlightProperty.
- UserInterface/Views/SpreadsheetRulesStyleDetailsPanel.js:
(WI.SpreadsheetRulesStyleDetailsPanel.prototype.scrollToSectionAndHighlightProperty):
(WI.SpreadsheetRulesStyleDetailsPanel.prototype.nodeStylesRefreshed):
Copied from WI.RulesStyleDetailsPanel.
- UserInterface/Views/SpreadsheetStyleProperty.js:
(WI.SpreadsheetStyleProperty):
(WI.SpreadsheetStyleProperty.prototype.detached):
(WI.SpreadsheetStyleProperty.prototype.highlight):
- 7:59 PM Changeset in webkit [223332] by
-
- 6 edits2 copies1 move in trunk/Source/WebCore
[Settings] Split non-macro generated parts of Settings into SettingsBase base class
https://bugs.webkit.org/show_bug.cgi?id=178321
Patch by Sam Weinig <sam@webkit.org> on 2017-10-15
Reviewed by Darin Adler.
Working towards getting generated Settings working again, but in smaller patches, split
non-generated part off into SettingsBase as a first step.
One function, effectiveFrameFlattening(), needs to remain in Settings for now, as it directly
references a macro generated function, frameFlattening().
- CMakeLists.txt:
- WebCore.xcodeproj/project.pbxproj:
- page/Page.h:
- page/Settings.cpp:
- page/Settings.h:
- page/SettingsBase.h: Copied from Source/WebCore/page/Settings.h.
- page/cocoa/SettingsBaseCocoa.mm: Copied from Source/WebCore/page/cocoa/SettingsCocoa.mm.
- page/cocoa/SettingsCocoa.mm: Removed.
- 6:55 PM Changeset in webkit [223331] by
-
- 13 edits in trunk/Source
[JSC] Perform module specifier validation at parsing time
https://bugs.webkit.org/show_bug.cgi?id=178256
Reviewed by Darin Adler.
Source/JavaScriptCore:
This patch make module loader's
resolve
operation synchronous. And we validate
module's requested module names when instantiating the module instead of satisfying
module's dependencies. This change is not observable to users. But this is precise
to the spec and this optimizes & simplifies the current module loader a bit by
reducing object allocations.
Previously, we have an object called pair in the module loader. This is pair of
module's name and module's record. And we use it to link one module to dependent
modules. Now, it is replaced with module's registry entry.
We also change our loader functions to take a registry entry instead of a module key.
Previous design is due to the consideration that these APIs may be exposed to users
in whatwg/loader spec. However, this won't happen. This change removes unnecessary
repeatedly hash map lookups.
- builtins/ModuleLoaderPrototype.js:
(globalPrivate.newRegistryEntry):
(requestFetch):
(requestInstantiate):
(requestSatisfy):
(link):
(moduleEvaluation):
(loadModule):
- jsc.cpp:
(GlobalObject::moduleLoaderResolve):
- runtime/AbstractModuleRecord.cpp:
(JSC::AbstractModuleRecord::finishCreation):
(JSC::AbstractModuleRecord::hostResolveImportedModule):
- runtime/JSGlobalObject.h:
- runtime/JSModuleLoader.cpp:
(JSC::JSModuleLoader::resolveSync):
(JSC::JSModuleLoader::resolve):
- runtime/JSModuleLoader.h:
- runtime/ModuleLoaderPrototype.cpp:
(JSC::moduleLoaderPrototypeResolveSync):
Source/WebCore:
No behavior change in the current implementation.
- bindings/js/JSDOMWindowBase.cpp:
(WebCore::JSDOMWindowBase::moduleLoaderResolve):
- bindings/js/JSDOMWindowBase.h:
- bindings/js/ScriptModuleLoader.cpp:
(WebCore::ScriptModuleLoader::resolve):
- bindings/js/ScriptModuleLoader.h:
- 2:58 PM Changeset in webkit [223330] by
-
- 2 edits in trunk/Source/WebCore
DOMTokenList shouldn't add empty attributes
https://bugs.webkit.org/show_bug.cgi?id=178280
<rdar://problem/34987431>
Reviewed by Ryosuke Niwa.
Follow-up to r223306, reverse the check conditions to avoid attribute
lookup when possible. Also use m_tokens instead of tokens() to avoid
unnecessary branch.
- html/DOMTokenList.cpp:
(WebCore::DOMTokenList::updateAssociatedAttributeFromTokens):
- 1:13 PM Changeset in webkit [223329] by
-
- 7 edits1 add in trunk
UTF-8 decoding produces one replacement character per byte; Encoding standard requires one replacement character per illegal sequence instead
https://bugs.webkit.org/show_bug.cgi?id=178207
Reviewed by Sam Weinig.
Source/WebCore:
- platform/text/TextCodecUTF8.cpp:
(WebCore::TextCodecUTF8::create): Deleted. Use a lambda instead.
(WebCore::TextCodecUTF8::registerCodecs): Use a lambda.
(WebCore::nonASCIISequenceLength): Changed to return 0 instead of 2 for the range 80-C1 since
none of those are valid sequence leading characters.
(WebCore::decodeNonASCIISequence): Changed the length argument to be in/out so the caller
knows how much of the sequence we decoded for failure cases. Simplified the length 2 section.
(WebCore::TextCodecUTF8::handleError): Deleted.
(WebCore::TextCodecUTF8::handlePartialSequence): Changed this into a pair of plain functions
rather than two template function specializations since the two functions are rather different.
For the one-byte version, got rid of the unused arguments. For the two-byte version, got rid
of the ignored return value, stopped using the handleError function since each error case
needs to be handled differently. In each error case consume the entire incorrect sequence
instead of just one byte.
(WebCore::TextCodecUTF8::decode): Updated for the above change, and changed the non-partial
incorrect sequence to consume the entire incorrect sequence instead of just one byte. Also
use WTF prefixes explicitly so we don't have to do "using namespace".
(WebCore::TextCodecUTF8::encode): Got rid of unneeded type punning, and added some inline
capacity to save one memory allocation when encoding shorter strings.
- platform/text/TextCodecUTF8.h: Use pragma once. Intialize m_partialSequenceSize where it
is defined and let the compiler generate the constructor. Updated for the changes above.
- platform/text/TextEncoding.h: Export a constructor now used by a unit test.
- platform/text/TextEncodingRegistry.h: Export newTextCodec, now used by a unit test.
Tools:
- TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Added test.
- TestWebKitAPI/Tests/WebCore/TextCodec.cpp: Added.
(TestWebKitAPI::decodeHexTestBytes): Decodes a string so we can write readable tests.
(TestWebKitAPI::escapeNonPrintableASCIICharacters): Encodes a string so we can write readable tests.
(TestWebKitAPI::TEST): Added some UTF-8 tests and UTF-8 invalid sequences tests.
Would be smart to add more tests for other cases, exercising the fast ASCII loop for example, and
other encodings.
- 6:35 AM WebKitGTK/2.18.x edited by
- (diff)
Oct 14, 2017:
- 6:45 PM Changeset in webkit [223328] by
-
- 10 edits3 deletes in trunk
Remove all Web Animations code
https://bugs.webkit.org/show_bug.cgi?id=178273
Patch by Antoine Quint <Antoine Quint> on 2017-10-14
Reviewed by Sam Weinig.
Source/WebCore:
We remove all existing code related to Web Animations which does not include any functionality,
only stubs. This leaves the build and runtime flags, we'll start a complete implementation from
scratch.
- CMakeLists.txt:
- DerivedSources.make:
- WebCore.xcodeproj/project.pbxproj:
- animation/Animatable.idl: Removed.
- animation/AnimationEffect.cpp: Removed.
- animation/AnimationEffect.h: Removed.
- animation/AnimationEffect.idl: Removed.
- animation/AnimationTimeline.cpp: Removed.
- animation/AnimationTimeline.h: Removed.
- animation/AnimationTimeline.idl: Removed.
- animation/DocumentAnimation.cpp: Removed.
- animation/DocumentAnimation.h: Removed.
- animation/DocumentAnimation.idl: Removed.
- animation/DocumentTimeline.cpp: Removed.
- animation/DocumentTimeline.h: Removed.
- animation/DocumentTimeline.idl: Removed.
- animation/KeyframeEffect.cpp: Removed.
- animation/KeyframeEffect.h: Removed.
- animation/KeyframeEffect.idl: Removed.
- animation/WebAnimation.cpp: Removed.
- animation/WebAnimation.h: Removed.
- animation/WebAnimation.idl: Removed.
- bindings/js/JSAnimationTimelineCustom.cpp: Removed.
- bindings/js/JSBindingsAllInOne.cpp:
- bindings/js/WebCoreBuiltinNames.h:
- dom/Element.cpp:
(WebCore::Element::getAnimations): Deleted.
- dom/Element.h:
- dom/Element.idl:
LayoutTests:
Remove the only existing Web Animations test.
- webanimations/Document-expected.txt: Removed.
- webanimations/Document.html: Removed.
- 6:28 PM Changeset in webkit [223327] by
-
- 246 edits2 copies8 moves10 adds4 deletes in trunk/LayoutTests
Resync tests up to c1716b039411090428e7073158b1aea081dafe71
https://bugs.webkit.org/show_bug.cgi?id=178241
Patch by Youenn Fablet <youenn@apple.com> on 2017-10-14
Reviewed by Ryosuke Niwa.
LayoutTests/imported/w3c:
- resources/TestRepositories:
- resources/resource-files.json:
- web-platform-tests/IndexedDB/idb-binary-key-detached.htm:
- web-platform-tests/IndexedDB/keypath-exceptions.htm:
- web-platform-tests/WebCryptoAPI/digest/digest.js:
(run_test.):
- web-platform-tests/XMLHttpRequest/abort-after-stop-expected.txt: Removed.
- web-platform-tests/XMLHttpRequest/abort-after-stop.htm: Removed.
- web-platform-tests/XMLHttpRequest/event-error-order.sub-expected.txt: Removed.
- web-platform-tests/XMLHttpRequest/event-error-order.sub.html: Removed.
- web-platform-tests/XMLHttpRequest/event-timeout-order-expected.txt: Removed.
- web-platform-tests/XMLHttpRequest/event-timeout-order.htm: Removed.
- web-platform-tests/XMLHttpRequest/open-url-worker-origin-expected.txt: Removed.
- web-platform-tests/XMLHttpRequest/open-url-worker-origin.htm: Removed.
- web-platform-tests/XMLHttpRequest/responsetype-expected.txt:
- web-platform-tests/XMLHttpRequest/send-after-setting-document-domain-expected.txt: Removed.
- web-platform-tests/XMLHttpRequest/send-after-setting-document-domain.htm: Removed.
- web-platform-tests/XMLHttpRequest/send-authentication-basic-cors-expected.txt: Removed.
- web-platform-tests/XMLHttpRequest/send-authentication-basic-cors-not-enabled-expected.txt: Removed.
- web-platform-tests/XMLHttpRequest/send-authentication-basic-cors-not-enabled.htm: Removed.
- web-platform-tests/XMLHttpRequest/send-authentication-basic-cors.htm: Removed.
- web-platform-tests/XMLHttpRequest/send-authentication-basic-repeat-no-args-expected.txt: Removed.
- web-platform-tests/XMLHttpRequest/send-authentication-basic-repeat-no-args.htm: Removed.
- web-platform-tests/XMLHttpRequest/send-authentication-basic-setrequestheader.htm: Removed.
- web-platform-tests/XMLHttpRequest/send-authentication-basic.htm: Removed.
- web-platform-tests/XMLHttpRequest/send-authentication-competing-names-passwords-expected.txt: Removed.
- web-platform-tests/XMLHttpRequest/send-authentication-competing-names-passwords.htm: Removed.
- web-platform-tests/XMLHttpRequest/send-entity-body-basic-expected.txt: Removed.
- web-platform-tests/XMLHttpRequest/send-entity-body-basic.htm: Removed.
- web-platform-tests/XMLHttpRequest/send-network-error-async-events.sub-expected.txt: Removed.
- web-platform-tests/XMLHttpRequest/send-network-error-async-events.sub.htm: Removed.
- web-platform-tests/XMLHttpRequest/timeout-sync-expected.txt:
- web-platform-tests/XMLHttpRequest/w3c-import.log:
- web-platform-tests/background-fetch/interfaces-expected.txt:
- web-platform-tests/background-fetch/interfaces.idl:
- web-platform-tests/background-fetch/interfaces.worker-expected.txt:
- web-platform-tests/background-fetch/interfaces.worker.js:
- web-platform-tests/beacon/headers/header-content-type-expected.txt:
- web-platform-tests/common/vendor-prefix.js: Removed.
- web-platform-tests/common/w3c-import.log:
- web-platform-tests/css/css-grid-1/abspos/w3c-import.log:
- web-platform-tests/css/css-grid-1/support/w3c-import.log:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-image-threshold-000.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-image-threshold-001.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-image-threshold-002.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-image-threshold-003.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-margin-000.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-margin-001.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-margin-002.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-margin-003.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-margin-004.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-margin-005.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-box-000.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-000.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-001.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-002.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-003.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-004.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-005.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-006.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-007.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-008.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-009.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-010.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-011.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-computed-shape-000.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-computed-shape-001.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-000.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-001.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-002.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-003.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-004.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-005.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-006.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-007.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-008.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-009.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-010.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-011.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-000.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-001.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-002.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-003.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-004.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-005.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-006.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-007.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-008.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-009.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-polygon-000.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-polygon-001.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-polygon-002.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-polygon-003.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-polygon-004.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-polygon-005.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-polygon-006.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-shape-arguments-000.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-shape-arguments-001.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-shape-box-pair-000.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-shape-inherit-000.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-shape-initial-000.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-shape-none-000.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-shape-notation-000.html:
- web-platform-tests/css/css-shapes-1/shape-outside/values/support/parsing-utils.js:
(convertToPx):
(each):
(setupFonts):
- web-platform-tests/css/css-shapes-1/spec-examples/shape-outside-012.html:
- web-platform-tests/css/css-shapes-1/w3c-import.log:
- web-platform-tests/css/css-ui-3/cursor-image-005-nfs.html:
- web-platform-tests/css/selectors4/w3c-import.log:
- web-platform-tests/cssom/OWNERS:
- web-platform-tests/cssom/getComputedStyle-pseudo-expected.txt:
- web-platform-tests/cssom/getComputedStyle-pseudo.html:
- web-platform-tests/cssom/style-sheet-interfaces-001-expected.txt:
- web-platform-tests/cssom/style-sheet-interfaces-001.html:
- web-platform-tests/cssom/w3c-import.log:
- web-platform-tests/custom-elements/Document-createElement-expected.txt:
- web-platform-tests/custom-elements/Document-createElement.html:
- web-platform-tests/custom-elements/parser/parser-fallsback-to-unknown-element-expected.txt:
- web-platform-tests/custom-elements/w3c-import.log:
- web-platform-tests/dom/events/Event-timestamp-safe-resolution.html:
- web-platform-tests/dom/nodes/DOMImplementation-createDocument.html:
- web-platform-tests/dom/nodes/DOMImplementation-createHTMLDocument-expected.txt:
- web-platform-tests/dom/nodes/DOMImplementation-createHTMLDocument.html:
- web-platform-tests/dom/nodes/Document-constructor.html:
- web-platform-tests/dom/nodes/Element-matches-expected.txt:
- web-platform-tests/dom/nodes/Element-webkitMatchesSelector-expected.txt:
- web-platform-tests/dom/nodes/ParentNode-querySelector-All-expected.txt:
- web-platform-tests/dom/nodes/ParentNode-querySelector-All-xht-expected.txt:
- web-platform-tests/dom/nodes/selectors.js:
- web-platform-tests/eventsource/dedicated-worker/eventsource-constructor-non-same-origin.htm:
- web-platform-tests/eventsource/eventsource-constructor-non-same-origin-expected.txt:
- web-platform-tests/eventsource/eventsource-constructor-non-same-origin.htm:
- web-platform-tests/eventsource/resources/last-event-id.py:
(main):
- web-platform-tests/eventsource/shared-worker/eventsource-constructor-non-same-origin-expected.txt:
- web-platform-tests/eventsource/shared-worker/eventsource-constructor-non-same-origin.htm:
- web-platform-tests/fetch/api/basic/integrity-expected.txt:
- web-platform-tests/fetch/api/basic/integrity-worker-expected.txt:
- web-platform-tests/fetch/api/basic/integrity.js:
(integrity):
- web-platform-tests/fetch/api/headers/headers-combine-expected.txt:
- web-platform-tests/fetch/api/headers/headers-combine.html:
- web-platform-tests/fetch/api/request/request-error-expected.txt:
- web-platform-tests/fetch/api/request/request-error.js:
- web-platform-tests/fetch/api/request/request-headers-expected.txt:
- web-platform-tests/fetch/api/request/request-headers.html:
- web-platform-tests/fetch/api/request/request-idl-expected.txt:
- web-platform-tests/fetch/api/request/request-idl.html:
- web-platform-tests/fetch/api/request/request-structure-expected.txt:
- web-platform-tests/fetch/api/request/request-structure.html:
- web-platform-tests/fetch/api/request/w3c-import.log:
- web-platform-tests/fetch/api/response/response-clone-expected.txt:
- web-platform-tests/fetch/api/response/response-init-001-expected.txt:
- web-platform-tests/fetch/api/response/response-init-001.html:
- web-platform-tests/fetch/api/response/w3c-import.log:
- web-platform-tests/fonts/Ahem.ttf:
- web-platform-tests/hr-time/idlharness-expected.txt:
- web-platform-tests/hr-time/idlharness.html:
- web-platform-tests/html/README.md:
- web-platform-tests/html/browsers/browsing-the-web/history-traversal/w3c-import.log:
- web-platform-tests/html/browsers/browsing-the-web/navigating-across-documents/w3c-import.log:
- web-platform-tests/html/browsers/origin/origin-of-data-document-expected.txt:
- web-platform-tests/html/dom/interfaces.html:
- web-platform-tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/not-in-shadow-tree-expected.txt:
- web-platform-tests/html/semantics/embedded-content/media-elements/event_canplay.html:
- web-platform-tests/html/semantics/embedded-content/media-elements/event_canplay_noautoplay.html:
- web-platform-tests/html/semantics/embedded-content/media-elements/event_canplaythrough.html:
- web-platform-tests/html/semantics/embedded-content/media-elements/event_canplaythrough_noautoplay.html:
- web-platform-tests/html/semantics/embedded-content/media-elements/event_loadeddata.html:
- web-platform-tests/html/semantics/embedded-content/media-elements/event_loadeddata_noautoplay.html:
- web-platform-tests/html/semantics/embedded-content/media-elements/event_loadedmetadata.html:
- web-platform-tests/html/semantics/embedded-content/media-elements/event_loadedmetadata_noautoplay.html:
- web-platform-tests/html/semantics/embedded-content/media-elements/event_order_canplay_canplaythrough.html:
- web-platform-tests/html/semantics/embedded-content/media-elements/event_order_canplay_playing.html:
- web-platform-tests/html/semantics/embedded-content/media-elements/event_order_loadedmetadata_loadeddata.html:
- web-platform-tests/html/semantics/embedded-content/media-elements/event_order_loadstart_progress.html:
- web-platform-tests/html/semantics/embedded-content/media-elements/event_pause.html:
- web-platform-tests/html/semantics/embedded-content/media-elements/event_play.html:
- web-platform-tests/html/semantics/embedded-content/media-elements/event_playing.html:
- web-platform-tests/html/semantics/embedded-content/media-elements/event_progress.html:
- web-platform-tests/html/semantics/embedded-content/media-elements/event_progress_noautoplay.html:
- web-platform-tests/html/semantics/embedded-content/media-elements/event_timeupdate_noautoplay.html:
- web-platform-tests/html/semantics/embedded-content/media-elements/historical-expected.txt:
- web-platform-tests/html/semantics/embedded-content/media-elements/historical.html:
- web-platform-tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/srclang-expected.txt:
- web-platform-tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/language-expected.txt:
- web-platform-tests/html/semantics/embedded-content/media-elements/paused_false_during_play.html:
- web-platform-tests/html/semantics/embedded-content/media-elements/readyState_during_canplay.html:
- web-platform-tests/html/semantics/embedded-content/media-elements/readyState_during_canplaythrough.html:
- web-platform-tests/html/semantics/embedded-content/media-elements/readyState_during_loadeddata.html:
- web-platform-tests/html/semantics/embedded-content/media-elements/readyState_during_loadedmetadata.html:
- web-platform-tests/html/semantics/embedded-content/media-elements/readyState_during_playing.html:
- web-platform-tests/html/semantics/embedded-content/media-elements/video_008.htm:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.reset.cross-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.reset.cross.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.reset.redirect-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.reset.redirect.html:
- web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/blank.htm:
- web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/w3c-import.log:
- web-platform-tests/html/semantics/embedded-content/the-iframe-element/w3c-import.log:
- web-platform-tests/html/semantics/forms/form-submission-0/w3c-import.log:
- web-platform-tests/html/semantics/forms/the-button-element/w3c-import.log:
- web-platform-tests/html/semantics/forms/the-fieldset-element/w3c-import.log:
- web-platform-tests/html/semantics/forms/the-form-element/w3c-import.log:
- web-platform-tests/html/semantics/forms/the-input-element/w3c-import.log:
- web-platform-tests/html/semantics/forms/the-progress-element/progress-expected.txt:
- web-platform-tests/html/semantics/forms/the-progress-element/w3c-import.log:
- web-platform-tests/html/semantics/interactive-elements/the-dialog-element/w3c-import.log:
- web-platform-tests/html/semantics/scripting-1/the-template-element/template-element/w3c-import.log:
- web-platform-tests/html/syntax/serializing-html-fragments/serializing-expected.txt:
- web-platform-tests/html/syntax/serializing-html-fragments/serializing.html:
- web-platform-tests/html/webappapis/scripting/processing-model-2/window-onerror-parse-error-expected.txt:
- web-platform-tests/html/webappapis/scripting/processing-model-2/window-onerror-runtime-error-expected.txt:
- web-platform-tests/html/webappapis/scripting/processing-model-2/window-onerror-runtime-error-throw-expected.txt:
- web-platform-tests/lint.whitelist:
- web-platform-tests/mediacapture-fromelement/capture.html:
- web-platform-tests/mediacapture-fromelement/creation.html:
- web-platform-tests/mediacapture-fromelement/ended.html:
- web-platform-tests/mediacapture-streams/MediaStream-default-feature-policy.https.sub.html:
- web-platform-tests/payment-request/PaymentAddress/attributes-and-toJSON-method-manual.https.html:
- web-platform-tests/resource-timing/idlharness-expected.txt:
- web-platform-tests/resource-timing/idlharness.html:
- web-platform-tests/resources/idlharness.js:
(IdlInterface.prototype.test_to_json_operation):
- web-platform-tests/resources/test/tests/api-tests-1.html:
- web-platform-tests/resources/test/tests/idlharness/IdlInterface/test_to_json_operation.html:
- web-platform-tests/resources/testharness.js:
- web-platform-tests/service-workers/service-worker/fetch-event-redirect.https.html:
- web-platform-tests/service-workers/service-worker/fetch-frame-resource.https.html:
- web-platform-tests/service-workers/service-worker/fetch-request-xhr.https.html:
- web-platform-tests/service-workers/service-worker/navigation-preload/resources/redirect-scope.py:
(main):
- web-platform-tests/service-workers/service-worker/resources/bytecheck-worker-imported-script.py:
(main):
- web-platform-tests/service-workers/service-worker/resources/bytecheck-worker.py:
(main):
- web-platform-tests/service-workers/service-worker/resources/fetch-event-redirect-iframe.html: Removed.
- web-platform-tests/service-workers/service-worker/resources/fetch-request-xhr-iframe.https.html:
- web-platform-tests/service-workers/service-worker/resources/navigation-redirect-out-scope.py:
(main):
- web-platform-tests/service-workers/service-worker/resources/navigation-redirect-scope1.py:
(main):
- web-platform-tests/service-workers/service-worker/resources/navigation-redirect-scope2.py:
(main):
- web-platform-tests/service-workers/service-worker/resources/update-max-aged-worker-imported-script.py:
(main):
- web-platform-tests/service-workers/service-worker/resources/update-max-aged-worker.py:
(main):
- web-platform-tests/service-workers/service-worker/resources/w3c-import.log:
- web-platform-tests/service-workers/service-worker/w3c-import.log:
- web-platform-tests/shadow-dom/Extensions-to-Event-Interface-expected.txt:
- web-platform-tests/shadow-dom/Extensions-to-Event-Interface.html:
- web-platform-tests/shadow-dom/event-inside-shadow-tree-expected.txt:
- web-platform-tests/shadow-dom/event-with-related-target.html:
- web-platform-tests/shadow-dom/leaktests/get-elements-expected.txt:
- web-platform-tests/shadow-dom/resources/event-path-test-helpers.js:
(dispatchEventWithEventLog):
- web-platform-tests/shadow-dom/slotchange-event-expected.txt:
- web-platform-tests/shadow-dom/w3c-import.log:
- web-platform-tests/streams/piping/general-expected.txt:
- web-platform-tests/streams/readable-byte-streams/general.js:
(promise_test):
- web-platform-tests/streams/readable-byte-streams/w3c-import.log:
- web-platform-tests/streams/readable-streams/pipe-through-expected.txt: Removed.
- web-platform-tests/tools/manifest/catalog/xhtml.dtd:
- web-platform-tests/tools/manifest/sourcefile.py:
(SourceFile.references):
(SourceFile.spec_links):
- web-platform-tests/tools/manifest/tests/test_sourcefile.py:
(test_relpath_normalized):
(test_reftest_url_whitespace):
(test_spec_links_whitespace):
- web-platform-tests/tools/wptserve/tests/functional/test_handlers.py:
(TestDirectoryHandler.test_subdirectory_no_trailing_slash):
- web-platform-tests/tools/wptserve/wptserve/handlers.py:
(DirectoryHandler.call):
- web-platform-tests/update-built-tests.sh:
- web-platform-tests/url/a-element-expected.txt:
- web-platform-tests/url/a-element-xhtml-expected.txt:
- web-platform-tests/url/url-constructor-expected.txt:
- web-platform-tests/url/urltestdata.json:
- web-platform-tests/webrtc/RTCCertificate.html:
- web-platform-tests/webrtc/RTCConfiguration-iceServers-expected.txt:
- web-platform-tests/webrtc/RTCDTMFSender-insertDTMF.html: Removed.
- web-platform-tests/webrtc/RTCDTMFSender-ontonechange-long.html: Removed.
- web-platform-tests/webrtc/RTCDTMFSender-ontonechange.html: Removed.
- web-platform-tests/webrtc/RTCPeerConnection-addTrack.html: Removed.
- web-platform-tests/webrtc/RTCPeerConnection-getStats.html: Removed.
- web-platform-tests/webrtc/RTCPeerConnection-ontrack.html: Removed.
- web-platform-tests/webrtc/RTCPeerConnection-removeTrack.html: Removed.
- web-platform-tests/webrtc/RTCRtpReceiver-getContributingSources.html: Removed.
- web-platform-tests/webrtc/RTCRtpReceiver-getSynchronizationSources.html: Removed.
- web-platform-tests/webrtc/historical-expected.txt:
- web-platform-tests/webrtc/historical.html:
- web-platform-tests/webrtc/simplecall-expected.txt:
- web-platform-tests/webrtc/simplecall.html:
- web-platform-tests/webrtc/w3c-import.log:
LayoutTests:
Rebasing expectations.
- TestExpectations: Skipping unsupported tests.
- http/wpt/fetch/request-clone-expected.txt:
- platform/ios-wk2/imported/w3c/web-platform-tests/beacon/headers/header-content-type-expected.txt: Added.
- platform/ios-wk2/imported/w3c/web-platform-tests/html/browsers/browsing-the-web/history-traversal/persisted-user-state-restoration/scroll-restoration-fragment-scrolling-cross-origin-expected.txt:
- platform/ios-wk2/imported/w3c/web-platform-tests/html/dom/reflection-embedded-expected.txt:
- platform/mac-wk1/imported/w3c/web-platform-tests/background-fetch/interfaces-expected.txt:
- tests-options.json:
- 5:24 PM Changeset in webkit [223326] by
-
- 2 edits in trunk/Tools
[WPE] JHBuild build directory DependenciesWPE/Build is not removed by update-webkit-libs-jhbuild
https://bugs.webkit.org/show_bug.cgi?id=178212
Reviewed by Michael Catanzaro.
- Scripts/update-webkit-libs-jhbuild:
(cleanJhbuild): The WPE JHBuild also uses a separate "Build" subdirectory, so do not skip
cleaning it when "--wpe" is passed to the script.
- 4:57 PM Changeset in webkit [223325] by
-
- 3 edits in trunk/LayoutTests
Implement Cache API support for WPE/GTK
https://bugs.webkit.org/show_bug.cgi?id=178316
Unreviewed.
Skip tests until feature is implemented.
Patch by Youenn Fablet <youenn@apple.com> on 2017-10-14
- platform/gtk/TestExpectations:
- platform/wpe/TestExpectations:
- 4:55 PM Changeset in webkit [223324] by
-
- 7 edits in trunk/LayoutTests
WebRTC test gardening
https://bugs.webkit.org/show_bug.cgi?id=178317
Unreviewed.
Updating expectations according dashboard.
Skipping tests for platforms that do not support WebRTC.
Patch by Youenn Fablet <youenn@apple.com> on 2017-10-14
- TestExpectations:
- platform/gtk/TestExpectations:
- platform/ios/TestExpectations:
- platform/mac-wk1/TestExpectations:
- platform/mac-wk2/TestExpectations:
- platform/win/TestExpectations:
- 12:18 PM Changeset in webkit [223323] by
-
- 2 edits in trunk/Source/WebInspectorUI
REGRESSION (r223310): Web Inspector: Class list container is transparent and unreadable
https://bugs.webkit.org/show_bug.cgi?id=178311
Reviewed by Devin Rousso.
- UserInterface/Views/CSSStyleDetailsSidebarPanel.css:
(.sidebar > .panel.details.css-style > .content ~ .class-list-container):
Fix 1px hole below the class container.
- 12:05 PM Changeset in webkit [223322] by
-
- 8 edits in trunk/Source/WebInspectorUI
Web Inspector: Canvas tab: recordings should have a unique name
https://bugs.webkit.org/show_bug.cgi?id=178188
<rdar://problem/34943364>
Reviewed by Devin Rousso.
- Localizations/en.lproj/localizedStrings.js:
New format string "Recording %d".
- UserInterface/Base/FileUtilities.js:
(WI.loadDataFromFile):
Pass chosen filename to callback.
- UserInterface/Controllers/CanvasManager.js:
(WI.CanvasManager.prototype.recordingFinished):
Create a unique name for the recording.
- UserInterface/Models/Recording.js:
(WI.Recording):
(WI.Recording.fromPayload):
(WI.Recording.prototype.get displayName):
(WI.Recording.prototype.createDisplayName):
- UserInterface/Views/RecordingContentView.js:
(WI.RecordingContentView.prototype.get saveData):
Use encodeURI so that special characters can be used in filenames, and
to be consistent with othersaveData
implementations.
- UserInterface/Views/RecordingNavigationSidebarPanel.js:
(WI.RecordingNavigationSidebarPanel.prototype.set recording):
(WI.RecordingNavigationSidebarPanel.prototype._importNavigationItemClicked):
Drive-by fix: wait until actions are resolved before updating UI.
- UserInterface/Views/RecordingTabContentView.js:
(WI.RecordingTabContentView.prototype._navigationSidebarImport):
Try to use the imported filename as the recording name. If the name
collides with that of another imported recording, append a unique suffix.
- 11:56 AM Changeset in webkit [223321] by
-
- 16 edits2 adds in trunk
Web Inspector: provide a way to enable/disable event listeners
https://bugs.webkit.org/show_bug.cgi?id=177451
Reviewed by Joseph Pecoraro.
Source/JavaScriptCore:
- inspector/protocol/DOM.json:
Add
setEventListenerDisabled
command that enables/disables a specific event listener
during event dispatch. When a disabled event listener is fired, the listener's callback will
not be called.
Source/WebCore:
Test: inspector/dom/setEventListenerDisabled.html
- dom/EventTarget.cpp:
(WebCore::EventTarget::fireEventListeners):
Add InspectorInstrumentation call to isEventListenerDisabled. If true, the event listener's
callback will not be called.
- inspector/InspectorDOMAgent.h:
- inspector/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::discardBindings):
(WebCore::InspectorDOMAgent::getEventListenersForNode):
(WebCore::InspectorDOMAgent::setEventListenerDisabled):
(WebCore::InspectorDOMAgent::buildObjectForEventListener):
(WebCore::InspectorDOMAgent::willRemoveEventListener):
(WebCore::InspectorDOMAgent::isEventListenerDisabled):
Introduce a mapping ofEventListener*
toInspectorEventListener
, a struct for uniquely
identifying event listeners so they can be referenced from the frontend. We only add items
to this mapping whengetEventListenersForNode
is called, as that is when EventListener
data is sent to the frontend. This allows us to defer creating an Inspector "mirror" object
for each EventListener until it is needed. Items are removed whenever an event listener is
removed or when the document changes.
- inspector/InspectorInstrumentation.h:
(WebCore::InspectorInstrumentation::isEventListenerDisabled):
- inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::willRemoveEventListenerImpl):
(WebCore::InspectorInstrumentation::isEventListenerDisabledImpl):
Pass additional parameters to InspectorDOMAgent so it can determine if the event listener
actually exists. If not, don't dispatch an event to the frontend as nothing will change.
Source/WebInspectorUI:
- Localizations/en.lproj/localizedStrings.js:
- UserInterface/Controllers/DOMTreeManager.js:
(WI.DOMTreeManager.prototype.setEventListenerDisabled):
- UserInterface/Views/DOMNodeDetailsSidebarPanel.js:
(WI.DOMNodeDetailsSidebarPanel.prototype.attached):
(WI.DOMNodeDetailsSidebarPanel.prototype.detached):
(WI.DOMNodeDetailsSidebarPanel.prototype._eventListenersChanged):
(WI.DOMNodeDetailsSidebarPanel.prototype.addEventListeners): Deleted.
(WI.DOMNodeDetailsSidebarPanel.prototype.removeEventListeners): Deleted.
Listen forWI.DOMNode.Event.EventListenersChanged
on all instances of WI.DOMNode, since we
will still want to refresh the event listeners section in the event that an event listener
is removed from a parent node.
- UserInterface/Views/EventListenerSectionGroup.js:
(WI.EventListenerSectionGroup):
(WI.EventListenerSectionGroup.prototype._eventText):
(WI.EventListenerSectionGroup.prototype._nodeTextOrLink):
(WI.EventListenerSectionGroup.prototype._createDisabledToggleElement):
(WI.EventListenerSectionGroup.prototype._createDisabledToggleElement.updateTitle):
- UserInterface/Views/EventListenerSectionGroup.css:
(.event-listener-section > .content input[type="checkbox"]):
- UserInterface/Views/DetailsSectionSimpleRow.js:
(WI.DetailsSectionSimpleRow.prototype.get label):
(WI.DetailsSectionSimpleRow.prototype.set label):
LayoutTests:
- inspector/dom/setEventListenerDisabled-expected.txt: Added.
- inspector/dom/setEventListenerDisabled.html: Added.
- 9:56 AM Changeset in webkit [223320] by
-
- 2 edits in trunk/LayoutTests
Mark fast/frames/frame-unload-navigate-and-setTimeout-assert-fail.html as a flaky crash on Windows.
https://bugs.webkit.org/show_bug.cgi?id=178309
Unreviewed test gardening.
- platform/win/TestExpectations:
- 9:14 AM Changeset in webkit [223319] by
-
- 2 edits in trunk/LayoutTests
Mark fast/images/animated-gif-scrolling-crash.html as flaky on Windows.
https://bugs.webkit.org/show_bug.cgi?id=178307
Unreviewed test gardening.
- platform/win/TestExpectations:
- 8:35 AM Changeset in webkit [223318] by
-
- 35 edits2 adds in trunk
Reland "Add Above/Below comparisons for UInt32 patterns"
https://bugs.webkit.org/show_bug.cgi?id=177281
Reviewed by Saam Barati.
JSTests:
- stress/uint32-comparison-jump.js: Added.
(shouldBe):
(above):
(aboveOrEqual):
(below):
(belowOrEqual):
(notAbove):
(notAboveOrEqual):
(notBelow):
(notBelowOrEqual):
- stress/uint32-comparison.js: Added.
(shouldBe):
(above):
(aboveOrEqual):
(below):
(belowOrEqual):
(aboveTest):
(aboveOrEqualTest):
(belowTest):
(belowOrEqualTest):
Source/JavaScriptCore:
We reland this patch without DFGStrengthReduction change to see what causes
regression in the iOS bot.
Sometimes, we would like to have UInt32 operations in JS. While VM does
not support UInt32 nicely, VM supports efficient Int32 operations. As long
as signedness does not matter, we can just perform Int32 operations instead
and recognize its bit pattern as UInt32.
But of course, some operations respect signedness. The most frequently
used one is comparison. Octane/zlib performs UInt32 comparison by performing
val >>> 0
. It emits op_urshift and op_unsigned. op_urshift produces
UInt32 in Int32 form. And op_unsigned will generate Double value if
the generated Int32 is < 0 (which should be UInt32).
There is a chance for optimization. The given code pattern is the following.
op_unsigned(op_urshift(@1)) lessThan:< op_unsigned(op_urshift(@2))
This can be converted to the following.
op_urshift(@1) below:< op_urshift(@2)
The above conversion is nice since
- We can avoid op_unsigned. This could be unsignedness check in DFG. Since
this check depends on the value of Int32, dropping this check is not as easy as
removing Int32 edge filters.
- We can perform unsigned comparison in Int32 form. We do not need to convert
them to DoubleRep.
Since the above comparison exists in Octane/zlib's *super* hot path, dropping
op_unsigned offers huge win.
At first, my patch attempts to convert the above thing in DFG pipeline.
However it poses several problems.
- MovHint is not well removed. It makes UInt32ToNumber (which is for op_unsigned) live.
- UInt32ToNumber could cause an OSR exit. So if we have the following nodes,
2: UInt32ToNumber(@0)
3: MovHint(@2, xxx)
4: UInt32ToNumber(@1)
5: MovHint(@1, xxx)
we could drop @5's MovHint. But @3 is difficult since @4 can exit.
So, instead, we start introducing a simple optimization in the bytecode compiler.
It performs pattern matching for op_urshift and comparison to drop op_unsigned.
We adds op_below and op_above families to bytecodes. They only accept Int32 and
perform unsigned comparison.
This offers 4% performance improvement in Octane/zlib.
baseline patched
zlib x2 431.07483+-16.28434 414.33407+-9.38375 might be 1.0404x faster
- bytecode/BytecodeDumper.cpp:
(JSC::BytecodeDumper<Block>::printCompareJump):
(JSC::BytecodeDumper<Block>::dumpBytecode):
- bytecode/BytecodeDumper.h:
- bytecode/BytecodeList.json:
- bytecode/BytecodeUseDef.h:
(JSC::computeUsesForBytecodeOffset):
(JSC::computeDefsForBytecodeOffset):
- bytecode/Opcode.h:
(JSC::isBranch):
- bytecode/PreciseJumpTargetsInlines.h:
(JSC::extractStoredJumpTargetsForBytecodeOffset):
- bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::emitJumpIfTrue):
(JSC::BytecodeGenerator::emitJumpIfFalse):
- bytecompiler/NodesCodegen.cpp:
(JSC::BinaryOpNode::emitBytecode):
- dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
- dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseBlock):
- dfg/DFGCapabilities.cpp:
(JSC::DFG::capabilityLevel):
- dfg/DFGClobberize.h:
(JSC::DFG::clobberize):
- dfg/DFGDoesGC.cpp:
(JSC::DFG::doesGC):
- dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
- dfg/DFGIntegerRangeOptimizationPhase.cpp:
- dfg/DFGNodeType.h:
- dfg/DFGPredictionPropagationPhase.cpp:
- dfg/DFGSafeToExecute.h:
(JSC::DFG::safeToExecute):
- dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileCompareUnsigned):
- dfg/DFGSpeculativeJIT.h:
- dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
- dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
- dfg/DFGValidate.cpp:
- ftl/FTLCapabilities.cpp:
(JSC::FTL::canCompile):
- ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::compileNode):
(JSC::FTL::DFG::LowerDFGToB3::compileCompareBelow):
(JSC::FTL::DFG::LowerDFGToB3::compileCompareBelowEq):
- jit/JIT.cpp:
(JSC::JIT::privateCompileMainPass):
- jit/JIT.h:
- jit/JITArithmetic.cpp:
(JSC::JIT::emit_op_below):
(JSC::JIT::emit_op_beloweq):
(JSC::JIT::emit_op_jbelow):
(JSC::JIT::emit_op_jbeloweq):
(JSC::JIT::emit_compareUnsignedAndJump):
(JSC::JIT::emit_compareUnsigned):
- jit/JITArithmetic32_64.cpp:
(JSC::JIT::emit_compareUnsignedAndJump):
(JSC::JIT::emit_compareUnsigned):
- llint/LowLevelInterpreter.asm:
- llint/LowLevelInterpreter32_64.asm:
- llint/LowLevelInterpreter64.asm:
- parser/Nodes.h:
(JSC::ExpressionNode::isBinaryOpNode const):
- 8:07 AM Changeset in webkit [223317] by
-
- 4 edits in trunk/Source
Remove HashCountedSet's copyToVector functions
https://bugs.webkit.org/show_bug.cgi?id=178215
Patch by Sam Weinig <sam@webkit.org> on 2017-10-14
Reviewed by Daniel Bates.
Source/WebCore:
- page/DeviceController.cpp:
(WebCore::DeviceController::dispatchDeviceEvent):
(WebCore::DeviceController::fireDeviceEvent):
Replace use of HashCountedSet's copyToVector functions with copyToVector(hashCountedSet.values()).
Source/WTF:
- wtf/HashCountedSet.h:
(WTF::copyToVector): Deleted.
They are replaced by either copyToVector(hashCountedSet) or copyToVector(hashCountedSet.values())
Oct 13, 2017:
- 9:45 PM Changeset in webkit [223316] by
-
- 28 edits in trunk/Source/WTF
Adopt type trait template aliases everywhere in WTF
https://bugs.webkit.org/show_bug.cgi?id=178299
Patch by Sam Weinig <sam@webkit.org> on 2017-10-13
Reviewed by Yusuke Suzuki.
Adopt type trait template aliases (e.g. replace 'typename std::make_unsigned<Source>::type'
with 'std::make_unsigned_t<Source>'). Also adopt using over typedef consistently.
- wtf/Atomics.h:
- wtf/CagedUniquePtr.h:
- wtf/CheckedArithmetic.h:
- wtf/CompletionHandler.h:
- wtf/Function.h:
- wtf/HashCountedSet.h:
- wtf/HashFunctions.h:
- wtf/HashMap.h:
- wtf/HashSet.h:
- wtf/HashTable.h:
- wtf/HashTraits.h:
- wtf/IndexedContainerIterator.h:
- wtf/IteratorAdaptors.h:
- wtf/KeyValuePair.h:
- wtf/LEBDecoder.h:
- wtf/ListHashSet.h:
- wtf/MathExtras.h:
- wtf/NeverDestroyed.h:
- wtf/OptionSet.h:
- wtf/RetainPtr.h:
- wtf/SizeLimits.cpp:
- wtf/StdLibExtras.h:
- wtf/SystemFree.h:
- wtf/ThreadSpecific.h:
- wtf/TypeCasts.h:
- wtf/Vector.h:
- wtf/text/IntegerToStringConversion.h:
- 7:38 PM Changeset in webkit [223315] by
-
- 7 edits1 add in trunk/Source
Performance: Skip texture upload if source image and destination texture haven't changed
https://bugs.webkit.org/show_bug.cgi?id=178254
<rdar://problem/34968181>
Reviewed by Dean Jackson.
Source/WebCore:
Update GraphicsContext3D to track which texture is bound to which texture unit, and also to
track when those bound textures have their backing stores modified. This new "seed" value
will be used to determine whether a given texture which has previously had image data
uploaded to it needs to be re-updated.
In VideoTextureCopierCV, track whether the texture's seed changed, whether the IOSurface is
the same, whether the IOSurface's seed has changed, and whether the "flipY" parameter
changed since the last time the copier was asked to upload to the texture.
- platform/graphics/GraphicsContext3D.h:
(WebCore::GraphicsContext3D::textureSeed):
(WebCore::GraphicsContext3D::GraphicsContext3DState::currentBoundTexture):
(WebCore::GraphicsContext3D::GraphicsContext3DState::boundTexture):
(WebCore::GraphicsContext3D::GraphicsContext3DState::setBoundTexture):
- platform/graphics/cv/VideoTextureCopierCV.cpp:
(WebCore::VideoTextureCopierCV::copyImageToPlatformTexture):
- platform/graphics/cv/VideoTextureCopierCV.h:
(WebCore::VideoTextureCopierCV::lastTextureSeed):
- platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
(WebCore::GraphicsContext3D::prepareTexture):
(WebCore::GraphicsContext3D::bindTexture):
(WebCore::GraphicsContext3D::texStorage2D):
(WebCore::GraphicsContext3D::texStorage3D):
(WebCore::GraphicsContext3D::framebufferTexture2D):
(WebCore::GraphicsContext3D::texSubImage2D):
(WebCore::GraphicsContext3D::compressedTexImage2D):
(WebCore::GraphicsContext3D::compressedTexSubImage2D):
(WebCore::GraphicsContext3D::createTexture):
(WebCore::GraphicsContext3D::deleteTexture):
(WebCore::GraphicsContext3D::texImage2DDirect):
Source/WTF:
Add a new class, UnsafePointer, for safely holding pointers to objects with uncontrolled lifetimes.
- WTF.xcodeproj/project.pbxproj:
- wtf/UnsafePointer.h: Added.
(WTF::UnsafePointer::UnsafePointer):
(WTF::UnsafePointer::operator== const):
(WTF::UnsafePointer::operator!= const):
(WTF::UnsafePointer::operator bool const):
(WTF::operator==):
(WTF::operator!=):
- 5:50 PM Changeset in webkit [223314] by
-
- 10 edits in trunk/Source
[Win] When built with VS2017, MiniBrowser crashes on startup.
https://bugs.webkit.org/show_bug.cgi?id=175209
Reviewed by Daniel Bates.
Source/WebCore:
Generated StaticStringImpl objects are not initialized compile-time with VS2017.
When compiling with VS2017, the global, static, StaticStringImpl objects needs to
be defined with the constexpr specifier, in order for the objects to be initialized
at compile time. Since the StaticStringImpl objects will be const then, we need to
be able to create an AtomicString object from a const StaticStringImpl object.
This constructor has been added to the AtomicString class.
No new tests, covered by existing tests.
- bindings/scripts/StaticString.pm:
(GenerateStrings):
(GenerateStringAsserts):
- dom/QualifiedName.cpp:
(WebCore::createQualifiedName):
- dom/QualifiedName.h:
- dom/make_names.pl:
(printDefinitions):
Source/WTF:
Add AtomicString(const StaticStringImpl*) constructor. This is needed since
this patch adds constexpr to the static, global StaticStringImpl objects
generated in WebCore/bindings/scripts/StaticString.pm.
- wtf/text/AtomicString.h:
(WTF::AtomicString::AtomicString):
- wtf/text/AtomicStringImpl.cpp:
(WTF::addStatic):
(WTF::AtomicStringImpl::add):
- wtf/text/AtomicStringImpl.h:
- wtf/text/StringImpl.h:
(WTF::StringImpl::assertHashIsCorrect const):
(WTF::StringImpl::assertHashIsCorrect): Deleted.
- 5:44 PM Changeset in webkit [223313] by
-
- 3 edits2 adds in trunk
Protect FrameView during style calculations
https://bugs.webkit.org/show_bug.cgi?id=178300
<rdar://problem/34869329>
Reviewed by Ryosuke Niwa.
Source/WebCore:
Protect the FrameView during layout and style updates in case arbitrary script
is run that might clear it.
Test: fast/html/marquee-reparent-check.html
- page/FrameView.cpp:
(WebCore::FrameView::updateLayoutAndStyleIfNeededRecursive):
LayoutTests:
- fast/html/marquee-reparent-check-expected.txt: Added.
- fast/html/marquee-reparent-check.html: Added.
- 5:42 PM Changeset in webkit [223312] by
-
- 2 edits in trunk/LayoutTests
Mark http/tests/cache-storage/cache-clearing-origin.https.html as flaky.
https://bugs.webkit.org/show_bug.cgi?id=178305
Unreviewed test gardening.
- platform/mac/TestExpectations:
- 5:25 PM Changeset in webkit [223311] by
-
- 2 edits in trunk/LayoutTests
http/tests/cache-storage/cache-clearing-origin.https.html is flaky on Sierra
https://bugs.webkit.org/show_bug.cgi?id=178303
Unreviewed.
Patch by Youenn Fablet <youenn@apple.com> on 2017-10-13
- TestExpectations: Marking test as fail.
- 5:05 PM Changeset in webkit [223310] by
-
- 4 edits in trunk/Source/WebInspectorUI
Web Inspector: make split console full width of view
https://bugs.webkit.org/show_bug.cgi?id=176635
Reviewed by Timothy Hatcher.
- UserInterface/Main.html:
- UserInterface/Views/Main.css:
(#main):
(#content):
- UserInterface/Views/CSSStyleDetailsSidebarPanel.css:
(.sidebar > .panel.details.css-style > .content ~ :matches(.options-container, .class-list-container)):
(.sidebar > .panel.details.css-style > .content ~ .options-container):
- 5:02 PM Changeset in webkit [223309] by
-
- 2 edits in trunk/Source/WebCore
Crash under ResourceHandleCFURLConnectionDelegateWithOperationQueue::didSendBodyData
https://bugs.webkit.org/show_bug.cgi?id=178279
Reviewed by Alex Christensen.
Check if the connection is valid before calling ResourceHandleClient::didSendData.
No new tests, covered by existing tests.
- platform/network/cf/ResourceHandleCFURLConnectionDelegateWithOperationQueue.cpp:
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didSendBodyData):
- 4:52 PM Changeset in webkit [223308] by
-
- 64 edits in trunk/Source/WebInspectorUI
Web Inspector: fix ESLint errors
https://bugs.webkit.org/show_bug.cgi?id=175065
Reviewed by Joseph Pecoraro.
Removed trailing whitespace, extra parenthesis, and some unnecessary escape characters.
Added missing semicolons, spacing around default values for parameters, and changed==
to
===
where applicable.
Specific changes to each file were removed for brevity.
- .eslintrc:
Alphabetize each list of global variables and add some missing utility functions.
- UserInterface/Base/EventListener.js:
- UserInterface/Base/EventListenerSet.js:
- UserInterface/Base/Main.js:
- UserInterface/Base/Setting.js:
- UserInterface/Base/TextUtilities.js:
- UserInterface/Base/URLUtilities.js:
- UserInterface/Base/Utilities.js:
- UserInterface/Base/YieldableTask.js:
- UserInterface/Controllers/AppControllerBase.js:
- UserInterface/Controllers/CanvasManager.js:
- UserInterface/Controllers/CodeMirrorCompletionController.js:
- UserInterface/Controllers/DOMDebuggerManager.js:
- UserInterface/Controllers/JavaScriptRuntimeCompletionProvider.js:
- UserInterface/Controllers/RuntimeManager.js:
- UserInterface/Controllers/SourceMapManager.js:
- UserInterface/Debug/DebugContentView.js:
- UserInterface/Debug/UncaughtExceptionReporter.js:
- UserInterface/Models/CSSKeywordCompletions.js:
- UserInterface/Models/DOMNode.js:
- UserInterface/Models/DOMNodeStyles.js:
- UserInterface/Models/KeyboardShortcut.js:
- UserInterface/Models/ProfileNode.js:
- UserInterface/Models/Resource.js:
- UserInterface/Models/ResourceCollection.js:
- UserInterface/Models/Script.js:
- UserInterface/Models/ScriptSyntaxTree.js:
- UserInterface/Models/ScriptTimelineRecord.js:
- UserInterface/Protocol/Connection.js:
- UserInterface/Test/FrontendTestHarness.js:
- UserInterface/Test/TestHarness.js:
- UserInterface/Views/CSSStyleDeclarationSection.js:
- UserInterface/Views/ChartDetailsSectionRow.js:
- UserInterface/Views/CodeMirrorAdditions.js:
- UserInterface/Views/CodeMirrorFormatters.js:
- UserInterface/Views/CodeMirrorRegexMode.js:
- UserInterface/Views/ContentBrowserTabContentView.js:
- UserInterface/Views/DataGrid.js:
- UserInterface/Views/DataGridNode.js:
- UserInterface/Views/FindBanner.js:
- UserInterface/Views/GroupNavigationItem.js:
- UserInterface/Views/HierarchicalPathNavigationItem.js:
- UserInterface/Views/NetworkTableContentView.js:
- UserInterface/Views/NetworkTimelineView.js:
- UserInterface/Views/ObjectTreePropertyTreeElement.js:
- UserInterface/Views/ObjectTreeView.js:
- UserInterface/Views/RecordingContentView.js:
- UserInterface/Views/RenderingFrameTimelineOverviewGraph.js:
- UserInterface/Views/ResourceCookiesContentView.js:
- UserInterface/Views/ResourceDetailsSection.js:
- UserInterface/Views/ResourceHeadersContentView.js:
- UserInterface/Views/ResourceTimelineDataGridNode.js:
- UserInterface/Views/SettingEditor.js:
- UserInterface/Views/Sidebar.js:
- UserInterface/Views/SpreadsheetCSSStyleDeclarationSection.js:
- UserInterface/Views/Table.js:
- UserInterface/Views/TextEditor.js:
- UserInterface/Views/TimelineDataGridNode.js:
- UserInterface/Views/TreeElement.js:
- UserInterface/Views/TreeOutline.js:
- UserInterface/Views/WebSocketDataGridNode.js:
- UserInterface/Workers/Formatter/EsprimaFormatter.js:
- UserInterface/Workers/Formatter/FormatterWorker.js:
- 4:28 PM Changeset in webkit [223307] by
-
- 6 edits5 adds in trunk
CMD+R / CMD+Q keyboard shortcuts are treated as user interaction with page
https://bugs.webkit.org/show_bug.cgi?id=178183
<rdar://problem/33327730>
Reviewed by Ryosuke Niwa.
Source/WebCore:
Key events are granted user interaction credit (in terms of updating the last time of user
interaction), even if the key event was not handled. Instead, we should defer granting
access until the key event has been handled.
Add a new default constructor argument to UserGestureIndicator to be used when handling key
events, so we can delay a decision about whether to grant ResourceLoadStatistics
'hasHadUserInteraction' until we confirm that the event was handled by the page.
This change does not affect other aspects of user interaction.
Tests: fast/events
http/tests/resourceLoadStatistics/prevalent-resource-handled-keydown.html
http/tests/resourceLoadStatistics/prevalent-resource-unhandled-keydown.html
- dom/UserGestureIndicator.cpp:
(WebCore::UserGestureIndicator::UserGestureIndicator): Add check based on constructor argument.
Also: Drive by fix to avoid calling 'currentToken' when not on the main thread.
- dom/UserGestureIndicator.h:
- page/EventHandler.cpp:
(WebCore::EventHandler::keyEvent): If the key event was handled, grant user interaction credit
for ResourceLoadStatistics processing.
(WebCore::EventHandler::internalKeyEvent): Use the new UserGestureIndicator constructor argument.
LayoutTests:
- http/tests/resourceLoadStatistics/prevalent-resource-handled-keydown-expected.txt: Added.
- http/tests/resourceLoadStatistics/prevalent-resource-handled-keydown.html: Added.
- http/tests/resourceLoadStatistics/prevalent-resource-unhandled-keydown-expected.txt: Added.
- http/tests/resourceLoadStatistics/prevalent-resource-unhandled-keydown.html: Added.
- http/tests/resourceLoadStatistics/resources: Added.
- http/tests/resourceLoadStatistics/resources/onclick.html: Added.
- platform/ios/TestExpectations: Skip tests that require 'keyDown' support, since this is not available on iOS.
- 3:36 PM Changeset in webkit [223306] by
-
- 4 edits in trunk
DOMTokenList shouldn't add empty attributes
https://bugs.webkit.org/show_bug.cgi?id=178280
Reviewed by Ryosuke Niwa.
LayoutTests/imported/w3c:
Rebaseline web-platform-test now that all checks are passing.
- web-platform-tests/dom/nodes/Element-classlist-expected.txt:
Source/WebCore:
DOMTokenList shouldn't add empty attributes after:
Firefox and Chrome follow the latest spec.
No new tests, updating existing test.
- html/DOMTokenList.cpp:
(WebCore::DOMTokenList::updateAssociatedAttributeFromTokens):
Implement the first step of https://dom.spec.whatwg.org/#concept-dtl-update
- 3:33 PM October 2017 Meeting edited by
- (diff)
- 3:26 PM Changeset in webkit [223305] by
-
- 5 edits in branches/safari-604-branch/Source/WebCore
Apply patch. rdar://problem/34891297
Cherry-pick of r222803 <rdar://problem/34745579>
2017-10-03 Jer Noble <jer.noble@apple.com>
Implement quality-of-service tiers in WebCoreDecompressionSession
https://bugs.webkit.org/show_bug.cgi?id=177769
Reviewed by Dean Jackson.
VTDecompressionSession will suggest quality-of-service tiers to be used when decompression
can't keep up with playback speed. Use a simple exponential-moving-average heuristic to
determine when to move up and down the tiers.
Drive-by fix: When frames are so late that they miss the display deadline, mark them as
dropped rather than just delayed.
- platform/graphics/cocoa/WebCoreDecompressionSession.h:
- platform/graphics/cocoa/WebCoreDecompressionSession.mm: (WebCore::WebCoreDecompressionSession::ensureDecompressionSessionForSample): (WebCore::WebCoreDecompressionSession::decodeSample): (WebCore::WebCoreDecompressionSession::handleDecompressionOutput): (WebCore::WebCoreDecompressionSession::automaticDequeue): (WebCore::WebCoreDecompressionSession::enqueueDecodedSample): (WebCore::WebCoreDecompressionSession::resetQosTier): (WebCore::WebCoreDecompressionSession::increaseQosTier): (WebCore::WebCoreDecompressionSession::decreaseQosTier): (WebCore::WebCoreDecompressionSession::updateQosWithDecodeTimeStatistics):
- platform/cocoa/VideoToolboxSoftLink.cpp:
- platform/cocoa/VideoToolboxSoftLink.h:
- 3:26 PM Changeset in webkit [223304] by
-
- 6 edits in branches/safari-604-branch/Source/WebCore
Apply patch. rdar://problem/34891297
Partial cherry-pick of r222225 <rdar://problem/34745579>, only the changes to WebCoreDecompressionSession.
2017-09-19 Jer Noble <jer.noble@apple.com>
[Cocoa] Add an ImageDecoder subclass backed by AVFoundation
https://bugs.webkit.org/show_bug.cgi?id=176825
Reviewed by Eric Carlson.
Modify WebCoreDecompressionSession so that it can emit frames which have been converted from
YUV -> RGB as part of the decode operation. Also, add a synchronous decoding operation
method, for use in ImageDecoderAVFObjC.
- platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm: (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::ensureDecompressionSession):
- platform/graphics/cocoa/WebCoreDecompressionSession.h: (WebCore::WebCoreDecompressionSession::createOpenGL): (WebCore::WebCoreDecompressionSession::createRGB):
- platform/graphics/cocoa/WebCoreDecompressionSession.mm: (WebCore::WebCoreDecompressionSession::WebCoreDecompressionSession): (WebCore::WebCoreDecompressionSession::ensureDecompressionSessionForSample): (WebCore::WebCoreDecompressionSession::decodeSample): (WebCore::WebCoreDecompressionSession::decodeSampleSync):
- 3:07 PM Changeset in webkit [223303] by
-
- 7 edits in branches/safari-604-branch/Source
Versioning.
- 3:06 PM Changeset in webkit [223302] by
-
- 1 copy in tags/Safari-604.4.3
Tag Safari-604.4.3.
- 3:03 PM Changeset in webkit [223301] by
-
- 2 edits in trunk/Tools
[WPE] Fontconfig fails build in JHBuild with “error: conflicting types for ‘FcObjectTypeHash’”
https://bugs.webkit.org/show_bug.cgi?id=178283
Reviewed by Žan Doberšek.
- wpe/jhbuild.modules: Flag Fontconfig to be built inside the source directory, otherwise
compilation fails. While at it, pass "--disable-docs" to cut a bit on build time.
- 2:58 PM Changeset in webkit [223300] by
-
- 2 edits in trunk/LayoutTests
Marked http/tests/inspector/network/resource-sizes-memory-cache.html as flaky.
https://bugs.webkit.org/show_bug.cgi?id=177687
Unreviewed test gardening.
- platform/mac-wk2/TestExpectations:
- 2:04 PM October 2017 Meeting edited by
- (diff)
- 2:04 PM NextGenerationLayoutAndRendering created by
- 1:45 PM October 2017 Meeting edited by
- (diff)
- 1:31 PM Changeset in webkit [223299] by
-
- 16 edits in trunk
Implement listing origins for which CacheStorage is storing data
https://bugs.webkit.org/show_bug.cgi?id=178236
Patch by Youenn Fablet <youenn@apple.com> on 2017-10-13
Reviewed by Chris Dumez.
Source/WebKit:
Cache storage is split on per-origin folders which name is obfuscated through salting.
To retrieve the origin for each folder, an origin file is now stored within each folder.
This file contains the actual origin.
Adding support to get the list of origin by iterating through each folder and
getting the actual origin by reading the content of the 'origin' file.
Adding C API for WebKitTestRunner.
- NetworkProcess/cache/CacheStorageEngine.cpp:
(WebKit::CacheStorage::Engine::fetchEntries):
(WebKit::CacheStorage::ReadOriginsTaskCounter::create):
(WebKit::CacheStorage::ReadOriginsTaskCounter::~ReadOriginsTaskCounter):
(WebKit::CacheStorage::ReadOriginsTaskCounter::addOrigin):
(WebKit::CacheStorage::ReadOriginsTaskCounter::ReadOriginsTaskCounter):
- NetworkProcess/cache/CacheStorageEngine.h:
- NetworkProcess/cache/CacheStorageEngineCaches.cpp:
(WebKit::CacheStorage::cachesOriginFilename):
(WebKit::CacheStorage::Caches::retrieveOriginFromDirectory):
(WebKit::CacheStorage::Caches::Caches):
(WebKit::CacheStorage::Caches::storeOrigin):
(WebKit::CacheStorage::Caches::readOrigin):
(WebKit::CacheStorage::Caches::initialize):
- NetworkProcess/cache/CacheStorageEngineCaches.h:
(WebKit::CacheStorage::Caches::origin const):
- UIProcess/API/C/WKWebsiteDataStoreRef.cpp:
(WKWebsiteDataStoreGetFetchCacheOrigins):
- UIProcess/API/C/WKWebsiteDataStoreRef.h:
Tools:
Adding hasDOMCache API for checking whether origin is storing data through Cache API.
- WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
- WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::hasDOMCache):
- WebKitTestRunner/InjectedBundle/TestRunner.h:
- WebKitTestRunner/TestController.cpp:
(WTR::FetchCacheOriginsCallbackContext::FetchCacheOriginsCallbackContext):
(WTR::fetchCacheOriginsCallback):
(WTR::TestController::hasDOMCache):
- WebKitTestRunner/TestController.h:
- WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
LayoutTests:
- http/tests/cache-storage/cache-clearing-origin.https.html:
- 1:24 PM Changeset in webkit [223298] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed build fix; wrap more functions in USE(IOSURFACE) so that
they do not generate "unused function" errors.
- platform/graphics/cv/VideoTextureCopierCV.cpp:
- 1:14 PM October 2017 Meeting edited by
- (diff)
- 1:13 PM WebKitGoalsFor2018 created by
- 1:12 PM October 2017 Meeting edited by
- (diff)
- 1:08 PM October 2017 Meeting edited by
- (diff)
- 1:06 PM OptimizingzlibforARM created by
- 12:55 PM Changeset in webkit [223297] by
-
- 2 edits in trunk/Source/WebCore
One last unreviewed build fix; since the IOSurface APIs don't exist at
all on the simulator, just wrap the entirety of the implementation of
copyImageToPlatformTexture() in a #if USE(IOSURFACE) check.
- platform/graphics/cv/VideoTextureCopierCV.cpp:
(WebCore::VideoTextureCopierCV::copyImageToPlatformTexture):
- 12:08 PM WebKitGTK/2.18.x edited by
- (diff)
- 12:04 PM Changeset in webkit [223296] by
-
- 3 edits2 adds in trunk/Source/WebCore/PAL
[WPE][GTK] Provide an implementation of PAL::logLevelString()
https://bugs.webkit.org/show_bug.cgi?id=178263
Reviewed by Carlos Alberto Lopez Perez.
Provide an implementation of PAL::logLevelString() which picks the value from the
WEBCORE_DEBUG environment variable. Logging of notImplemented() calls is always enabled,
which is the same behavior as in WebCore::logLevelString().
- pal/PlatformGTK.cmake: Add LoggingUnix.cpp to the list of sources.
- pal/PlatformWPE.cmake: Add LoggingUnix.cpp to the list of sources.
- pal/unix/LoggingUnix.cpp: Added.
(PAL::logLevelString):
- 11:55 AM Changeset in webkit [223295] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed build fix for the previous build fix; use the right PAL path for IOSurfaceSPI.h.
- platform/graphics/cv/VideoTextureCopierCV.cpp:
- 11:48 AM Changeset in webkit [223294] by
-
- 4 edits in trunk/Source/WebCore
Unreviewed build fix; add definitions for IOSurface methods missing on some platforms.
Source/WebCore:
- platform/graphics/cv/VideoTextureCopierCV.cpp:
Source/WebCore/PAL:
- pal/spi/cocoa/IOSurfaceSPI.h:
- 11:47 AM October 2017 Meeting edited by
- (diff)
- 11:45 AM October 2017 Meeting edited by
- (diff)
- 11:45 AM October 2017 Meeting edited by
- (diff)
- 11:43 AM Changeset in webkit [223293] by
-
- 2 edits2 adds in tags/Safari-605.1.10.1/Source/WebCore/PAL
Cherry-pick r223241. rdar://problem/34974253
- 11:42 AM Changeset in webkit [223292] by
-
- 7 edits in tags/Safari-605.1.10.1/Source
Versioning.
- 11:23 AM Changeset in webkit [223291] by
-
- 7 edits1 delete in trunk
Remove Editor::simplifyMarkup
https://bugs.webkit.org/show_bug.cgi?id=178271
Reviewed by Wenson Hsieh.
Source/WebCore:
An API test became flaky, and it turns out this isn't used anywhere, so let's remove it!
It was used in Mountain Lion, Mavericks, and Yosemite, but not since then.
See <rdar://problem/10726177>
- editing/Editor.cpp:
(WebCore::Editor::simplifyMarkup): Deleted.
- editing/Editor.h:
Source/WebKitLegacy/mac:
- WebView/WebView.mm:
(-[WebView _simplifyMarkup:endNode:]):
Tools:
- TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
- TestWebKitAPI/Tests/mac/SimplifyMarkup.mm: Removed.
- 11:17 AM Changeset in webkit [223290] by
-
- 1 copy in tags/Safari-605.1.10.1
New tag.
- 11:16 AM Changeset in webkit [223289] by
-
- 3 edits in trunk/Source/WebCore
Unreviewed build fix; forward declare the type of IOSurfaceRef.
- platform/cocoa/CoreVideoSoftLink.cpp:
- platform/cocoa/CoreVideoSoftLink.h:
- 11:03 AM Changeset in webkit [223288] by
-
- 2 edits in trunk/LayoutTests
http/tests/cache-storage/cache-origins.https.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=178266
Unreviewed.
Patch by Youenn Fablet <youenn@apple.com> on 2017-10-13
- http/tests/cache-storage/cache-clearing-origin.https.html:
- 10:41 AM Changeset in webkit [223287] by
-
- 3 edits in trunk/Source/WebCore
Unreviewed build fix; add soft link macros for newly called CoreVideo methods.
- platform/cocoa/CoreVideoSoftLink.cpp:
- platform/cocoa/CoreVideoSoftLink.h:
- 10:30 AM Changeset in webkit [223286] by
-
- 3 edits in trunk/Source/WebKit
Fix API tests after r223269.
https://bugs.webkit.org/show_bug.cgi?id=178246
- UIProcess/API/APIContentRuleListStore.cpp:
(API::ContentRuleListStore::getContentRuleListSource):
Version 10 also has the ability to recover content rule list source.
- 10:30 AM Changeset in webkit [223285] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed build fix; add UNUSED_PARAM macros.
- platform/graphics/cocoa/GraphicsContext3DCocoa.mm:
(WebCore::GraphicsContext3D::texImageIOSurface2D):
- 10:19 AM Changeset in webkit [223284] by
-
- 3 edits in trunk/LayoutTests
Modernize LayoutTests/http/tests/cache-storage/cache-clearing-*.https.html
https://bugs.webkit.org/show_bug.cgi?id=178245
Patch by Youenn Fablet <youenn@apple.com> on 2017-10-13
Reviewed by Chris Dumez.
Using await/async to improve the testing.
Taking benefit of clearDOMCache to wait for completion to simplify both tests as well.
- http/tests/cache-storage/cache-clearing-all.https.html:
- http/tests/cache-storage/cache-clearing-origin.https.html:
- 10:14 AM Changeset in webkit [223283] by
-
- 6 edits in trunk/Source/WebInspectorUI
Web Inspector: Styles Redesign: hook up autocompletion to property names and values
https://bugs.webkit.org/show_bug.cgi?id=177313
<rdar://problem/34577057>
Reviewed by Joseph Pecoraro.
- Arrow Right accept the current completion item and places the text caret after it.
- Arrow Left hides the completion popover.
- Arrow Up selects the previous completion item.
- Arrow Down selects the next completion item.
- Enter and Tab accept the current completion item and navigate to the next focusable item.
- Escape hides the completion popover, if there is one.
- UserInterface/Views/CompletionSuggestionsView.js:
(WI.CompletionSuggestionsView):
(WI.CompletionSuggestionsView.prototype._mouseDown):
Add a preventBlur option so clicking on an completion item doesn't change the focus and
doesn't cause "blur" event on the target text field.
- UserInterface/Views/SpreadsheetCSSStyleDeclarationEditor.css:
(.spreadsheet-style-declaration-editor .completion-hint):
- UserInterface/Views/SpreadsheetCSSStyleDeclarationEditor.js:
(WI.SpreadsheetCSSStyleDeclarationEditor):
(WI.SpreadsheetCSSStyleDeclarationEditor.prototype.layout):
(WI.SpreadsheetCSSStyleDeclarationEditor.prototype.detached):
Call detached on every SpreadsheetTextField to hide CompletionSuggestionsView once
SpreadsheetCSSStyleDeclarationEditor is removed from the DOM.
(WI.SpreadsheetCSSStyleDeclarationEditor.prototype._addBlankProperty):
Remove index argument since it is no longer used.
- UserInterface/Views/SpreadsheetStyleProperty.js:
(WI.SpreadsheetStyleProperty):
(WI.SpreadsheetStyleProperty.prototype.detached):
(WI.SpreadsheetStyleProperty.prototype._remove):
(WI.SpreadsheetStyleProperty.prototype._update):
(WI.SpreadsheetStyleProperty.prototype._nameCompletionDataProvider):
(WI.SpreadsheetStyleProperty.prototype._valueCompletionDataProvider):
Add an extra parameter to SpreadsheetTextField to pass a completion data provider.
- UserInterface/Views/SpreadsheetTextField.js:
(WI.SpreadsheetTextField):
(WI.SpreadsheetTextField.prototype.get suggestionHint):
(WI.SpreadsheetTextField.prototype.set suggestionHint):
(WI.SpreadsheetTextField.prototype.startEditing):
(WI.SpreadsheetTextField.prototype.stopEditing):
(WI.SpreadsheetTextField.prototype.detached):
(WI.SpreadsheetTextField.prototype.completionSuggestionsSelectedCompletion):
(WI.SpreadsheetTextField.prototype.completionSuggestionsClickedCompletion):
(WI.SpreadsheetTextField.prototype._getPrefix):
(WI.SpreadsheetTextField.prototype._handleBlur):
(WI.SpreadsheetTextField.prototype._handleKeyDown):
(WI.SpreadsheetTextField.prototype._handleKeyDownForSuggestionView):
(WI.SpreadsheetTextField.prototype._handleInput):
(WI.SpreadsheetTextField.prototype._updateCompletions):
(WI.SpreadsheetTextField.prototype._getCaretRect):
(WI.SpreadsheetTextField.prototype._getCompletionPrefix):
(WI.SpreadsheetTextField.prototype._applyCompletionHint):
(WI.SpreadsheetTextField.prototype._hideCompletions):
Provide text completion based on the existing CompletionSuggestionsView when completionProvider is passed to SpreadsheetTextField.
- 10:07 AM Changeset in webkit [223282] by
-
- 8 edits in trunk
[GLib] WebKitNavigationAction should tell whether it is a redirect
https://bugs.webkit.org/show_bug.cgi?id=178178
Source/WebKit:
There is no good way to know whether a given navigation action has been caused
by a redirect through the glib API. This is necessary to implement some app mode
heuristics for Epiphany.
Reviewed by Carlos Garcia Campos.
- UIProcess/API/glib/WebKitNavigationAction.cpp:
(webkit_navigation_action_is_redirect): returns whether the navigation action is a redirect.
- UIProcess/API/glib/WebKitNavigationActionPrivate.h: add isRedirect to the wrapper object.
(_WebKitNavigationAction::_WebKitNavigationAction):
- UIProcess/API/gtk/WebKitNavigationAction.h: add the new API.
- UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt: ditto.
- UIProcess/API/wpe/WebKitNavigationAction.h: ditto.
Tools:
Test that WebKitNavigationAction properly reports being a redirect.
Reviewed by Carlos Garcia Campos.
- TestWebKitAPI/Tests/WebKitGLib/TestWebKitPolicyClient.cpp:
(testNavigationPolicy): test that loading /redirect leads to a redirect WebKitNavigationAction.
(serverCallback): add a /redirect path to the server, which causes a redirect.
- 10:05 AM Changeset in webkit [223281] by
-
- 2 edits in trunk/Tools
Unreviewed, fix webkitpy failure after r223273
- Scripts/webkitpy/w3c/test_importer_unittest.py:
(TestImporterTest.test_harnesslinks_conversion):
- 9:32 AM Changeset in webkit [223280] by
-
- 11 edits in trunk/Source/WebCore
Performance: do pixel conformance and texturing in a single step.
https://bugs.webkit.org/show_bug.cgi?id=178219
<rdar://problem/34937237>
Reviewed by Dean Jackson.
No new tests; performance improvements should have no behavior change.
Rather than asking the VTDecompressionSession to conform the output CVPixelBuffer into a
pixel format compatible with OpenGL (& ES), don't constrain the output at all, and only do a
conformance step if the output is not already compatible with OpenGL. This eliminates one
copy (in hardware) operation.
Move the TextureCacheCV object into VideoTextureCopierCV; it will be conditionally used to
create the texture if the pixel buffer is compatible.
Refactor copyVideoTextureToPlatformTexture(CVOpenGLTextureRef) in VideoTextureCopierCV. The
new entry point, copyImageToPlatformTexture(), will attempt to use the texture cache first,
and call a new common copyVideoTextureToPlatformTexture(Platform3DObject) with the result.
The new copyImageToPlatformTexture() will pull planar YUV frames into two textures, and combine
the two with a color transfer function when drawing to the output texture.
- platform/graphics/GraphicsContext3D.h:
- platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::copyVideoTextureToPlatformTexture):
- platform/graphics/cocoa/GraphicsContext3DCocoa.mm:
(WebCore::GraphicsContext3D::texImageIOSurface2D):
- platform/graphics/cocoa/WebCoreDecompressionSession.mm:
(WebCore::WebCoreDecompressionSession::ensureDecompressionSessionForSample):
- platform/graphics/cv/TextureCacheCV.h:
- platform/graphics/cv/TextureCacheCV.mm:
(WebCore::TextureCacheCV::textureFromImage):
- platform/graphics/cv/VideoTextureCopierCV.cpp:
(WebCore::pixelRangeFromPixelFormat):
(WebCore::transferFunctionFromString):
(WebCore::YCbCrToRGBMatrixForRangeAndTransferFunction):
(WebCore::VideoTextureCopierCV::~VideoTextureCopierCV):
(WebCore::VideoTextureCopierCV::initializeUVContextObjects):
(WebCore::VideoTextureCopierCV::copyImageToPlatformTexture):
(WebCore::VideoTextureCopierCV::copyVideoTextureToPlatformTexture):
- platform/graphics/cv/VideoTextureCopierCV.h:
- 9:03 AM October 2017 Meeting edited by
- (diff)
- 9:02 AM October 2017 Meeting edited by
- (diff)
- 9:02 AM October 2017 Meeting edited by
- (diff)
- 8:32 AM October 2017 Meeting edited by
- (diff)
- 8:20 AM October 2017 Meeting edited by
- (diff)
- 7:46 AM October 2017 Meeting edited by
- (diff)
- 7:45 AM October 2017 Meeting edited by
- (diff)
- 7:36 AM October 2017 Meeting edited by
- (diff)
- 7:35 AM October 2017 Meeting edited by
- (diff)
- 6:38 AM October 2017 Meeting edited by
- (diff)
- 2:22 AM Changeset in webkit [223279] by
-
- 7 edits in trunk
[Readable Streams API] Align queue with spec for ReadableStreamDefaultController
https://bugs.webkit.org/show_bug.cgi?id=178082
Reviewed by Xabier Rodriguez-Calvar.
LayoutTests/imported/w3c:
Updated test expectations for tests that were previously failing but now pass.
- web-platform-tests/streams/readable-streams/floating-point-total-queue-size-expected.txt:
- web-platform-tests/streams/readable-streams/floating-point-total-queue-size.dedicatedworker-expected.txt:
Source/WebCore:
Implemented new queue behavior for dequeueValue (used by ReadableStreamDefaultController),
which fixes rounding errors (as described in https://github.com/whatwg/streams/pull/661).
Also aligned ReadableByteStreamController queue so that both queues are implemented in
the same way.
No new tests (covered by existing tests, especially WPT tests that now pass).
- Modules/streams/ReadableByteStreamInternals.js:
(privateInitializeReadableByteStreamController): Aligned queue with RSDC.
(readableByteStreamControllerCancel): Aligned queue with RSDC.
(readableByteStreamControllerError): Aligned queue with RSDC.
(readableByteStreamControllerClose): Aligned queue with RSDC.
(readableByteStreamControllerHandleQueueDrain): Aligned queue with RSDC.
(readableByteStreamControllerPull): Aligned queue with RSDC.
(readableByteStreamControllerEnqueue): Aligned queue with RSDC.
(readableByteStreamControllerEnqueueChunk): Aligned queue with RSDC.
(readableByteStreamControllerProcessPullDescriptors): Aligned queue with RSDC.
(readableByteStreamControllerFillDescriptorFromQueue): Aligned queue with RSDC.
(readableByteStreamControllerPullInto): Aligned queue with RSDC.
- Modules/streams/StreamInternals.js:
(dequeueValue): Updated to match spec.
- bindings/js/WebCoreBuiltinNames.h: Removed now useless "totalQueuedBytes".
- 12:14 AM Changeset in webkit [223278] by
-
- 5 edits7 moves in trunk
"text/html" data is not exposed when dragging and dropping across origins
https://bugs.webkit.org/show_bug.cgi?id=178253
<rdar://problem/34971203>
Reviewed by Ryosuke Niwa.
Source/WebCore:
Minor tweak to DataTransfer::setDataFromItemList to allow "text/html" written from bindings to transfer across
origins without requiring a sanitized representation. Currently, sanitizedData is null, which limits "text/html"
to being treated as custom data, inaccessible across origins. We should instead treat markup supplied via
bindings the same way as we do "text/plain" supplied via bindings.
Modified Tests: editing/pasteboard/data-transfer-set-data-sanitize-url-when-copying-in-null-origin.html
editing/pasteboard/data-transfer-set-data-sanitize-url-when-dragging-in-null-origin.html
- dom/DataTransfer.cpp:
(WebCore::DataTransfer::setDataFromItemList):
LayoutTests:
Renames some existing layout tests, and also augments two tests to verify that "text/html" is preserved when
copying and dragging across origins that don't match.
- TestExpectations:
- editing/pasteboard/data-transfer-set-data-ignore-copied-malformed-url-in-null-expected.txt: Renamed from LayoutTests/editing/pasteboard/data-transfer-set-data-ignore-copied-walformed-url-in-null-expected.txt.
- editing/pasteboard/data-transfer-set-data-ignore-copied-malformed-url-in-null-origin-expected.txt: Renamed from LayoutTests/editing/pasteboard/data-transfer-set-data-ignore-copied-walformed-url-in-null-origin-expected.txt.
- editing/pasteboard/data-transfer-set-data-ignore-copied-malformed-url-in-null-origin.html: Renamed from LayoutTests/editing/pasteboard/data-transfer-set-data-ignore-copied-walformed-url-in-null-origin.html.
- editing/pasteboard/data-transfer-set-data-sanitize-url-when-copying-in-null-origin-expected.txt: Renamed from LayoutTests/editing/pasteboard/data-transfer-set-data-sanitlize-url-when-copying-in-null-origin-expected.txt.
- editing/pasteboard/data-transfer-set-data-sanitize-url-when-copying-in-null-origin.html: Renamed from LayoutTests/editing/pasteboard/data-transfer-set-data-sanitlize-url-when-copying-in-null-origin.html.
- editing/pasteboard/data-transfer-set-data-sanitize-url-when-dragging-in-null-origin-expected.txt: Renamed from LayoutTests/editing/pasteboard/data-transfer-set-data-sanitlize-url-when-dragging-in-null-origin-expected.txt.
- editing/pasteboard/data-transfer-set-data-sanitize-url-when-dragging-in-null-origin.html: Renamed from LayoutTests/editing/pasteboard/data-transfer-set-data-sanitlize-url-when-dragging-in-null-origin.html.
- platform/mac-wk1/TestExpectations:
Oct 12, 2017:
- 11:44 PM Changeset in webkit [223277] by
-
- 15 edits4 copies2 adds in trunk
SW "Hello world".
https://bugs.webkit.org/show_bug.cgi?id=178187
Reviewed by Andy Estes.
Source/WebCore:
No new tests (Covered by changes to existing tests).
With this patch, SW scripts are actually compiled and run inside a ServiceWorkerGlobalScope environment
in the SW context process.
- WebCore.xcodeproj/project.pbxproj:
- bindings/js/WorkerScriptController.cpp:
(WebCore::WorkerScriptController::initScript):
- dom/EventTargetFactory.in:
- workers/WorkerGlobalScope.h:
(WebCore::WorkerGlobalScope::isServiceWorkerGlobalScope const):
- workers/service/ServiceWorkerContextData.cpp: Copied from Source/WebCore/workers/service/ServiceWorkerGlobalScope.cpp.
(WebCore::ServiceWorkerContextData::isolatedCopy const):
- workers/service/ServiceWorkerContextData.h:
(WebCore::ServiceWorkerContextData::encode const):
(WebCore::ServiceWorkerContextData::decode):
- workers/service/ServiceWorkerGlobalScope.cpp:
(WebCore::ServiceWorkerGlobalScope::ServiceWorkerGlobalScope):
(WebCore::ServiceWorkerGlobalScope::~ServiceWorkerGlobalScope):
(WebCore::ServiceWorkerGlobalScope::registration):
(WebCore::ServiceWorkerGlobalScope::eventTargetInterface const):
- workers/service/ServiceWorkerGlobalScope.h:
(WebCore::ServiceWorkerGlobalScope::create):
(WebCore::ServiceWorkerGlobalScope::serverConnectionIdentifier const):
- workers/service/context/SWContextManager.cpp: Copied from Source/WebCore/workers/service/ServiceWorkerGlobalScope.cpp.
(WebCore::SWContextManager::singleton):
(WebCore::SWContextManager::SWContextManager):
(WebCore::SWContextManager::startServiceWorkerContext):
- workers/service/context/SWContextManager.h: Copied from Source/WebCore/workers/service/ServiceWorkerGlobalScope.h.
- workers/service/context/ServiceWorkerThread.cpp: Added.
(WebCore::ServiceWorkerThreadProxy::sharedDummyProxy):
(WebCore::ServiceWorkerThread::ServiceWorkerThread):
(WebCore::m_workerObjectProxy):
(WebCore::ServiceWorkerThread::~ServiceWorkerThread):
(WebCore::ServiceWorkerThread::createWorkerGlobalScope):
(WebCore::ServiceWorkerThread::runEventLoop):
- workers/service/context/ServiceWorkerThread.h: Copied from Source/WebCore/workers/service/ServiceWorkerGlobalScope.h.
(WebCore::ServiceWorkerThread::create):
(WebCore::ServiceWorkerThread::workerObjectProxy const):
- workers/service/server/SWServer.cpp:
(WebCore::SWServer::createWorker):
Source/WebKit:
- WebProcess/WebProcess.cpp:
(WebKit::WebProcess::startServiceWorkerContext):
LayoutTests:
- http/tests/workers/service/basic-register-exceptions-expected.txt:
- http/tests/workers/service/basic-register-expected.txt:
- http/tests/workers/service/registration-task-queue-scheduling-1-expected.txt:
- 10:35 PM Changeset in webkit [223276] by
-
- 4 edits4 adds in branches/safari-604-branch
Cherry-pick r223144. rdar://problem/34958765
- 10:35 PM Changeset in webkit [223275] by
-
- 9 edits8 deletes in branches/safari-604-branch
Cherry-pick r222627. rdar://problem/34938437
- 7:13 PM Changeset in webkit [223274] by
-
- 9 edits in trunk
WebAssembly: Wasm functions should have either JSFunctionType or TypeOfShouldCallGetCallData
https://bugs.webkit.org/show_bug.cgi?id=178210
Reviewed by Saam Barati.
JSTests:
- wasm/function-tests/trap-from-start-async.js:
(async.StartTrapsAsync):
- wasm/function-tests/trap-from-start.js:
(StartTraps):
- wasm/js-api/web-assembly-function.js:
(assert.eq.Object.getPrototypeOf):
- wasm/js-api/wrapper-function.js:
(return.new.WebAssembly.Module):
(assert.throws.makeInstance): Deleted.
(assert.throws.Bar): Deleted.
(assert.throws): Deleted.
Source/JavaScriptCore:
In Wasm, we have two JS functions exposed to users: WebAssemblyFunction and WebAssemblyWrapperFunction.
The former is an exported wasm function and the latter is an imported & exported function. Since they
have Call, they should be categorized into "function" in typeof operation.
However, these functions do not implement our function protocol correctly. They inherit JSFunction.
But JSType of WebAssemblyFunction is WebAssemblyFunctionType, and one of WebAssemblyWrapperFunction is
ObjectType. Since both do not have TypeOfShouldCallGetCallData, they return "object" when performing
typeof operation.
In this patch, we address the above issue by the following 2 fixes.
- We add TypeOfShouldCallGetCallData to WebAssemblyFunction. This is the same way how we implement
InternalFunction. Since WebAssemblyFunction requires WebAssemblyFunctionType for fast checking in Wasm
implementation, we cannot make this JSFunctionType.
- On the other hand, WebAssemblyWrapperFunction does not require a specific JSType. So this patch
changes JSType of WebAssemblyWrapperFunction to JSFunctionType. JSFunctionType can be usable for derived
classes of JSFunction (e.g. JSCustomGetterSetterFunction).
- wasm/js/WebAssemblyFunction.h:
(JSC::WebAssemblyFunction::signatureIndex const): Deleted.
(JSC::WebAssemblyFunction::wasmEntrypointLoadLocation const): Deleted.
(JSC::WebAssemblyFunction::callableFunction const): Deleted.
(JSC::WebAssemblyFunction::jsEntrypoint): Deleted.
(JSC::WebAssemblyFunction::offsetOfWasmEntrypointLoadLocation): Deleted.
- wasm/js/WebAssemblyWrapperFunction.cpp:
(JSC::WebAssemblyWrapperFunction::createStructure):
- wasm/js/WebAssemblyWrapperFunction.h:
(JSC::WebAssemblyWrapperFunction::signatureIndex const): Deleted.
(JSC::WebAssemblyWrapperFunction::wasmEntrypointLoadLocation const): Deleted.
(JSC::WebAssemblyWrapperFunction::callableFunction const): Deleted.
(JSC::WebAssemblyWrapperFunction::function): Deleted.
- 7:04 PM Changeset in webkit [223273] by
-
- 523 edits in trunk
import-w3c-tests modifies test sources and sometimes causes them to fail
https://bugs.webkit.org/show_bug.cgi?id=178234
Reviewed by Ryosuke Niwa.
LayoutTests/imported/w3c:
Resync tests now that they no longer get re-written by the importer.
Most changes are about casing and spacing.
Also note that some tests are now passing and that they have been rebaselined.
- web-platform-tests/FileAPI/url/multi-global-origin-serialization.sub.html:
- web-platform-tests/IndexedDB/abort-in-initial-upgradeneeded.html:
- web-platform-tests/IndexedDB/close-in-upgradeneeded.html:
- web-platform-tests/IndexedDB/cursor-overloads.htm:
- web-platform-tests/IndexedDB/idbkeyrange_incorrect.htm:
- web-platform-tests/IndexedDB/key_invalid.htm:
- web-platform-tests/IndexedDB/key_valid.html:
- web-platform-tests/IndexedDB/keyorder.htm:
- web-platform-tests/IndexedDB/keypath.htm:
- web-platform-tests/IndexedDB/keypath_invalid.htm:
- web-platform-tests/IndexedDB/string-list-ordering.htm:
- web-platform-tests/WebIDL/current-realm.html:
- web-platform-tests/css/css-display-3/display-contents-before-after-001.html:
- web-platform-tests/css/css-display-3/display-contents-dynamic-before-after-001.html:
- web-platform-tests/css/css-display-3/display-contents-dynamic-flex-002-inline-expected.html:
- web-platform-tests/css/css-display-3/display-contents-dynamic-flex-002-inline.html:
- web-platform-tests/css/css-display-3/display-contents-dynamic-flex-002-none-expected.html:
- web-platform-tests/css/css-display-3/display-contents-dynamic-flex-002-none.html:
- web-platform-tests/css/css-display-3/display-contents-dynamic-flex-003-inline-expected.html:
- web-platform-tests/css/css-display-3/display-contents-dynamic-flex-003-inline.html:
- web-platform-tests/css/css-display-3/display-contents-dynamic-flex-003-none-expected.html:
- web-platform-tests/css/css-display-3/display-contents-dynamic-flex-003-none.html:
- web-platform-tests/css/css-display-3/display-contents-dynamic-inline-flex-001-inline-expected.html:
- web-platform-tests/css/css-display-3/display-contents-dynamic-inline-flex-001-inline.html:
- web-platform-tests/css/css-display-3/display-contents-dynamic-inline-flex-001-none-expected.html:
- web-platform-tests/css/css-display-3/display-contents-dynamic-inline-flex-001-none.html:
- web-platform-tests/css/css-display-3/display-contents-dynamic-list-001-inline-expected.html:
- web-platform-tests/css/css-display-3/display-contents-dynamic-list-001-inline.html:
- web-platform-tests/css/css-display-3/display-contents-dynamic-list-001-none-expected.html:
- web-platform-tests/css/css-display-3/display-contents-dynamic-list-001-none.html:
- web-platform-tests/css/css-display-3/display-contents-dynamic-multicol-001-inline-expected.html:
- web-platform-tests/css/css-display-3/display-contents-dynamic-multicol-001-inline.html:
- web-platform-tests/css/css-display-3/display-contents-dynamic-multicol-001-none-expected.html:
- web-platform-tests/css/css-display-3/display-contents-dynamic-multicol-001-none.html:
- web-platform-tests/css/css-display-3/display-contents-dynamic-table-001-inline-expected.html:
- web-platform-tests/css/css-display-3/display-contents-dynamic-table-001-inline.html:
- web-platform-tests/css/css-display-3/display-contents-dynamic-table-001-none-expected.html:
- web-platform-tests/css/css-display-3/display-contents-dynamic-table-001-none.html:
- web-platform-tests/css/css-display-3/display-contents-dynamic-table-002-inline-expected.html:
- web-platform-tests/css/css-display-3/display-contents-dynamic-table-002-inline.html:
- web-platform-tests/css/css-display-3/display-contents-dynamic-table-002-none-expected.html:
- web-platform-tests/css/css-display-3/display-contents-dynamic-table-002-none.html:
- web-platform-tests/css/css-display-3/display-contents-flex-002-expected.html:
- web-platform-tests/css/css-display-3/display-contents-flex-002.html:
- web-platform-tests/css/css-display-3/display-contents-flex-003-expected.html:
- web-platform-tests/css/css-display-3/display-contents-flex-003.html:
- web-platform-tests/css/css-display-3/display-contents-inline-flex-001-expected.html:
- web-platform-tests/css/css-display-3/display-contents-inline-flex-001.html:
- web-platform-tests/css/css-display-3/display-contents-list-001-expected.html:
- web-platform-tests/css/css-display-3/display-contents-list-001.html:
- web-platform-tests/css/css-display-3/display-contents-multicol-001-expected.html:
- web-platform-tests/css/css-display-3/display-contents-multicol-001.html:
- web-platform-tests/css/css-display-3/display-contents-table-001-expected.html:
- web-platform-tests/css/css-display-3/display-contents-table-001.html:
- web-platform-tests/css/css-display-3/display-contents-table-002-expected.html:
- web-platform-tests/css/css-display-3/display-contents-table-002.html:
- web-platform-tests/css/css-display-3/display-flow-root-001-expected.html:
- web-platform-tests/css/css-display-3/display-flow-root-001.html:
- web-platform-tests/css/css-grid-1/grid-definition/fr-unit-expected.html:
- web-platform-tests/css/css-grid-1/grid-definition/fr-unit-with-percentage-expected.html:
- web-platform-tests/css/css-grid-1/grid-definition/fr-unit-with-percentage.html:
- web-platform-tests/css/css-grid-1/grid-definition/fr-unit.html:
- web-platform-tests/css/css-grid-1/grid-items/grid-minimum-size-grid-items-021.html:
- web-platform-tests/css/css-grid-1/grid-layout-properties.html:
- web-platform-tests/css/css-grid-1/grid-model/display-grid-expected.html:
- web-platform-tests/css/css-grid-1/grid-model/display-grid.html:
- web-platform-tests/css/css-grid-1/grid-model/display-inline-grid-expected.html:
- web-platform-tests/css/css-grid-1/grid-model/display-inline-grid.html:
- web-platform-tests/css/css-grid-1/grid-model/grid-display-grid-001.html:
- web-platform-tests/css/css-grid-1/grid-model/grid-display-inline-grid-001.html:
- web-platform-tests/css/css-grid-1/grid-model/grid-float-001.html:
- web-platform-tests/css/css-grid-1/grid-model/grid-inline-float-001.html:
- web-platform-tests/css/css-grid-1/grid-model/grid-inline-vertical-align-001.html:
- web-platform-tests/css/css-grid-1/grid-model/grid-support-display-001.html:
- web-platform-tests/css/css-grid-1/grid-model/grid-vertical-align-001.html:
- web-platform-tests/css/css-grid-1/test-plan/index.html:
- web-platform-tests/css/css-pseudo-4/marker-color-expected.html:
- web-platform-tests/css/css-pseudo-4/marker-color.html:
- web-platform-tests/css/css-pseudo-4/marker-font-properties.html:
- web-platform-tests/css/css-shapes-1/shape-outside-invalid-circle-003.html:
- web-platform-tests/css/css-shapes-1/shape-outside-invalid-ellipse-001.html:
- web-platform-tests/css/css-shapes-1/shape-outside-invalid-ellipse-002.html:
- web-platform-tests/css/css-shapes-1/shape-outside-invalid-ellipse-003.html:
- web-platform-tests/css/css-shapes-1/shape-outside-invalid-inset-001.html:
- web-platform-tests/css/css-shapes-1/shape-outside-invalid-inset-002.html:
- web-platform-tests/css/css-shapes-1/spec-examples/shape-outside-001.html:
- web-platform-tests/css/css-shapes-1/spec-examples/shape-outside-002.html:
- web-platform-tests/css/css-shapes-1/spec-examples/shape-outside-003.html:
- web-platform-tests/css/css-shapes-1/spec-examples/shape-outside-004.html:
- web-platform-tests/css/css-shapes-1/spec-examples/shape-outside-005.html:
- web-platform-tests/css/css-shapes-1/spec-examples/shape-outside-006.html:
- web-platform-tests/css/css-shapes-1/spec-examples/shape-outside-007.html:
- web-platform-tests/css/css-shapes-1/spec-examples/shape-outside-008.html:
- web-platform-tests/css/css-shapes-1/spec-examples/shape-outside-010.html:
- web-platform-tests/css/css-shapes-1/spec-examples/shape-outside-011.html:
- web-platform-tests/css/css-shapes-1/spec-examples/shape-outside-012.html:
- web-platform-tests/css/css-shapes-1/spec-examples/shape-outside-013.html:
- web-platform-tests/css/css-shapes-1/spec-examples/shape-outside-014.html:
- web-platform-tests/css/css-shapes-1/spec-examples/shape-outside-015.html:
- web-platform-tests/css/css-shapes-1/spec-examples/shape-outside-016.html:
- web-platform-tests/css/css-shapes-1/spec-examples/shape-outside-017.html:
- web-platform-tests/css/css-shapes-1/spec-examples/shape-outside-018.html:
- web-platform-tests/css/css-shapes-1/spec-examples/shape-outside-019.html:
- web-platform-tests/css/css-shapes-1/test-plan/index.html:
- web-platform-tests/css/css-ui-3/cursor-image-001.html:
- web-platform-tests/css/css-ui-3/cursor-image-002.html:
- web-platform-tests/css/css-ui-3/cursor-image-003.html:
- web-platform-tests/css/css-ui-3/cursor-image-004.html:
- web-platform-tests/css/css-ui-3/cursor-image-005-nfs.html:
- web-platform-tests/css/css-ui-3/cursor-image-005.html:
- web-platform-tests/css/css-ui-3/cursor-image-009.html:
- web-platform-tests/css/css-ui-3/cursor-image-012.html:
- web-platform-tests/css/css-ui-3/cursor-image-png-012.html:
- web-platform-tests/css/css-ui-3/cursor-image-png-013.html:
- web-platform-tests/css/css-ui-3/cursor-image-png-027.html:
- web-platform-tests/css/css-ui-3/cursor-image-png-028.html:
- web-platform-tests/css/css-ui-3/resize-015.html:
- web-platform-tests/css/css-ui-3/resize-018.html:
- web-platform-tests/css/css-ui-3/support/cursors/woolly-64.svg:
- web-platform-tests/css/css-ui-3/support/cursors/woolly.svg:
- web-platform-tests/css/css-ui-3/text-overflow-002-expected.html:
- web-platform-tests/css/css-ui-3/text-overflow-004-expected.html:
- web-platform-tests/css/css-ui-3/text-overflow-008.html:
- web-platform-tests/css/css-ui-3/text-overflow-011.html:
- web-platform-tests/css/css-ui-3/text-overflow-012.html:
- web-platform-tests/css/css-ui-3/text-overflow-013.html:
- web-platform-tests/css/css-ui-3/text-overflow-022.html:
- web-platform-tests/css/css-ui-3/text-overflow-023.html:
- web-platform-tests/cssom-view/elementFromPoint.html:
- web-platform-tests/cssom-view/elementsFromPoint.html:
- web-platform-tests/cssom-view/interfaces.html:
- web-platform-tests/cssom-view/scrollingElement-quirks-dynamic-001-expected.html:
- web-platform-tests/cssom-view/scrollingElement-quirks-dynamic-001.html:
- web-platform-tests/cssom-view/scrollingElement-quirks-dynamic-002-expected.html:
- web-platform-tests/cssom-view/scrollingElement-quirks-dynamic-002.html:
- web-platform-tests/cssom/cssom-fontfacerule-constructors.html:
- web-platform-tests/cssom/cssstyledeclaration-csstext.html:
- web-platform-tests/cssom/cssstyledeclaration-mutability.html:
- web-platform-tests/cssom/interfaces.html:
- web-platform-tests/cssom/medialist-interfaces-002.html:
- web-platform-tests/cssom/style-sheet-interfaces-002.html:
- web-platform-tests/cssom/ttwf-cssom-document-extension.html:
- web-platform-tests/dom/collections/HTMLCollection-supported-property-indices.html:
- web-platform-tests/dom/collections/HTMLCollection-supported-property-names.html:
- web-platform-tests/dom/nodes/DOMImplementation-createHTMLDocument.html:
- web-platform-tests/dom/nodes/Document-adoptNode.html:
- web-platform-tests/dom/nodes/Document-characterSet-normalization.html:
- web-platform-tests/dom/nodes/Document-constructor-svg.svg:
- web-platform-tests/dom/nodes/Document-constructor-xml.xml:
- web-platform-tests/dom/nodes/Document-constructor.html:
- web-platform-tests/dom/nodes/Document-doctype.html:
- web-platform-tests/dom/nodes/Document-getElementById.html:
- web-platform-tests/dom/nodes/Element-matches.html:
- web-platform-tests/dom/nodes/Element-webkitMatchesSelector.html:
- web-platform-tests/dom/nodes/MutationObserver-characterData-expected.txt:
- web-platform-tests/dom/nodes/MutationObserver-characterData.html:
- web-platform-tests/dom/nodes/Node-compareDocumentPosition.html:
- web-platform-tests/dom/nodes/Node-contains.html:
- web-platform-tests/dom/nodes/Node-lookupPrefix.xhtml:
- web-platform-tests/dom/nodes/ParentNode-querySelector-All-content.html:
- web-platform-tests/dom/nodes/ParentNode-querySelector-All-content.xht:
- web-platform-tests/dom/nodes/getElementsByClassName-14.htm:
- web-platform-tests/dom/nodes/getElementsByClassName-28.htm:
- web-platform-tests/dom/traversal/TreeWalker-acceptNode-filter.html:
- web-platform-tests/dom/traversal/TreeWalker-basic.html:
- web-platform-tests/dom/traversal/TreeWalker-currentNode.html:
- web-platform-tests/dom/traversal/TreeWalker-previousNodeLastChildReject.html:
- web-platform-tests/dom/traversal/TreeWalker-previousSiblingLastChildSkip.html:
- web-platform-tests/dom/traversal/TreeWalker-traversal-reject.html:
- web-platform-tests/dom/traversal/TreeWalker-traversal-skip-most.html:
- web-platform-tests/dom/traversal/TreeWalker-traversal-skip.html:
- web-platform-tests/dom/traversal/TreeWalker-walking-outside-a-tree.html:
- web-platform-tests/encrypted-media/clearkey-check-initdata-type.html:
- web-platform-tests/encrypted-media/clearkey-events-session-closed-event.html:
- web-platform-tests/encrypted-media/clearkey-events.html:
- web-platform-tests/encrypted-media/clearkey-generate-request-disallowed-input.html:
- web-platform-tests/encrypted-media/clearkey-invalid-license.html:
- web-platform-tests/encrypted-media/clearkey-keystatuses-multiple-sessions.html:
- web-platform-tests/encrypted-media/clearkey-keystatuses.html:
- web-platform-tests/encrypted-media/clearkey-mp4-playback-destroy-persistent-license.html:
- web-platform-tests/encrypted-media/clearkey-mp4-playback-persistent-license-events.html:
- web-platform-tests/encrypted-media/clearkey-mp4-playback-persistent-license.html:
- web-platform-tests/encrypted-media/clearkey-mp4-playback-persistent-usage-record-events.html:
- web-platform-tests/encrypted-media/clearkey-mp4-playback-persistent-usage-record.html:
- web-platform-tests/encrypted-media/clearkey-mp4-playback-retrieve-destroy-persistent-license.html:
- web-platform-tests/encrypted-media/clearkey-mp4-playback-retrieve-persistent-license.html:
- web-platform-tests/encrypted-media/clearkey-mp4-playback-retrieve-persistent-usage-record.html:
- web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-clear-encrypted.html:
- web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-encrypted-clear-sources.html:
- web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-encrypted-clear.html:
- web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-events.html:
- web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-multikey-sequential-readyState.html:
- web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-multikey-sequential.html:
- web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-multikey.html:
- web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-multisession.html:
- web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-setMediaKeys-after-src.html:
- web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-setMediaKeys-after-update.html:
- web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-setMediaKeys-immediately.html:
- web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-setMediaKeys-onencrypted.html:
- web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-two-videos.html:
- web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-waitingforkey.html:
- web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary.html:
- web-platform-tests/encrypted-media/clearkey-mp4-requestmediakeysystemaccess.html:
- web-platform-tests/encrypted-media/clearkey-mp4-reset-src-after-setmediakeys.html:
- web-platform-tests/encrypted-media/clearkey-mp4-setmediakeys-again-after-playback.html:
- web-platform-tests/encrypted-media/clearkey-mp4-setmediakeys-again-after-resetting-src.html:
- web-platform-tests/encrypted-media/clearkey-mp4-setmediakeys-at-same-time.html:
- web-platform-tests/encrypted-media/clearkey-mp4-setmediakeys-multiple-times-with-different-mediakeys.html:
- web-platform-tests/encrypted-media/clearkey-mp4-setmediakeys-multiple-times-with-the-same-mediakeys.html:
- web-platform-tests/encrypted-media/clearkey-mp4-setmediakeys-to-multiple-video-elements.html:
- web-platform-tests/encrypted-media/clearkey-mp4-setmediakeys.html:
- web-platform-tests/encrypted-media/clearkey-mp4-syntax-mediakeys.html:
- web-platform-tests/encrypted-media/clearkey-mp4-syntax-mediakeysession.html:
- web-platform-tests/encrypted-media/clearkey-mp4-syntax-mediakeysystemaccess.html:
- web-platform-tests/encrypted-media/clearkey-mp4-unique-origin.html:
- web-platform-tests/encrypted-media/clearkey-mp4-update-disallowed-input.html:
- web-platform-tests/encrypted-media/clearkey-mp4-waiting-for-a-key.html:
- web-platform-tests/encrypted-media/clearkey-not-callable-after-createsession.html:
- web-platform-tests/encrypted-media/clearkey-update-non-ascii-input.html:
- web-platform-tests/encrypted-media/drm-check-initdata-type.html:
- web-platform-tests/encrypted-media/drm-events-session-closed-event.html:
- web-platform-tests/encrypted-media/drm-events.html:
- web-platform-tests/encrypted-media/drm-expiration.html:
- web-platform-tests/encrypted-media/drm-generate-request-disallowed-input.html:
- web-platform-tests/encrypted-media/drm-invalid-license.html:
- web-platform-tests/encrypted-media/drm-keystatuses-multiple-sessions.html:
- web-platform-tests/encrypted-media/drm-keystatuses.html:
- web-platform-tests/encrypted-media/drm-mp4-onencrypted.html:
- web-platform-tests/encrypted-media/drm-mp4-playback-destroy-persistent-license.html:
- web-platform-tests/encrypted-media/drm-mp4-playback-persistent-license-events.html:
- web-platform-tests/encrypted-media/drm-mp4-playback-persistent-license.html:
- web-platform-tests/encrypted-media/drm-mp4-playback-persistent-usage-record-events.html:
- web-platform-tests/encrypted-media/drm-mp4-playback-persistent-usage-record.html:
- web-platform-tests/encrypted-media/drm-mp4-playback-retrieve-destroy-persistent-license.html:
- web-platform-tests/encrypted-media/drm-mp4-playback-retrieve-persistent-license.html:
- web-platform-tests/encrypted-media/drm-mp4-playback-retrieve-persistent-usage-record.html:
- web-platform-tests/encrypted-media/drm-mp4-playback-temporary-clear-encrypted.html:
- web-platform-tests/encrypted-media/drm-mp4-playback-temporary-encrypted-clear-sources.html:
- web-platform-tests/encrypted-media/drm-mp4-playback-temporary-encrypted-clear.html:
- web-platform-tests/encrypted-media/drm-mp4-playback-temporary-events.html:
- web-platform-tests/encrypted-media/drm-mp4-playback-temporary-expired.html:
- web-platform-tests/encrypted-media/drm-mp4-playback-temporary-multikey-sequential-readyState.html:
- web-platform-tests/encrypted-media/drm-mp4-playback-temporary-multikey-sequential.html:
- web-platform-tests/encrypted-media/drm-mp4-playback-temporary-multikey.html:
- web-platform-tests/encrypted-media/drm-mp4-playback-temporary-multisession.html:
- web-platform-tests/encrypted-media/drm-mp4-playback-temporary-setMediaKeys-after-src.html:
- web-platform-tests/encrypted-media/drm-mp4-playback-temporary-setMediaKeys-after-update.html:
- web-platform-tests/encrypted-media/drm-mp4-playback-temporary-setMediaKeys-immediately.html:
- web-platform-tests/encrypted-media/drm-mp4-playback-temporary-setMediaKeys-onencrypted.html:
- web-platform-tests/encrypted-media/drm-mp4-playback-temporary-two-videos.html:
- web-platform-tests/encrypted-media/drm-mp4-playback-temporary-waitingforkey.html:
- web-platform-tests/encrypted-media/drm-mp4-playback-temporary.html:
- web-platform-tests/encrypted-media/drm-mp4-requestmediakeysystemaccess.html:
- web-platform-tests/encrypted-media/drm-mp4-reset-src-after-setmediakeys.html:
- web-platform-tests/encrypted-media/drm-mp4-setmediakeys-again-after-playback.html:
- web-platform-tests/encrypted-media/drm-mp4-setmediakeys-again-after-resetting-src.html:
- web-platform-tests/encrypted-media/drm-mp4-setmediakeys-at-same-time.html:
- web-platform-tests/encrypted-media/drm-mp4-setmediakeys-multiple-times-with-different-mediakeys.html:
- web-platform-tests/encrypted-media/drm-mp4-setmediakeys-multiple-times-with-the-same-mediakeys.html:
- web-platform-tests/encrypted-media/drm-mp4-setmediakeys-to-multiple-video-elements.html:
- web-platform-tests/encrypted-media/drm-mp4-setmediakeys.html:
- web-platform-tests/encrypted-media/drm-mp4-syntax-mediakeys.html:
- web-platform-tests/encrypted-media/drm-mp4-syntax-mediakeysession.html:
- web-platform-tests/encrypted-media/drm-mp4-syntax-mediakeysystemaccess.html:
- web-platform-tests/encrypted-media/drm-mp4-unique-origin.html:
- web-platform-tests/encrypted-media/drm-mp4-waiting-for-a-key.html:
- web-platform-tests/encrypted-media/drm-not-callable-after-createsession.html:
- web-platform-tests/encrypted-media/drm-temporary-license-type.html:
- web-platform-tests/encrypted-media/resources/clearkey-retrieve-destroy-persistent-license.html:
- web-platform-tests/encrypted-media/resources/clearkey-retrieve-persistent-license.html:
- web-platform-tests/encrypted-media/resources/drm-retrieve-destroy-persistent-license.html:
- web-platform-tests/encrypted-media/resources/drm-retrieve-persistent-license.html:
- web-platform-tests/encrypted-media/resources/drm-retrieve-persistent-usage-record.html:
- web-platform-tests/encrypted-media/resources/retrieve-persistent-usage-record.html:
- web-platform-tests/eventsource/dedicated-worker/eventsource-close.htm:
- web-platform-tests/eventsource/dedicated-worker/eventsource-constructor-non-same-origin.htm:
- web-platform-tests/eventsource/dedicated-worker/eventsource-constructor-url-bogus.htm:
- web-platform-tests/eventsource/dedicated-worker/eventsource-onmesage.htm:
- web-platform-tests/eventsource/dedicated-worker/eventsource-onopen.htm:
- web-platform-tests/eventsource/dedicated-worker/eventsource-prototype.htm:
- web-platform-tests/eventsource/dedicated-worker/eventsource-url.htm:
- web-platform-tests/eventsource/eventsource-constructor-document-domain.htm:
- web-platform-tests/eventsource/eventsource-constructor-non-same-origin.htm:
- web-platform-tests/eventsource/eventsource-onmessage-trusted.htm:
- web-platform-tests/eventsource/eventsource-prototype.htm:
- web-platform-tests/eventsource/format-leading-space.htm:
- web-platform-tests/eventsource/format-mime-bogus.htm:
- web-platform-tests/eventsource/format-mime-valid-bogus.htm:
- web-platform-tests/eventsource/shared-worker/eventsource-close.htm:
- web-platform-tests/eventsource/shared-worker/eventsource-constructor-non-same-origin.htm:
- web-platform-tests/eventsource/shared-worker/eventsource-constructor-url-bogus.htm:
- web-platform-tests/eventsource/shared-worker/eventsource-eventtarget.htm:
- web-platform-tests/eventsource/shared-worker/eventsource-onmesage.htm:
- web-platform-tests/eventsource/shared-worker/eventsource-onopen.htm:
- web-platform-tests/eventsource/shared-worker/eventsource-prototype.htm:
- web-platform-tests/eventsource/shared-worker/eventsource-url.htm:
- web-platform-tests/fetch/api/request/multi-globals/url-parsing.html:
- web-platform-tests/fetch/api/resources/basic.html:
- web-platform-tests/fetch/api/response/multi-globals/url-parsing.html:
- web-platform-tests/fetch/api/response/response-trailer.html:
- web-platform-tests/fetch/nosniff/stylesheet.html:
- web-platform-tests/html/browsers/browsing-the-web/history-traversal/unset_context_name.html:
- web-platform-tests/html/browsers/browsing-the-web/navigating-across-documents/012.html:
- web-platform-tests/html/browsers/browsing-the-web/navigating-across-documents/navigation-unload-form-submit.html:
- web-platform-tests/html/browsers/browsing-the-web/navigating-across-documents/navigation-unload-same-origin-fragment.html:
- web-platform-tests/html/browsers/browsing-the-web/scroll-to-fragid/001.html:
- web-platform-tests/html/browsers/browsing-the-web/scroll-to-fragid/002.html:
- web-platform-tests/html/browsers/browsing-the-web/scroll-to-fragid/003.html:
- web-platform-tests/html/browsers/browsing-the-web/scroll-to-fragid/004.html:
- web-platform-tests/html/browsers/browsing-the-web/scroll-to-fragid/005.html:
- web-platform-tests/html/browsers/browsing-the-web/scroll-to-fragid/006.html:
- web-platform-tests/html/browsers/browsing-the-web/scroll-to-fragid/007.html:
- web-platform-tests/html/browsers/browsing-the-web/scroll-to-fragid/forward-triggers-hashchange.html:
- web-platform-tests/html/browsers/history/the-history-interface/008.html:
- web-platform-tests/html/browsers/history/the-location-interface/cross_origin_joined_frame.sub.html:
- web-platform-tests/html/browsers/history/the-location-interface/location-protocol-setter-non-broken-weird.html:
- web-platform-tests/html/browsers/history/the-location-interface/location-protocol-setter-non-broken.html:
- web-platform-tests/html/browsers/history/the-location-interface/location-protocol-setter-with-colon.sub.html:
- web-platform-tests/html/browsers/history/the-location-interface/location-tojson.html:
- web-platform-tests/html/browsers/history/the-location-interface/same_origin_frame.html:
- web-platform-tests/html/browsers/offline/resources/html/clock.html:
- web-platform-tests/html/browsers/origin/cross-origin-objects/frame.html:
- web-platform-tests/html/browsers/origin/relaxing-the-same-origin-restriction/document_domain_setter_null.tentative.html:
- web-platform-tests/html/browsers/origin/relaxing-the-same-origin-restriction/document_domain_setter_srcdoc.html:
- web-platform-tests/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/open-features-negative-innerwidth-innerheight.html:
- web-platform-tests/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/open-features-negative-screenx-screeny.html:
- web-platform-tests/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/open-features-negative-top-left.html:
- web-platform-tests/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/open-features-negative-width-height.html:
- web-platform-tests/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/open-features-non-integer-height.html:
- web-platform-tests/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/open-features-non-integer-innerheight.html:
- web-platform-tests/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/open-features-non-integer-innerwidth.html:
- web-platform-tests/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/open-features-non-integer-left.html:
- web-platform-tests/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/open-features-non-integer-screenx.html:
- web-platform-tests/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/open-features-non-integer-screeny.html:
- web-platform-tests/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/open-features-non-integer-top.html:
- web-platform-tests/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/open-features-non-integer-width.html:
- web-platform-tests/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/open-features-tokenization-innerheight-innerwidth.html:
- web-platform-tests/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/open-features-tokenization-screenx-screeny.html:
- web-platform-tests/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/open-features-tokenization-top-left.html:
- web-platform-tests/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/open-features-tokenization-width-height.html:
- web-platform-tests/html/dom/documents/dom-tree-accessors/Document.currentScript.html:
- web-platform-tests/html/dom/elements/global-attributes/the-lang-attribute-001.html:
- web-platform-tests/html/dom/elements/global-attributes/the-lang-attribute-002.html:
- web-platform-tests/html/dom/elements/global-attributes/the-lang-attribute-003.html:
- web-platform-tests/html/dom/elements/global-attributes/the-lang-attribute-004.html:
- web-platform-tests/html/dom/elements/global-attributes/the-lang-attribute-005.html:
- web-platform-tests/html/dom/elements/global-attributes/the-lang-attribute-006.html:
- web-platform-tests/html/dom/elements/global-attributes/the-lang-attribute-007.html:
- web-platform-tests/html/dom/elements/global-attributes/the-lang-attribute-008.html:
- web-platform-tests/html/dom/elements/global-attributes/the-lang-attribute-009.html:
- web-platform-tests/html/dom/elements/global-attributes/the-lang-attribute-010.html:
- web-platform-tests/html/dom/interfaces.html:
- web-platform-tests/html/dom/self-origin.sub.html:
- web-platform-tests/html/semantics/document-metadata/the-meta-element/the-lang-attribute-012.html:
- web-platform-tests/html/semantics/embedded-content/media-elements/user-interface/muted.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/2d.canvas.readonly.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/2d.canvas.reference.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/2d.getcontext.exists.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/2d.getcontext.extraargs.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/2d.getcontext.shared.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/2d.getcontext.unique.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/2d.type.exists.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/2d.type.extend.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/2d.type.prototype.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/2d.type.replace.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/context.arguments.missing.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/context.casesensitive.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/context.emptystring.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/context.unrecognised.badname.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/context.unrecognised.badsuffix.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/context.unrecognised.nullsuffix.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/context.unrecognised.unicode.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/fallback.basic.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/fallback.multiple.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/fallback.nested.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/initial.colour.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/initial.reset.2dstate.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/initial.reset.clip.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/initial.reset.different.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/initial.reset.gradient.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/initial.reset.path.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/initial.reset.pattern.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/initial.reset.same.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/initial.reset.transform.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.dataURI.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.drawImage.canvas.cross.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.drawImage.canvas.redirect.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.drawImage.image.cross.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.drawImage.image.redirect.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.fillStyle.cross.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.fillStyle.redirect.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.strokeStyle.cross.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.strokeStyle.redirect.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.timing.cross.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.timing.redirect.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.pattern.create.cross.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.pattern.create.redirect.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.pattern.cross.cross.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.pattern.cross.redirect.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.pattern.image.fillStyle.cross.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.pattern.image.fillStyle.redirect.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.pattern.image.strokeStyle.cross.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.pattern.image.strokeStyle.redirect.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.reset.cross.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.reset.redirect.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/size.attributes.default.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/size.attributes.idl.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/size.attributes.idl.set.zero.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.decimal.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.em.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.empty.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.exp.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.hex.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.junk.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.minus.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.octal.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.onlyspace.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.percent.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.plus.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.space.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.trailingjunk.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.zero.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setcontent.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setidl.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setidlzero.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/size.attributes.removed.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.decimal.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.em.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.empty.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.exp.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.hex.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.junk.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.minus.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.octal.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.onlyspace.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.percent.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.plus.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.space.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.trailingjunk.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.whitespace.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.zero.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/size.attributes.style.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.1.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.2.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.3.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/toDataURL.bogustype.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/toDataURL.default.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.alpha.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.primarycolours.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.basic.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.notnumber.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.outsiderange.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/toDataURL.jpg.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/toDataURL.lowercase.ascii.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/toDataURL.lowercase.unicode.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/toDataURL.nocontext.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/toDataURL.png.complexcolours.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/toDataURL.png.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/toDataURL.png.primarycolours.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/toDataURL.unrecognised.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/toDataURL.zeroheight.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/toDataURL.zerosize.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/toDataURL.zerowidth.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/type.delete.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/type.exists.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/type.extend.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/type.name.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/type.prototype.html:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/type.replace.html:
- web-platform-tests/html/semantics/embedded-content/the-embed-element/embed-in-object-fallback.html:
- web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_top_navigation-3.html:
- web-platform-tests/html/semantics/embedded-content/the-img-element/adoption.html:
- web-platform-tests/html/semantics/embedded-content/the-img-element/current-pixel-density/basic.html:
- web-platform-tests/html/semantics/embedded-content/the-img-element/non-active-document.html:
- web-platform-tests/html/semantics/embedded-content/the-img-element/sizes/sizes-iframed.sub.html:
- web-platform-tests/html/semantics/embedded-content/the-img-element/srcset/parse-a-srcset-attribute.html:
- web-platform-tests/html/semantics/embedded-content/the-img-element/srcset/select-an-image-source.html:
- web-platform-tests/html/semantics/embedded-content/the-img-element/update-the-source-set-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-img-element/update-the-source-set.html:
- web-platform-tests/html/semantics/forms/form-control-infrastructure/form.html:
- web-platform-tests/html/semantics/forms/the-form-element/form-elements-filter.html:
- web-platform-tests/html/semantics/forms/the-form-element/form-nameditem.html:
- web-platform-tests/html/semantics/grouping-content/the-pre-element/grouping-pre-reftest-001.html:
- web-platform-tests/html/semantics/interactive-elements/the-details-element/details.html:
- web-platform-tests/html/semantics/interactive-elements/the-dialog-element/centering-iframe.sub.html:
- web-platform-tests/html/semantics/scripting-1/the-script-element/load-error-events-1.html:
- web-platform-tests/html/semantics/scripting-1/the-script-element/load-error-events-2.html:
- web-platform-tests/html/semantics/scripting-1/the-script-element/nomodule-set-on-async-classic-script.html:
- web-platform-tests/html/semantics/scripting-1/the-script-element/script-charset-01.html:
- web-platform-tests/html/semantics/scripting-1/the-script-element/script-charset-02.html:
- web-platform-tests/html/semantics/scripting-1/the-script-element/script-type-and-language-empty.html:
- web-platform-tests/html/semantics/scripting-1/the-script-element/script-type-and-language-with-params.html:
- web-platform-tests/html/semantics/selectors/pseudo-classes/checked.html:
- web-platform-tests/html/semantics/selectors/pseudo-classes/enabled.html:
- web-platform-tests/html/semantics/selectors/pseudo-classes/inrange-outofrange.html:
- web-platform-tests/html/semantics/selectors/pseudo-classes/readwrite-readonly.html:
- web-platform-tests/html/semantics/tabular-data/processing-model-1/span-limits.html:
- web-platform-tests/html/semantics/text-level-semantics/the-a-element/a.text-getter-01.html:
- web-platform-tests/html/semantics/text-level-semantics/the-a-element/a.text-setter-01.html:
- web-platform-tests/html/semantics/text-level-semantics/the-time-element/001.html:
- web-platform-tests/html/syntax/parsing-html-fragments/the-input-byte-stream-001.html:
- web-platform-tests/html/syntax/parsing-html-fragments/the-input-byte-stream-007.html:
- web-platform-tests/html/syntax/parsing-html-fragments/the-input-byte-stream-009.html:
- web-platform-tests/html/syntax/parsing-html-fragments/the-input-byte-stream-016.html:
- web-platform-tests/html/syntax/parsing-html-fragments/the-input-byte-stream-018.html:
- web-platform-tests/html/syntax/parsing-html-fragments/the-input-byte-stream-030.html:
- web-platform-tests/html/syntax/parsing-html-fragments/the-input-byte-stream-034.html:
- web-platform-tests/html/syntax/parsing-html-fragments/the-input-byte-stream-037.html:
- web-platform-tests/html/syntax/parsing-html-fragments/the-input-byte-stream-038.html:
- web-platform-tests/html/syntax/parsing/Element.getElementsByTagName-foreign-02.html:
- web-platform-tests/html/syntax/parsing/math-parse03.html:
- web-platform-tests/html/syntax/parsing/named-character-references.html:
- web-platform-tests/html/syntax/serializing-html-fragments/serializing-expected.txt:
- web-platform-tests/html/syntax/serializing-html-fragments/serializing.html:
- web-platform-tests/html/webappapis/atob/base64.html:
- web-platform-tests/html/webappapis/scripting/events/eventhandler-cancellation.html:
- web-platform-tests/html/webappapis/scripting/events/resources/compiled-event-handler-settings-objects-support.html:
- web-platform-tests/html/webappapis/scripting/processing-model-2/compile-error-in-body-onerror.html:
- web-platform-tests/html/webappapis/scripting/processing-model-2/window-onerror-parse-error.html:
- web-platform-tests/html/webappapis/scripting/processing-model-2/window-onerror-runtime-error-throw.html:
- web-platform-tests/html/webappapis/scripting/processing-model-2/window-onerror-runtime-error.html:
- web-platform-tests/media-source/mediasource-activesourcebuffers.html:
- web-platform-tests/media-source/mediasource-addsourcebuffer.html:
- web-platform-tests/media-source/mediasource-append-buffer.html:
- web-platform-tests/media-source/mediasource-appendbuffer-quota-exceeded.html:
- web-platform-tests/media-source/mediasource-appendwindow.html:
- web-platform-tests/media-source/mediasource-attach-stops-delaying-load-event.html:
- web-platform-tests/media-source/mediasource-avtracks.html:
- web-platform-tests/media-source/mediasource-buffered.html:
- web-platform-tests/media-source/mediasource-closed.html:
- web-platform-tests/media-source/mediasource-config-change-mp4-a-bitrate.html:
- web-platform-tests/media-source/mediasource-config-change-mp4-av-audio-bitrate.html:
- web-platform-tests/media-source/mediasource-config-change-mp4-av-framesize.html:
- web-platform-tests/media-source/mediasource-config-change-mp4-av-video-bitrate.html:
- web-platform-tests/media-source/mediasource-config-change-mp4-v-bitrate.html:
- web-platform-tests/media-source/mediasource-config-change-mp4-v-framerate.html:
- web-platform-tests/media-source/mediasource-config-change-mp4-v-framesize.html:
- web-platform-tests/media-source/mediasource-config-change-webm-a-bitrate.html:
- web-platform-tests/media-source/mediasource-config-change-webm-av-audio-bitrate.html:
- web-platform-tests/media-source/mediasource-config-change-webm-av-framesize.html:
- web-platform-tests/media-source/mediasource-config-change-webm-av-video-bitrate.html:
- web-platform-tests/media-source/mediasource-config-change-webm-v-bitrate.html:
- web-platform-tests/media-source/mediasource-config-change-webm-v-framerate.html:
- web-platform-tests/media-source/mediasource-config-change-webm-v-framesize.html:
- web-platform-tests/media-source/mediasource-detach.html:
- web-platform-tests/media-source/mediasource-duration-boundaryconditions.html:
- web-platform-tests/media-source/mediasource-duration.html:
- web-platform-tests/media-source/mediasource-endofstream-invaliderror.html:
- web-platform-tests/media-source/mediasource-errors.html:
- web-platform-tests/media-source/mediasource-getvideoplaybackquality.html:
- web-platform-tests/media-source/mediasource-is-type-supported.html:
- web-platform-tests/media-source/mediasource-liveseekable.html:
- web-platform-tests/media-source/mediasource-multiple-attach.html:
- web-platform-tests/media-source/mediasource-play-then-seek-back.html:
- web-platform-tests/media-source/mediasource-play.html:
- web-platform-tests/media-source/mediasource-preload.html:
- web-platform-tests/media-source/mediasource-redundant-seek.html:
- web-platform-tests/media-source/mediasource-remove.html:
- web-platform-tests/media-source/mediasource-removesourcebuffer.html:
- web-platform-tests/media-source/mediasource-seek-beyond-duration.html:
- web-platform-tests/media-source/mediasource-seek-during-pending-seek.html:
- web-platform-tests/media-source/mediasource-seekable.html:
- web-platform-tests/media-source/mediasource-sequencemode-append-buffer.html:
- web-platform-tests/media-source/mediasource-sourcebuffer-mode.html:
- web-platform-tests/media-source/mediasource-sourcebuffer-trackdefaults.html:
- web-platform-tests/media-source/mediasource-sourcebufferlist.html:
- web-platform-tests/media-source/mediasource-timestamp-offset.html:
- web-platform-tests/media-source/mediasource-trackdefault.html:
- web-platform-tests/media-source/mediasource-trackdefaultlist.html:
- web-platform-tests/mediacapture-streams/MediaStream-MediaElement-preload-none.https.html:
- web-platform-tests/resource-timing/resource-timing.html:
- web-platform-tests/resource-timing/resources/resource_timing_test0.xml:
- web-platform-tests/resources/test/tests/iframe-consolidate-errors.html:
- web-platform-tests/resources/test/tests/iframe-consolidate-tests.html:
- web-platform-tests/resources/test/tests/iframe-msg.html:
- web-platform-tests/service-workers/service-worker/fetch-response-taint.https.html:
- web-platform-tests/service-workers/service-worker/multi-globals/url-parsing.https.html:
- web-platform-tests/service-workers/service-worker/multiple-update.https.html:
- web-platform-tests/service-workers/service-worker/resources/appcache-ordering.is-appcached.html:
- web-platform-tests/service-workers/service-worker/resources/clients-matchall-client-types-iframe.html:
- web-platform-tests/service-workers/service-worker/update-after-oneday.https.html:
- web-platform-tests/service-workers/stub-3.1-service-worker-obj.html:
- web-platform-tests/service-workers/stub-3.1.1-service-worker-scope.html:
- web-platform-tests/service-workers/stub-3.1.2-service-worker-url.html:
- web-platform-tests/service-workers/stub-3.1.3-service-worker-state.html:
- web-platform-tests/service-workers/stub-3.1.4-service-worker-on-state-change.html:
- web-platform-tests/service-workers/stub-3.2-navigator-service-worker.html:
- web-platform-tests/service-workers/stub-3.2.1-navigator-service-worker-installing.html:
- web-platform-tests/service-workers/stub-3.2.10-navigator-service-worker-oncontrollerchange.html:
- web-platform-tests/service-workers/stub-3.2.11-navigator-service-worker-onreloadpage.html:
- web-platform-tests/service-workers/stub-3.2.12-navigator-service-worker-onerror.html:
- web-platform-tests/service-workers/stub-3.2.2-navigator-service-worker-waiting.html:
- web-platform-tests/service-workers/stub-3.2.3-navigator-service-worker-active.html:
- web-platform-tests/service-workers/stub-3.2.4-navigator-service-worker-controller.html:
- web-platform-tests/service-workers/stub-3.2.5-navigator-service-worker-ready.html:
- web-platform-tests/service-workers/stub-3.2.6-navigator-service-worker-getAll.html:
- web-platform-tests/service-workers/stub-3.2.7-navigator-service-worker-register.html:
- web-platform-tests/service-workers/stub-3.2.8-navigator-service-worker-unregister.html:
- web-platform-tests/service-workers/stub-3.2.9-navigator-service-worker-onupdatefound.html:
- web-platform-tests/service-workers/stub-4.1-service-worker-global-scope.html:
- web-platform-tests/service-workers/stub-4.1.1-service-worker-global-scope-caches.html:
- web-platform-tests/service-workers/stub-4.1.2-service-worker-global-scope-clients.html:
- web-platform-tests/service-workers/stub-4.1.3-service-worker-global-scope-scope.html:
- web-platform-tests/service-workers/stub-4.1.4-service-worker-global-scope-fetch.html:
- web-platform-tests/service-workers/stub-4.1.5-service-worker-global-scope-update.html:
- web-platform-tests/service-workers/stub-4.1.6-service-worker-global-scope-unregister.html:
- web-platform-tests/service-workers/stub-4.1.7-service-worker-global-scope-onmessage.html:
- web-platform-tests/service-workers/stub-4.2-client.html:
- web-platform-tests/service-workers/stub-4.3-service-worker-clients.html:
- web-platform-tests/service-workers/stub-4.3.1-get-serviced-method.html:
- web-platform-tests/service-workers/stub-4.3.2-reloadall-method.html:
- web-platform-tests/service-workers/stub-4.5-response-objects.html:
- web-platform-tests/service-workers/stub-4.5.2-response.html:
- web-platform-tests/service-workers/stub-4.5.4-opaque-response.html:
- web-platform-tests/service-workers/stub-4.6-cache-objects.html:
- web-platform-tests/service-workers/stub-4.6.1-cache-lifetimes.html:
- web-platform-tests/service-workers/stub-4.6.3-cache-storage.html:
- web-platform-tests/service-workers/stub-4.7.1-install-phase-event.html:
- web-platform-tests/service-workers/stub-4.7.1.1-wait-until-method.html:
- web-platform-tests/service-workers/stub-4.7.2-install-event.html:
- web-platform-tests/service-workers/stub-4.7.2.1-install-event-section.html:
- web-platform-tests/service-workers/stub-4.7.2.2-replace-method.html:
- web-platform-tests/service-workers/stub-4.7.3-activate-event.html:
- web-platform-tests/service-workers/stub-4.7.4.1-fetch-event-section.html:
- web-platform-tests/service-workers/stub-4.7.4.2-respond-with-method.html:
- web-platform-tests/service-workers/stub-4.7.4.3-default-method.html:
- web-platform-tests/service-workers/stub-4.7.4.4-is-reload-attribute.html:
- web-platform-tests/service-workers/stub-5.1-origin-relativity.html:
- web-platform-tests/service-workers/stub-5.2-cross-origin-resources.html:
- web-platform-tests/shadow-dom/leaktests/get-elements.html:
- web-platform-tests/tools/pywebsocket/src/example/arraybuffer_benchmark.html:
- web-platform-tests/tools/pywebsocket/src/example/benchmark.html:
- web-platform-tests/tools/pywebsocket/src/example/console.html:
- web-platform-tests/tools/pywebsocket/src/example/eventsource.html:
- web-platform-tests/tools/pywebsocket/src/example/xhr_benchmark.html:
- web-platform-tests/tools/pywebsocket/src/example/xhr_event_logger.html:
- web-platform-tests/url/a-element-origin-xhtml.xhtml:
- web-platform-tests/url/a-element-origin.html:
- web-platform-tests/url/a-element-xhtml.xhtml:
- web-platform-tests/url/a-element.html:
- web-platform-tests/webrtc/RTCConfiguration-iceCandidatePoolSize.html:
- web-platform-tests/webrtc/RTCPeerConnection-canTrickleIceCandidates.html:
- web-platform-tests/webrtc/RTCPeerConnection-idl.html:
- web-platform-tests/webrtc/RTCPeerConnectionIceEvent-constructor.html:
- web-platform-tests/webrtc/datachannel-emptystring.html:
- web-platform-tests/webrtc/datachannel-idlharness.html:
- web-platform-tests/webrtc/getstats.html:
- web-platform-tests/webrtc/no-media-call.html:
- web-platform-tests/webrtc/promises-call.html:
- web-platform-tests/webrtc/simplecall.html:
Tools:
Update import-w3c-tests to stop rewriting tests as this is causing some tests
to fail unexpectedly.
- Scripts/webkitpy/w3c/test_importer.py:
(TestImporter.import_tests):
- 6:59 PM Changeset in webkit [223272] by
-
- 1 copy in tags/Safari-604.3.5.0.3
Tag Safari-604.3.5.0.3.
- 6:55 PM Changeset in webkit [223271] by
-
- 48 edits4 deletes in trunk
Use asynchronous ResourceHandleClient calls for WebKit1
https://bugs.webkit.org/show_bug.cgi?id=160677
Reviewed by Brady Eidson.
Source/WebCore:
Covered by existing tests.
- PlatformAppleWin.cmake:
- PlatformMac.cmake:
- WebCore.xcodeproj/project.pbxproj:
- loader/ResourceLoader.cpp:
(WebCore::ResourceLoader::willSendRequestAsync):
(WebCore::ResourceLoader::didReceiveResponseAsync):
(WebCore::ResourceLoader::canAuthenticateAgainstProtectionSpaceAsync):
- loader/ResourceLoader.h:
- loader/appcache/ApplicationCacheGroup.cpp:
(WebCore::ApplicationCacheGroup::didReceiveResponseAsync):
(WebCore::ApplicationCacheGroup::willSendRequestAsync):
(WebCore::ApplicationCacheGroup::canAuthenticateAgainstProtectionSpaceAsync):
(WebCore::ApplicationCacheGroup::didReceiveResponse): Deleted.
- loader/appcache/ApplicationCacheGroup.h:
- platform/network/BlobResourceHandle.cpp:
(WebCore::BlobResourceHandle::continueDidReceiveResponse):
(WebCore::BlobResourceHandle::getSizeForNext):
(WebCore::BlobResourceHandle::notifyResponseOnSuccess):
(WebCore::BlobResourceHandle::notifyResponseOnError):
- platform/network/PingHandle.h:
- platform/network/ResourceHandle.cpp:
(WebCore::ResourceHandle::didReceiveResponse):
(WebCore::ResourceHandle::usesAsyncCallbacks): Deleted.
- platform/network/ResourceHandle.h:
- platform/network/ResourceHandleClient.cpp:
(WebCore::ResourceHandleClient::~ResourceHandleClient):
(WebCore::ResourceHandleClient::willSendRequest): Deleted.
(WebCore::ResourceHandleClient::willSendRequestAsync): Deleted.
(WebCore::ResourceHandleClient::didReceiveResponseAsync): Deleted.
(WebCore::ResourceHandleClient::canAuthenticateAgainstProtectionSpaceAsync): Deleted.
- platform/network/ResourceHandleClient.h:
(WebCore::ResourceHandleClient::didReceiveAuthenticationChallenge):
(WebCore::ResourceHandleClient::didReceiveResponse): Deleted.
(WebCore::ResourceHandleClient::usesAsyncCallbacks): Deleted.
(WebCore::ResourceHandleClient::canAuthenticateAgainstProtectionSpace): Deleted.
- platform/network/ResourceHandleInternal.h:
(WebCore::ResourceHandleInternal::ResourceHandleInternal):
- platform/network/SynchronousLoaderClient.cpp:
(WebCore::SynchronousLoaderClient::willSendRequestAsync):
(WebCore::SynchronousLoaderClient::canAuthenticateAgainstProtectionSpaceAsync):
(WebCore::SynchronousLoaderClient::didReceiveResponseAsync):
(WebCore::SynchronousLoaderClient::didFinishLoading):
(WebCore::SynchronousLoaderClient::didFail):
(WebCore::SynchronousLoaderClient::willSendRequest): Deleted.
(WebCore::SynchronousLoaderClient::canAuthenticateAgainstProtectionSpace): Deleted.
(WebCore::SynchronousLoaderClient::didReceiveResponse): Deleted.
- platform/network/SynchronousLoaderClient.h:
- platform/network/cf/ResourceHandleCFNet.cpp:
(WebCore::ResourceHandle::createCFURLConnection):
(WebCore::ResourceHandle::start):
(WebCore::ResourceHandle::willSendRequest):
(WebCore::ResourceHandle::shouldUseCredentialStorage):
(WebCore::ResourceHandle::canAuthenticateAgainstProtectionSpace):
(WebCore::ResourceHandle::platformLoadResourceSynchronously):
- platform/network/cf/ResourceHandleCFURLConnectionDelegateWithOperationQueue.cpp:
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::ResourceHandleCFURLConnectionDelegateWithOperationQueue):
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::releaseHandle):
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::willSendRequest):
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didReceiveResponse):
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didReceiveData):
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didFinishLoading):
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didFail):
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::willCacheResponse):
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didReceiveChallenge):
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didSendBodyData):
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::shouldUseCredentialStorage):
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::canRespondToProtectionSpace):
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::continueCanAuthenticateAgainstProtectionSpace):
- platform/network/cf/ResourceHandleCFURLConnectionDelegateWithOperationQueue.h:
- platform/network/cf/SynchronousResourceHandleCFURLConnectionDelegate.cpp: Removed.
- platform/network/cf/SynchronousResourceHandleCFURLConnectionDelegate.h: Removed.
- platform/network/mac/ResourceHandleMac.mm:
(WebCore::ResourceHandle::start):
(WebCore::ResourceHandle::schedule):
(WebCore::ResourceHandle::makeDelegate):
(WebCore::ResourceHandle::delegate):
(WebCore::ResourceHandle::platformLoadResourceSynchronously):
(WebCore::ResourceHandle::willSendRequest):
(WebCore::ResourceHandle::continueWillSendRequest):
(WebCore::ResourceHandle::continueDidReceiveResponse):
(WebCore::ResourceHandle::canAuthenticateAgainstProtectionSpace):
(WebCore::ResourceHandle::continueCanAuthenticateAgainstProtectionSpace):
(WebCore::ResourceHandle::continueWillCacheResponse):
(WebCore::ResourceHandle::shouldUseCredentialStorage): Deleted.
- platform/network/mac/WebCoreResourceHandleAsDelegate.h: Removed.
- platform/network/mac/WebCoreResourceHandleAsDelegate.mm: Removed.
- platform/network/mac/WebCoreResourceHandleAsOperationQueueDelegate.h:
- platform/network/mac/WebCoreResourceHandleAsOperationQueueDelegate.mm:
(-[WebCoreResourceHandleAsOperationQueueDelegate connection:willSendRequest:redirectResponse:]):
(-[WebCoreResourceHandleAsOperationQueueDelegate connection:didReceiveAuthenticationChallenge:]):
(-[WebCoreResourceHandleAsOperationQueueDelegate connection:canAuthenticateAgainstProtectionSpace:]):
(-[WebCoreResourceHandleAsOperationQueueDelegate connection:didReceiveResponse:]):
(-[WebCoreResourceHandleAsOperationQueueDelegate connection:didReceiveData:lengthReceived:]):
(-[WebCoreResourceHandleAsOperationQueueDelegate connection:didSendBodyData:totalBytesWritten:totalBytesExpectedToWrite:]):
(-[WebCoreResourceHandleAsOperationQueueDelegate connection:didFailWithError:]):
(-[WebCoreResourceHandleAsOperationQueueDelegate connection:willCacheResponse:]):
Source/WebKitLegacy:
- WebCoreSupport/WebResourceLoadScheduler.cpp:
(WebResourceLoadScheduler::createPingHandle):
LayoutTests:
- TestExpectations:
- platform/gtk/TestExpectations:
- platform/ios-wk2/TestExpectations:
- platform/mac-wk2/TestExpectations:
- platform/wk2/TestExpectations:
http/tests/cache/iframe-304-crash.html used to deterministically record its didFinishLoading callback,
but only for WK1. It was marked as flaky for all WK2 ports. It is now flaky in WK1 because the order
of the testRunner.notifyDone call and the didFinishLoading logging is no longer deterministic with
asynchronous loading, but the test still verifies that there is no crash.
http/tests/security/cross-origin-modal-dialog-base.html does navigation during showModalDialog, which
probably should've never worked in WK1 and never worked in WK2. WK1 behavior now matches WK2 behavior.
I'm not aware of any complaints about no navigation working during showModalDialog in WK2 and I imagine
nobody will be regressed by this change, but if we do find such a problem, creative use of MessageQueues
like we do with sync xhr in WK1 now could theoretically fix the problem, but we are trying to get
rid of showModalDialog anyway. The test was written to verify that the SecurityOrigin doesn't fall back
to the wrong origin, and it certainly doesn't now.
These tests dump load delegate call order, which are less deterministic now but the tests still behave correctly.
http/tests/svg/svg-use-external.html
http/tests/loading/text-content-type-with-binary-extension.html
http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-iframe-in-main-frame.html
- 6:10 PM Changeset in webkit [223270] by
-
- 7 edits in trunk/Source/WebKit
Remove unnecessary includes in WebKit
https://bugs.webkit.org/show_bug.cgi?id=178235
Reviewed by Tim Horton.
- Platform/IPC/ArgumentCoders.h:
- WebProcess/WebProcess.cpp:
- WebProcess/WebStorage/StorageAreaImpl.h:
- 6:04 PM Changeset in webkit [223269] by
-
- 2 edits in trunk/Source/WebKit
Increment ContentRuleListStore::CurrentContentRuleListFileVersion
https://bugs.webkit.org/show_bug.cgi?id=178246
<rdar://problem/34890057>
Reviewed by Tim Horton.
- UIProcess/API/APIContentRuleListStore.h:
Things are crashing. Something isn't binary reverse compatible.
Probably something related to r222602.
This is why we have a version number to update.
- 6:01 PM October 2017 Meeting edited by
- (diff)
- 6:01 PM October 2017 Meeting edited by
- (diff)
- 5:47 PM Changeset in webkit [223268] by
-
- 5 edits2 deletes in trunk/Source/WebInspectorUI
Web Inspector: Switch Clear navigation item back to the Trash icon (Console, Timelines, Network)
https://bugs.webkit.org/show_bug.cgi?id=178244
<rdar://problem/34966525>
Patch by Joseph Pecoraro <Joseph Pecoraro> on 2017-10-12
Reviewed by Brian Burg.
- UserInterface/Images/NavigationItemClear.svg: Removed.
- UserInterface/Images/gtk/NavigationItemClear.svg: Removed.
- UserInterface/Views/LogContentView.js:
(WI.LogContentView):
- UserInterface/Views/NetworkGridContentView.js:
(WI.NetworkGridContentView):
- UserInterface/Views/NetworkTableContentView.js:
(WI.NetworkTableContentView):
- UserInterface/Views/TimelineRecordingContentView.js:
(WI.TimelineRecordingContentView):
Many users found the new Clear icon confusing. Revert to the Trash icon.
- 5:41 PM Changeset in webkit [223267] by
-
- 8 edits in trunk/Source/WebKit
Expose some of WKView's WebViewImpl accessors through WKWebViewPrivate
https://bugs.webkit.org/show_bug.cgi?id=178240
<rdar://problem/34962720>
Reviewed by Tim Horton.
Also renamed createFullScreenWindow to fullScreenWindow to reflect the fact that it returns
an autoreleased NSWindow so we don't make the same naming mistake in the WKWebView SPI.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _dismissContentRelativeChildWindows]):
(-[WKWebView _setFrame:andScrollBy:]):
(-[WKWebView _setTotalHeightOfBanners:]):
(-[WKWebView _totalHeightOfBanners]):
(-[WKWebView _beginDeferringViewInWindowChanges]):
(-[WKWebView _endDeferringViewInWindowChanges]):
(-[WKWebView _endDeferringViewInWindowChangesSync]):
(-[WKWebView _gestureEventWasNotHandledByWebCore:]):
(-[WKWebView _setIgnoresNonWheelEvents:]):
(-[WKWebView _ignoresNonWheelEvents]):
(-[WKWebView _setCustomSwipeViews:]):
(-[WKWebView _setCustomSwipeViewsTopContentInset:]):
(-[WKWebView _tryToSwipeWithEvent:ignoringPinnedState:]):
(-[WKWebView _setDidMoveSwipeSnapshotCallback:]):
(-[WKWebView _fullScreenPlaceholderView]):
(-[WKWebView _fullScreenWindow]):
(-[WKWebView _disableFrameSizeUpdates]):
(-[WKWebView _enableFrameSizeUpdates]):
(-[WKWebView _canChangeFrameLayout:]):
(-[WKWebView _underlayColor]):
(-[WKWebView _setUnderlayColor:]):
- UIProcess/API/Cocoa/WKWebViewPrivate.h:
- UIProcess/API/mac/WKView.mm:
(-[WKView createFullScreenWindow]):
- UIProcess/Cocoa/WebViewImpl.h:
- UIProcess/Cocoa/WebViewImpl.mm:
(WebKit::WebViewImpl::fullScreenWindowController):
(WebKit::WebViewImpl::fullScreenWindow):
(WebKit::WebViewImpl::createFullScreenWindow): Deleted.
- 5:39 PM Changeset in webkit [223266] by
-
- 4 edits in trunk/Source/WTF
Add Expected, HashMap, HashSet, and SHA1 to wtf/Forward.h
https://bugs.webkit.org/show_bug.cgi?id=178243
Reviewed by Tim Horton.
- wtf/Forward.h:
- wtf/HashMap.h:
Move default parameters to Forward.h like we did with Vector.
- wtf/HashSet.h:
Also fix indentation.
- 5:36 PM Changeset in webkit [223265] by
-
- 11 edits1 copy1 move2 adds in trunk
Layout Test http/tests/cache-storage/cache-clearing.https.html is failing
https://bugs.webkit.org/show_bug.cgi?id=178200
Patch by Youenn Fablet <youenn@apple.com> on 2017-10-12
Reviewed by Chris Dumez.
Source/WebKit:
Deleting only the per-origin folders inside the CacheStorage engine root folder.
- NetworkProcess/cache/CacheStorageEngine.cpp:
(WebKit::CacheStorage::Engine::clearAllCaches):
- UIProcess/API/C/WKWebsiteDataStoreRef.cpp:
(WKWebsiteDataStoreRemoveAllFetchCaches):
(WKWebsiteDataStoreRemoveFetchCacheForOrigin):
- UIProcess/API/C/WKWebsiteDataStoreRef.h:
Tools:
Making clearDOMCache wait for removal completion to exit.
This removes the risk to interact with the cache while deleting it which will end up be racy in tests.
- WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::clearDOMCache):
- WebKitTestRunner/TestController.cpp:
(WTR::ClearDOMCacheCallbackContext::ClearDOMCacheCallbackContext):
(WTR::clearDOMCacheCallback):
(WTR::TestController::clearDOMCache):
- WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
LayoutTests:
Splitting cache-clearing.https.html in two sub tests and marking them as Pass/Timeout for the moment.
- platform/win/TestExpectations: Skipping cache/sw tests.
- TestExpectations:
- http/tests/cache-storage/cache-clearing.https.html: Removed.
- http/tests/cache-storage/cache-clearing-all.https-expected.txt: Added.
- http/tests/cache-storage/cache-clearing-all.https.html: Added.
- http/tests/cache-storage/cache-clearing-origin.https-expected.txt: Added.
- http/tests/cache-storage/cache-clearing-origin.https.html: Added.
- 5:24 PM Changeset in webkit [223264] by
-
- 28 edits in trunk
[Mac] Add support for MouseEvent.buttons
https://bugs.webkit.org/show_bug.cgi?id=178214
Reviewed by Ryosuke Niwa.
LayoutTests/imported/w3c:
Rebaseline test now that more checks are passing.
- web-platform-tests/dom/events/Event-subclasses-constructors-expected.txt:
Source/WebCore:
Add support for MouseEvent.buttons on Mac as per:
This is supported by Firefox and Chrome already.
No new tests, rebaselined existing test.
- dom/Element.cpp:
(WebCore::Element::dispatchMouseEvent):
- dom/MouseEvent.cpp:
(WebCore::MouseEvent::create):
(WebCore::MouseEvent::MouseEvent):
- dom/MouseEvent.h:
(WebCore::MouseEvent::buttons const):
- dom/MouseEvent.idl:
- dom/MouseEventInit.h:
- dom/MouseEventInit.idl:
- dom/SimulatedClick.cpp:
- dom/WheelEvent.cpp:
- page/EventHandler.cpp:
(WebCore::EventHandler::dispatchDragEvent):
- platform/PlatformMouseEvent.h:
(WebCore::PlatformMouseEvent::buttons const):
- platform/mac/PlatformEventFactoryMac.mm:
(WebCore::currentlyPressedMouseButtons):
(WebCore::PlatformMouseEventBuilder::PlatformMouseEventBuilder):
Source/WebKit:
- Shared/WebEvent.h:
(WebKit::WebMouseEvent::buttons const):
- Shared/WebEventConversion.cpp:
(WebKit::WebKit2PlatformMouseEvent::WebKit2PlatformMouseEvent):
- Shared/WebMouseEvent.cpp:
(WebKit::WebMouseEvent::WebMouseEvent):
(WebKit::WebMouseEvent::encode const):
(WebKit::WebMouseEvent::decode):
- Shared/mac/WebEventFactory.mm:
(WebKit::currentlyPressedMouseButtons):
(WebKit::WebEventFactory::createWebMouseEvent):
- WebProcess/Plugins/PDF/PDFPlugin.mm:
(WebKit::PDFPlugin::showContextMenuAtPoint):
- WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::createWebEvent const):
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::navigateToPDFLinkWithSimulatedClick):
(WebKit::WebPage::simulateMouseDown):
(WebKit::WebPage::simulateMouseUp):
(WebKit::WebPage::simulateMouseMotion):
Source/WebKitLegacy/mac:
- WebView/WebPDFView.mm:
(-[WebPDFView PDFViewWillClickOnLink:withURL:]):
- 5:19 PM Changeset in webkit [223263] by
-
- 2 edits in trunk/Source/WebKit
Add API to clean CacheStorage data
https://bugs.webkit.org/show_bug.cgi?id=178034
Unreviewed.
Patch by Youenn Fablet <youenn@apple.com> on 2017-10-12
- Shared/WebsiteData/WebsiteDataType.h: fixing the DOMCache value.
- 3:39 PM October 2017 Meeting edited by
- (diff)
- 3:36 PM Changeset in webkit [223262] by
-
- 4 edits14 adds in trunk/Source/WebKit
[WinCairo] add WebProcess files for wincairo webkit
https://bugs.webkit.org/show_bug.cgi?id=178024
Patch by Stephan Szabo <stephan.szabo@sony.com> on 2017-10-12
Reviewed by Alex Christensen.
- PlatformWin.cmake:
- WebProcess/Cookies/curl/WebCookieManagerCurl.cpp: Added.
(WebKit::WebCookieManager::platformSetHTTPCookieAcceptPolicy):
(WebKit::WebCookieManager::platformGetHTTPCookieAcceptPolicy):
- WebProcess/InjectedBundle/win/InjectedBundleWin.cpp: Added.
(WebKit::InjectedBundle::initialize):
(WebKit::InjectedBundle::setBundleParameter):
(WebKit::InjectedBundle::setBundleParameters):
- WebProcess/Plugins/Netscape/JSNPObject.cpp:
- WebProcess/Plugins/Netscape/win/PluginProxyWin.cpp: Added.
(WebKit::PluginProxy::needsBackingStore const):
- WebProcess/WebCoreSupport/win/WebContextMenuClientWin.cpp: Added.
(WebKit::WebContextMenuClient::lookUpInDictionary):
(WebKit::WebContextMenuClient::isSpeaking):
(WebKit::WebContextMenuClient::speak):
(WebKit::WebContextMenuClient::stopSpeaking):
- WebProcess/WebCoreSupport/win/WebFrameNetworkingContext.cpp: Added.
(WebKit::WebFrameNetworkingContext::ensurePrivateBrowsingSession):
(WebKit::WebFrameNetworkingContext::ensureWebsiteDataStoreSession):
(WebKit::WebFrameNetworkingContext::WebFrameNetworkingContext):
(WebKit::WebFrameNetworkingContext::storageSession const):
(WebKit::WebFrameNetworkingContext::webFrameLoaderClient const):
(WebKit::WebFrameNetworkingContext::blockedError const):
- WebProcess/WebCoreSupport/win/WebFrameNetworkingContext.h: Added.
(WebKit::WebFrameNetworkingContext::create):
- WebProcess/WebCoreSupport/win/WebPopupMenuWin.cpp: Added.
(WebKit::WebPopupMenu::setUpPlatformData):
- WebProcess/WebPage/win/WebInspectorUIWin.cpp: Added.
(WebKit::WebInspectorUI::canSave):
(WebKit::WebInspectorUI::localizedStringsURL):
(WebKit::RemoteWebInspectorUI::localizedStringsURL):
- WebProcess/WebPage/win/WebPageWin.cpp: Added.
(WebKit::WebPage::platformInitialize):
(WebKit::WebPage::platformDetach):
(WebKit::WebPage::platformEditorState const):
(WebKit::WebPage::platformPreferencesDidChange):
(WebKit::WebPage::performDefaultBehaviorForKeyEvent):
(WebKit::WebPage::platformHasLocalDataForURL):
(WebKit::WebPage::cachedResponseMIMETypeForURL):
(WebKit::WebPage::platformCanHandleRequest):
(WebKit::WebPage::cachedSuggestedFilenameForURL):
(WebKit::WebPage::cachedResponseDataForURL):
(WebKit::WebPage::platformUserAgent const):
(WebKit::WebPage::interpretKeyEvent):
- WebProcess/WebProcess.cpp:
(WebKit::WebProcess::ensureWebToStorageProcessConnection):
- WebProcess/win/WebProcessWin.cpp: Added.
(loadResourceIntoBuffer):
(WebKit::WebProcess::platformInitializeWebProcess):
(WebKit::WebProcess::platformTerminate):
(WebKit::WebProcess::platformSetCacheModel):
- 2:44 PM Changeset in webkit [223261] by
-
- 4 edits in trunk/Source
[iOS] Fix -Wunused-lambda-capture warnings in WebCore/WebKit with new clang compiler
<https://webkit.org/b/178226>
Reviewed by Chris Fleizach.
Source/WebCore:
- accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
(-[WebAccessibilityObjectWrapper _accessibilityArticleAncestor]):
- Remove unused lambda variable 'self'.
Source/WebKit:
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView changeSelectionWithTouchAt:withSelectionTouch:baseIsStart:withFlags:]):
- Remove unused lambda variable 'touch' which was also passed as an argument.
(-[WKContentView changeSelectionWithTouchesFrom:to:withGesture:withState:]):
- Remove unused lambda variable 'gestureState' which was also passed as an argument.
(-[WKContentView _simulateLongPressActionAtLocation:]):
- Remove unused lambda variable 'location'.
- 2:38 PM Changeset in webkit [223260] by
-
- 3 edits in trunk/Source/WebCore
Mark more InlineBox member functions as const
https://bugs.webkit.org/show_bug.cgi?id=178217
Reviewed by Andy Estes.
- rendering/InlineBox.cpp:
(WebCore::InlineBox::locationIncludingFlipping const): Mark as const. Also fix some style
nits while I am here.
(WebCore::InlineBox::flipForWritingMode const): Mark as const.
(WebCore::InlineBox::locationIncludingFlipping): Deleted.
(WebCore::InlineBox::flipForWritingMode): Deleted.
- rendering/InlineBox.h:
- 2:31 PM Changeset in webkit [223259] by
-
- 2 edits in trunk/Source/WebCore
Teach InlineTextBox::clampOffset() about combined text and hyphenation
https://bugs.webkit.org/show_bug.cgi?id=178032
Reviewed by Zalan Bujtas.
Treat combined text and the last character of a word halve plus hyphen as single units.
With regards to combined text, ideally we would allow arbitrary selection inside combined
text. Currently we do not support selection of combined text. To simplify the process of
adding support for selecting combined text we treat combined text as a single unit. Once
we are confident that we correctly implemented such support we can re-evaluate allowing
arbitrary selection of combined text.
With regards to treating the last character of a word halve plus hyphen as a single unit.
This patch extends the targeted fix made for document markers in r223013 to all code that
makes use of clamped offsets as a result the selection rect for inline boxes more accurately
reflect the rectangle(s) that make up the painted selection. This is a step towards reconciling
the difference between the computation of the rectangle that represents an arbitrary
selection and the code that paints the active selection as part of <https://bugs.webkit.org/show_bug.cgi?id=138913>.
- rendering/InlineTextBox.cpp:
(WebCore::InlineTextBox::localSelectionRect const): Compute text run, including combined text
or hyphens due to line wrapping now that specified start and end positions are clamped with
respect to combined text and hyphens (computed earlier in this function). Only measure the
text represented by the selection if the start position > 0 or the end position is not equal
to the length of the run.
(WebCore::InlineTextBox::paint): Remove unnecessary code to fix up the selection start and
end positions based on the truncation offset as this is done by clampedOffset(), called by
selectionStartEnd().
(WebCore::InlineTextBox::clampedOffset const): Modified to adjust the clamped offset with
respect to truncation as well as treat combined text or a trailing word halve plus hyphen
as single units. Assert that we are not fully truncated because it does not make sense to
be computing the clamped offset in such a situation since nothing should be painted.
(WebCore::InlineTextBox::selectionStartEnd const): Modified to compute the end of an inside
selection using clampedOffset() to account for truncation, combined text or a hyphen. We
already are using clampedOffset() when computing the start and end position for all other
selection states.
(WebCore::InlineTextBox::paintSelection): Compute text run, including combined text
or hyphens due to line wrapping now that specified start and end positions are clamped with
respect to combined text and hyphens (computed earlier in this function). Remove unnecessary
code to adjust selection end point with respect to truncation, combined text, or an added
hyphen now that selectionStartEnd() takes care of this (via clampedOffset()).
(WebCore::InlineTextBox::paintTextSubrangeBackground): Compute text run, including combined
text or hyphens due to line wrapping now that specified start and end positions are clamped
with respect to combined text and hyphens (computed earlier in this function).
(WebCore::InlineTextBox::paintDocumentMarker): Compute text run, including combined text now
that specified start and end positions are clamped with respect to combined text (computed earlier in this function).
Also remove unnecessary code to adjust end offset of the marker with respect to truncation
and length of the text run as clampedOffset() now does this for us.
- 2:29 PM Changeset in webkit [223258] by
-
- 3 edits in trunk/Source/WTF
Add CompletionHandler and HashCountedSet to wtf/Forward.h
https://bugs.webkit.org/show_bug.cgi?id=178231
Reviewed by Tim Horton.
- wtf/Forward.h:
- wtf/HashCountedSet.h:
- 2:21 PM Changeset in webkit [223257] by
-
- 2 edits in branches/safari-604-branch/Source/WebCore
Cherry-pick r223063. rdar://problem/34921832
- 2:16 PM Changeset in webkit [223256] by
-
- 2 edits in trunk/LayoutTests
Mark some xhtml tests as failing on Windows.
https://bugs.webkit.org/show_bug.cgi?id=178230
Unreviewed test gardening.
- platform/win/TestExpectations:
- 2:15 PM Changeset in webkit [223255] by
-
- 10 edits in branches/safari-604-branch
Cherry-pick r222961. <rdar://problem/34891070>
- 2:12 PM Changeset in webkit [223254] by
-
- 3 edits2 adds in trunk
Don't assert if mix-blend-mode is set to a non-separable blend mode on a composited layer
https://bugs.webkit.org/show_bug.cgi?id=178196
rdar://problem/34942337
Reviewed by Dan Bates.
Source/WebCore:
Core Animation doesn't support non-separable blend modes (hue, saturation, color, luminosity)
on layers, but don't assert if we try to use them.
Test: compositing/filters/blend-mode-saturation.html
- platform/graphics/ca/cocoa/PlatformCAFiltersCocoa.mm:
(PlatformCAFilters::setBlendingFiltersOnLayer):
LayoutTests:
- compositing/filters/blend-mode-saturation-expected.txt: Added.
- compositing/filters/blend-mode-saturation.html: Added.
- 1:13 PM Changeset in webkit [223253] by
-
- 22 edits32 adds in trunk
ResourceLoadObserver::logFrameNavigation() should use redirectResponse.url()
https://bugs.webkit.org/show_bug.cgi?id=175257
<rdar://problem/33359866>
Reviewed by Brent Fulgham.
Source/WebCore:
This patch was joint work between Michael Specter and John Wilander.
Tests: http/tests/resourceLoadStatistics/non-sandboxed-iframe-redirect-ip-to-localhost-to-ip.html
http/tests/resourceLoadStatistics/non-sandboxed-iframe-redirect-localhost-to-ip-to-localhost.html
http/tests/resourceLoadStatistics/non-sandboxed-nesting-iframe-with-non-sandboxed-iframe-redirect-ip-to-localhost-to-ip.html
http/tests/resourceLoadStatistics/non-sandboxed-nesting-iframe-with-non-sandboxed-iframe-redirect-localhost-to-ip-to-localhost.html
http/tests/resourceLoadStatistics/non-sandboxed-nesting-iframe-with-sandboxed-iframe-redirect-ip-to-localhost-to-ip.html
http/tests/resourceLoadStatistics/non-sandboxed-nesting-iframe-with-sandboxed-iframe-redirect-localhost-to-ip-to-localhost.html
http/tests/resourceLoadStatistics/sandboxed-iframe-redirect-ip-to-localhost-to-ip.html
http/tests/resourceLoadStatistics/sandboxed-iframe-redirect-localhost-to-ip-to-localhost.html
http/tests/resourceLoadStatistics/sandboxed-nesting-iframe-with-non-sandboxed-iframe-redirect-ip-to-localhost-to-ip.html
http/tests/resourceLoadStatistics/sandboxed-nesting-iframe-with-non-sandboxed-iframe-redirect-localhost-to-ip-to-localhost.html
http/tests/resourceLoadStatistics/sandboxed-nesting-iframe-with-sandboxed-iframe-redirect-ip-to-localhost-to-ip.html
http/tests/resourceLoadStatistics/sandboxed-nesting-iframe-with-sandboxed-iframe-redirect-localhost-to-ip-to-localhost.html
- loader/DocumentLoader.cpp:
(WebCore::DocumentLoader::willSendRequest):
Now sends redirectResponse.url() to WebCore::ResourceLoadObserver::logFrameNavigation().
- loader/ResourceLoadObserver.cpp:
(WebCore::ResourceLoadObserver::logFrameNavigation):
Now receives the redirect response URL from WebCore::DocumentLoader().
(WebCore::ResourceLoadObserver::nonNullOwnerURL const):
New function to traverse the frame chain upward and find the first non-null URL.
- loader/ResourceLoadObserver.h:
Source/WebKit:
- UIProcess/API/Cocoa/WKWebsiteDataStore.mm:
(-[WKWebsiteDataStore _resourceLoadStatisticsIsRegisteredAsSubFrameUnder:topFrameHost:completionHandler:]):
(-[WKWebsiteDataStore _resourceLoadStatisticsIsRegisteredAsRedirectingTo:hostRedirectedTo:completionHandler:]):
Test infrastructure.
- UIProcess/API/Cocoa/WKWebsiteDataStorePrivate.h:
- UIProcess/WebResourceLoadStatisticsStore.cpp:
(WebKit::WebResourceLoadStatisticsStore::isRegisteredAsSubFrameUnder):
(WebKit::WebResourceLoadStatisticsStore::isRegisteredAsRedirectingTo):
Test infrastructure.
- UIProcess/WebResourceLoadStatisticsStore.h:
Tools:
- WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
- WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::isStatisticsRegisteredAsSubFrameUnder):
(WTR::TestRunner::isStatisticsRegisteredAsRedirectingTo):
- WebKitTestRunner/InjectedBundle/TestRunner.h:
- WebKitTestRunner/TestController.cpp:
(WTR::TestController::isStatisticsRegisteredAsSubFrameUnder):
Not implemented.
(WTR::TestController::isStatisticsRegisteredAsRedirectingTo):
Not implemented.
- WebKitTestRunner/TestController.h:
- WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
- WebKitTestRunner/cocoa/TestControllerCocoa.mm:
(WTR::TestController::isStatisticsRegisteredAsSubFrameUnder):
Implemented platform-specific.
(WTR::TestController::isStatisticsRegisteredAsRedirectingTo):
Implemented platform-specific.
LayoutTests:
Marked new directory as [ Skip ] since these are WK2-only.
- http/tests/resourceLoadStatistics: Added.
- http/tests/resourceLoadStatistics/non-sandboxed-iframe-redirect-ip-to-localhost-to-ip-expected.txt: Added.
- http/tests/resourceLoadStatistics/non-sandboxed-iframe-redirect-ip-to-localhost-to-ip.html: Added.
- http/tests/resourceLoadStatistics/non-sandboxed-iframe-redirect-localhost-to-ip-to-localhost-expected.txt: Added.
- http/tests/resourceLoadStatistics/non-sandboxed-iframe-redirect-localhost-to-ip-to-localhost.html: Added.
- http/tests/resourceLoadStatistics/non-sandboxed-nesting-iframe-with-non-sandboxed-iframe-redirect-ip-to-localhost-to-ip-expected.txt: Added.
- http/tests/resourceLoadStatistics/non-sandboxed-nesting-iframe-with-non-sandboxed-iframe-redirect-ip-to-localhost-to-ip.html: Added.
- http/tests/resourceLoadStatistics/non-sandboxed-nesting-iframe-with-non-sandboxed-iframe-redirect-localhost-to-ip-to-localhost-expected.txt: Added.
- http/tests/resourceLoadStatistics/non-sandboxed-nesting-iframe-with-non-sandboxed-iframe-redirect-localhost-to-ip-to-localhost.html: Added.
- http/tests/resourceLoadStatistics/non-sandboxed-nesting-iframe-with-sandboxed-iframe-redirect-ip-to-localhost-to-ip-expected.txt: Added.
- http/tests/resourceLoadStatistics/non-sandboxed-nesting-iframe-with-sandboxed-iframe-redirect-ip-to-localhost-to-ip.html: Added.
- http/tests/resourceLoadStatistics/non-sandboxed-nesting-iframe-with-sandboxed-iframe-redirect-localhost-to-ip-to-localhost-expected.txt: Added.
- http/tests/resourceLoadStatistics/non-sandboxed-nesting-iframe-with-sandboxed-iframe-redirect-localhost-to-ip-to-localhost.html: Added.
- http/tests/resourceLoadStatistics/resources: Added.
- http/tests/resourceLoadStatistics/resources/iframe-report-back-loaded.html: Added.
- http/tests/resourceLoadStatistics/resources/page-with-non-sandboxed-iframe-redirect-ip-to-localhost-to-ip.html: Added.
- http/tests/resourceLoadStatistics/resources/page-with-non-sandboxed-iframe-redirect-localhost-to-ip-to-localhost.html: Added.
- http/tests/resourceLoadStatistics/resources/page-with-sandboxed-iframe-redirect-ip-to-localhost-to-ip.html: Added.
- http/tests/resourceLoadStatistics/resources/page-with-sandboxed-iframe-redirect-localhost-to-ip-to-localhost.html: Added.
- http/tests/resourceLoadStatistics/resources/redirect.php: Added.
- http/tests/resourceLoadStatistics/sandboxed-iframe-redirect-ip-to-localhost-to-ip-expected.txt: Added.
- http/tests/resourceLoadStatistics/sandboxed-iframe-redirect-ip-to-localhost-to-ip.html: Added.
- http/tests/resourceLoadStatistics/sandboxed-iframe-redirect-localhost-to-ip-to-localhost-expected.txt: Added.
- http/tests/resourceLoadStatistics/sandboxed-iframe-redirect-localhost-to-ip-to-localhost.html: Added.
- http/tests/resourceLoadStatistics/sandboxed-nesting-iframe-with-non-sandboxed-iframe-redirect-ip-to-localhost-to-ip-expected.txt: Added.
- http/tests/resourceLoadStatistics/sandboxed-nesting-iframe-with-non-sandboxed-iframe-redirect-ip-to-localhost-to-ip.html: Added.
- http/tests/resourceLoadStatistics/sandboxed-nesting-iframe-with-non-sandboxed-iframe-redirect-localhost-to-ip-to-localhost-expected.txt: Added.
- http/tests/resourceLoadStatistics/sandboxed-nesting-iframe-with-non-sandboxed-iframe-redirect-localhost-to-ip-to-localhost.html: Added.
- http/tests/resourceLoadStatistics/sandboxed-nesting-iframe-with-sandboxed-iframe-redirect-ip-to-localhost-to-ip-expected.txt: Added.
- http/tests/resourceLoadStatistics/sandboxed-nesting-iframe-with-sandboxed-iframe-redirect-ip-to-localhost-to-ip.html: Added.
- http/tests/resourceLoadStatistics/sandboxed-nesting-iframe-with-sandboxed-iframe-redirect-localhost-to-ip-to-localhost-expected.txt: Added.
- http/tests/resourceLoadStatistics/sandboxed-nesting-iframe-with-sandboxed-iframe-redirect-localhost-to-ip-to-localhost.html: Added.
- platform/gtk/TestExpectations:
Marked new directory as [ Skip ].
- platform/wk2/TestExpectations:
Marked new directory as [ Pass ].
- platform/wpe/TestExpectations:
Marked new directory as [ Skip ].
- 1:07 PM Changeset in webkit [223252] by
-
- 2 edits in tags/Safari-605.1.10/Source/JavaScriptCore
Cherry-pick r223248. rdar://problem/34956170
- 1:01 PM Changeset in webkit [223251] by
-
- 2 edits in trunk/LayoutTests
Marked imported/w3c/web-platform-tests/fetch/security/dangling-markup-mitigation-data-url.tentative.sub.html as flaky on iOS.
https://bugs.webkit.org/show_bug.cgi?id=177547
Unreviewed test gardening.
- platform/ios/TestExpectations:
- 12:51 PM Changeset in webkit [223250] by
-
- 7 edits in branches/safari-604-branch/Source
Versioning.
- 12:48 PM Changeset in webkit [223249] by
-
- 1 copy in tags/Safari-604.4.2
Tag Safari-604.4.2.
- 12:24 PM Changeset in webkit [223248] by
-
- 2 edits in trunk/Source/JavaScriptCore
[Win64] JSC compile error.
https://bugs.webkit.org/show_bug.cgi?id=178213
Reviewed by Alex Christensen.
Add static cast from int64 to uintptr_t.
- dfg/DFGOSRExit.cpp:
(JSC::DFG::OSRExit::executeOSRExit):
- 12:12 PM Changeset in webkit [223247] by
-
- 5 edits in trunk
[iOS] Conditionally rename DatabaseProcess to StorageProcess when building for iOS devices
https://bugs.webkit.org/show_bug.cgi?id=178181
<rdar://problem/33660282>
Reviewed by Dan Bernstein.
Source/WebKit:
- Configurations/BaseTarget.xcconfig:
- UIProcess/Launcher/mac/ProcessLauncherMac.mm:
(WebKit::serviceName):
- WebKit.xcodeproj/project.pbxproj:
Tools:
- WebKitTestRunner/TestController.cpp:
(WTR::TestController::databaseProcessName):
- 11:45 AM Changeset in webkit [223246] by
-
- 6 edits3 adds in trunk/Tools
Emit SPIR-V from WSL compiler (Part 1)
https://bugs.webkit.org/show_bug.cgi?id=177998
Reviewed by Filip Pizlo.
This patch implements the first half of a SPIR-V codegen phase for WSL.
This includes all the operations which aren't actually emitting the contents
of functions themselves. For example, this includes things like representing
WSL types with SPIR-V types, and declaring shaders' inputs and outputs. A
future patch will actually emit the contents of functions.
There are two helper visitors here: SPIRVTypeAnalyzer which generates SPIR-V
types from WSL types, and SPIRVPrimitiveVariableAnalyzer which identifies
input and output variables from a shader (and assigns location values to
each one).
This patch is currently pursuing the "logical mode" detailed in
https://bugs.webkit.org/show_bug.cgi?id=176967. In this mode, each pointer and
array reference operation can be statically traced to the variable or array it
is operating on.
This has the interesting property where accessing a pointer inside an array is
forbidden, because the array index may be computed at runtime, so the compiler
can't know at compile time which variable the pointer operation will be
accessing. However, this isn't true for structs; the program must statically
state which struct member it is accessing. Therefore, pointers or array
references must not transitively appear within an array, but they may appear
within a struct. The same logic applies to array references; those get lowered
to just two indexes in SPIR-V (a lower bound and an upper bound).
So, outside of an array, SPIR-V types don't need to include any pointers because
any operation with the pointer doesn't need access to the runtime value of the
pointer. Inside of an array, pointers are forbidden. Therefore, SPIR-V types
will never include any pointers.
This means that, for example, WSL can represent a linked list in logical mode.
However, a WSL program cannot iterate across the list, because that would require
assigning to a pointer. So instead, a program using a linked list could only say
something like "list.ptr->ptr->ptr->value".
- WebGPUShadingLanguageRI/LateChecker.js:
(LateChecker.prototype._checkShaderType):
- WebGPUShadingLanguageRI/SPIR-V.js:
(SPIRV.OperandChecker.prototype._isStar):
(SPIRV.OperandChecker.prototype.nextComparisonType):
(SPIRV.OperandChecker.prototype.finalize):
(SPIRV.OperandChecker):
- WebGPUShadingLanguageRI/SPIRV.html:
- WebGPUShadingLanguageRI/SPIRVCodegen.js: Added.
(findEntryPoints):
(emitTypes.doEmitTypes):
(emitTypes):
(ConstantFinder.prototype.visitGenericLiteralType):
(ConstantFinder):
(generateSPIRV):
- WebGPUShadingLanguageRI/SPIRVTypeAnalyzer.js: Added.
(SPIRVTypeAnalyzer):
(SPIRVTypeAnalyzer.prototype.get program):
(SPIRVTypeAnalyzer.prototype.get typeMap):
(SPIRVTypeAnalyzer.prototype.get currentId):
(SPIRVTypeAnalyzer.prototype.get stack):
(SPIRVTypeAnalyzer.prototype.visitTypeRef):
(SPIRVTypeAnalyzer.prototype._encounterType):
(SPIRVTypeAnalyzer.prototype.visitNullType):
(SPIRVTypeAnalyzer.prototype.visitGenericLiteralType):
(SPIRVTypeAnalyzer.prototype.visitNativeType):
(SPIRVTypeAnalyzer.prototype.visitEnumType):
(SPIRVTypeAnalyzer.prototype.visitPtrType):
(SPIRVTypeAnalyzer.prototype.visitArrayRefType):
(SPIRVTypeAnalyzer.prototype.visitArrayType):
(SPIRVTypeAnalyzer.prototype.visitStructType):
- WebGPUShadingLanguageRI/SPIRVVariableAnalyzer.js: Added.
(SPIRVPrimitiveVariableAnalyzer):
(SPIRVPrimitiveVariableAnalyzer.prototype.get program):
(SPIRVPrimitiveVariableAnalyzer.prototype.get typeMap):
(SPIRVPrimitiveVariableAnalyzer.prototype.get currentId):
(SPIRVPrimitiveVariableAnalyzer.prototype.get currentLocation):
(SPIRVPrimitiveVariableAnalyzer.prototype.get nameComponents):
(SPIRVPrimitiveVariableAnalyzer.prototype.get result):
(SPIRVPrimitiveVariableAnalyzer.prototype.visitTypeRef):
(SPIRVPrimitiveVariableAnalyzer.prototype.visitNullType):
(SPIRVPrimitiveVariableAnalyzer.prototype.visitGenericLiteralType):
(SPIRVPrimitiveVariableAnalyzer.prototype.visitNativeType):
(SPIRVPrimitiveVariableAnalyzer.prototype.visitEnumType):
(SPIRVPrimitiveVariableAnalyzer.prototype.visitPtrType):
(SPIRVPrimitiveVariableAnalyzer.prototype.visitArrayRefType):
(SPIRVPrimitiveVariableAnalyzer.prototype.visitArrayType):
(SPIRVPrimitiveVariableAnalyzer.prototype.visitStructType):
- WebGPUShadingLanguageRI/WSL.md:
- WebGPUShadingLanguageRI/index.html:
- 11:31 AM Changeset in webkit [223245] by
-
- 5 edits in branches/safari-604-branch
Apply patch. rdar://problem/34891292
- 11:31 AM Changeset in webkit [223244] by
-
- 11 edits4 adds in branches/safari-604-branch
Apply patch. rdar://problem/34893194
- 11:29 AM Changeset in webkit [223243] by
-
- 2 edits in trunk/LayoutTests
Edited expectations for http/tests/media/video-buffered-range-contains-currentTime.html.
https://bugs.webkit.org/show_bug.cgi?id=177616
Unreviewed test gardening.
- platform/mac-wk2/TestExpectations:
- 11:26 AM Changeset in webkit [223242] by
-
- 5 edits in trunk/Source/WebKit
CacheStorage persistent folder should be in /Library/Cache
https://bugs.webkit.org/show_bug.cgi?id=178193
Patch by Youenn Fablet <youenn@apple.com> on 2017-10-12
Reviewed by Brady Eidson.
- UIProcess/API/Cocoa/APIWebsiteDataStoreCocoa.mm:
(API::WebsiteDataStore::defaultCacheStorageDirectory): Making CacheStorage
directory a subfolder of Caches folder.
(API::WebsiteDataStore::defaultDataStoreConfiguration):
- UIProcess/WebProcessPool.cpp:
(WebKit::legacyWebsiteDataStoreConfiguration):
(WebKit::WebProcessPool::ensureNetworkProcess): Make sure the web site data store
has the right cache directory path. Also make sure that the quota is set even if there is no folder specified.
Quota may still be useful in case of non persistent sessions.
- UIProcess/WebsiteData/WebsiteDataStore.cpp:
(WebKit::WebsiteDataStore::resolveDirectoriesIfNecessary):
- UIProcess/API/glib/APIWebsiteDataStoreGLib.cpp:
(API::WebsiteDataStore::defaultCacheStorageDirectory):
- 11:21 AM Changeset in webkit [223241] by
-
- 2 edits2 adds in trunk/Source/WebCore/PAL
[Win] Build fix after r223206
https://bugs.webkit.org/show_bug.cgi?id=171523
Unreviewed.
- pal/PlatformWin.cmake:
- pal/win/LoggingWin.cpp: Added.
(PAL::logLevelString):
- 10:42 AM Changeset in webkit [223240] by
-
- 2 edits in trunk/Source/WebCore
Use less specific cast in ScrollingTree::scrollPositionChangedViaDelegatedScrolling
https://bugs.webkit.org/show_bug.cgi?id=178211
Patch by Frederic Wang <fwang@igalia.com> on 2017-10-12
Reviewed by Simon Fraser.
No new tests, behavior is not changed.
ScrollingTree::scrollPositionChangedViaDelegatedScrolling is a generic function that applies
to scrolling nodes. Casting to more specific ScrollingTreeOverflowScrollingNodes is however
not necessary to implement it. This patch moves to the least specific cast necessary so that
this function will be usable for async scrolling of non-main frames in the future. Note that
the function is currently only called from ScrollingTreeScrollingNodeDelegateIOS which in
turn is only used by the ScrollingTreeScrollingOverflowNodeIOS class and so code behavior is
not changed.
- page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::scrollPositionChangedViaDelegatedScrolling): Only cast the node to
ScrollingTreeScrollingNode.
- 9:02 AM Changeset in webkit [223239] by
-
- 22 edits6 adds in trunk
Enable gigacage on iOS
https://bugs.webkit.org/show_bug.cgi?id=177586
Reviewed by JF Bastien.
JSTests:
Add tests for when Gigacage gets runtime disabled.
- stress/disable-gigacage-arrays.js: Added.
(foo):
- stress/disable-gigacage-strings.js: Added.
(foo):
- stress/disable-gigacage-typed-arrays.js: Added.
(foo):
Source/bmalloc:
Introduce the ability to disable gigacage at runtime if allocation fails. If any step of gigacage
allocation fails, we free all of the gigacages and turn off gigacage support.
Roll this back in after discussion.
- CMakeLists.txt:
- bmalloc.xcodeproj/project.pbxproj:
- bmalloc/Cache.cpp:
(bmalloc::Cache::scavenge):
- bmalloc/Cache.h:
(bmalloc::Cache::tryAllocate):
(bmalloc::Cache::allocate):
(bmalloc::Cache::deallocate):
(bmalloc::Cache::reallocate):
- bmalloc/Gigacage.cpp:
(Gigacage::ensureGigacage):
(Gigacage::runway):
(Gigacage::totalSize):
(Gigacage::shouldBeEnabled):
(): Deleted.
(Gigacage::Callback::Callback): Deleted.
(Gigacage::Callback::function): Deleted.
(Gigacage::PrimitiveDisableCallbacks::PrimitiveDisableCallbacks): Deleted.
- bmalloc/Gigacage.h:
(Gigacage::wasEnabled):
(Gigacage::isEnabled):
(Gigacage::runway): Deleted.
(Gigacage::totalSize): Deleted.
- bmalloc/HeapKind.cpp: Added.
(bmalloc::isActiveHeapKind):
(bmalloc::mapToActiveHeapKind):
- bmalloc/HeapKind.h:
(bmalloc::isActiveHeapKindAfterEnsuringGigacage):
(bmalloc::mapToActiveHeapKindAfterEnsuringGigacage):
- bmalloc/Scavenger.cpp:
(bmalloc::Scavenger::scavenge):
- bmalloc/bmalloc.h:
(bmalloc::api::tryLargeMemalignVirtual):
(bmalloc::api::freeLargeVirtual):
(bmalloc::api::isEnabled):
Source/JavaScriptCore:
The hardest part of enabling Gigacage on iOS is that it requires loading global variables while
executing JS, so the LLInt needs to know how to load from global variables on all platforms that
have Gigacage. So, this teaches ARM64 how to load from global variables.
Also, this makes the code handle disabling the gigacage a bit better.
- ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::caged):
- jit/AssemblyHelpers.h:
(JSC::AssemblyHelpers::cage):
(JSC::AssemblyHelpers::cageConditionally):
- offlineasm/arm64.rb:
- offlineasm/asm.rb:
- offlineasm/instructions.rb:
Tools:
Add a mode to test disabling Gigacage.
- Scripts/run-jsc-stress-tests:
- Scripts/webkitruby/jsc-stress-test-writer-default.rb:
- 8:38 AM Changeset in webkit [223238] by
-
- 54 edits in trunk
Remove out-parameter variants of copyToVector
https://bugs.webkit.org/show_bug.cgi?id=178155
Reviewed by Tim Horton.
Source/JavaScriptCore:
- inspector/ScriptDebugServer.cpp:
(Inspector::ScriptDebugServer::dispatchBreakpointActionLog):
(Inspector::ScriptDebugServer::dispatchBreakpointActionSound):
(Inspector::ScriptDebugServer::dispatchBreakpointActionProbe):
(Inspector::ScriptDebugServer::dispatchDidParseSource):
(Inspector::ScriptDebugServer::dispatchFailedToParseSource):
(Inspector::ScriptDebugServer::dispatchFunctionToListeners):
Replace out-parameter based copyToVector, with one that returns a Vector.
Source/WebCore:
- Modules/geolocation/Geolocation.cpp:
(WebCore::Geolocation::stopTimersForOneShots):
(WebCore::Geolocation::cancelAllRequests):
(WebCore::Geolocation::handleError):
(WebCore::Geolocation::makeSuccessCallbacks):
- Modules/indexeddb/IDBDatabase.cpp:
(WebCore::IDBDatabase::transaction):
- Modules/indexeddb/IDBGetAllResult.cpp:
(WebCore::IDBGetAllResult::allBlobFilePaths const):
- Modules/indexeddb/server/MemoryIndex.cpp:
(WebCore::IDBServer::MemoryIndex::notifyCursorsOfValueChange):
(WebCore::IDBServer::MemoryIndex::notifyCursorsOfAllRecordsChanged):
- css/CSSFontSelector.cpp:
(WebCore::CSSFontSelector::dispatchInvalidationCallbacks):
- dom/Document.cpp:
(WebCore::Document::moveNodeIteratorsToNewDocument):
(WebCore::Document::resume):
(WebCore::Document::didAssociateFormControlsTimerFired):
- dom/IdTargetObserverRegistry.cpp:
(WebCore::IdTargetObserverRegistry::notifyObserversInternal):
- dom/MutationObserver.cpp:
(WebCore::MutationObserver::notifyMutationObservers):
- dom/Node.cpp:
(WebCore::Document::invalidateNodeListAndCollectionCaches):
- dom/RadioButtonGroups.cpp:
- dom/ScriptExecutionContext.cpp:
(WebCore::ScriptExecutionContext::dispatchMessagePortEvents):
(WebCore::ScriptExecutionContext::stopActiveDOMObjects):
- loader/appcache/ApplicationCacheGroup.cpp:
(WebCore::ApplicationCacheGroup::checkIfLoadIsComplete):
(WebCore::ApplicationCacheGroup::deliverDelayedMainResources):
- loader/cache/MemoryCache.cpp:
(WebCore::MemoryCache::forEachResource):
(WebCore::MemoryCache::pruneDeadResourcesToSize):
- page/DOMWindow.cpp:
(WebCore::DOMWindow::willDestroyCachedFrame):
(WebCore::DOMWindow::willDestroyDocumentInFrame):
(WebCore::DOMWindow::willDetachDocumentFromFrame):
(WebCore::DOMWindow::disconnectDOMWindowProperties):
(WebCore::DOMWindow::reconnectDOMWindowProperties):
- page/FrameView.cpp:
(WebCore::collectAndProtectWidgets):
- page/MemoryRelease.cpp:
(WebCore::releaseCriticalMemory):
- page/Performance.cpp:
(WebCore::Performance::queueEntry):
- platform/cocoa/PasteboardCocoa.mm:
(WebCore::Pasteboard::typesForLegacyUnsafeBindings):
- platform/graphics/cocoa/FontCacheCoreText.cpp:
(WebCore::FontCache::systemFontFamilies):
- platform/ios/PlatformPasteboardIOS.mm:
(WebCore::PlatformPasteboard::typesSafeForDOMToReadAndWrite const):
- platform/ios/WebCoreMotionManager.mm:
(-[WebCoreMotionManager sendAccelerometerData:]):
(-[WebCoreMotionManager sendMotionData:withHeading:]):
- platform/mac/PlatformPasteboardMac.mm:
(WebCore::PlatformPasteboard::typesSafeForDOMToReadAndWrite const):
- platform/network/cocoa/WebCoreNSURLSession.mm:
(-[WebCoreNSURLSession invalidateAndCancel]):
- rendering/RenderBlock.cpp:
(WebCore::RenderBlock::endAndCommitUpdateScrollInfoAfterLayoutTransaction):
- rendering/RenderBlockLineLayout.cpp:
(WebCore::setLogicalWidthForTextRun):
- rendering/RenderDeprecatedFlexibleBox.cpp:
(WebCore::FlexBoxIterator::next):
- rendering/RenderTableSection.cpp:
(WebCore::RenderTableSection::paintObject):
Replace out-parameter based copyToVector, with one that returns a Vector.
Source/WebKit:
- Shared/API/Cocoa/_WKRemoteObjectInterface.mm:
(-[_WKRemoteObjectInterface debugDescription]):
- Shared/RemoteLayerTree/RemoteScrollingCoordinatorTransaction.cpp:
(WebKit::dump):
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::resetState):
- UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::createNewWebProcess):
- UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm:
(WebKit::WebsiteDataStore::parameters):
- UIProcess/WebsiteData/WebsiteDataStore.cpp:
(WebKit::WebsiteDataStore::pendingCookies const):
- UIProcess/ios/ProcessAssertionIOS.mm:
(-[WKProcessAssertionBackgroundTaskManager _notifyClientsOfImminentSuspension]):
- WebProcess/Cookies/WebCookieManager.cpp:
(WebKit::WebCookieManager::getHostnamesWithCookies):
- WebProcess/Geolocation/WebGeolocationManager.cpp:
(WebKit::WebGeolocationManager::didChangePosition):
(WebKit::WebGeolocationManager::didFailToDeterminePosition):
- WebProcess/Network/WebLoaderStrategy.cpp:
(WebKit::WebLoaderStrategy::internallyFailedLoadTimerFired):
Replace out-parameter based copyToVector, with one that returns a Vector.
Source/WebKitLegacy/ios:
- Misc/WebGeolocationProviderIOS.mm:
(-[WebGeolocationProviderIOS _handlePendingInitialPosition:]):
(-[WebGeolocationProviderIOS positionChanged:]):
(-[WebGeolocationProviderIOS errorOccurred:]):
(-[WebGeolocationProviderIOS resetGeolocation]):
Replace out-parameter based copyToVector, with one that returns a Vector.
Source/WebKitLegacy/mac:
- Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView destroyPlugin]):
- WebView/WebHTMLRepresentation.mm:
(newArrayWithStrings):
Replace out-parameter based copyToVector, with one that returns a Vector.
Source/WTF:
- wtf/HashMap.h:
(WTF::copyToVector): Deleted.
- wtf/HashSet.h:
(WTF::copyToVector): Deleted.
Remove copyToVector.
- wtf/Vector.h:
(WTF::copyToVectorSpecialization):
Add another version of copyToVector, called copyToVectorSpecialization, that allows
you to specify the entire specialization for the Vector you want to copy to. This
can be useful if you want your resulting Vector to have an inline capacity.
Tools:
- DumpRenderTree/JavaScriptThreading.cpp:
(stopJavaScriptThreads):
- 6:12 AM Changeset in webkit [223237] by
-
- 31 edits1 copy18 adds in trunk
Support integrity="" on module scripts
https://bugs.webkit.org/show_bug.cgi?id=177959
Reviewed by Sam Weinig.
Source/JavaScriptCore:
This patch adds Subresource Integrity check for module scripts. Currently,
only top-level module can be verified with integrity parameter since there
is no way to perform integrity check onto the imported modules.
In JSC side, we add
parameters
to the entry point of the module loader
pipeline. This is fetching parameters and used when fetching modules.
We separately pass this parameters to the pipeline along with the script fetcher.
The script fetcher is only one for module graph since this is the initiator of
this module graph loading. On the other hand, this parameters is for each
module fetching. While setting "integrity" parameters to this script fetcher is
sufficient to pass parameters to top-level-module's fetching, it is not enough
for the future extension.
In the future, we will investigate a way to pass parameters to each non-top-level
module. At that time, thisparameters
should be per-module. This is because
"integrity" value should be different for each module. For example, we will accept
some form of syntax to add parameters toimport
. Some proposed syntax is like
https://discourse.wicg.io/t/specifying-nonce-or-integrity-when-importing-modules/1861
import "./xxx.js" integrity "xxxxxxx"
In this case, this
parameters
will be passed to "./xxx.js" module fetching. This
parameters
should be different from the one of top-level-module's one. That's why
we need per-moduleparameters
and why this patch addsparameters
to the module pipeline.
On the other hand, we also want to keep script fetcher. This
per-module-graph
thing
is important to offer module-graph-wide information. For example, import.meta would
haveimport.meta.scriptElement
, which is the script element fetching the module graph
including this. So, we keep the both, script fetcher and parameters.
https://github.com/tc39/proposal-import-meta
This parameters will be finally used by pipeline's fetch hook, and WebCore side
can use this parameters to fetch modules.
We also further clean up the module pipeline by dropping unnecessary features.
- JavaScriptCore.xcodeproj/project.pbxproj:
- Sources.txt:
- builtins/ModuleLoaderPrototype.js:
(requestFetch):
(requestInstantiate):
(requestSatisfy):
(loadModule):
(loadAndEvaluateModule):
This loadAndEvaluateModule should be implemented by just calling loadModule and
linkAndEvaluateModule. We can drop requestReady and requestLink.
(requestLink): Deleted.
(requestImportModule): Deleted.
- jsc.cpp:
(GlobalObject::moduleLoaderImportModule):
(GlobalObject::moduleLoaderFetch):
import and fetch hook takes parameters. Currently, we always passundefined
for
import hook. When dynamicimport()
is extended to accept additional parameters
like integrity, this parameters will be replaced with the actual value.
(functionLoadModule):
(runWithOptions):
- runtime/Completion.cpp:
(JSC::loadAndEvaluateModule):
(JSC::loadModule):
(JSC::importModule):
- runtime/Completion.h:
- runtime/JSGlobalObject.h:
- runtime/JSGlobalObjectFunctions.cpp:
(JSC::globalFuncImportModule):
- runtime/JSModuleLoader.cpp:
(JSC::JSModuleLoader::loadAndEvaluateModule):
(JSC::JSModuleLoader::loadModule):
(JSC::JSModuleLoader::requestImportModule):
(JSC::JSModuleLoader::importModule):
(JSC::JSModuleLoader::fetch):
- runtime/JSModuleLoader.h:
- runtime/JSScriptFetchParameters.cpp: Added.
(JSC::JSScriptFetchParameters::destroy):
- runtime/JSScriptFetchParameters.h: Added.
(JSC::JSScriptFetchParameters::createStructure):
(JSC::JSScriptFetchParameters::create):
(JSC::JSScriptFetchParameters::parameters const):
(JSC::JSScriptFetchParameters::JSScriptFetchParameters):
Add ScriptFetchParameters' JSCell wrapper, JSScriptFetchParameters.
It is used in the module pipeline.
- runtime/JSType.h:
- runtime/ModuleLoaderPrototype.cpp:
(JSC::moduleLoaderPrototypeFetch):
- runtime/ScriptFetchParameters.h: Added.
(JSC::ScriptFetchParameters::~ScriptFetchParameters):
Add ScriptFetchParameters. We can define our own custom ScriptFetchParameters
by inheriting this class. WebCore creates ModuleFetchParameters by inheriting
this.
- runtime/VM.cpp:
(JSC::VM::VM):
- runtime/VM.h:
Source/WebCore:
This patch extends module hooks to accept fetching parameters.
When starting fetching modules, WebCore creates ModuleFetchParameters.
And this parameters is propagated to the fetch hook. Then, fetch
hook can use this parameters to fetch modules.
This parameters only contains
integrity
field. This "integrity" is
used to perform subresource integrity check in module loader pipeline.
And this error is just proparaged as errors in module pipeline, which
is the same to the other types of errors in module pipeline.
Test: http/tests/subresource-integrity/sri-module.html
- ForwardingHeaders/runtime/JSScriptFetchParameters.h: Added.
- ForwardingHeaders/runtime/ScriptFetchParameters.h: Added.
- WebCore.xcodeproj/project.pbxproj:
- bindings/js/CachedModuleScriptLoader.cpp:
(WebCore::CachedModuleScriptLoader::create):
(WebCore::CachedModuleScriptLoader::CachedModuleScriptLoader):
Take parameters, which includes "integrity".
- bindings/js/CachedModuleScriptLoader.h:
- bindings/js/JSDOMWindowBase.cpp:
(WebCore::JSDOMWindowBase::moduleLoaderFetch):
(WebCore::JSDOMWindowBase::moduleLoaderImportModule):
import and fetch hooks take parameters.
- bindings/js/JSDOMWindowBase.h:
- bindings/js/JSMainThreadExecState.h:
(WebCore::JSMainThreadExecState::loadModule):
- bindings/js/ScriptController.cpp:
(WebCore::ScriptController::loadModuleScriptInWorld):
(WebCore::ScriptController::loadModuleScript):
Pass parameters to the entry point of the module pipeline.
- bindings/js/ScriptController.h:
- bindings/js/ScriptModuleLoader.cpp:
(WebCore::ScriptModuleLoader::fetch):
If parameters are passed, we set them to CachedModuleScriptLoader.
(WebCore::ScriptModuleLoader::importModule):
Pass parameters to the entry point of dynamic import.
(WebCore::ScriptModuleLoader::notifyFinished):
If script loader has parameters, we perform subresource integrity check here.
- bindings/js/ScriptModuleLoader.h:
- dom/LoadableModuleScript.cpp:
(WebCore::LoadableModuleScript::create):
(WebCore::LoadableModuleScript::LoadableModuleScript):
(WebCore::LoadableModuleScript::load):
Create ModuleFetchParameters with "integrity" value.
- dom/LoadableModuleScript.h:
- dom/ModuleFetchParameters.h: Copied from Source/WebCore/bindings/js/CachedModuleScriptLoader.h.
(WebCore::ModuleFetchParameters::create):
(WebCore::ModuleFetchParameters::integrity const):
(WebCore::ModuleFetchParameters::ModuleFetchParameters):
- dom/ScriptElement.cpp:
(WebCore::ScriptElement::requestModuleScript):
Pass "integrity" value to the module script.
LayoutTests:
- http/tests/subresource-integrity/resources/crossorigin-anon-script-module.js: Added.
- http/tests/subresource-integrity/resources/crossorigin-creds-script-module.js: Added.
- http/tests/subresource-integrity/resources/crossorigin-ineligible-script-module.js: Added.
- http/tests/subresource-integrity/resources/matching-digest-module.js: Added.
- http/tests/subresource-integrity/resources/non-matching-digest-module.js: Added.
- http/tests/subresource-integrity/resources/sri-utilities.js:
(add_result_callback):
(SRIModuleTest):
(SRIModuleTest.prototype.execute):
- http/tests/subresource-integrity/sri-module-expected.txt: Added.
- http/tests/subresource-integrity/sri-module.html: Added.
- js/dom/modules/module-inline-ignore-integrity-expected.txt: Added.
- js/dom/modules/module-inline-ignore-integrity.html: Added.
- js/dom/modules/module-integrity-non-top-level-expected.txt: Added.
- js/dom/modules/module-integrity-non-top-level.html: Added.
- js/dom/modules/script-tests/module-integrity-non-top-level-2.js: Added.
- js/dom/modules/script-tests/module-integrity-non-top-level.js: Added.
- 5:45 AM Changeset in webkit [223236] by
-
- 4 edits in trunk
It should be possible to iterate just the values (and not the counts) of a HashCountedSet
https://bugs.webkit.org/show_bug.cgi?id=178169
Patch by Sam Weinig <sam@webkit.org> on 2017-10-12
Reviewed by Daniel Bates.
Source/WTF:
Cleanup (fix indentation, simplify type names, adopt using), and add a values() range to
HashCountedSet. This will allow getting a Vector of all the values (and not the counts)
using the new copyToVector.
- wtf/HashCountedSet.h:
Tools:
- TestWebKitAPI/Tests/WTF/HashCountedSet.cpp:
(TestWebKitAPI::TEST):
Add test for HashCountedSet's new values() range.
- 4:58 AM Changeset in webkit [223235] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed, fix compilation warning
warning: extra tokens at end of #endif directive [-Wendif-labels]
- rendering/RenderMediaControls.h:
- 1:37 AM Changeset in webkit [223234] by
-
- 3 edits in trunk/Tools
run-safari --ios-simulator is no longer working with Xcode 9
https://bugs.webkit.org/show_bug.cgi?id=177595
Patch by Frederic Wang <fwang@igalia.com> on 2017-10-11
Reviewed by Daniel Bates.
In Xcode 9, the path of the simulator application is now in a new CoreSimulator subdirectory
of the iphoneOS SDK platform. This patch updates webkitdirs.pm to use the new path in
Xcode 9 or higher so that it is possible to run Safari on the iOS simulator again. It also
does some minor code refactoring to improve code reuse.
- Scripts/configure-xcode-for-ios-development: Move sdkDirectory() and sdkPlatformDirectory()
into webkitdirs.
(sdkDirectory): Deleted.
(sdkPlatformDirectory): Deleted.
- Scripts/webkitdirs.pm: Expose new sdkDirectory() and sdkPlatformDirectory().
(sdkDirectory): Moved from configure-xcode-for-ios-development.
(sdkPlatformDirectory): Ditto.
(XcodeSDKPath): Rely on sdkDirectory() to implement this function.
(iosSimulatorApplicationsPath): In Xcode 9 or higher use the new path. It is calculated
by relying on sdkPlatformDirectory().