Timeline
Jun 26, 2019:
- 11:33 PM Changeset in webkit [246872] by
-
- 9 edits in trunk
SubFrameSOAuthorizationSession should preserve the referrer header when fall back to web path
https://bugs.webkit.org/show_bug.cgi?id=199232
<rdar://problem/51718328>
Reviewed by Youenn Fablet.
Source/WebKit:
The fall back to web path mechanism in SubFrameSOAuthorizationSession doesn't actually resume
the previous navigation. Instead it starts a new one. The current implementation doesn't carry
any information from the previous navigation. It is problematic when it comes to http referrer
as the server might use that to determine what kind of responses to send back. Therefore, we
add that information now.
To accomplish the above, the patch teaches WebFrameProxy::loadURL to carry referrer information
when it is available. Then SubFrameSOAuthorizationSession can reuses the referrer from the
original request.
- UIProcess/Cocoa/SOAuthorization/SubFrameSOAuthorizationSession.mm:
(WebKit::SubFrameSOAuthorizationSession::fallBackToWebPathInternal):
- UIProcess/WebFrameProxy.cpp:
(WebKit::WebFrameProxy::loadURL):
- UIProcess/WebFrameProxy.h:
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::loadURLInFrame):
- WebProcess/WebPage/WebPage.h:
- WebProcess/WebPage/WebPage.messages.in:
Tools:
- TestWebKitAPI/Tests/WebKitCocoa/TestSOAuthorization.mm:
(TestWebKitAPI::TEST):
Add a test that utilizes TCPServer as local files always omit referrer.
- 10:01 PM Changeset in webkit [246871] by
-
- 9 copies1 add in releases/Apple/Safari Technology Preview/Safari Technology Preview 86
Added a tag for Safari Technology Preview release 86.
- 9:47 PM Changeset in webkit [246870] by
-
- 2 edits in trunk/Source/WebKit
testRunner.setAlwaysAcceptCookies should wait for cookie accept policy to be set
https://bugs.webkit.org/show_bug.cgi?id=199230
<rdar://problem/52217933>
Unreviewed build fix for WinCairo WK2 since r246856.
- PlatformWin.cmake: Added WKMessageListener.h to WebKit_PUBLIC_FRAMEWORK_HEADERS.
- 9:13 PM Changeset in webkit [246869] by
-
- 13 edits7 adds in trunk
[Async overflow scrolling] Fix missing or misplaced content inside overflow:scroll
https://bugs.webkit.org/show_bug.cgi?id=199253
Source/WebCore:
rdar://problem/51855156, rdar://problem/51934514
Reviewed by Zalan Bujtas.
This patch fixes a couple of related issues triggered by failing to composite layers inside non-stacking-context
overflow scroll.
First, we relied on overlap testing to composite position:relative layers inside overflow:scroll, but this only
worked when they came later in z-order, so didn't work for layers with negative z-index.
RenderLayerCompositor::requiresCompositingForIndirectReason() was intended to trigger compositing in such cases,
but it only did so for position:absolute inside stacking-context scroller, because
isNonScrolledLayerInsideScrolledCompositedAncestor() tested ancestorMovedByScroller && !layerMovedByScroller.
I fixed this by sharing code between the three places that ask whether compositing crosses a containing-block
boundary to call a single function, RenderLayerCompositor::layerScrollBehahaviorRelativeToCompositedAncestor(),
that returns a ScrollPositioningBehavior. We now do compositing for both "moves" and "stationary" behaviors (but
not "none"), ensuring that position:relative inside non-stacking scroller is always composited.
However, this would trigger compositing on layers that should be using backing sharing; if they were outside the
visible part of the scroller, the overlap code would not trigger, but the
"IndirectCompositingReason::OverflowScrollPositioning" code would. This is undesirable; any layer that can use
backing sharing should, because that's fewer composited layers, so smaller layer trees and less backing store.
To fix this, I moved the backing-sharing check before the overlap check in
RenderLayerCompositor::computeCompositingRequirements().
The "layer.setHasCompositingDescendant(currentState.subtreeIsCompositing)" line was in the wrong place,
triggering assertions on some content; "subtreeIsCompositing" only refers to child layers, so this bit needs to
be set right after we've traversed the z-order lists.
Tests: compositing/scrolling/async-overflow-scrolling/hidden-relative-layer-content-in-scroller.html
compositing/scrolling/async-overflow-scrolling/layer-for-negative-z-in-scroller.html
compositing/scrolling/async-overflow-scrolling/negative-z-in-scroller.html
- rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::computeCompositingRequirements):
(WebCore::RenderLayerCompositor::traverseUnchangedSubtree):
(WebCore::RenderLayerCompositor::requiresCompositingForIndirectReason const):
(WebCore::isScrolledByOverflowScrollLayer):
(WebCore::enclosingCompositedScrollingLayer):
(WebCore::RenderLayerCompositor::layerScrollBehahaviorRelativeToCompositedAncestor):
(WebCore::RenderLayerCompositor::computeCoordinatedPositioningForLayer const):
(WebCore::isNonScrolledLayerInsideScrolledCompositedAncestor): Deleted.
(WebCore::RenderLayerCompositor::layerContainingBlockCrossesCoordinatedScrollingBoundary): Deleted.
- rendering/RenderLayerCompositor.h:
LayoutTests:
Reviewed by Zalan Bujtas.
- compositing/geometry/limit-layer-bounds-clipping-ancestor-expected.txt:
- compositing/layer-creation/clipping-scope/overlap-constrained-inside-scroller-expected.txt:
- compositing/layer-creation/clipping-scope/scroller-with-negative-z-children-expected.txt:
- compositing/rtl/rtl-scrolling-with-transformed-descendants-expected.txt:
- compositing/scrolling/async-overflow-scrolling/hidden-relative-layer-content-in-scroller-expected.html: Added.
- compositing/scrolling/async-overflow-scrolling/hidden-relative-layer-content-in-scroller.html: Added.
- compositing/scrolling/async-overflow-scrolling/layer-for-negative-z-in-scroller-expected.txt: Added.
- compositing/scrolling/async-overflow-scrolling/layer-for-negative-z-in-scroller.html: Added.
- compositing/scrolling/async-overflow-scrolling/negative-z-in-scroller-expected.html: Added.
- compositing/scrolling/async-overflow-scrolling/negative-z-in-scroller.html: Added.
- compositing/shared-backing/overflow-scroll/nested-absolute-with-clipping-in-stacking-overflow-expected.txt:
- platform/ios-wk2/compositing/layer-creation/clipping-scope/overlap-constrained-inside-scroller-expected.txt:
- platform/ios-wk2/compositing/layer-creation/clipping-scope/scroller-with-negative-z-children-expected.txt:
- platform/ios-wk2/compositing/scrolling/async-overflow-scrolling/layer-for-negative-z-in-scroller-expected.txt: Added.
- platform/ios-wk2/compositing/shared-backing/overflow-scroll/nested-absolute-with-clipping-in-stacking-overflow-expected.txt:
- platform/ios/compositing/geometry/limit-layer-bounds-clipping-ancestor-expected.txt:
- 7:55 PM Changeset in webkit [246868] by
-
- 3 edits2 adds in trunk
ReplacementFragment should not have script observable side effects
https://bugs.webkit.org/show_bug.cgi?id=199147
Reviewed by Wenson Hsieh.
Source/WebCore:
Fixed the bug that ReplacementFragment has script observable side effects.
Use a brand new document for sanitization where the script is disabled for test rendering,
and remove style and script elements as well as event handlers before the test rendering
and the actual pasting.
Test: editing/pasteboard/paste-contents-with-side-effects.html
- editing/ReplaceSelectionCommand.cpp:
(WebCore::ReplacementFragment::document): Deleted.
(WebCore::ReplacementFragment::ReplacementFragment): Use createPageForSanitizingWebContent
to create our own document for test rendering. We need to copy over the computed style
from the root editable element (editing host) to respect whitespace treatment, etc...
(WebCore::ReplacementFragment::removeContentsWithSideEffects): Moved from removeHeadContents.
Now removes event handlers and JavaScript URLs.
(WebCore::ReplacementFragment::insertFragmentForTestRendering): Renamed variable names.
(WebCore::ReplaceSelectionCommand::willApplyCommand): Create the plain text and HTML markup
for beforeinput and input events before ReplacementFragment removes contents with side effects.
(WebCore::ReplaceSelectionCommand::ensureReplacementFragment): The removal of head elements
is now done in ReplacementFragment's constructor.
LayoutTests:
Added regression tests.
- editing/pasteboard/paste-contents-with-side-effects-expected.txt: Added.
- editing/pasteboard/paste-contents-with-side-effects.html: Added.
- 6:28 PM Changeset in webkit [246867] by
-
- 2 edits in trunk/Source/WebKit
Add type to UIImage symbol mapping for _WKElementAction
https://bugs.webkit.org/show_bug.cgi?id=199255
Reviewed by Sam Weinig.
Moving some code in from WebKitAdditions now
that the API is public.
- UIProcess/API/Cocoa/_WKElementAction.mm:
(+[_WKElementAction imageForElementActionType:]):
(elementActionTypeToUIActionIdentifier):
(uiActionIdentifierToElementActionType):
- 6:08 PM Changeset in webkit [246866] by
-
- 4 edits in trunk/Source/WebInspectorUI
Web Inspector: Update legacy backend commands after enum name change
https://bugs.webkit.org/show_bug.cgi?id=199250
Reviewed by Devin Rousso.
- UserInterface/Protocol/Legacy/11.3/InspectorBackendCommands.js:
- UserInterface/Protocol/Legacy/12.0/InspectorBackendCommands.js:
- UserInterface/Protocol/Legacy/12.2/InspectorBackendCommands.js:
- 6:04 PM Changeset in webkit [246865] by
-
- 4 edits in trunk/Source/WebKit
Expose UIAction identifiers for _WKElementActions
https://bugs.webkit.org/show_bug.cgi?id=199246
<rdar://problem/52218950>
Reviewed by Tim Horton.
In order for clients to create a contextual menu, they are given
a set of suggested UIActions, created from _WKElementActions.
By associating identifiers (strings) with the UIActions, clients
can inspect the suggestions and make a decision on whether or
not to include them in the final menu.
- UIProcess/API/Cocoa/_WKElementAction.h: Typedef UIActionIdentifier,
add a method to create a UIAction from an _WKElementAction, and a
helper to map between identifiers and types.
- UIProcess/API/Cocoa/_WKElementAction.mm:
(elementActionTypeToUIActionIdentifier): Helper to convert between the two types.
(uiActionIdentifierToElementActionType): The inverse of above.
(+[_WKElementAction elementActionTypeForUIActionIdentifier:]): A client given
a UIAction object can use this helper method to see what _WKElementActionType it
corresponds to.
(-[_WKElementAction uiActionForElementInfo:]): Used by WKContentViewInteraction to
create a UIAction from this _WKElementAction.
- UIProcess/ios/WKContentViewInteraction.mm:
(uiActionForLegacyPreviewAction): Renamed to make it clear this is a legacy approach.
(menuFromLegacyPreviewOrDefaultActions): Split these functions to separate the legacy
and non-legacy approach.
(-[WKContentView assignLegacyDataForContextMenuInteraction]):
(-[WKContentView continueContextMenuInteraction:]):
(uiActionForPreviewAction): Deleted.
(menuFromPreviewOrDefaults): Deleted.
- 5:54 PM Changeset in webkit [246864] by
-
- 2 edits in trunk/Tools
[ews-build] Add configuration and architecture for WPE and GTK builders
https://bugs.webkit.org/show_bug.cgi?id=199249
Reviewed by Jonathan Bedard.
- BuildSlaveSupport/ews-build/config.json:
- 5:39 PM Changeset in webkit [246863] by
-
- 3 edits3 adds in trunk
[Payment Request] Set state to Closed when show() is called during an active session
https://bugs.webkit.org/show_bug.cgi?id=199239
Reviewed by Alex Christensen.
Source/WebCore:
According to step 7 of https://w3c.github.io/payment-request/#show-method (as of 26 June
2019), when another payment request is showing, calling show() should set the state
internal slot to Closed in addition to rejecting the show promise with an AbortError. WebKit
was only doing the latter. Let's do both.
Test: http/tests/paymentrequest/payment-is-showing.https.html
- Modules/paymentrequest/PaymentRequest.cpp:
(WebCore::PaymentRequest::show):
LayoutTests:
Copied from web-platform-tests/payment-request/payment-is-showing.https.html and modified to
use UIHelper instead of test_driver.bless.
- http/tests/paymentrequest/payment-is-showing.https-expected.txt: Added.
- http/tests/paymentrequest/payment-is-showing.https.html: Added.
- http/tests/paymentrequest/resources/blank.html: Added.
- 5:36 PM Changeset in webkit [246862] by
-
- 3 edits in trunk/Tools
[ews-build] Add check for duplicate workers in config.json
https://bugs.webkit.org/show_bug.cgi?id=199240
Reviewed by Jonathan Bedard.
- BuildSlaveSupport/ews-build/loadConfig.py:
(checkWorkersAndBuildersForConsistency._find_worker_with_name): Check for duplicate worker entry.
- BuildSlaveSupport/ews-build/loadConfig_unittest.py:
(TestcheckWorkersAndBuildersForConsistency.test_duplicate_worker): Added unit-test.
- 5:34 PM Changeset in webkit [246861] by
-
- 3 edits in trunk/Tools
[Win] MiniBrowser should make better font choices
https://bugs.webkit.org/show_bug.cgi?id=199244
Reviewed by Brent Fulgham.
- MiniBrowser/win/MainWindow.cpp:
(MainWindow::updateDeviceScaleFactor):
- MiniBrowser/win/MiniBrowserLib.rc:
- 5:20 PM Changeset in webkit [246860] by
-
- 5 edits in trunk/Source/JavaScriptCore
[RemoteInspector] Add address argument to listen for RemoteInspectorServer Socket implementation.
https://bugs.webkit.org/show_bug.cgi?id=199035
Reviewed by Ross Kirsling.
Added new argument
addressto start listening.
- inspector/remote/socket/RemoteInspectorServer.cpp:
(Inspector::RemoteInspectorServer::start):
- inspector/remote/socket/RemoteInspectorServer.h:
- inspector/remote/socket/posix/RemoteInspectorSocketPOSIX.cpp:
(Inspector::Socket::listen):
- inspector/remote/socket/win/RemoteInspectorSocketWin.cpp:
(Inspector::Socket::listen):
- 5:18 PM Changeset in webkit [246859] by
-
- 2 edits in trunk/Source/WebKit
[iPadOS] Fix another crash in -[UIPreviewTarget initWithContainer:center:transform:] when generating a fallback targeted preview
https://bugs.webkit.org/show_bug.cgi?id=199243
<rdar://problem/51554509>
Reviewed by Tim Horton.
Additionally make createFallbackTargetedPreview robust in the case where the content view is unparented, and
rename _ensureTargetedPreview to _createTargetedPreviewIfPossible, to reflect the fact that it may now return
nil.
- UIProcess/ios/WKContentViewInteraction.mm:
(createTargetedPreview):
(createFallbackTargetedPreview):
(-[WKContentView _createTargetedPreviewIfPossible]):
(-[WKContentView contextMenuInteraction:previewForHighlightingMenuWithConfiguration:]):
(-[WKContentView contextMenuInteraction:previewForDismissingMenuWithConfiguration:]):
(-[WKContentView _ensureTargetedPreview]): Deleted.
- 5:17 PM Changeset in webkit [246858] by
-
- 1 copy in tags/Safari-608.1.31.0.3
Tag Safari-608.1.31.0.3.
- 5:08 PM Changeset in webkit [246857] by
-
- 2 edits in trunk/Source/WTF
Remove unneeded #include <wtf/glib/GRefPtr.h>
https://bugs.webkit.org/show_bug.cgi?id=199228
Reviewed by Michael Catanzaro.
- wtf/MemoryPressureHandler.h:
- 4:30 PM Changeset in webkit [246856] by
-
- 23 edits3 copies in trunk
testRunner.setAlwaysAcceptCookies should wait for cookie accept policy to be set
https://bugs.webkit.org/show_bug.cgi?id=199230
<rdar://51757107>
Patch by Alex Christensen <achristensen@webkit.org> on 2019-06-26
Reviewed by Andy Estes.
Source/WebKit:
This patch adds an optional callback to WKCookieManagerSetHTTPCookieAcceptPolicy which is luckily only used for testing.
It also adds listener-based asynchronous versions of didReceiveSynchronousMessageFromInjectedBundle.
WebKitTestRunner uses these new abilities to wait for the cookie accept policy to be set in the network process while the web process is hung.
This removes the race condition that was causing some flakiness in tests that use testRunner.setAlwaysAcceptCookies
- Shared/API/APIObject.h:
- Shared/API/c/WKBase.h:
- Sources.txt:
- UIProcess/API/APIInjectedBundleClient.h:
(API::InjectedBundleClient::didReceiveSynchronousMessageFromInjectedBundle):
- UIProcess/API/APIMessageListener.h: Copied from Source/WebKit/UIProcess/API/APIInjectedBundleClient.h.
(API::MessageListener::create):
(API::MessageListener::sendReply):
(API::MessageListener::MessageListener):
- UIProcess/API/C/WKAPICast.h:
- UIProcess/API/C/WKContextInjectedBundleClient.h:
- UIProcess/API/C/WKCookieManager.cpp:
(WKCookieManagerSetHTTPCookieAcceptPolicy):
- UIProcess/API/C/WKCookieManager.h:
- UIProcess/API/C/WKMessageListener.cpp: Copied from Source/WebKit/UIProcess/API/APIInjectedBundleClient.h.
(WKMessageListenerGetTypeID):
(WKMessageListenerSendReply):
- UIProcess/API/C/WKMessageListener.h: Copied from Source/WebKit/UIProcess/API/APIInjectedBundleClient.h.
- UIProcess/API/C/WKPageInjectedBundleClient.h:
- UIProcess/WebContextInjectedBundleClient.cpp:
(WebKit::WebContextInjectedBundleClient::didReceiveSynchronousMessageFromInjectedBundle):
- UIProcess/WebContextInjectedBundleClient.h:
- UIProcess/WebPageInjectedBundleClient.cpp:
(WebKit::WebPageInjectedBundleClient::didReceiveSynchronousMessageFromInjectedBundle):
- UIProcess/WebPageInjectedBundleClient.h:
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::handleSynchronousMessage):
- UIProcess/WebPageProxy.h:
(WebKit::WebPageProxy::injectedBundleClient): Deleted.
- UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::handleSynchronousMessage):
- WebKit.xcodeproj/project.pbxproj:
Tools:
- TestWebKitAPI/Tests/WebKit/CookieManager.cpp:
(TestWebKitAPI::didGetTestHTTPCookieAcceptPolicy):
(TestWebKitAPI::didGetUserHTTPCookieAcceptPolicy):
- WebKitTestRunner/TestController.cpp:
(WTR::TestController::generatePageConfiguration):
(WTR::TestController::createWebViewWithOptions):
(WTR::TestController::didReceiveSynchronousMessageFromInjectedBundleWithListener):
(WTR::TestController::didReceiveSynchronousPageMessageFromInjectedBundleWithListener):
(WTR::TestController::didReceiveSynchronousMessageFromInjectedBundle):
(WTR::TestController::didReceiveSynchronousPageMessageFromInjectedBundle): Deleted.
- WebKitTestRunner/TestController.h:
- WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::invoke):
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
- 4:25 PM Changeset in webkit [246855] by
-
- 5 edits in trunk/Source/WebInspectorUI
Web Inspector: REGRESSION: Elements: the forced pseudo-class indicator isn't visible when hovering
https://bugs.webkit.org/show_bug.cgi?id=199166
Reviewed by Matt Baker.
Make the pseudo-class indicator into its own element instead of being a
::before.
- UserInterface/Views/DOMTreeElement.js:
(WI.DOMTreeElement):
(WI.DOMTreeElement.prototype.updateSelectionArea):
(WI.DOMTreeElement.prototype.updateTitle):
(WI.DOMTreeElement.prototype._updatePseudoClassIndicator): Added.
(WI.DOMTreeElement.prototype.get pseudoClassesEnabled): Deleted.
(WI.DOMTreeElement.prototype._nodePseudoClassesDidChange): Deleted.
- UserInterface/Views/DOMTreeOutline.css:
(.tree-outline.dom):
(.tree-outline.dom li .pseudo-class-indicator): Added.
(body[dir=ltr] .tree-outline.dom li .pseudo-class-indicator): Added.
(body[dir=rtl] .tree-outline.dom li .pseudo-class-indicator): Added.
(.tree-outline.dom:focus li.selected .pseudo-class-indicator): Added.
(.tree-outline.dom li.pseudo-class-enabled > .selection-area::before): Deleted.
(body[dir=ltr] .tree-outline.dom li.pseudo-class-enabled > .selection-area::before): Deleted.
(body[dir=rtl] .tree-outline.dom li.pseudo-class-enabled > .selection-area::before): Deleted.
(.tree-outline.dom:focus li.selected.pseudo-class-enabled > .selection-area::before): Deleted.
- UserInterface/Views/FormattedValue.css:
(.formatted-node > .tree-outline.dom):
Adjust the indent of anyDOMTreeOutlineso there's more room for the pseudo-class
indicator, such as in the Console.
- 4:20 PM Changeset in webkit [246854] by
-
- 2 edits in trunk/LayoutTests
Layout Test http/tests/performance/performance-resource-timing-resourcetimingbufferfull-shrinking-buffer-crash.html is failing.
https://bugs.webkit.org/show_bug.cgi?id=199242
Unreviewed Test Gardening.
Patch by Russell Epstein <russell_e@apple.com> on 2019-06-26
- platform/mac-wk1/TestExpectations:
- 4:19 PM Changeset in webkit [246853] by
-
- 7 edits in branches/safari-608.1.31.0-branch
Revert r246834. rdar://problem/51554509
- 4:10 PM Changeset in webkit [246852] by
-
- 3 edits2 adds in trunk
[iPadOS] eddm.usps.com scrolls horizontally due to explicit width set in viewport meta tag
https://bugs.webkit.org/show_bug.cgi?id=199219
<rdar://problem/50425765>
Reviewed by Tim Horton.
Source/WebKit:
Currently, the heuristic to determine whether the page should be shrunk to fit the content width after loading
works by checking whether the page's content is wider than the layout width we've provided for the page.
However, in the case where an explicit width larger than the true view width is specified by the page's meta
viewport, we'll end up believing that the page's content is not wider than the layout width, which is dictated
by the fixed meta viewport width. Instead, we can shrink the page down in this scenario by comparing the content
width against the scaled size of the view when computing the amount of horizontal overflow.
Test: fast/viewport/ios/shrink-to-fit-content-large-constant-width.html
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::immediatelyShrinkToFitContent):
LayoutTests:
Add a new test to verify that if the meta viewport tag specifies a wide fixed width value, we will still try to
shrink the page down to fit within the viewport.
- fast/viewport/ios/shrink-to-fit-content-large-constant-width-expected.txt: Added.
- fast/viewport/ios/shrink-to-fit-content-large-constant-width.html: Added.
- 4:07 PM Changeset in webkit [246851] by
-
- 7 edits in trunk
speciesConstruct needs to throw if the result is a DataView
https://bugs.webkit.org/show_bug.cgi?id=199231
Reviewed by Mark Lam.
JSTests:
- stress/typedarray-filter.js:
(subclasses.forEach):
- stress/typedarray-map.js:
(subclasses.forEach):
- stress/typedarray-slice.js:
(typedArrays.forEach):
- stress/typedarray-subarray.js:
(subclasses.forEach):
Source/JavaScriptCore:
Previously, we only checked that the result was a
JSArrayBufferView, which can include DataViews. This is incorrect
as the result should be only be a TypedArray.
- runtime/JSGenericTypedArrayViewPrototypeFunctions.h:
(JSC::speciesConstruct):
- 3:25 PM Changeset in webkit [246850] by
-
- 20 edits in trunk
Web Inspector: Implement console.countReset
https://bugs.webkit.org/show_bug.cgi?id=199200
Reviewed by Devin Rousso.
Source/JavaScriptCore:
- inspector/JSGlobalObjectConsoleClient.cpp:
(Inspector::JSGlobalObjectConsoleClient::countReset):
- inspector/JSGlobalObjectConsoleClient.h:
- inspector/agents/InspectorConsoleAgent.cpp:
(Inspector::InspectorConsoleAgent::getCounterLabel):
(Inspector::InspectorConsoleAgent::count):
(Inspector::InspectorConsoleAgent::countReset):
- inspector/agents/InspectorConsoleAgent.h:
- runtime/ConsoleClient.h:
- runtime/ConsoleObject.cpp:
(JSC::ConsoleObject::finishCreation):
(JSC::consoleProtoFuncCountReset):
Source/WebCore:
Updated existing tests.
- inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::consoleCountImpl):
(WebCore::InspectorInstrumentation::consoleCountResetImpl):
- inspector/InspectorInstrumentation.h:
(WebCore::InspectorInstrumentation::consoleCountReset):
- page/PageConsoleClient.cpp:
(WebCore::PageConsoleClient::countReset):
- page/PageConsoleClient.h:
- workers/WorkerConsoleClient.cpp:
(WebCore::WorkerConsoleClient::countReset):
- workers/WorkerConsoleClient.h:
- worklets/WorkletConsoleClient.cpp:
(WebCore::WorkletConsoleClient::countReset):
- worklets/WorkletConsoleClient.h:
LayoutTests:
- inspector/console/console-count-expected.txt:
- inspector/console/console-count.html:
- js/console-expected.txt:
- 3:11 PM Changeset in webkit [246849] by
-
- 2 edits in trunk/Source/WebCore
[Pointer Events] Respect pointer capture when dispatching mouse boundary events and updating :hover
https://bugs.webkit.org/show_bug.cgi?id=198999
<rdar://problem/51979477>
Reviewed by Dean Jackson.
Make sure we don't return early prior to setting the flag that prevents re-entrancy, or else we would never
enter this function again. No new tests, this was caught because Pointer Events WPT tests on iOS tests regressed.
- page/PointerCaptureController.cpp:
(WebCore::PointerCaptureController::processPendingPointerCapture):
- 3:11 PM Changeset in webkit [246848] by
-
- 2 edits in trunk/Tools
[Win][MiniBrowser] Remove obsolete code after r246814.
https://bugs.webkit.org/show_bug.cgi?id=199233
Reviewed by Fujii Hironori.
- MiniBrowser/win/MiniBrowserWebHost.cpp:
(MiniBrowserWebHost::didFinishLoadForFrame):
(SimpleEventListener::SimpleEventListener): Deleted.
(SimpleEventListener::handleEvent): Deleted.
- 2:59 PM Changeset in webkit [246847] by
-
- 3 edits in trunk/Websites/perf.webkit.org
commit api should not return 'AmbiguousRevisionPrefix' if there is an exact revision match
https://bugs.webkit.org/show_bug.cgi?id=199227
Reviewed by Ryosuke Niwa.
When prefix match is specified, api should check whether there is an exact match when multiple commits
match the prefix.
- public/include/commit-log-fetcher.php: Added the logic to check if there is an exact match when multiple matches are found.
- server-tests/api-commits-tests.js: Added an unit test.
- 12:35 PM Changeset in webkit [246846] by
-
- 151 edits1 add7 deletes in trunk
REGRESSION: ( r246394 ) webgpu/whlsl-buffer-fragment.html and webgpu/whlsl-buffer-vertex.html are failing
https://bugs.webkit.org/show_bug.cgi?id=199012
Reviewed by Saam Barati.
Source/WebCore:
- platform/graphics/gpu/cocoa/GPUDeviceMetal.mm:
(WebCore::isAcceptableDevice):
(WebCore::GPUDevice::tryCreate):
Source/WTF:
- wtf/Platform.h:
LayoutTests:
Make the tests still pass if the machine doesn't support WebGPU.
- webgpu/adapter-options-expected.txt: Removed.
- webgpu/adapter-options.html: Removed.
- webgpu/bind-groups.html:
- webgpu/blend-color-triangle-strip-expected.html:
- webgpu/blend-color-triangle-strip.html:
- webgpu/blend-triangle-strip-expected.html:
- webgpu/blend-triangle-strip.html:
- webgpu/blit-commands-expected.html:
- webgpu/blit-commands.html:
- webgpu/buffer-command-buffer-races-expected.html:
- webgpu/buffer-command-buffer-races.html:
- webgpu/color-write-mask-triangle-strip-expected.html:
- webgpu/color-write-mask-triangle-strip.html:
- webgpu/command-buffers.html:
- webgpu/depth-enabled-triangle-strip-expected.html:
- webgpu/depth-enabled-triangle-strip.html:
- webgpu/draw-indexed-triangles-expected.html:
- webgpu/draw-indexed-triangles.html:
- webgpu/js/create-worker-device.js: Removed.
- webgpu/js/webgpu-functions.js:
(drawWhiteSquareOnBlueBackgroundInSoftware):
(drawGreenSquareInSoftware):
(drawGreenAndBlueCheckerboardInSoftware):
(async.mapWriteDataToBuffer):
- webgpu/map-read-buffers.html:
- webgpu/map-write-buffers.html:
- webgpu/pipeline-layouts.html:
- webgpu/propertyresolver/ander-abstract-lvalue-expected.html:
- webgpu/propertyresolver/ander-abstract-lvalue.html:
- webgpu/propertyresolver/ander-expected.html:
- webgpu/propertyresolver/ander-lvalue-3-levels-expected.html:
- webgpu/propertyresolver/ander-lvalue-3-levels.html:
- webgpu/propertyresolver/ander-lvalue-expected.html:
- webgpu/propertyresolver/ander-lvalue.html:
- webgpu/propertyresolver/ander.html:
- webgpu/propertyresolver/getter-expected.html:
- webgpu/propertyresolver/getter.html:
- webgpu/propertyresolver/indexer-ander-abstract-lvalue-expected.html:
- webgpu/propertyresolver/indexer-ander-abstract-lvalue.html:
- webgpu/propertyresolver/indexer-ander-expected.html:
- webgpu/propertyresolver/indexer-ander-lvalue-3-levels-expected.html:
- webgpu/propertyresolver/indexer-ander-lvalue-3-levels.html:
- webgpu/propertyresolver/indexer-ander-lvalue-expected.html:
- webgpu/propertyresolver/indexer-ander-lvalue.html:
- webgpu/propertyresolver/indexer-ander.html:
- webgpu/propertyresolver/indexer-getter-expected.html:
- webgpu/propertyresolver/indexer-getter.html:
- webgpu/propertyresolver/indexer-setter-abstract-lvalue-3-levels-expected.html:
- webgpu/propertyresolver/indexer-setter-abstract-lvalue-3-levels.html:
- webgpu/propertyresolver/indexer-setter-abstract-lvalue-expected.html:
- webgpu/propertyresolver/indexer-setter-abstract-lvalue.html:
- webgpu/propertyresolver/indexer-setter-expected.html:
- webgpu/propertyresolver/indexer-setter-lvalue-expected.html:
- webgpu/propertyresolver/indexer-setter-lvalue.html:
- webgpu/propertyresolver/indexer-setter.html:
- webgpu/propertyresolver/setter-abstract-lvalue-3-levels-expected.html:
- webgpu/propertyresolver/setter-abstract-lvalue-3-levels.html:
- webgpu/propertyresolver/setter-abstract-lvalue-expected.html:
- webgpu/propertyresolver/setter-abstract-lvalue.html:
- webgpu/propertyresolver/setter-lvalue-expected.html:
- webgpu/propertyresolver/setter-lvalue.html:
- webgpu/queue-creation.html:
- webgpu/render-command-encoding.html:
- webgpu/render-pipelines.html:
- webgpu/shader-modules.html:
- webgpu/simple-triangle-strip-expected.html:
- webgpu/simple-triangle-strip.html:
- webgpu/texture-triangle-strip-expected.html:
- webgpu/texture-triangle-strip.html:
- webgpu/textures-textureviews.html:
- webgpu/vertex-buffer-triangle-strip-expected.html:
- webgpu/vertex-buffer-triangle-strip.html:
- webgpu/viewport-scissor-rect-triangle-strip-expected.html:
- webgpu/viewport-scissor-rect-triangle-strip.html:
- webgpu/webgpu-enabled-expected.txt: Removed.
- webgpu/webgpu-enabled-in-worker-expected.txt: Removed.
- webgpu/webgpu-enabled-in-worker.html: Removed.
- webgpu/webgpu-enabled.html: Removed.
- webgpu/whlsl-arbitrary-vertex-attribute-locations-expected.html:
- webgpu/whlsl-arbitrary-vertex-attribute-locations.html:
- webgpu/whlsl-buffer-fragment-expected.html:
- webgpu/whlsl-buffer-fragment.html:
- webgpu/whlsl-buffer-length-expected.txt:
- webgpu/whlsl-buffer-length.html:
- webgpu/whlsl-buffer-vertex-expected.html:
- webgpu/whlsl-buffer-vertex.html:
- webgpu/whlsl-checker-should-set-type-of-read-modify-write-variables-expected.txt:
- webgpu/whlsl-checker-should-set-type-of-read-modify-write-variables.html:
- webgpu/whlsl-compute-expected.txt:
- webgpu/whlsl-compute.html:
- webgpu/whlsl-dereference-pointer-should-type-check-expected.html:
- webgpu/whlsl-dereference-pointer-should-type-check.html:
- webgpu/whlsl-do-while-loop-break-expected.html:
- webgpu/whlsl-do-while-loop-break.html:
- webgpu/whlsl-do-while-loop-continue-expected.html:
- webgpu/whlsl-do-while-loop-continue.html:
- webgpu/whlsl-do-while-loop-expected.html:
- webgpu/whlsl-do-while-loop.html:
- webgpu/whlsl-dont-crash-parsing-enum-expected.html:
- webgpu/whlsl-dont-crash-parsing-enum.html:
- webgpu/whlsl-dot-expressions-expected.html:
- webgpu/whlsl-dot-expressions.html:
- webgpu/whlsl-duplicate-types-should-not-produce-duplicate-ctors-expected.txt:
- webgpu/whlsl-duplicate-types-should-not-produce-duplicate-ctors.html:
- webgpu/whlsl-ensure-proper-variable-lifetime-2-expected.html:
- webgpu/whlsl-ensure-proper-variable-lifetime-2.html:
- webgpu/whlsl-ensure-proper-variable-lifetime-3-expected.html:
- webgpu/whlsl-ensure-proper-variable-lifetime-3.html:
- webgpu/whlsl-ensure-proper-variable-lifetime-expected.html:
- webgpu/whlsl-ensure-proper-variable-lifetime.html:
- webgpu/whlsl-expected.html:
- webgpu/whlsl-loops-break-expected.html:
- webgpu/whlsl-loops-break.html:
- webgpu/whlsl-loops-continue-expected.html:
- webgpu/whlsl-loops-continue.html:
- webgpu/whlsl-loops-expected.html:
- webgpu/whlsl-loops.html:
- webgpu/whlsl-matrix-2-expected.txt:
- webgpu/whlsl-matrix-2.html:
- webgpu/whlsl-matrix-expected.txt:
- webgpu/whlsl-matrix.html:
- webgpu/whlsl-nested-dot-expression-rvalue-expected.html:
- webgpu/whlsl-nested-dot-expression-rvalue.html:
- webgpu/whlsl-nested-loop-expected.html:
- webgpu/whlsl-nested-loop.html:
- webgpu/whlsl-null-dereference-expected.txt:
- webgpu/whlsl-null-dereference.html:
- webgpu/whlsl-oob-access-expected.txt:
- webgpu/whlsl-oob-access.html:
- webgpu/whlsl-read-modify-write-high-zombies-expected.txt:
- webgpu/whlsl-read-modify-write-high-zombies.html:
- webgpu/whlsl-return-local-variable-expected.html:
- webgpu/whlsl-return-local-variable.html:
- webgpu/whlsl-store-to-property-updates-properly-expected.html:
- webgpu/whlsl-store-to-property-updates-properly.html:
- webgpu/whlsl-textures-getdimensions-expected.txt:
- webgpu/whlsl-textures-getdimensions.html:
- webgpu/whlsl-textures-load-expected.html:
- webgpu/whlsl-textures-load.html:
- webgpu/whlsl-textures-sample-expected.html:
- webgpu/whlsl-textures-sample.html:
- webgpu/whlsl-while-loop-break-expected.html:
- webgpu/whlsl-while-loop-break.html:
- webgpu/whlsl-while-loop-continue-expected.html:
- webgpu/whlsl-while-loop-continue.html:
- webgpu/whlsl-zero-initialize-values-2-expected.html:
- webgpu/whlsl-zero-initialize-values-2.html:
- webgpu/whlsl-zero-initialize-values-expected.html:
- webgpu/whlsl-zero-initialize-values.html:
- webgpu/whlsl.html:
- 12:12 PM Changeset in webkit [246845] by
-
- 4 edits2 adds in trunk
Incorrect clippping with overflow:scroll inside oveflow:hidden with border-radius
https://bugs.webkit.org/show_bug.cgi?id=199135
rdar://problem/51882383
Reviewed by Zalan Bujtas.
Source/WebCore:
In some cases the geometry of the shape mask layer added to m_childContainmentLayer, for
border-radius, was incorrect. GraphicsLayerCA::updateClippingStrategy() treated
the rounded rect as if it were in renderer coordinates, but to match the other geometry
on GraphicsLayer, it should in GraphicsLayer coordinates, so we need to offset by
clipLayer->offsetFromRenderer().
In addition, RenderLayerBacking::updateChildClippingStrategy() is called from
the updateConfiguration(), which is before we've set offsetFromRenderer() on the clipLayer.
This first call is really to find out whether the platform supports this rounded rect
as a shape mask.
So we need to call setMasksToBoundsRect() a second time in RenderLayerBacking::updateGeometry()
after clipLayers's offsetFromRenderer() has been computed.
Test: compositing/scrolling/async-overflow-scrolling/border-radius-on-scroll-container.html
- platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::GraphicsLayerCA::updateClippingStrategy):
- rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::createPrimaryGraphicsLayer):
(WebCore::RenderLayerBacking::updateDescendantClippingLayer):
(WebCore::RenderLayerBacking::updateChildClippingStrategy):
LayoutTests:
- compositing/scrolling/async-overflow-scrolling/border-radius-on-scroll-container-expected.html: Added.
- compositing/scrolling/async-overflow-scrolling/border-radius-on-scroll-container.html: Added.
- 11:36 AM Changeset in webkit [246844] by
-
- 15 edits in trunk
[Pointer Events] Respect pointer capture when dispatching mouse boundary events and updating :hover
https://bugs.webkit.org/show_bug.cgi?id=198999
<rdar://problem/51979477>
Reviewed by Dean Jackson.
LayoutTests/imported/w3c:
Mark the progressions in 3 WPT tests.
- web-platform-tests/pointerevents/pointerevent_boundary_events_at_implicit_release_hoverable_pointers-expected.txt:
- web-platform-tests/pointerevents/pointerevent_mouse_capture_change_hover-expected.txt:
- web-platform-tests/pointerevents/pointerevent_setpointercapture_relatedtarget-expected.txt:
Source/WebCore:
Up until now, we would not account for pointer capture (see https://w3c.github.io/pointerevents/#pointer-capture) when dispatching
mouse boundary events (mouseover, mouseout, mouseenter, mouseleave) and their counterpart pointer events. We would also not account
for it when updating :hover styles.
Now, when pointer capture changes for an element, we call setCapturingMouseEventsElement() on the EventHandler such that the element
that would naturally hit-test is overridden by the pointer capture element when identifying which target to use for the dispatch of
boundary mouse events. Additionally, when calling Document::prepareMouseEvent(), we also use the pointer capture element to
pass down to Document::updateHoverActiveState() such that :hover styles are applied to the correct element.
- dom/Document.cpp:
(WebCore::Document::prepareMouseEvent): When a new event is going to be dispatched, we must run the Process Pending Capture Element
steps as mandated by the Pointer Events spec. Calling this will dispatch the appropriate pointer capture change events and also
required boundary events since EventHandler::setCapturingMouseEventsElement() calls into EventHandler::updateMouseEventTargetNode().
Since this may update the capturing mouse events element, we ensure that we call updateHoverActiveState() with a flag that indicates that.
Finally, we use the capturing mouse events element instead of the hit-testing element to pass to updateHoverActiveState() to ensure
that is has :hover styles applied.
(WebCore::Document::updateHoverActiveState): Account for the new CaptureChange flag to force the invalidation of the :hover and :active
elements chain at all times when the capturing mouse events element changed.
- dom/Document.h:
- dom/PointerEvent.h: Update PointerEvent::createForPointerCapture() to take specific parameters rather than a single PointerEvent to
set the pointerId, isPrimary and pointerType properties of the generated event. This is required to call processPendingPointerCapture()
outside of PointerEvent dispatch logic since we now call it from Document::prepareMouseEvent() where we haven't yet generated such an
event.
- page/EventHandler.cpp:
(WebCore::EventHandler::pointerCaptureElementDidChange): When a new pointer capture element is set, call updateMouseEventTargetNode()
to ensure that boundary events are fired to indicate the pointer capture state change.
(WebCore::EventHandler::prepareMouseEvent): Keep track of the last PlatformMouseEvent used to prepare a mouse event so that we can use
it when setCapturingMouseEventsElement() is called.
- page/EventHandler.h:
- page/PointerCaptureController.cpp:
(WebCore::PointerCaptureController::pointerCaptureElement): Since Document::prepareMouseEvent() needs to know the current pointer capture
element, add a new public method that indicates the pointer capture element if that element is contained in the provided document. We need
to provide the document since PointerCaptureController is owned by the Page and may manage several documents.
(WebCore::PointerCaptureController::dispatchEvent): Only run the Process Pending Capture Element steps when dealing with a touch or pen
event since those steps are already ran for mouse events in Document::prepareMouseEvent(). Additionally, since the element target is already
set to be the pointer capture element with the changes made to processPendingPointerCapture(), and because on iOS pointer capture is always
active, we can remove the code that would retarget the event to the pointer capture element.
(WebCore::PointerCaptureController::pointerEventWasDispatched):
(WebCore::PointerCaptureController::cancelPointer):
(WebCore::PointerCaptureController::processPendingPointerCapture): We now call into EventHandler::setCapturingMouseEventsElement() when the
capture target element changes. We must be careful to call this method prior to dispatching the "gotpointercapture" event and after dispatching
the "lostpointercapture" event so that boundary events are fired at the right time.
- page/PointerCaptureController.h:
LayoutTests:
Update some WK1-specific expectations.
- platform/mac-wk1/imported/w3c/web-platform-tests/pointerevents/pointerevent_boundary_events_at_implicit_release_hoverable_pointers-expected.txt:
- platform/mac-wk1/imported/w3c/web-platform-tests/pointerevents/pointerevent_setpointercapture_relatedtarget-expected.txt:
- 11:36 AM Changeset in webkit [246843] by
-
- 1 delete in trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm.orig
Remove a file I accidentally added.
- UIProcess/ios/WKContentViewInteraction.mm.orig: Removed.
- 11:34 AM Changeset in webkit [246842] by
-
- 2 edits1 add in trunk/Source
Script which adjusts include paths in ANGLE's copied headers breaks incremental builds
https://bugs.webkit.org/show_bug.cgi?id=199212
Patch by Kenneth Russell <kbr@chromium.org> on 2019-06-25
Reviewed by Darin Adler.
Maintain and test a timestamp in adjust-angle-include-paths.sh
in order to avoid touching the headers during each build.
- adjust-angle-include-paths.sh:
- 11:24 AM Changeset in webkit [246841] by
-
- 8 edits1 move1 add1 delete in branches/safari-608.1.31.0-branch
Cherry-pick r246781. rdar://problem/51826266
[Text autosizing] [iPadOS] Revise our heuristics to determine idempotent text autosizing candidates
https://bugs.webkit.org/show_bug.cgi?id=198763
<rdar://problem/51826266>
Reviewed by Simon Fraser.
Source/WebCore:
This patch adjusts existing text autosizing heuristics, based on a survey of text on websites in the Alexa top
500 that shrink down to fit the viewport when requesting the desktop version of the site. The new heuristic is
derived from training decision trees against the dataset obtained from this survey, and balances false positives
(cases where layout is broken due to autosizing) against overall accuracy (measured using cross-validation).
See below for more details. Additionally, please refer to the link in the radar for more details, as well as
resources used to generate, validate, and analyze these decision trees.
Test: fast/text-autosizing/ios/idempotentmode/idempotent-autosizing-candidates.html
- css/StyleResolver.cpp: (WebCore::StyleResolver::adjustRenderStyleForTextAutosizing):
- rendering/style/RenderStyle.cpp: (WebCore::RenderStyle::isIdempotentTextAutosizingCandidate const):
Rename AutosizeStatus::shouldSkipSubtree to RenderStyle::isIdempotentTextAutosizingCandidate. We relocate this
logic to RenderStyle, such that we're able to ask the element's RenderStyle questions when determining whether
the element should be autosized.
Of course, this patch additionally revamps the heuristic used to determine whether it is safe to autosize an
element. Our current heuristic in trunk simply checks for the presence of inline block display, out of flow
positioning and a fixed height ancestor; if any of these conditions are satisfied, we opt the element out of
text autosizing. This is an excellent strategy for boosting some runs of text while avoiding autosizing in the
vast majority of cases where increasing font size may lead to layout breakage (e.g. overlapping or clipped text,
content unexpectedly flowing to the next line, etc.). However, it also avoids boosting font sizes in many
scenarios where boosting font sizes is desired; for concrete examples, see the (currently 24) radars about small
font sizes that are duped to <rdar://problem/51826266>.
To help analyze and identify trends in autosizable and non-autosizable text, we assembled a dataset of elements
with text from the Alexa top 500 that either: (1) were too small and could be boosted safely, or (2) would break
layout if boosted. With this labeled dataset, we then trained binary decision trees to classify the data. Each
decision tree was trained with a number of hyperparameters: namely, maximum depth, minimum leaf size, and the
amount of bias towards negative samples (i.e. the ratio of the weight of a non-autosizable sample relative to
the weight of an autosizable sample).
For each 3-tuple of these hyperparameters (800 in total: max depth between 3 and 10, min leaf size between 1 and
10 and bias between 1 and 10), for 5000 iterations each, we split the full dataset into a training dataset and
a cross-validation dataset, trained a decision tree using the training set, and tested against the cross-
validation set to compute average precision, recall, and overall accuracy for each tuple of hyperparameters.
The decision tree introduced in this patch was generated using a hand-picked set of hyperparameters (max depth
10, min leaf size 4, and negative bias 2) to provide a balance between precision scores (limiting layout
breakage) and recall score (ensuring that small text is mostly autosized), while optimizing for overall
accuracy. Cross-validation scores predict that the overall accuracy of this classifier is approximately 70%, up
from the current accuracy in trunk (~53%).
- rendering/style/RenderStyle.h:
Grow the width of
autosizeStatusfrom 4 to 8 (notably, this does not increase the size of RenderStyle).
- rendering/style/TextSizeAdjustment.cpp: (WebCore::AutosizeStatus::updateStatus): (WebCore::AutosizeStatus::shouldSkipSubtree const): Deleted.
- rendering/style/TextSizeAdjustment.h:
Introduce new text autosizing state flags, and remove some existing ones.
LayoutTests:
Rebaseline an existing text autosizing test, and introduce some new test cases that correspond to several common
patterns of autosizable (or non-autosizable) text on websites that were surveyed.
- fast/text-autosizing/ios/idempotentmode/idempotent-autosizing-after-changing-initial-scale.html:
- fast/text-autosizing/ios/idempotentmode/idempotent-autosizing-candidates-expected.txt: Added.
- fast/text-autosizing/ios/idempotentmode/idempotent-autosizing-candidates.html: Renamed from LayoutTests/fast/text-autosizing/ios/idempotentmode/idempotent-autosizing-skip.html.
Rename this existing layout test too, to avoid using the term "skip" in the name of a layout test.
- fast/text-autosizing/ios/idempotentmode/idempotent-autosizing-skip-expected.txt: Removed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@246781 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 10:45 AM Changeset in webkit [246840] by
-
- 2 edits in trunk/LayoutTests
Layout Test imported/mozilla/svg/text/selectSubString-2.svg is failing.
https://bugs.webkit.org/show_bug.cgi?id=199196
Unreviewed Test Gardening.
Patch by Russell Epstein <russell_e@apple.com> on 2019-06-26
- platform/ios-wk2/TestExpectations:
- 10:37 AM Changeset in webkit [246839] by
-
- 7 edits in tags/Safari-608.1.32/Source
Versioning.
- 10:34 AM Changeset in webkit [246838] by
-
- 1 copy in tags/Safari-608.1.32
Tag Safari-608.1.32.
- 9:49 AM Changeset in webkit [246837] by
-
- 24 edits in trunk/Source/JavaScriptCore
remove unneeded didBecomePrototype() calls
https://bugs.webkit.org/show_bug.cgi?id=199221
Reviewed by Saam Barati.
Since we now set didBecomePrototype in Structure::create we don't
need to set it expliticly in most of our finishCreation
methods. The only exception to this is object prototype, which we
set as the prototype of function prototype late (via
setPrototypeWithoutTransition).
- inspector/JSInjectedScriptHostPrototype.cpp:
(Inspector::JSInjectedScriptHostPrototype::finishCreation):
- inspector/JSJavaScriptCallFramePrototype.cpp:
(Inspector::JSJavaScriptCallFramePrototype::finishCreation):
- runtime/ArrayIteratorPrototype.cpp:
(JSC::ArrayIteratorPrototype::finishCreation):
- runtime/ArrayPrototype.cpp:
(JSC::ArrayPrototype::finishCreation):
- runtime/AsyncFromSyncIteratorPrototype.cpp:
(JSC::AsyncFromSyncIteratorPrototype::finishCreation):
- runtime/AsyncFunctionPrototype.cpp:
(JSC::AsyncFunctionPrototype::finishCreation):
- runtime/AsyncGeneratorFunctionPrototype.cpp:
(JSC::AsyncGeneratorFunctionPrototype::finishCreation):
- runtime/AsyncGeneratorPrototype.cpp:
(JSC::AsyncGeneratorPrototype::finishCreation):
- runtime/AsyncIteratorPrototype.cpp:
(JSC::AsyncIteratorPrototype::finishCreation):
- runtime/GeneratorFunctionPrototype.cpp:
(JSC::GeneratorFunctionPrototype::finishCreation):
- runtime/GeneratorPrototype.cpp:
(JSC::GeneratorPrototype::finishCreation):
- runtime/IteratorPrototype.cpp:
(JSC::IteratorPrototype::finishCreation):
- runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::init):
- runtime/MapIteratorPrototype.cpp:
(JSC::MapIteratorPrototype::finishCreation):
- runtime/MapPrototype.cpp:
(JSC::MapPrototype::finishCreation):
- runtime/ObjectPrototype.cpp:
(JSC::ObjectPrototype::finishCreation):
- runtime/RegExpStringIteratorPrototype.cpp:
(JSC::RegExpStringIteratorPrototype::finishCreation):
- runtime/SetIteratorPrototype.cpp:
(JSC::SetIteratorPrototype::finishCreation):
- runtime/SetPrototype.cpp:
(JSC::SetPrototype::finishCreation):
- runtime/StringIteratorPrototype.cpp:
(JSC::StringIteratorPrototype::finishCreation):
- runtime/WeakMapPrototype.cpp:
(JSC::WeakMapPrototype::finishCreation):
- runtime/WeakObjectRefPrototype.cpp:
(JSC::WeakObjectRefPrototype::finishCreation):
- runtime/WeakSetPrototype.cpp:
(JSC::WeakSetPrototype::finishCreation):
- 9:01 AM Changeset in webkit [246836] by
-
- 3 edits2 adds in branches/safari-608.1.31.0-branch
Cherry-pick r246835. rdar://problem/51787961
[ContentChangeObserver] Dispatch synthetic mouse event asynchronously in completePendingSyntheticClickForContentChangeObserver
https://bugs.webkit.org/show_bug.cgi?id=199220
<rdar://problem/51787961>
Reviewed by Simon Fraser.
Source/WebKit:
WebPage::completePendingSyntheticClickForContentChangeObserver should not dispatch mouse events synchronously.
Mouse events, through style updates could destroy the element that initiated this change.
WebPage::handleSyntheticClick() already implements this pattern.
- WebProcess/WebPage/ios/WebPageIOS.mm: (WebKit::WebPage::completePendingSyntheticClickForContentChangeObserver):
LayoutTests:
- fast/events/touch/ios/content-observation/animation-end-with-visiblity-change-crash-expected.txt: Added.
- fast/events/touch/ios/content-observation/animation-end-with-visiblity-change-crash.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@246835 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 7:44 AM Changeset in webkit [246835] by
-
- 3 edits2 adds in trunk
[ContentChangeObserver] Dispatch synthetic mouse event asynchronously in completePendingSyntheticClickForContentChangeObserver
https://bugs.webkit.org/show_bug.cgi?id=199220
<rdar://problem/51787961>
Reviewed by Simon Fraser.
Source/WebKit:
WebPage::completePendingSyntheticClickForContentChangeObserver should not dispatch mouse events synchronously.
Mouse events, through style updates could destroy the element that initiated this change.
WebPage::handleSyntheticClick() already implements this pattern.
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::completePendingSyntheticClickForContentChangeObserver):
LayoutTests:
- fast/events/touch/ios/content-observation/animation-end-with-visiblity-change-crash-expected.txt: Added.
- fast/events/touch/ios/content-observation/animation-end-with-visiblity-change-crash.html: Added.
Jun 25, 2019:
- 11:53 PM Changeset in webkit [246834] by
-
- 7 edits in branches/safari-608.1.31.0-branch
Cherry-pick r246800. rdar://problem/51554509
[iOS] Occasional crash under -[UIPreviewTarget initWithContainer:center:transform:] when generating a drag preview
https://bugs.webkit.org/show_bug.cgi?id=199192
<rdar://problem/51554509>
Reviewed by Tim Horton.
Source/WebKit:
Tweak our preview generation code (for both the context menu and dragging) to be robust in the case where the
content view's unscaled view is nil; this may happen in the case after the web content process is terminated
and -cleanupInteraction is called, but before -setupInteraction is subsequently called.
Additionally, make our logic for creating targeted previews robust in the case where the view is removed from
the view hierarchy right before the platform asks for a targeted preview.
Test: DragAndDropTests.WebProcessTerminationDuringDrag
DragAndDropTests.WebViewRemovedFromViewHierarchyDuringDrag
- UIProcess/ios/WKContentViewInteraction.mm: (-[WKContentView containerViewForTargetedPreviews]): (-[WKContentView _deliverDelayedDropPreviewIfPossible:]): (-[WKContentView dragInteraction:previewForLiftingItem:session:]): (-[WKContentView _ensureTargetedPreview]):
Tools:
Tweak the drag and drop simulator to ask for drag cancellation previews, and use this to write a couple tests to
verify that we gracefully handle web process termination and web view unparenting mid-drag.
- TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm: (TestWebKitAPI::TEST):
- TestWebKitAPI/cocoa/DragAndDropSimulator.h:
- TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm: (-[DragAndDropSimulator _resetSimulatedState]): (-[DragAndDropSimulator _concludeDropAndPerformOperationIfNecessary]): (-[DragAndDropSimulator _advanceProgress]): (-[DragAndDropSimulator liftPreviews]): (-[DragAndDropSimulator cancellationPreviews]): (-[DragAndDropSimulator setSessionWillBeginBlock:]): (-[DragAndDropSimulator sessionWillBeginBlock]): (-[DragAndDropSimulator _webView:dataInteraction:sessionWillBegin:]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@246800 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 11:53 PM Changeset in webkit [246833] by
-
- 4 edits in branches/safari-608.1.31.0-branch/Source
Cherry-pick r246767. rdar://problem/51535942
Null deref in WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad.
<rdar://problem/51535942> and https://bugs.webkit.org/show_bug.cgi?id=199123
Reviewed by Andy Estes.
Source/WebCore:
- loader/FrameLoaderStateMachine.h: (WebCore::FrameLoaderStateMachine::stateForDebugging const):
Source/WebKit:
- WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: (WebKit::WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad): Properly detect this null DocumentLoader and try to learn more about the state of things.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@246767 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 8:56 PM Changeset in webkit [246832] by
-
- 2 edits in trunk/Source/ThirdParty/ANGLE
Unreviewed, rolling out r246825.
Breaks internal builds.
Reverted changeset:
"Script which adjusts include paths in ANGLE's copied headers
breaks incremental builds"
https://bugs.webkit.org/show_bug.cgi?id=199212
https://trac.webkit.org/changeset/246825
- 8:51 PM Changeset in webkit [246831] by
-
- 3 edits in trunk/Source/WebCore
[WinCairo] incorrect font height for 'Google Sans Display' font
https://bugs.webkit.org/show_bug.cgi?id=198909
Reviewed by Frédéric Wang.
r191893 changed to use OS/2 typo metrics, but its calculation
wasn't correct. And, there is no reliable way to get OS/2 table by
using Windows API. Revert the part of r191893 change at the
moment.
- platform/graphics/win/SimpleFontDataCairoWin.cpp:
(WebCore::Font::platformInit):
- platform/graphics/win/SimpleFontDataWin.cpp:
(WebCore::Font::initGDIFont):
Reverted the part of r191893 change, and added FIXME comments.
- 8:49 PM Changeset in webkit [246830] by
-
- 2 edits in trunk/LayoutTests
Layout Test imported/blink/editing/selection/deleteFromDocument-crash.html is failing.
https://bugs.webkit.org/show_bug.cgi?id=199213
Unreviewed Test Gardening.
Patch by Russell Epstein <russell_e@apple.com> on 2019-06-25
- platform/ios-wk2/TestExpectations:
- 8:11 PM Changeset in webkit [246829] by
-
- 11 edits1 add in trunk
Implement a new SPI to inform clients about AppSSO
https://bugs.webkit.org/show_bug.cgi?id=199085
<rdar://problem/50028246>
Reviewed by Geoffrey Garen.
Source/WebKit:
This patch implements a new SPI to inform clients about incoming AppSSO interceptions during
navigations. Therefore, clients can make an informed decision about whether this is the right
moment to do the interception as interceptions often show native UI. Also, the SPI is designed
to pass along a human readable name for the extension such that clients can do whatever they
want to inform users about what's going on.
Here is the new SPI:
- (void)_webView:(WKWebView *)webView decidePolicyForSOAuthorizationLoadWithCurrentPolicy:(_WKSOAuthorizationLoadPolicy)policy forExtension:(NSString *)extension completionHandler:(void ()(_WKSOAuthorizationLoadPolicy policy))completionHandler;
- UIProcess/API/APINavigationClient.h:
(API::NavigationClient::decidePolicyForSOAuthorizationLoad):
- UIProcess/API/Cocoa/WKNavigationDelegatePrivate.h:
- UIProcess/Cocoa/NavigationState.h:
- UIProcess/Cocoa/NavigationState.mm:
(WebKit::NavigationState::setNavigationDelegate):
(WebKit::soAuthorizationLoadPolicy):
(WebKit::wkSOAuthorizationLoadPolicy):
(WebKit::NavigationState::NavigationClient::decidePolicyForSOAuthorizationLoad):
- UIProcess/Cocoa/SOAuthorization/SOAuthorizationLoadPolicy.h: Added.
- UIProcess/Cocoa/SOAuthorization/SOAuthorizationSession.mm:
(WebKit::SOAuthorizationSession::start):
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::decidePolicyForSOAuthorizationLoad):
- UIProcess/WebPageProxy.h:
- WebKit.xcodeproj/project.pbxproj:
Tools:
- TestWebKitAPI/Tests/WebKitCocoa/TestSOAuthorization.mm:
(-[TestSOAuthorizationBasicDelegate webView:didFinishNavigation:]):
(-[TestSOAuthorizationNavigationDelegate init]):
(-[TestSOAuthorizationNavigationDelegate _webView:decidePolicyForSOAuthorizationLoadWithCurrentPolicy:forExtension:completionHandler:]):
(TestWebKitAPI::TEST):
- 7:59 PM Changeset in webkit [246828] by
-
- 2 edits in trunk/Source/WebKit
[iOS WK2 Debug] scrollingcoordinator/scrolling-tree/scroller-with-negative-z-child.html asserts
https://bugs.webkit.org/show_bug.cgi?id=199218
Reviewed by Zalan Bujtas.
Followup to r246766; don't assert in the UI process if a ScrollingTreeOverflowScrollProxyNode
doesn't have a related overflow node; this is currently expected behavior with negative z-order
children of a scroller.
- UIProcess/RemoteLayerTree/ios/RemoteScrollingCoordinatorProxyIOS.mm:
(WebKit::RemoteScrollingCoordinatorProxy::establishLayerTreeScrollingRelations):
- 7:25 PM Changeset in webkit [246827] by
-
- 2 edits in trunk/Source/WTF
CagedPtr doesn't merge PAC bits back into the resulting caged pointer.
https://bugs.webkit.org/show_bug.cgi?id=199214
Reviewed by Yusuke Suzuki.
The current code means that caging will just strip the any failed
authentication bits. Adding this code doesn't appear to be a
regression on iPhone Xs.
- wtf/CagedPtr.h:
(WTF::CagedPtr::get const):
(WTF::CagedPtr::getMayBeNull const):
(WTF::CagedPtr::getUnsafe const):
(WTF::CagedPtr::mergePointers):
- 7:00 PM Changeset in webkit [246826] by
-
- 2 edits in trunk/Source/WTF
Experiment with simple structured bindings use
https://bugs.webkit.org/show_bug.cgi?id=198905
Reviewed by Darin Adler.
- wtf/URLHelpers.cpp:
(WTF::URLHelpers::mapHostNames):
Simplify code using c++ structured bindings (https://en.cppreference.com/w/cpp/language/structured_binding)
to see if all the platforms will work with it.
- 6:44 PM Changeset in webkit [246825] by
-
- 2 edits in trunk/Source/ThirdParty/ANGLE
Script which adjusts include paths in ANGLE's copied headers breaks incremental builds
https://bugs.webkit.org/show_bug.cgi?id=199212
Patch by Kenneth Russell <kbr@chromium.org> on 2019-06-25
Reviewed by Darin Adler.
Maintain and test a timestamp in adjust-angle-include-paths.sh
in order to avoid touching the headers during each build.
- adjust-angle-include-paths.sh:
- 6:40 PM Changeset in webkit [246824] by
-
- 4 edits2 copies2 moves in trunk/LayoutTests
[WHLSL] Make whlsl-test-harness actually generate WHLSL shaders by default
https://bugs.webkit.org/show_bug.cgi?id=199028
Reviewed by Saam Barati.
whlsl-test-harness.js now generates WHLSL shaders and invokes WebKit's WHLSL compiler.
MSL mode remains to facilitate further harness tesing.
In addition, if WebGPU is not supported, synchronous Harness methods do nothing.
Asynchronous methods will throw a WebGPUUnsupportedError that "rejects" the returned Promise.
- TestExpectations:
- platform/mac/TestExpectations:
- webgpu/js/whlsl-test-harness.js:
(WebGPUUnsupportedError): Layout tests should catch these to fail gracefully if WebGPU is not supported.
(Data):
(Data.prototype.async.getArrayBuffer):
(Data.prototype.get isBuffer): Renamed from isPointer.
(Harness):
(Harness.prototype.async.requestDevice): Can be used to re-acquire a GPUDevice.
(Harness.prototype.set isWHLSL): Determines whether harness will generate WHLSL or MSL shaders.
(Harness.prototype.async.callTypedFunction):
(Harness.prototype.callVoidFunction):
(Harness.prototype.get device):
(Harness.prototype._clearResults):
(Harness.prototype._setUpArguments):
(Harness.prototype._callFunction):
(Data.prototype.get isPointer): Deleted.
(Harness.prototype._initialize): Deleted.
(Harness.prototype.async.callVoidFunction): Deleted.
(harness._initialize.async): Deleted.
- webgpu/msl-harness-test-expected.txt: Renamed from LayoutTests/webgpu/whlsl-harness-test-expected.txt.
- webgpu/msl-harness-test.html: Copied from LayoutTests/webgpu/whlsl-harness-test.html.
- webgpu/whlsl-test-harness-test-expected.html: Added.
- webgpu/whlsl-test-harness-test.html: Renamed from LayoutTests/webgpu/whlsl-harness-test.html.
- 6:01 PM Changeset in webkit [246823] by
-
- 2 edits in trunk/Tools
[ews-build] Retry Layout test in case of failures
https://bugs.webkit.org/show_bug.cgi?id=199194
Reviewed by Jonathan Bedard.
- BuildSlaveSupport/ews-build/steps.py:
(RunWebKitTests.evaluateCommand): Check if tests failed and retry them if required.
(ReRunWebKitTests): Build step to re-run layout tests.
(ReRunWebKitTests.evaluateCommand): Check if tests failed and retry on clean build if required.
(RunWebKitTestsWithoutPatch): Build step to run tests without patch.
(RunWebKitTestsWithoutPatch.evaluateCommand):
- 5:56 PM Changeset in webkit [246822] by
-
- 3 edits in trunk/Tools
[ews-build] Combine various patchFailed*Tests properties
https://bugs.webkit.org/show_bug.cgi?id=199193
Reviewed by Jonathan Bedard.
- BuildSlaveSupport/ews-build/steps.py: Renamed patchFailedJSCTests and patchFailedAPITests to patchFailedTests. This property
can also be used for layout-tests later on.
- BuildSlaveSupport/ews-build/steps_unittest.py: Updated unit-tests.
- 4:45 PM Changeset in webkit [246821] by
-
- 3 edits in trunk/Source/WebInspectorUI
Web Inspector: Elements: show shadow DOM by default
https://bugs.webkit.org/show_bug.cgi?id=199128
Reviewed by Devin Rousso.
- UserInterface/Base/Setting.js:
- UserInterface/Test/Test.js:
(WI.loaded):
Overriding the default value isn't necessary since the default is now true.
- 4:44 PM Changeset in webkit [246820] by
-
- 7 edits in branches/safari-607-branch/Source
Versioning.
- 4:43 PM Changeset in webkit [246819] by
-
- 1 copy in tags/Safari-607.3.6
Tag Safari-607.3.6.
- 4:42 PM Changeset in webkit [246818] by
-
- 3 edits in trunk/Source/WebCore
Clicking the up/down spin buttons for a number input increments/decrements by 2.
https://bugs.webkit.org/show_bug.cgi?id=198809
Reviewed by Tim Horton.
AppKit no longer registers NSScrollerButtonDelay and NSScrollerButtonPeriod in the base
NSUserDefaults for an app. This caused our use to always get 0s when setting the click
and hold timer, causing the value to increment quickly for a single press.
- platform/mac/ScrollbarThemeMac.h:
(WebCore::ScrollbarThemeMac::initialAutoscrollTimerDelay): Added. Hardcode 500ms.
(WebCore::ScrollbarThemeMac::autoscrollTimerDelay): Added. Hardcode 50ms.
- platform/mac/ScrollbarThemeMac.mm:
(WebCore::ScrollbarThemeMac::preferencesChanged): Removed use of old user defaults.
(WebCore::ScrollbarThemeMac::initialAutoscrollTimerDelay): Deleted.
(WebCore::ScrollbarThemeMac::autoscrollTimerDelay): Deleted.
- 4:41 PM Changeset in webkit [246817] by
-
- 5 edits2 adds in trunk
Non-editable text selections should be modifiable with hardware keyboard
https://bugs.webkit.org/show_bug.cgi?id=199204
<rdar://problem/51651496>
Reviewed by Wenson Hsieh.
Source/WebKit:
UIKit changes are need for this to work, including <rdar://problem/48322899>.
Note that without these changes, -canPerformAction is never called for _move*
selectors.
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView canPerformAction:withSender:]):
LayoutTests:
Add a test, skipped for now, until we have the fix for <rdar://problem/48322899>.
- editing/selection/ios/select-non-editable-text-using-keyboard-expected.txt: Added.
- editing/selection/ios/select-non-editable-text-using-keyboard.html: Added.
- platform/ios/TestExpectations:
- resources/ui-helper.js:
(window.UIHelper.callFunctionAndWaitForEvent): Added.
- 4:40 PM Changeset in webkit [246816] by
-
- 3 edits in trunk/Source/WebInspectorUI
REGRESSION(r246621): Web Inspector: Styles: property may get removed when editing after deleting value
https://bugs.webkit.org/show_bug.cgi?id=199143
<rdar://problem/52042815>
Reviewed by Matt Baker.
r246621 affected when WI.CSSStyleDeclaration.Event.PropertiesChanged event is fired, which caused
SpreadsheetCSSStyleDeclarationEditor to possibly enter a state whenfocusedproperty is
incorrectly set to false.
- UserInterface/Views/SpreadsheetCSSStyleDeclarationEditor.js:
(WI.SpreadsheetCSSStyleDeclarationEditor.prototype.spreadsheetStylePropertyRemoved): Removed.
(WI.SpreadsheetCSSStyleDeclarationEditor.prototype.spreadsheetStylePropertyWillRemove): Added.
Renamed from "removed" to "willRemove" since we need to call it before the property DOM element
is detached from the document.
- UserInterface/Views/SpreadsheetStyleProperty.js:
(WI.SpreadsheetStyleProperty.prototype.remove):
Don't set focused to false when the removed property wasn't focused.
This code need to exist because removing focused element from the DOM doesn't trigger blur event.
- 4:38 PM Changeset in webkit [246815] by
-
- 1 copy in tags/Safari-608.1.31.2.1
Tag Safari-608.1.31.2.1.
- 4:24 PM Changeset in webkit [246814] by
-
- 8 edits in trunk/Tools
[Win] MiniBrowser should default to webkit.org
https://bugs.webkit.org/show_bug.cgi?id=199201
Reviewed by Don Olmstead.
- MiniBrowser/win/BrowserWindow.h:
- MiniBrowser/win/MiniBrowserReplace.h:
- MiniBrowser/win/WebKitBrowserWindow.cpp:
(WebKitBrowserWindow::loadHTMLString): Deleted.
- MiniBrowser/win/WebKitBrowserWindow.h:
- MiniBrowser/win/WebKitLegacyBrowserWindow.cpp:
(WebKitLegacyBrowserWindow::loadHTMLString): Deleted.
- MiniBrowser/win/WebKitLegacyBrowserWindow.h:
- MiniBrowser/win/WinMain.cpp:
(wWinMain):
- 4:23 PM Changeset in webkit [246813] by
-
- 7 edits in branches/safari-608.1.31.0-branch/Source
Versioning.
- 4:22 PM Changeset in webkit [246812] by
-
- 1 copy in tags/Safari-608.1.31.0.2
Tag Safari-608.1.31.0.2.
- 3:13 PM Changeset in webkit [246811] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed, windows build fix.
- bindings/js/JSDOMGlobalObject.h:
- 2:47 PM Changeset in webkit [246810] by
-
- 3 edits2 adds in trunk
[iOS] Should not process key events in non-editable elements using IME
https://bugs.webkit.org/show_bug.cgi?id=199122
<rdar://problem/52006654>
Reviewed by Brent Fulgham.
Source/WebKit:
Use the non-Input Method code path (the one we use for US keyboard input) for all key events
targeting a non-editable element. Such key events will never require Input Method support
(i.e. show candidate suggestions). Moreover, this behavior matches the behavior on Mac.
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView handleKeyWebEvent:withCompletionHandler:]):
LayoutTests:
Add a test to ensure that we do not process key events as being handled by the Input Manager
when using a Chinese keyboard layout and targeting a non-editable element.
- fast/events/ios/keydown-keyup-keypress-keys-in-non-editable-using-chinese-keyboard-expected.txt: Added.
- fast/events/ios/keydown-keyup-keypress-keys-in-non-editable-using-chinese-keyboard.html: Added.
- 2:35 PM Changeset in webkit [246809] by
-
- 2 edits in trunk/Source/WTF
[fuchsia] Update to newer zx_clock_get syscall
https://bugs.webkit.org/show_bug.cgi?id=199191
Reviewed by Sam Weinig.
Fuchsia has changed the zx_clock_get syscall to return the clock value
via an out parameter rather than via its return value. This change
makes zx_clock_get consistent with all the other syscalls.
This patch updates our use of zx_clock_get to use the new syscall. The
old syscall is no longer supported by Fuchsia.
- wtf/fuchsia/CPUTimeFuchsia.cpp:
(WTF::CPUTime::get): Switch to using the out parameter.
(WTF::CPUTime::forCurrentThread): Switch to using the out parameter.
- 2:19 PM Changeset in webkit [246808] by
-
- 4 edits in trunk/Source/WebCore
Add didBecomePrototype() calls to global context prototypes
https://bugs.webkit.org/show_bug.cgi?id=199202
Reviewed by Mark Lam.
This fixes some crashes related to asserting that all prototypes
have been marked as such in JSC from
https://trac.webkit.org/changeset/246801. It's ok to call
didBecomePrototype here as we setting up the world state right now
so we won't be having a bad time.
We don't automatically call didBecomePrototype() for
setPrototypeWithoutTransition because existing objects may already
have this structure so it seems more reasonable to be explicit
there.
- bindings/js/JSWindowProxy.cpp:
(WebCore::JSWindowProxy::setWindow):
- bindings/js/WorkerScriptController.cpp:
(WebCore::WorkerScriptController::initScript):
- worklets/WorkletScriptController.cpp:
(WebCore::WorkletScriptController::initScriptWithSubclass):
- 2:08 PM Changeset in webkit [246807] by
-
- 18 edits in trunk/Source
Make HTTPCookieAcceptPolicy an enum class
https://bugs.webkit.org/show_bug.cgi?id=199081
Patch by Alex Christensen <achristensen@webkit.org> on 2019-06-25
Source/WebCore/PAL:
Reviewed by Michael Catanzaro
- pal/spi/cf/CFNetworkSPI.h:
Source/WebKit:
Reviewed by Michael Catanzaro.
Doing so reveals some interesting bugs in the C API that are also fixed:
WKPreferencesGetIncrementalRenderingSuppressionTimeout was using its toAPI function to convert a double to a double because HTTPCookieAcceptPolicy used to be an unsigned integer.
toAPI(WebCore::MouseButton) was also using the toAPI(HTTPCookieAcceptPolicy) because HTTPCookieAcceptPolicy used to be an unsigned integer.
Yikes! Type safety is our friend.
- NetworkProcess/Cookies/WebCookieManager.messages.in:
- NetworkProcess/Cookies/mac/WebCookieManagerMac.mm:
(WebKit::toCFHTTPCookieStorageAcceptPolicy):
(WebKit::WebCookieManager::platformSetHTTPCookieAcceptPolicy):
(WebKit::WebCookieManager::platformGetHTTPCookieAcceptPolicy):
- Shared/API/c/WKSharedAPICast.h:
(WebKit::toAPI):
- Shared/HTTPCookieAcceptPolicy.h:
(): Deleted.
- UIProcess/API/C/WKAPICast.h:
(WebKit::toHTTPCookieAcceptPolicy):
(WebKit::toAPI):
- UIProcess/API/C/WKPreferences.cpp:
(WKPreferencesGetIncrementalRenderingSuppressionTimeout):
- UIProcess/API/Cocoa/WKProcessPool.mm:
(toHTTPCookieAcceptPolicy):
- UIProcess/WebCookieManagerProxy.cpp:
(WebKit::WebCookieManagerProxy::didGetHTTPCookieAcceptPolicy):
- UIProcess/WebCookieManagerProxy.h:
- UIProcess/WebCookieManagerProxy.messages.in:
- 1:51 PM Changeset in webkit [246806] by
-
- 2 edits in trunk/LayoutTests
[macOS WK2] REGRESSION (r242313): Layout Test scrollingcoordinator/mac/multiple-fixed.html is a flaky time out and image diff
https://bugs.webkit.org/show_bug.cgi?id=195635
Unreviewed test gardening.
- platform/mac/TestExpectations:
- 1:51 PM Changeset in webkit [246805] by
-
- 2 edits in trunk/Source/WebKit
Wrong title for Data Detectors tap action menu
https://bugs.webkit.org/show_bug.cgi?id=199198
<rdar://problem/51957842>
Reviewed by Wenson Hsieh.
- UIProcess/ios/WKActionSheetAssistant.mm:
(-[WKActionSheetAssistant showDataDetectorsSheet]):
Always pass the results array through to DataDetectors; they need it
to figure out the title too!
- 1:48 PM Changeset in webkit [246804] by
-
- 5 edits in trunk/LayoutTests
Migrate LayoutTests/http/tests/resourceLoadStatistics/clear-in-memory-and-persistent-store* test cases to setEnableFeature() and jsTestIsAsync
https://bugs.webkit.org/show_bug.cgi?id=199180
<rdar://problem/52085369>
Reviewed by Brent Fulgham.
- http/tests/resourceLoadStatistics/clear-in-memory-and-persistent-store-expected.txt:
- http/tests/resourceLoadStatistics/clear-in-memory-and-persistent-store-one-hour-expected.txt:
- http/tests/resourceLoadStatistics/clear-in-memory-and-persistent-store-one-hour.html:
- http/tests/resourceLoadStatistics/clear-in-memory-and-persistent-store.html:
- 1:18 PM Changeset in webkit [246803] by
-
- 7 edits in tags/Safari-608.1.28.2/Source
Versioning.
- 12:51 PM Changeset in webkit [246802] by
-
- 1 copy in tags/Safari-608.1.28.2
New tag.
- 12:49 PM Changeset in webkit [246801] by
-
- 5 edits in trunk/Source/JavaScriptCore
Structure::create should call didBecomePrototype()
https://bugs.webkit.org/show_bug.cgi?id=196315
Reviewed by Filip Pizlo.
Structure::create should also assert that the indexing type makes sense
for the prototype being used.
- runtime/JSObject.h:
- runtime/Structure.cpp:
(JSC::Structure::isValidPrototype):
(JSC::Structure::changePrototypeTransition):
- runtime/Structure.h:
(JSC::Structure::create): Deleted.
- runtime/StructureInlines.h:
(JSC::Structure::create):
(JSC::Structure::setPrototypeWithoutTransition):
- 11:48 AM Changeset in webkit [246800] by
-
- 7 edits in trunk
[iOS] Occasional crash under -[UIPreviewTarget initWithContainer:center:transform:] when generating a drag preview
https://bugs.webkit.org/show_bug.cgi?id=199192
<rdar://problem/51554509>
Reviewed by Tim Horton.
Source/WebKit:
Tweak our preview generation code (for both the context menu and dragging) to be robust in the case where the
content view's unscaled view is nil; this may happen in the case after the web content process is terminated
and -cleanupInteraction is called, but before -setupInteraction is subsequently called.
Additionally, make our logic for creating targeted previews robust in the case where the view is removed from
the view hierarchy right before the platform asks for a targeted preview.
Test: DragAndDropTests.WebProcessTerminationDuringDrag
DragAndDropTests.WebViewRemovedFromViewHierarchyDuringDrag
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView containerViewForTargetedPreviews]):
(-[WKContentView _deliverDelayedDropPreviewIfPossible:]):
(-[WKContentView dragInteraction:previewForLiftingItem:session:]):
(-[WKContentView _ensureTargetedPreview]):
Tools:
Tweak the drag and drop simulator to ask for drag cancellation previews, and use this to write a couple tests to
verify that we gracefully handle web process termination and web view unparenting mid-drag.
- TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
(TestWebKitAPI::TEST):
- TestWebKitAPI/cocoa/DragAndDropSimulator.h:
- TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
(-[DragAndDropSimulator _resetSimulatedState]):
(-[DragAndDropSimulator _concludeDropAndPerformOperationIfNecessary]):
(-[DragAndDropSimulator _advanceProgress]):
(-[DragAndDropSimulator liftPreviews]):
(-[DragAndDropSimulator cancellationPreviews]):
(-[DragAndDropSimulator setSessionWillBeginBlock:]):
(-[DragAndDropSimulator sessionWillBeginBlock]):
(-[DragAndDropSimulator _webView:dataInteraction:sessionWillBegin:]):
- 11:47 AM Changeset in webkit [246799] by
-
- 2 edits in trunk/LayoutTests
Layout Test imported/mozilla/svg/text/textpath-selection.svg is flaky.
https://bugs.webkit.org/show_bug.cgi?id=199196
Unreviewed Test Gardening.
Patch by Russell Epstein <russell_e@apple.com> on 2019-06-25
- platform/ios-wk2/TestExpectations:
- 11:36 AM Changeset in webkit [246798] by
-
- 24 edits in trunk
Web Inspector: Implement console.timeLog
https://bugs.webkit.org/show_bug.cgi?id=199184
Reviewed by Devin Rousso.
Source/JavaScriptCore:
- inspector/JSGlobalObjectConsoleClient.cpp:
(Inspector::JSGlobalObjectConsoleClient::timeLog):
- inspector/JSGlobalObjectConsoleClient.h:
- inspector/agents/InspectorConsoleAgent.cpp:
(Inspector::InspectorConsoleAgent::logTiming):
(Inspector::InspectorConsoleAgent::stopTiming):
- inspector/agents/InspectorConsoleAgent.h:
- runtime/ConsoleClient.h:
- runtime/ConsoleObject.cpp:
(JSC::ConsoleObject::finishCreation):
(JSC::consoleProtoFuncTimeLog):
Source/WebCore:
Updated existing tests.
- inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::logConsoleTimingImpl):
- inspector/InspectorInstrumentation.h:
(WebCore::InspectorInstrumentation::logConsoleTiming):
- page/PageConsoleClient.cpp:
(WebCore::PageConsoleClient::timeLog):
- page/PageConsoleClient.h:
- workers/WorkerConsoleClient.cpp:
(WebCore::WorkerConsoleClient::timeLog):
- workers/WorkerConsoleClient.h:
- worklets/WorkletConsoleClient.cpp:
(WebCore::WorkletConsoleClient::timeLog):
- worklets/WorkletConsoleClient.h:
Source/WebInspectorUI:
- UserInterface/Views/ConsoleMessageView.js:
(WI.ConsoleMessageView.prototype._appendMessageTextAndArguments):
Time messages (like timeLog) do not include their messageText
in their parameters list. So to behave more like normal logs
build a parameter list that includes it at the front.
LayoutTests:
- inspector/console/console-time-expected.txt:
- inspector/console/console-time.html:
Add new timeLog tests.
- js/console-expected.txt:
New timeLog method.
- platform/gtk/TestExpectations:
- platform/mac/TestExpectations:
Unskip test.
- 11:09 AM Changeset in webkit [246797] by
-
- 4 edits1 add in trunk/Source
Close sockets with too high file descriptor
https://bugs.webkit.org/show_bug.cgi?id=199116
Reviewed by Eric Carlson.
Source/ThirdParty/libwebrtc:
- Source/webrtc/rtc_base/physicalsocketserver.cc:
- WebKit/0001-Close-sockets-with-file-descriptors-above-FD_SETSIZE.patch: Added.
Source/WebKit:
Log the case of failing to open a socket.
- NetworkProcess/webrtc/NetworkRTCProvider.cpp:
(WebKit::NetworkRTCProvider::createSocket):
- 11:01 AM Changeset in webkit [246796] by
-
- 7 edits in branches/safari-608.1.31.0-branch/Source
Versioning.
- 10:29 AM Changeset in webkit [246795] by
-
- 2 edits in trunk/Source/WebKit
When Caps Lock is enabled on the Smart Keyboard, can't scroll with space or arrow keys
https://bugs.webkit.org/show_bug.cgi?id=199187
<rdar://problem/51521709>
Reviewed by Anders Carlsson.
- UIProcess/ios/WKKeyboardScrollingAnimator.mm:
(-[WKKeyboardScrollingAnimator keyboardScrollForEvent:]):
When deciding whether a key event should start a scroll, ignore all
modifiers other than the ones we actually care about (including Caps Lock).
- 10:00 AM Changeset in webkit [246794] by
-
- 7 edits in branches/safari-607-branch/Source
Versioning.
- 9:17 AM Changeset in webkit [246793] by
-
- 3 edits in trunk/Tools
[ews-build] UploadTestResults and ExtractTestResults clobber results in case of multiple layout test runs in a build
https://bugs.webkit.org/show_bug.cgi?id=199178
Reviewed by Jonathan Bedard.
- BuildSlaveSupport/ews-build/steps.py:
(UploadTestResults.init): Add an optional identifier and append the identifier to the file name.
(ExtractTestResults.init): Ditto.
- BuildSlaveSupport/ews-build/steps_unittest.py: Added unit tests.
- 9:08 AM Changeset in webkit [246792] by
-
- 2 edits in trunk/Source/JavaScriptCore
REGRESSION(r245586): static assertion failed: Match result and EncodedMatchResult should be the same size
https://bugs.webkit.org/show_bug.cgi?id=198518
Reviewed by Keith Miller.
r245586 made some bad assumptions about the size of size_t, which we can solve using the
CPU(ADDRESS32) guard that I didn't know about.
This solution was developed by Mark Lam and Keith Miller. I'm just preparing the patch.
- runtime/MatchResult.h:
- 7:59 AM Changeset in webkit [246791] by
-
- 4 edits in trunk
Add user agent quirk for bankofamerica.com
https://bugs.webkit.org/show_bug.cgi?id=199154
Reviewed by Carlos Garcia Campos.
Source/WebCore:
This suppresses an unsupported browser warning.
- platform/UserAgentQuirks.cpp:
(WebCore::urlRequiresMacintoshPlatform):
Tools:
- TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
(TestWebKitAPI::TEST):
- 7:56 AM Changeset in webkit [246790] by
-
- 32 edits in trunk
Fully rename WebKitGTK+ -> WebKitGTK everywhere
https://bugs.webkit.org/show_bug.cgi?id=199159
Reviewed by Carlos Garcia Campos.
.:
- Source/cmake/FindGLIB.cmake:
Source/WebCore:
- accessibility/atk/WebKitAccessibleInterfaceText.cpp:
(webkitAccessibleTextGetStringAtOffset):
- platform/UserAgentQuirks.cpp:
(WebCore::urlRequiresMacintoshPlatform):
- platform/network/soup/NetworkStorageSessionSoup.cpp:
(WebCore::NetworkStorageSession::saveCredentialToPersistentStorage):
- rendering/RenderThemeGtk.cpp:
(WebCore::RenderThemeGtk::adjustTextFieldStyle const):
Source/WebKit:
- UIProcess/API/glib/APIWebsiteDataStoreGLib.cpp:
Source/WTF:
- wtf/URLParser.cpp:
(WTF::URLParser::internationalDomainNameTranscoder):
Tools:
- BuildSlaveSupport/gtk/README:
- MiniBrowser/gtk/BrowserWindow.c:
- MiniBrowser/gtk/main.c:
(aboutURISchemeRequestCallback):
- Scripts/webkitpy/common/config/contributionareas.py:
- Scripts/webkitpy/common/config/contributors.json:
- Scripts/webkitpy/tool/commands/analyzechangelog_unittest.py:
- TestWebKitAPI/Tests/WebKitGLib/TestCookieManager.cpp:
- TestWebKitAPI/Tests/WebKitGLib/TestResources.cpp:
(testWebViewResources):
- TestWebKitAPI/Tests/WebKitGLib/TestUIClient.cpp:
(testWebViewMouseTarget):
- TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp:
(testWebExtensionGetTitle):
(testDocumentLoadedSignal):
(testWebExtensionFormControlsAssociated):
- TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp:
(testWebKitSettingsUserAgent):
- TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
(testWebViewRunJavaScript):
- TestWebKitAPI/Tests/WebKitGtk/InspectorTestServer.cpp:
(main):
- TestWebKitAPI/Tests/WebKitGtk/TestContextMenu.cpp:
(prepareContextMenuTestView):
(testContextMenuPopulateMenu):
(testContextMenuCustomMenu):
(testContextMenuDisableMenu):
(testContextMenuSubMenu):
(testContextMenuDismissed):
(testContextMenuWebExtensionMenu):
(testContextMenuWebExtensionNode):
- TestWebKitAPI/Tests/WebKitGtk/TestInspector.cpp:
(testInspectorDefault):
(testInspectorManualAttachDetach):
(testInspectorCustomContainerDestroyed):
- TestWebKitAPI/Tests/WebKitGtk/TestPrinting.cpp:
(testWebViewPrint):
(testPrintOperationPrint):
(testPrintOperationErrors):
- gtk/install-dependencies:
- gtk/jhbuild.modules:
- gtkdoc/generate-gtkdoc:
- wpe/install-dependencies:
- 7:47 AM Changeset in webkit [246789] by
-
- 4 edits in trunk
Require GCC 7
https://bugs.webkit.org/show_bug.cgi?id=198914
Reviewed by Darin Adler.
.:
- CMakeLists.txt:
Source/WTF:
Remove now-stale GCC version check.
- wtf/Compiler.h:
- 2:13 AM Changeset in webkit [246788] by
-
- 2 edits in trunk/LayoutTests
Unreviewed test gardening
- TestExpectations: Added webkit.org/b/184066 to imported/w3c/web-platform-tests/IndexedDB/nested-cloning-large-multiple.html and others.
Added webkit.org/b/184065 to imported/w3c/web-platform-tests/IndexedDB/keypath-exceptions.htm.
- 2:00 AM Changeset in webkit [246787] by
-
- 2 edits in trunk/LayoutTests
[WinCairo] Unreviewed test gardening
- platform/wincairo/TestExpectations: Added webkit.org/b/199186 to fonts/use-typo-metrics-1.html.
Removed duplicated storage/indexeddb/key-type-array-private.html and storage/indexeddb/key-type-array.html.
- 1:42 AM Changeset in webkit [246786] by
-
- 4 edits in trunk/Source/WebCore
Introduce LinkLoadParameters
https://bugs.webkit.org/show_bug.cgi?id=198960
Patch by Rob Buis <rbuis@igalia.com> on 2019-06-25
Reviewed by Frédéric Wang.
Avoid the long parameters lists in LinkLoader by moving them
to LinkLoadParameters.
No new tests because there is no behavior change.
- html/HTMLLinkElement.cpp:
(WebCore::HTMLLinkElement::process):
- loader/LinkLoader.cpp:
(WebCore::LinkLoader::loadLinksFromHeader):
(WebCore::LinkLoader::preconnectIfNeeded):
(WebCore::LinkLoader::preloadIfNeeded):
(WebCore::LinkLoader::prefetchIfNeeded):
(WebCore::LinkLoader::loadLink):
- loader/LinkLoader.h:
- 12:25 AM Changeset in webkit [246785] by
-
- 12 edits in tags/Safari-608.1.30.2
Revert r246530. rdar://problem/52020968
- 12:23 AM Changeset in webkit [246784] by
-
- 7 edits in tags/Safari-608.1.30.2/Source
Versioning.
- 12:19 AM Changeset in webkit [246783] by
-
- 1 copy in tags/Safari-608.1.30.2
New tag.