Timeline
Mar 20, 2020:
- 10:54 PM Changeset in webkit [258805] by
-
- 6 edits in trunk/Source/WebCore
REGRESSION (r258679): [ Mac ] fast/scrolling/arrow-key-scroll-in-rtl-document.html is failing and timing out
https://bugs.webkit.org/show_bug.cgi?id=209299
Reviewed by Daniel Bates.
fast/scrolling/arrow-key-scroll-in-rtl-document.html is unusual in that it uses monitorWheelEvents()
but then issues arrow key presses.
WebCore responds to arrow keys via WebEditorClient::handleKeyboardEvent() calling down into
WebPage::scroll() which ends up in FrameView::requestScrollPositionUpdate() and bounces to the
scrolling thread. This isn't tracked by existing 'defer' reasons on WheelEventTestMonitor, so add a
new defer reason that covers the period for adding the requested scroll go the scrolling state tree,
and responding to it in the scrolling thread.
- page/WheelEventTestMonitor.cpp:
(WebCore::operator<<):
- page/WheelEventTestMonitor.h:
- page/scrolling/AsyncScrollingCoordinator.cpp:
(WebCore::AsyncScrollingCoordinator::requestScrollPositionUpdate):
- page/scrolling/ThreadedScrollingTree.cpp:
(WebCore::ThreadedScrollingTree::scrollingTreeNodeRequestsScroll):
- page/scrolling/ThreadedScrollingTree.h:
- 7:42 PM Changeset in webkit [258804] by
-
- 6 edits in trunk
[iPadOS] Yahoo! search results are sometimes zoomed in a little
https://bugs.webkit.org/show_bug.cgi?id=209356
<rdar://problem/60563952>
Reviewed by Tim Horton.
Source/WebKit:
When the web content process uses
WebPage::scalePage()to modify the viewport scale (e.g. after a viewport
configuration change) on iOS, it's possible for this new scale to be replaced by a previous scale when
dispatching the next visible content rect update. Consider the following scenario:
- A remote layer tree transaction is sent to the UI process containing scale
a. WebPage::scalePageis called with a scaleb.- A visible content rect update with scale
ais scheduled, sent to the web process and dispatched. - The page scale reverts to
a.
This bug exercises the above scenario: the Yahoo search results page specifies a responsive viewport
(device-width and scale=1), but proceeds to lay out outside of the bounds of the device width. As such, after
the document finishes parsing, we attempt to shrink the page to fit; however, if this shrinking happens after
a remote layer tree transaction with the old scale but before the next visible content rect update containing
that old scale, we will end up reverting to this old scale instead of the scale after shrinking to fit. This
same bug is present when usingsetViewScale, which was exercised by the flaky test below, since the new scale
after the viewport configuration change may be overridden by an incoming visible content rect update.
To fix this, we add a mechanism to detect when the page scale has been changed by the web process (e.g. after a
viewport change) and remember the last committed layer tree identifier at that moment. Later, if we get a
visible content rect update with a layer tree commit identifier equal to (or older than) the layer tree commit
identifier when we changed the page scale, don't set the page scale factor using this incoming scale; instead,
wait for the next visible content rect update (which will contain the new scale).
Fixes an existing flaky test: fast/viewport/ios/device-width-viewport-after-changing-view-scale.html
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::close):
(WebKit::WebPage::scalePage):
(WebKit::WebPage::platformDidScalePage):
Add a platform hook that is invoked after scaling the page via
scalePage. See below for the iOS version.
(WebKit::WebPage::didCommitLoad):
(WebKit::WebPage::didFinishDocumentLoad):
(WebKit::WebPage::didFinishLoad):
Drive-by fix: remove an unnecessary
UNUSED_PARAM. Also, replace calls to schedule the shrink to fit content
timer with a call toshrinkToFitContentinstead.
- WebProcess/WebPage/WebPage.h:
Add a member variable to remember the last sent layer tree commit ID and page scale, when we last changed the
page scale via the web process. This is set inplatformDidScalePagebelow.
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::dynamicViewportSizeUpdate):
(WebKit::WebPage::shrinkToFitContent):
Refactor this to not return a bool, but instead call
viewportConfigurationChangedat the end if the viewport
actually changed.
(WebKit::WebPage::updateVisibleContentRects):
Ignore the incoming page scale when updating visible content rects if it:
- Is the same as the last page scale we sent via layer tree commit.
- After sending the above scale, we've since adjusted the page scale such that it is no longer the same.
(WebKit::WebPage::platformDidScalePage):
Update
m_lastLayerTreeTransactionIdAndPageScaleBeforeScalingPage.
(WebKit::WebPage::scheduleShrinkToFitContent): Deleted.
(WebKit::WebPage::shrinkToFitContentTimerFired): Deleted.
Remove the zero-delay timer before running the shrink-to-fit heuristic, and just call
shrinkToFitContent
directly. This was a source of flakiness when trying to reproduce the bug, and doesn't seem to serve any
purpose since we shrink-to-fit after dispatching the "DOMContentLoaded" and "load" events anyways.
(WebKit::WebPage::immediatelyShrinkToFitContent): Deleted.
LayoutTests:
Remove failing expectations for fast/viewport/ios/device-width-viewport-after-changing-view-scale.html.
- platform/ios-wk2/TestExpectations:
- 6:10 PM Changeset in webkit [258803] by
-
- 12 edits in trunk
[Cocoa] Deny access to database mapping service
https://bugs.webkit.org/show_bug.cgi?id=209339
Source/WebKit:
<rdar://problem/56966010>
Reviewed by Brent Fulgham.
In order for the WebContent process to not have permantent access to the database mapping service,
this patch creates an extension for the service in the UI process, sends it to the WebContent
process, where it is consumed. Then, an API call is made which will map the database, and next the
WebContent process will revoke the extension. The WebContent process has then mapped the database,
and access to the database mapping service is no longer needed.
Tested by: fast/sandbox/ios/sandbox-mach-lookup.html
- Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:
- Shared/WebProcessCreationParameters.cpp:
(WebKit::WebProcessCreationParameters::encode const):
(WebKit::WebProcessCreationParameters::decode):
- Shared/WebProcessCreationParameters.h:
- UIProcess/Cocoa/WebProcessPoolCocoa.mm:
(WebKit::WebProcessPool::platformInitializeWebProcess):
- WebProcess/cocoa/WebProcessCocoa.mm:
(WebKit::WebProcess::platformInitializeWebProcess):
- WebProcess/com.apple.WebProcess.sb.in:
Source/WTF:
<rdar://problem/56966010>
Reviewed by Brent Fulgham.
Disable the use of UTTypeRecord swizzling, since this is not needed with the new approach
of denying the database mapping service in this patch.
- wtf/PlatformUse.h:
LayoutTests:
Reviewed by Brent Fulgham.
- fast/sandbox/ios/sandbox-mach-lookup-expected.txt:
- fast/sandbox/ios/sandbox-mach-lookup.html:
- 5:52 PM Changeset in webkit [258802] by
-
- 2 edits in trunk/Source/WebKit
[iOS] Add telemetry for message filtering
https://bugs.webkit.org/show_bug.cgi?id=209003
<rdar://problem/60376722>
Reviewed by Brent Fulgham.
- Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:
- 5:38 PM Changeset in webkit [258801] by
-
- 7 edits in trunk
hasObservableSideEffectsForRegExpSplit doesn't check for @@match override
https://bugs.webkit.org/show_bug.cgi?id=209363
Reviewed by Michael Saboff.
JSTests:
- test262/expectations.yaml:
Mark two test cases as passing.
Source/JavaScriptCore:
Our RegExp.prototype[@@split] implementation has a fast path for unadultered RegExp objects,
but we're using that fast path even when @@match has been overridden.
This is illegitimate because the RegExp species constructor calls IsRegExp, which hits the @@match getter.
- builtins/BuiltinNames.h:
- builtins/RegExpPrototype.js:
(globalPrivate.hasObservableSideEffectsForRegExpSplit):
- bytecode/LinkTimeConstant.h:
- runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::init):
- 5:27 PM Changeset in webkit [258800] by
-
- 2 edits in trunk/Tools
run-webkit-tests: Report MacCatalyst as a unique platform
https://bugs.webkit.org/show_bug.cgi?id=209361
Rubber-stamped by Aakash Jain.
- Scripts/webkitpy/port/mac.py:
(MacCatalystPort):
(MacCatalystPort.configuration_for_upload): Treat MacCatalyst as a separate platform from Mac.
- 4:52 PM Changeset in webkit [258799] by
-
- 5 edits2 adds in trunk
Content-Type & Nosniff Ignored on XML External Entity Resources
<https://webkit.org/b/191171>
<rdar://problem/45763222>
Reviewed by Darin Adler.
Source/WebCore:
Test: http/tests/security/contentTypeOptions/nosniff-xml-external-entity.xhtml
- platform/MIMETypeRegistry.cpp:
(WebCore::MIMETypeRegistry::isXMLEntityMIMEType): Add.
- platform/MIMETypeRegistry.h:
(WebCore::MIMETypeRegistry::isXMLEntityMIMEType): Add.
- Checks for XML external entity MIME types.
- xml/parser/XMLDocumentParserLibxml2.cpp:
(WebCore::externalEntityMimeTypeAllowedByNosniff): Add.
- Checks whether the MIME type is valid based on the presence of the "X-Content-Type-Options: nosniff" header.
(WebCore::openFunc):
- Drop the contents of the resource that was returned and print an error message to the Web Inspector console if externalEntityMimeTypeAllowedByNosniff() says the MIME type is not allowed.
LayoutTests:
- http/tests/security/contentTypeOptions/nosniff-xml-external-entity-expected.txt: Add.
- http/tests/security/contentTypeOptions/nosniff-xml-external-entity.xhtml: Add.
- 4:24 PM Changeset in webkit [258798] by
-
- 5 edits in trunk
CORS-disabling SPI introduced in r253978 should make responses non-opaque
https://bugs.webkit.org/show_bug.cgi?id=209351
<rdar://problem/60024850>
Reviewed by Chris Dumez.
Source/WebCore:
Covered by making the API test actually check that response content is readable.
- loader/DocumentThreadableLoader.cpp:
(WebCore::DocumentThreadableLoader::responseReceived):
Tools:
- TestWebKitAPI/Tests/WebKitCocoa/WKURLSchemeHandler-1.mm:
- 3:56 PM Changeset in webkit [258797] by
-
- 3 edits in trunk/LayoutTests
REGRESSION (r258707): storage/indexeddb/cursor-leak.html is flaky timing out
https://bugs.webkit.org/show_bug.cgi?id=209318
<rdar://problem/60657081>
Unreviewed test gardening after r258768.
- platform/ios-wk2/TestExpectations:
- platform/mac/TestExpectations:
- 3:45 PM Changeset in webkit [258796] by
-
- 8 edits in trunk/Source/WebKit
Have insertDictatedTextAsync() take an InsertTextOptions
https://bugs.webkit.org/show_bug.cgi?id=209308
<rdar://problem/60652838>
Reviewed by Darin Adler.
This will provide future extensibility, which I plan to make use of in a subsequent patch,
in addition to making the interface for insertDictatedTextAsync() more like insertTextAsync().
- UIProcess/Cocoa/WebPageProxyCocoa.mm:
(WebKit::WebPageProxy::insertDictatedTextAsync): Pass the options through. The caller is now
responsible for setting the registerUndoGroup insertion option.
- UIProcess/Cocoa/WebViewImpl.mm:
(WebKit::WebViewImpl::insertText): Stack-allocate a InsertTextOptions setting its registerUndoGroup
field and pass this object through.
- UIProcess/WebPageProxy.h:
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView insertText:alternatives:style:]): Pass the default constructed InsertTextOptions,
which defaults registerUndoGroup to false to keep the current behavior.
- WebProcess/WebPage/Cocoa/WebPageCocoa.mm:
(WebKit::WebPage::insertDictatedTextAsync): Write in terms of InsertTextOptions.registerUndoGroup.
- WebProcess/WebPage/WebPage.h:
- WebProcess/WebPage/WebPage.messages.in:
- 3:36 PM Changeset in webkit [258795] by
-
- 4 edits in trunk/Source
Ensure media cache directory is created before passing to AVURLAsset.
https://bugs.webkit.org/show_bug.cgi?id=209341
Reviewed by Eric Carlson.
Source/WebCore:
Sandbox changes require the media cache directory to be created before passing to
AVFoundation, to ensure that a sandbox extension is allowed to be created for that
directory.
When the mediaCacheDirectory is empty or null, no longer specify a temporary directory. This
allows clients to disable caching by specifying an empty string for the cache directory.
Since now assetCacheForPath() can return nil, update all the call sites to handle that
possibility. Add a new method, ensureAssetCacheExistsAtPath() which tries to create a
directory at the specified path, and returns nil if that is not possible. This ensures the
cache path exists before adding the AVAssetCache to the AVURLAsset options dictionary.
- platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::assetCacheForPath):
(WebCore::ensureAssetCacheExistsForPath):
(WebCore::MediaPlayerPrivateAVFoundationObjC::originsInMediaCache):
(WebCore::MediaPlayerPrivateAVFoundationObjC::clearMediaCache):
(WebCore::MediaPlayerPrivateAVFoundationObjC::clearMediaCacheForOrigins):
(WebCore::MediaPlayerPrivateAVFoundationObjC::createAVAssetForURL):
Source/WebKitLegacy/mac:
MediaPlayerPrivateAVFoundaionObjC will no longer create an asset cache in a temporary
directory by default; ensure that it's media cache directory is set during initialization.
- WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
- 3:31 PM Changeset in webkit [258794] by
-
- 2 edits in trunk/LayoutTests
[ iOS wk2 ] animations/animation-direction-reverse.html is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=209362
Unreviewed test gardening.
- platform/ios-wk2/TestExpectations:
- 3:27 PM Changeset in webkit [258793] by
-
- 2 edits in trunk/LayoutTests
Update imported/w3c/web-platform-tests/css/css-text/line-break/line-break-{strict,normal}-015.xht
https://bugs.webkit.org/show_bug.cgi?id=209250
Fixing test expectations.
Unreviewed test gardening.
- platform/mac/TestExpectations:
- 2:55 PM Changeset in webkit [258792] by
-
- 6 edits in trunk/Source/WebKit
Replace "deferred element focus" functionality with alternative solution
https://bugs.webkit.org/show_bug.cgi?id=201608
Reviewed by Wenson Hsieh.
This is a partial revert of r190278. Have the web process perform a layout, if needed, when
computing focus element information and send an editor state update immediately. If layout is
not needed then explicitly schedule a full editor state update.
Currently, fetching focus element information neither sends an editor state update nor
schedules one. As a result, when the web process tells the UI process to focus an element the
UI process may need to defer doing so if the last received update did not include details
that require up-to-date layout (e.g. the bounding rect of the focused element, which is used
to scroll and zoom to center the focused element). The UI process then schedules an async message
to the web process to fetch the full editor state, which will arrive in a layer tree commit message
from the web process. (Note that the UI process schedules this request to ensure the web process
knows that it is waiting for a layer tree commit. The web process can use this info to expedite
a layer tree commit, if needed). This deferral mechanism complicates the element focusing and
defocusing logic in the UI process and prevents fixing <https://bugs.webkit.org/show_bug.cgi?id=199960>.
Instead remove this deferral concept and have the web process ensure that a full editor state
update is sent or will be sent when computing the focus element information.
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::resetStateAfterProcessExited):
- UIProcess/WebPageProxy.h:
- UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::didCommitLayerTree):
(WebKit::WebPageProxy::elementDidFocus):
(WebKit::WebPageProxy::elementDidBlur):
Remove bookkeeping code to track a deferred focus event or to perform the deferred event
on layer tree commit.
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::elementDidFocus):
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::getFocusedElementInformation): Save off whether a layout is needed then
tell the page to layout if needed. If a layout was needed then send an editor state update
immediately (it's an async message): this update will be a "full editor state" update that
includes up-to-date layout details. Otherwise, schedule a full editor state update. While I
am here, I updated the code to take out a ref on the focused frame's document before performing
a layout because layout can cause arbitrary JavaScript execution that could detach the document
from its frame view as part of destroying the document. Document destruction is detected by
checking whether the document has been detached from its frame view. If this happens then
bail out as there is no need to get focus element info.
- 2:54 PM Changeset in webkit [258791] by
-
- 1 edit1 add in trunk/LayoutTests
Intersection Observer intersections are wrong with zooming
https://bugs.webkit.org/show_bug.cgi?id=209264
Unreviewed test gardening.
Add an expected.txt file that was accidentally omitted in r258787.
- intersection-observer/root-margin-with-zoom-expected.txt: Added.
- 2:38 PM Changeset in webkit [258790] by
-
- 6 edits in trunk/Tools
commit-queue should skip building and testing if patch already passed tests on mac-wk2 queue
https://bugs.webkit.org/show_bug.cgi?id=208938
Reviewed by Jonathan Bedard.
- BuildSlaveSupport/ews-build/steps.py:
(RunWebKitTests.doStepIf): Skip testing if patch already passed mac-wk2 tests.
(CheckPatchStatusOnEWSQueues): Build-step to check patch status on other queues.
(CheckPatchStatusOnEWSQueues.get_patch_status):
(CheckPatchStatusOnEWSQueues.start):
- BuildSlaveSupport/ews-build/steps_unittest.py:
(test_skip_for_mac_wk2_passed_patch_on_commit_queue): Added unit-tests.
- BuildSlaveSupport/ews-build/factories.py: Added build-step to check the patch status on other queues.
- BuildSlaveSupport/ews-build/factories_unittest.py: Updated unit-test.
- BuildSlaveSupport/ews-app/ews/views/statusbubble.py: Added the new step status to STEPS_TO_HIDE.
- 2:21 PM Changeset in webkit [258789] by
-
- 8 edits in trunk
Fix name of "X-Content-Type:" HTTP header in console logging
<https://webkit.org/b/209348>
Reviewed by Devin Rousso.
Source/WebCore:
- css/StyleSheetContents.cpp:
(WebCore::StyleSheetContents::parseAuthorStyleSheet):
- dom/LoadableClassicScript.cpp:
(WebCore::LoadableClassicScript::notifyFinished):
- workers/WorkerScriptLoader.cpp:
(WebCore::WorkerScriptLoader::validateWorkerResponse):
- Change "X-Content-Type:" to "X-Content-Type-Options:" to fix the name of the header.
LayoutTests:
- http/tests/security/contentTypeOptions/nosniff-dynamic-script-blocked-expected.txt:
- http/tests/security/contentTypeOptions/nosniff-script-blocked-expected.txt:
- http/tests/security/contentTypeOptions/nosniff-script-without-content-type-blocked-expected.txt:
- Update test results for the correct name of the header: "X-Content-Type-Options:".
- 2:15 PM Changeset in webkit [258788] by
-
- 2 edits in branches/safari-609.2.1.2-branch/Source/WebCore
Cherry-pick r258267. rdar://problem/60703602
Consolidate detachment of document timeline into Document::commonTeardown.
https://bugs.webkit.org/show_bug.cgi?id=208786
<rdar://problem/59936716>
Patch by Jack Lee <Jack Lee> on 2020-03-11
Reviewed by Ryosuke Niwa.
Move detachment of DocumentTimeline to Document::commonTeardown().
No new tests. Covered by existing document tests.
- dom/Document.cpp: (WebCore::Document::removedLastRef): (WebCore::Document::commonTeardown): (WebCore::Document::prepareForDestruction):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@258267 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 1:58 PM Changeset in webkit [258787] by
-
- 3 edits1 add in trunk
Intersection Observer intersections are wrong with zooming
https://bugs.webkit.org/show_bug.cgi?id=209264
Reviewed by Simon Fraser.
Source/WebCore:
An IntersectionObserver's rootMargin is expressed in CSS pixels,
but we weren't accounting for page zoom. Fix this by multiplying
the root margin by the zoom factor.
Test: intersection-observer/root-margin-with-zoom.html
- dom/Document.cpp:
(WebCore::expandRootBoundsWithRootMargin):
(WebCore::computeIntersectionState):
LayoutTests:
- intersection-observer/root-margin-with-zoom.html: Added.
- 1:44 PM Changeset in webkit [258786] by
-
- 2 edits in trunk/Tools
[ews] Better organize patch status api data
https://bugs.webkit.org/show_bug.cgi?id=209342
Reviewed by Jonathan Bedard.
- BuildSlaveSupport/ews-app/ews/views/status.py:
(Status._build_status):
(Status._build_statuses_for_patch): Updated to return dictionary instead of list.
(Status.get): Remove safe=false now that we are returning a dictionary.
- 1:40 PM Changeset in webkit [258785] by
-
- 2 edits in trunk/LayoutTests
REGRESSION: (r258747) [ Mac wk1 Release ] media/video-background-tab-playback.html is failing.
https://bugs.webkit.org/show_bug.cgi?id=209353
Unreviewed test gardening.
- platform/mac-wk1/TestExpectations:
- 1:34 PM Changeset in webkit [258784] by
-
- 2 edits in trunk/Source/WTF
Add correct annotations to block isa pointer
https://bugs.webkit.org/show_bug.cgi?id=209355
<rdar://problem/60431606>
Patch by Oliver Hunt <oliver@nerget,com> on 2020-03-20
Reviewed by Keith Miller.
Trivial definition update.
- wtf/BlockPtr.h:
(WTF::BlockPtr<R):
- 1:19 PM Changeset in webkit [258783] by
-
- 4 edits in trunk
RegExp.prototype[@@replace] doesn't coerce result index to integer
https://bugs.webkit.org/show_bug.cgi?id=209323
Reviewed by Yusuke Suzuki.
JSTests:
- test262/expectations.yaml:
Mark six test cases as passing.
Source/JavaScriptCore:
From https://tc39.es/ecma262/#sec-regexp.prototype-@@replace:
21.2.5.10 RegExp.prototype [ @@replace ] ( string, replaceValue )
...
- For each result in results, do
...
- Let position be ? ToInteger(? Get(result, "index")).
- Set position to max(min(position, lengthS), 0).
result.index may be undefined, so it doesn't suffice to coerce it with comparison operators.
- builtins/RegExpPrototype.js:
- 1:16 PM Changeset in webkit [258782] by
-
- 2 edits in trunk/Source/WebKitLegacy/mac
Improve the previous build fix.
- WebCoreSupport/WebFrameLoaderClient.mm:
Darin points out that we have USE(WEB_THREAD), so might as well use it!
- 1:04 PM Changeset in webkit [258781] by
-
- 9 edits in trunk/Source
[GPUP] Add PlatformLayerContainer to hold pointer to PlatformLayer
https://bugs.webkit.org/show_bug.cgi?id=208963
Reviewed by Eric Carlson.
Source/WebCore:
Add a PlatformLayerContainer definition for use within the GPU Process code.
Migrate to using over typedef in the file.
- platform/graphics/PlatformLayer.h:
Source/WebKit:
Use PlatformLayerContainer since RetainPtr is a Cocoa only construct. This
allows non-Cocoa ports to get further with compiling out the GPU Process.
- WebProcess/GPU/media/MediaPlayerPrivateRemote.cpp:
- WebProcess/GPU/media/MediaPlayerPrivateRemote.h:
- WebProcess/GPU/media/VideoLayerRemote.h:
- WebProcess/GPU/media/cocoa/MediaPlayerPrivateRemoteCocoa.mm:
(WebKit::MediaPlayerPrivateRemote::createVideoFullscreenLayer):
- WebProcess/GPU/media/cocoa/VideoLayerRemoteCocoa.mm:
(WebKit::createVideoLayerRemote):
- WebProcess/GPU/webrtc/SampleBufferDisplayLayer.h:
- 12:56 PM Changeset in webkit [258780] by
-
- 3 edits in trunk/Source/WebCore
Isolated tree updates must happen after AXObject has finished handling notifications.
https://bugs.webkit.org/show_bug.cgi?id=209354
Reviewed by Chris Fleizach.
Isolated tree updates were happening in AXObjectCache::postNotification,
but that is too early because the AXObject tree is updated during
notificationPostTimerFired. Thus, moved the updates to after all
AXObject tree updates have been done.
In addition, fixed the check for replacement of the IsolatedObject in
AXIsolatedTree::applyPendingChanges, which now happens only if the old
and new objects have the same platform wrapper.
- accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::notificationPostTimerFired):
(WebCore::AXObjectCache::postNotification):
- accessibility/isolatedtree/AXIsolatedTree.cpp:
(WebCore::AXIsolatedTree::applyPendingChanges):
- 12:35 PM Changeset in webkit [258779] by
-
- 2 edits in trunk/LayoutTests
[ iOS wk2 ] http/tests/resourceLoadStatistics/third-party-cookie-blocking-on-sites-without-user-interaction-database.html is flaky timing out.
https://bugs.webkit.org/show_bug.cgi?id=209357
Unreviewed test gardening.
- platform/ios-wk2/TestExpectations:
- 12:22 PM Changeset in webkit [258778] by
-
- 4 edits in trunk/Source/WebInspectorUI
Web Inspector: REGRESSION(r257835): close and undock buttons are shown in remote inspector
https://bugs.webkit.org/show_bug.cgi?id=209346
Reviewed by Timothy Hatcher.
In the case of remote inspection, the frontend is told that docking is not available before
it is even shown (viaInspectorFrontendAPI.setDockingUnavailable). Additionally, the
backend (WebKit::RemoteWebInspectorUI) never tells the frontend what dock side it actually
is (viaInspectorFrontendAPI.setDockSide), as there would be no point, given that docking
is unavailable, meaning that the frontend must be undocked.
Before r257835, the docking state held by
WI._dockConfigurationandWI.docked, neither
of which would be set as described above. As a result, inWI._updateDockNavigationItems
WI.dockedwould be undefined, which is falsy, thereby causing all docking navigation items
to be hidden. After r257835, these were merged into oneWI.dockConfiguration, which is
compared againstWI.DockConfiguration.Undockedinstead of just being falsy checked,
meaning it would result intruewhich would not hide all of the docking navigation items.
Change the logic of
WI.updateDockingAvailabilitysuch that if the frontend is told that
docking is unavailable, mark theWI.dockConfigurationasWI.DockConfiguration.Undocked.
This way, the frontend will always have a valid value forWI.dockConfiguration.
Additionally, further leverage
InspectorFrontendHost.supportsDockSideto only create the
docking navigation items that are actually supported by the host.
- UserInterface/Base/Main.js:
(WI.contentLoaded):
(WI.updateDockingAvailability):
(WI.resizeDockedFrameMouseDown):
(WI.dockedConfigurationSupportsSplitContentBrowser):
(WI._updateDockNavigationItems):
(WI._updateTabBarDividers):
- UserInterface/Views/TabBar.js:
(WI.TabBar.get horizontalPadding):
(WI.TabBar.prototype.resetCachedWidths): Added.
When switching dock configurations, we need to reset the cached width of each tab bar item,
as otherwise, a large width cached when undocked can incorrectly be used when docked.
- UserInterface/Views/TabBarItem.js:
(WI.TabBarItem.get horizontalMargin):
Replace negative checks ofWI.dockConfigurationwith positive ones that can't be fooled by
a falsy value.
- 11:59 AM Changeset in webkit [258777] by
-
- 2 edits in trunk/Source/WebKitLegacy/mac
Fix the build.
- WebCoreSupport/WebFrameLoaderClient.mm:
- 11:50 AM Changeset in webkit [258776] by
-
- 5 edits in trunk/Source/WebCore
Fix for retrieving focus in isolated tree mode.
https://bugs.webkit.org/show_bug.cgi?id=209336
Reviewed by Chris Fleizach.
Focused object requests can come on the secondary thread before the
isolated tree has been generated. Thus, AXObjectCache::isolatedTreeFocusedObject
needs to generate the isolated tree if it doesn't exist, similar to
isolatedTreeRootObject.
- accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::isolatedTreeFocusedObject):
(WebCore::AXObjectCache::focusedUIElementForPage):
(WebCore::AXObjectCache::getOrCreateIsolatedTree const):
(WebCore::AXObjectCache::isolatedTreeRootObject):
- accessibility/AXObjectCache.h:
- accessibility/isolatedtree/AXIsolatedObject.cpp:
(WebCore::AXIsolatedObject::focusedUIElement const):
- accessibility/isolatedtree/AXIsolatedTree.h:
m_pendingFocusedNodeID wasn't being initialized, which was causing
random crashes when accessing the HashMap of isolated objects for a
spurious AXID.
- 11:40 AM Changeset in webkit [258775] by
-
- 2 edits in trunk/LayoutTests
[ iOS ] http/tests/security/stylesheet-href-redirect.html is flaky timing out
https://bugs.webkit.org/show_bug.cgi?id=209352
Unreviewed test gardening.
- platform/ios-wk2/TestExpectations:
- 11:39 AM Changeset in webkit [258774] by
-
- 5 edits in trunk
Fix JSCOnly build without unified sources
https://bugs.webkit.org/show_bug.cgi?id=209343
Patch by Justin Michaud <justin@justinmichaud.com> on 2020-03-20
Reviewed by Keith Miller.
.:
- .gitignore:
Source/JavaScriptCore:
I managed to get clangd to work for code completion using the following command:
./Tools/Scripts/build-webkit --jsc-only --cmakeargs="-DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DENABLE_UNIFIED_BUILDS=OFF" && compdb -p WebKitBuild/Release/ list > compile_commands.json
This patch fixes the build for non-unified sources, and adds some extra clangd files to .gitignore.
- API/MarkedJSValueRefArray.h:
- jit/JITPropertyAccess.cpp:
- 11:37 AM Changeset in webkit [258773] by
-
- 2 edits in trunk/LayoutTests
[ iOS wk2 ] css2.1/20110323/replaced-intrinsic-ratio-001.htm is flaky failing.
https://bugs.webkit.org/show_bug.cgi?id=209350
Unreviewed test gardening.
- platform/ios-wk2/TestExpectations:
- 11:31 AM Changeset in webkit [258772] by
-
- 23 edits in trunk
Upstream a variety of Cocoa-platform HAVE and ENABLE macros
https://bugs.webkit.org/show_bug.cgi?id=209307
Reviewed by Andy Estes.
Source/JavaScriptCore:
- Configurations/FeatureDefines.xcconfig:
Source/WebCore:
- Configurations/FeatureDefines.xcconfig:
Source/WebCore/PAL:
- Configurations/FeatureDefines.xcconfig:
- pal/spi/cocoa/AVFoundationSPI.h:
- pal/spi/cocoa/RevealSPI.h:
- pal/spi/ios/UIKitSPI.h:
Source/WebKit:
- Configurations/FeatureDefines.xcconfig:
- Platform/spi/ios/PDFKitSPI.h:
- UIProcess/RemoteLayerTree/ios/RemoteLayerTreeHostIOS.mm:
(WebKit::createRemoteView):
- UIProcess/RemoteLayerTree/ios/RemoteLayerTreeViews.mm:
- UIProcess/ios/WKPDFView.mm:
(-[WKPDFView web_initWithFrame:webView:mimeType:]):
Source/WebKitLegacy/mac:
- Configurations/FeatureDefines.xcconfig:
Source/WTF:
- wtf/PlatformEnableCocoa.h:
- wtf/PlatformHave.h:
Tools:
- TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
- 11:16 AM Changeset in webkit [258771] by
-
- 2 edits in trunk/LayoutTests
[ iOS ] REGRESSION: http/tests/cache/disk-cache/disk-cache-disable.html is flaky timing out
https://bugs.webkit.org/show_bug.cgi?id=209349.
Unreviewed test gardening.
- platform/ios-wk2/TestExpectations:
- 10:50 AM Changeset in webkit [258770] by
-
- 2 edits in trunk/Source/WebKit
Use same syntax for ComputePagesForPrintingAndDrawToPDF message as other messages
https://bugs.webkit.org/show_bug.cgi?id=209310
<rdar://problem/60648013>
Patch by Alex Christensen <achristensen@webkit.org> on 2020-03-20
Reviewed by Sam Weinig.
This makes it easier for scripts to find which messages are unused.
- UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::computePagesForPrintingAndDrawToPDF):
- 10:40 AM Changeset in webkit [258769] by
-
- 15 edits in trunk
Add routines to check about:blank and about:srcdoc URLs
https://bugs.webkit.org/show_bug.cgi?id=209174
Reviewed by Alex Christensen.
LayoutTests/imported/w3c:
- web-platform-tests/html/dom/usvstring-reflection.https-expected.txt:
Source/WebCore:
- Modules/fetch/FetchRequest.cpp:
(WebCore::computeReferrer):
- dom/Document.cpp:
(WebCore::isURLPotentiallyTrustworthy):
- html/HTMLFrameElementBase.cpp:
(WebCore::HTMLFrameElementBase::location const):
- loader/FrameLoader.cpp:
(WebCore::FrameLoader::shouldTreatURLAsSrcdocDocument const):
- page/SecurityPolicy.cpp:
(WebCore::SecurityPolicy::shouldInheritSecurityOriginFromOwner):
Source/WebKit:
- WebProcess/WebCoreSupport/WebResourceLoadObserver.cpp:
(WebKit::WebResourceLoadObserver::requestStorageAccessUnderOpener):
Source/WTF:
- wtf/URL.cpp:
(WTF::aboutSrcDocURL):
(WTF::URL::isAboutBlank const):
(WTF::URL::isAboutSrcDoc const):
- wtf/URL.h:
LayoutTests:
- platform/mac-wk1/imported/w3c/web-platform-tests/html/dom/usvstring-reflection.https-expected.txt:
- 10:26 AM Changeset in webkit [258768] by
-
- 4 edits in trunk/LayoutTests
REGRESSION (r258707): storage/indexeddb/cursor-leak.html is flaky timing out
https://bugs.webkit.org/show_bug.cgi?id=209318
<rdar://problem/60657081>
Reviewed by Ryosuke Niwa.
Open fewer cursors to make the test faster.
- storage/indexeddb/cursor-leak-expected.txt:
- storage/indexeddb/cursor-leak-private-expected.txt:
- storage/indexeddb/resources/cursor-leak.js:
(onOpen.tx.oncomplete):
- 10:02 AM Changeset in webkit [258767] by
-
- 13 edits in trunk/Source
[iOS] Articles on NYTimes.com get truncated when switching between MobileSafari and another app
https://bugs.webkit.org/show_bug.cgi?id=209321
<rdar://problem/59763843>
Reviewed by Tim Horton.
Articles on NYTimes.com get truncated when switching between MobileSafari and another app
Source/WebCore:
(multitasking). The reason is that when you home out of MobileSafari, snapshots of the
web view are taken at various sizes and we were firing 5 resizes events at the page as a
result. Those resize events were confusing the logic on NYTimes.com and causing it to
truncate the article.
To address the issue, we stop firing resize events at the page if the resize is happening
during the snapshotting sequence.
- page/FrameView.cpp:
(WebCore::FrameView::sendResizeEventIfNeeded):
- page/Page.h:
(WebCore::Page::shouldFireResizeEvents const):
(WebCore::Page::setShouldFireResizeEvents):
Source/WebKit:
(multitasking). The reason is that when you home out of MobileSafari, snapshots of the
web view are taken at various sizes and we were firing 5 resizes events at the page as a
result. Those resize events were confusing the logic on NYTimes.com and causing it to
truncate the article.
To address the issue, we stop firing resize events at the page if the resize is happening
during the snapshotting sequence.
- Platform/spi/ios/UIKitSPI.h:
- UIProcess/ApplicationStateTracker.h:
- UIProcess/ApplicationStateTracker.mm:
(WebKit::ApplicationStateTracker::ApplicationStateTracker):
(WebKit::ApplicationStateTracker::~ApplicationStateTracker):
(WebKit::ApplicationStateTracker::willBeginSnapshotSequence):
(WebKit::ApplicationStateTracker::didCompleteSnapshotSequence):
- UIProcess/WebPageProxy.cpp:
- UIProcess/WebPageProxy.h:
- UIProcess/ios/WKApplicationStateTrackingView.mm:
(-[WKApplicationStateTrackingView didMoveToWindow]):
(-[WKApplicationStateTrackingView _willBeginSnapshotSequence]):
(-[WKApplicationStateTrackingView _didCompleteSnapshotSequence]):
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::setShouldFireResizeEvents):
- WebProcess/WebPage/WebPage.h:
- WebProcess/WebPage/WebPage.messages.in:
- 9:31 AM Changeset in webkit [258766] by
-
- 2 edits in trunk/Source/WebCore/PAL
Unreviewed, reverting r258762.
This commit broke the Catalina build
Reverted changeset:
"Fix the build"
https://trac.webkit.org/changeset/258762
- 9:30 AM Changeset in webkit [258765] by
-
- 23 edits in trunk
Unreviewed, reverting r258748.
This commit broke the Catalina build
Reverted changeset:
"Upstream a variety of Cocoa-platform HAVE and ENABLE macros"
https://bugs.webkit.org/show_bug.cgi?id=209307
https://trac.webkit.org/changeset/258748
- 8:56 AM Changeset in webkit [258764] by
-
- 2 edits in trunk/LayoutTests
[GTK] Layout Test media/track/track-legacyapi-with-automatic-mode.html is failing
https://bugs.webkit.org/show_bug.cgi?id=118459
Unreviewed gardening.
The test passes now. Removed media/track/track-legacyapi-with-automatic-mode.html from TextExpectations.
- platform/gtk/TestExpectations:
- 8:51 AM Changeset in webkit [258763] by
-
- 2 edits in trunk/LayoutTests
[ Mac WK1 ] REGRESSION (r240537) Layout Test media/video-background-tab-playback.html is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=196502
<rdar://problem/49532580>
Unreviewed, revert changes to iOS TestExpectations made in r258747.
- platform/ios/TestExpectations:
- 8:01 AM Changeset in webkit [258762] by
-
- 2 edits in trunk/Source/WebCore/PAL
Fix the build
- pal/spi/cocoa/RevealSPI.h:
- 7:59 AM Changeset in webkit [258761] by
-
- 3 edits in trunk/Source/WebCore
[LFC][IFC] Avoid infinite loop when stuck on partial content
https://bugs.webkit.org/show_bug.cgi?id=209312
<rdar://problem/59954605>
Reviewed by Simon Fraser.
Speculative fix to address infinite loop/running out of inline run vector capacity at InlineFormattingContext::setDisplayBoxesForLine.
(Checking if we managed to progress on the content while having partial runs.)
- layout/inlineformatting/InlineFormattingContext.cpp:
(WebCore::Layout::InlineFormattingContext::lineLayout):
- layout/inlineformatting/LineLayoutContext.cpp:
(WebCore::Layout::LineLayoutContext::nextContentForLine):
(WebCore::Layout::LineLayoutContext::handleFloatsAndInlineContent):
- 7:31 AM Changeset in webkit [258760] by
-
- 3 edits in trunk/Tools
[ews] commit-queue should comment on bug if patch fails to apply
https://bugs.webkit.org/show_bug.cgi?id=209334
Reviewed by Jonathan Bedard.
- BuildSlaveSupport/ews-build/steps.py:
(ApplyPatch):
(ApplyPatch.evaluateCommand): Overridden to check build status and queue name and comment on bug accordingly.
- BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
(TestApplyPatch):
(TestApplyPatch.setUp):
(TestApplyPatch.setUp.mock_start):
(TestApplyPatch.tearDown):
(TestApplyPatch.test_success):
(TestApplyPatch.test_failure):
(TestApplyPatch.test_failure_on_commit_queue):
- 4:48 AM Changeset in webkit [258759] by
-
- 2 edits in trunk/Source/WebCore
[GStreamer] White-list vp09 in the codec registry
https://bugs.webkit.org/show_bug.cgi?id=209288
Reviewed by Xabier Rodriguez-Calvar.
- platform/graphics/gstreamer/GStreamerRegistryScanner.cpp:
(WebCore::GStreamerRegistryScanner::initialize):
- 3:48 AM Changeset in webkit [258758] by
-
- 3 edits in trunk/LayoutTests
[GTK] Gardening, update TestExpectations and baselines
https://bugs.webkit.org/show_bug.cgi?id=209331
Unreviewed gardening.
- platform/gtk/TestExpectations:
- platform/gtk/imported/w3c/web-platform-tests/svg/painting/reftests/paint-order-001-expected.txt:
Update baseline after r258492.
- 3:29 AM Changeset in webkit [258757] by
-
- 2 edits in trunk/Tools
[EWS] Limit number of builds to display in status-bubble hover over message in case of lot of retried builds
https://bugs.webkit.org/show_bug.cgi?id=209122
Reviewed by Jonathan Bedard.
- BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
(StatusBubble._build_bubble):
- 2:41 AM WebKitGTK/2.28.x edited by
- (diff)
- 2:27 AM Changeset in webkit [258756] by
-
- 3 edits2 adds in trunk
Nullptr crash in RenderObject::RenderObjectBitfields::isBox when current renderer is the RenderView
https://bugs.webkit.org/show_bug.cgi?id=209251
<rdar://problem/60103614>
Patch by Jack Lee <Jack Lee> on 2020-03-20
Reviewed by Antti Koivisto.
Source/WebCore:
It’s perfectly fine to call AccessibilityRenderObject::nextSibling on the RenderView (empty document) and since the RenderView has no sibling, let’s just early return with nullptr.
Test: fast/frames/iframe-empty-doc-crash.html
- accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::nextSibling const):
LayoutTests:
It’s perfectly fine to call AccessibilityRenderObject::nextSibling on the RenderView (empty document) and since the RenderView has no sibling, let’s just early return with nullptr.
- fast/frames/iframe-empty-doc-crash-expected.txt: Added.
- fast/frames/iframe-empty-doc-crash.html: Added.
- 2:15 AM Changeset in webkit [258755] by
-
- 2 edits in trunk/Source/WebCore
Fix build with gstreamer 1.12
https://bugs.webkit.org/show_bug.cgi?id=209296
Patch by Mike Gorse <mgorse@suse.com> on 2020-03-20
Reviewed by Philippe Normand.
No new tests (build fix only).
- platform/graphics/gstreamer/GLVideoSinkGStreamer.cpp:
(webKitGLVideoSinkChangeState): Add GST_VERSION_CHECK around check for
GST_STATE_CHANGE_READY_TO_READY.
- 2:01 AM Changeset in webkit [258754] by
-
- 2 edits in trunk/Source/WebCore
[Unix] Allow runtime release logging levels configuration
https://bugs.webkit.org/show_bug.cgi?id=209286
Reviewed by Adrian Perez de Castro.
Setting to a comma-separated list like in this example should now work as expected:
WEBKIT_DEBUG="Media=debug,MediaSource=info" run-minibrowser --gtk ...
- platform/unix/LoggingUnix.cpp:
(WebCore::logLevelString):
Mar 19, 2020:
- 11:03 PM Changeset in webkit [258753] by
-
- 4 edits in trunk/Source/WebCore
Some scroll snapping tests are still flaky
https://bugs.webkit.org/show_bug.cgi?id=165196
Reviewed by Wenson Hsieh.
WheelEventTestMonitor could trigger too early if the main thread was bogged down, delaying
the firing of the m_updateNodeScrollPositionTimer scheduled from
AsyncScrollingCoordinator::scheduleUpdateScrollPositionAfterAsyncScroll().
Fix by extending the life of the "ScrollingThreadSyncNeeded" reason until after the m_updateNodeScrollPositionTimer
has fired
Fixes flakiness of tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-mainframe-slow-vertical.html
and others.
- page/scrolling/AsyncScrollingCoordinator.cpp:
(WebCore::AsyncScrollingCoordinator::noteScrollingThreadSyncCompleteForNode):
(WebCore::AsyncScrollingCoordinator::scheduleUpdateScrollPositionAfterAsyncScroll):
(WebCore::AsyncScrollingCoordinator::updateScrollPositionAfterAsyncScrollTimerFired):
- page/scrolling/AsyncScrollingCoordinator.h:
- page/scrolling/ThreadedScrollingTree.cpp:
(WebCore::ThreadedScrollingTree::scrollingTreeNodeDidScroll):
- 10:06 PM Changeset in webkit [258752] by
-
- 2 edits in trunk/Source/WebKit
SharedMemory::allocate() should initialize
address
<https://webkit.org/b/209315>
<rdar://problem/60606720>
Reviewed by Geoffrey Garen.
- Platform/cocoa/SharedMemoryCocoa.cpp:
(WebKit::SharedMemory::allocate): Initialize
addressto zero.
- 9:41 PM Changeset in webkit [258751] by
-
- 3 edits in trunk/Source/WebKit
Unable to build WebKit with iOS 13.4 SDK
https://bugs.webkit.org/show_bug.cgi?id=209317
Reviewed by Simon Fraser.
- Platform/spi/ios/UIKitSPI.h:
- UIProcess/ios/WKMouseGestureRecognizer.mm:
- 8:05 PM Changeset in webkit [258750] by
-
- 4 edits in trunk/Source/WebKit
[macoOS] Remove access to 'apple-extension-services' from the WebContent sandbox
https://bugs.webkit.org/show_bug.cgi?id=209324
<rdar://problem/58089661>
Reviewed by Per Arne Vollan.
Remove the last of permissions for the unused 'apple-extension-services' mach service.
- GPUProcess/mac/com.apple.WebKit.GPUProcess.sb.in:
- Resources/SandboxProfiles/ios/com.apple.WebKit.GPU.sb:
- WebProcess/com.apple.WebProcess.sb.in:
- 8:05 PM Changeset in webkit [258749] by
-
- 2 edits in trunk/Source/WebCore
Safari video gravity changes performance improvements
https://bugs.webkit.org/show_bug.cgi?id=209316
Reviewed by Eric Carlson.
Remove an unnecessary (and harmful) call of setVideoLayerFrame in WebAVPlayerLayer:layoutSublayers.
When a video with the gravity AVLayerVideoGravityResizeAspectFill needs to enter the
picture-in-picture mode from fullscreen, the extra call of setVideoLayerFrame will send
an extra IPC message to the Web process to set the video layer bounds. So the [CATransaction commit]
will need to wait for three property changes to complete - two in the Web process, and one in the
UI process. The interval of the two property changes in the Web process is over 100 ms, because we
delay the call of resolveBounds (which calls the second setVideoLayerFrame) at least 100 ms
in WebAVPlayerLayer:layoutSublayers. That leads to long durations of core animation commits.
In the test, the longest duration of commits is over 500 ms. After applying this patch,
the longest duration in the test is about 50 ms.
- platform/ios/VideoFullscreenInterfaceAVKit.mm:
(-[WebAVPlayerLayer layoutSublayers]):
- 6:59 PM Changeset in webkit [258748] by
-
- 23 edits in trunk
Upstream a variety of Cocoa-platform HAVE and ENABLE macros
https://bugs.webkit.org/show_bug.cgi?id=209307
Reviewed by Andy Estes.
Source/JavaScriptCore:
- Configurations/FeatureDefines.xcconfig:
Source/WebCore:
- Configurations/FeatureDefines.xcconfig:
Source/WebCore/PAL:
- Configurations/FeatureDefines.xcconfig:
- pal/spi/cocoa/AVFoundationSPI.h:
- pal/spi/cocoa/RevealSPI.h:
- pal/spi/ios/UIKitSPI.h:
Source/WebKit:
- Configurations/FeatureDefines.xcconfig:
- Platform/spi/ios/PDFKitSPI.h:
- UIProcess/RemoteLayerTree/ios/RemoteLayerTreeHostIOS.mm:
(WebKit::createRemoteView):
- UIProcess/RemoteLayerTree/ios/RemoteLayerTreeViews.mm:
- UIProcess/ios/WKPDFView.mm:
(-[WKPDFView web_initWithFrame:webView:mimeType:]):
Source/WebKitLegacy/mac:
- Configurations/FeatureDefines.xcconfig:
Source/WTF:
- wtf/PlatformEnableCocoa.h:
- wtf/PlatformHave.h:
Tools:
- TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
- 5:50 PM Changeset in webkit [258747] by
-
- 6 edits in trunk/LayoutTests
[ Mac WK1 ] REGRESSION (r240537) Layout Test media/video-background-tab-playback.html is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=196502
<rdar://problem/49532580>
Reviewed by Jer Noble.
- media/video-background-tab-playback-expected.txt:
- media/video-background-tab-playback.html: Don't assume the state will change in 100ms.
- platform/ios/TestExpectations:
- platform/mac-wk1/TestExpectations:
- platform/mac-wk2/TestExpectations:
- 5:42 PM Changeset in webkit [258746] by
-
- 2 edits in trunk/LayoutTests
Unreviewed test fixing.
Tests that fire multiple wheel event sequences need to call eventSender.monitorWheelEvents() between each one.
- tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-borders.html:
- 5:03 PM Changeset in webkit [258745] by
-
- 2 edits1 delete in trunk/Tools
Remove test failing after r258734
https://bugs.webkit.org/show_bug.cgi?id=209303
We removed the functionality it was testing because it did nothing useful except call the callback.
I'm about to remove the only user of WKContextGetStatistics.
- TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
- TestWebKitAPI/Tests/WebKit/WebCoreStatisticsWithNoWebProcess.cpp: Removed.
- 4:48 PM Changeset in webkit [258744] by
-
- 2 edits in trunk/Source/WebCore
ScriptDisallowedScope should disable isEventAllowedInMainThread and isEventDispatchAllowedInSubtree asserts in WebKit1
https://bugs.webkit.org/show_bug.cgi?id=209165
Patch by Sunny He <sunny_he@apple.com> on 2020-03-19
Reviewed by Ryosuke Niwa.
Under very intricate sequences of event dispatch in WebKit1, it is
possible for security asserts to be triggered even if there is no
underlying security issue soley due to the design patterns of
WebKit1.
No new tests since the conditions for reproduction are very delicate
and difficult to reliably capture in a test case.
- dom/ScriptDisallowedScope.h:
(WebCore::ScriptDisallowedScope::isEventAllowedInMainThread):
(WebCore::ScriptDisallowedScope::InMainThread::isEventDispatchAllowedInSubtree):
- 4:41 PM Changeset in webkit [258743] by
-
- 2 edits in trunk/Tools
commit-queue status-bubble shows incorrect position in queue
https://bugs.webkit.org/show_bug.cgi?id=209313
Reviewed by Jonathan Bedard.
- BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
(StatusBubble._queue_position):
- 4:38 PM Changeset in webkit [258742] by
-
- 3 edits in trunk/LayoutTests
REGRESSION (r258707): storage/indexeddb/cursor-leak.html is flaky timing out
https://bugs.webkit.org/show_bug.cgi?id=209318
Fixing expectations
Unreviewed test gardening.
- platform/mac-wk2/TestExpectations:
- platform/mac/TestExpectations:
- 4:32 PM Changeset in webkit [258741] by
-
- 5 edits in trunk
Sanitize suggested download filename received from web process
https://bugs.webkit.org/show_bug.cgi?id=209300
<rdar://problem/59487723>
Patch by Alex Christensen <achristensen@webkit.org> on 2020-03-19
Reviewed by Chris Dumez.
Source/WebKit:
- UIProcess/Downloads/DownloadProxy.cpp:
(WebKit::DownloadProxy::decideDestinationWithSuggestedFilenameAsync):
LayoutTests:
- fast/dom/HTMLAnchorElement/anchor-file-blob-download-includes-backslash-expected.txt:
- fast/dom/HTMLAnchorElement/anchor-file-blob-download-includes-backslash.html:
- 4:26 PM Changeset in webkit [258740] by
-
- 3 edits in trunk/LayoutTests
REGRESSION (r258707): storage/indexeddb/cursor-leak.html is flaky timing out
https://bugs.webkit.org/show_bug.cgi?id=209318
Unreviewed test gardening
- platform/ios-wk2/TestExpectations:
- platform/mac-wk2/TestExpectations:
- 4:05 PM Changeset in webkit [258739] by
-
- 2 edits in trunk/LayoutTests
Allow for some tolerance when checking canvas pixels in fast/mediastream tests
https://bugs.webkit.org/show_bug.cgi?id=209259
<rdar://problem/60609789>
Unreviewed tweak of r258700, increase the maximum tolerance to +/- 2.
- resources/platform-helper.js:
(videoCanvasPixelComparisonTolerance):
(checkPixelColorWithTolerance):
- 3:55 PM Changeset in webkit [258738] by
-
- 3 edits in trunk/Source/WebKit
Handle failed ITP Database insert attempts
https://bugs.webkit.org/show_bug.cgi?id=209253
<rdar://problem/58886756>
Reviewed by David Kilzer.
A first step toward handling I/O errors in the database. Adds checks
so that in the case where a domain insert fails, we don't execute
code which relies on this domain being in the database.
Future steps will be figuring out a way to schedule failed queries
to execute when the database is accepting inputs in the future.
- NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp:
(WebKit::ResourceLoadStatisticsDatabaseStore::ensureResourceStatisticsForRegistrableDomain):
Check if the query to insert a domain failed. If so, return
WTF::nullopt in place of the domain ID to indicate the failure.
(WebKit::ResourceLoadStatisticsDatabaseStore::ensureAndMakeDomainList):
The simplest solution here was to only append strings to this list
if they are already in the database, or are successfully inserted,
because insertDomainRelationshipList() relies on these being in the database.
(WebKit::ResourceLoadStatisticsDatabaseStore::hasStorageAccess):
(WebKit::ResourceLoadStatisticsDatabaseStore::requestStorageAccess):
(WebKit::ResourceLoadStatisticsDatabaseStore::grantStorageAccess):
(WebKit::ResourceLoadStatisticsDatabaseStore::grantStorageAccessInternal):
(WebKit::ResourceLoadStatisticsDatabaseStore::grandfatherDataForDomains):
(WebKit::ResourceLoadStatisticsDatabaseStore::ensurePrevalentResourcesForDebugMode):
(WebKit::ResourceLoadStatisticsDatabaseStore::logFrameNavigation):
(WebKit::ResourceLoadStatisticsDatabaseStore::logCrossSiteLoadWithLinkDecoration):
(WebKit::ResourceLoadStatisticsDatabaseStore::logUserInteraction):
(WebKit::ResourceLoadStatisticsDatabaseStore::clearUserInteraction):
(WebKit::ResourceLoadStatisticsDatabaseStore::clearPrevalentResource):
(WebKit::ResourceLoadStatisticsDatabaseStore::setGrandfathered):
(WebKit::ResourceLoadStatisticsDatabaseStore::setIsScheduledForAllButCookieDataRemoval):
(WebKit::ResourceLoadStatisticsDatabaseStore::setSubframeUnderTopFrameDomain):
(WebKit::ResourceLoadStatisticsDatabaseStore::setSubresourceUnderTopFrameDomain):
(WebKit::ResourceLoadStatisticsDatabaseStore::setSubresourceUniqueRedirectTo):
(WebKit::ResourceLoadStatisticsDatabaseStore::setSubresourceUniqueRedirectFrom):
(WebKit::ResourceLoadStatisticsDatabaseStore::setTopFrameUniqueRedirectTo):
(WebKit::ResourceLoadStatisticsDatabaseStore::setTopFrameUniqueRedirectFrom):
(WebKit::ResourceLoadStatisticsDatabaseStore::setLastSeen):
(WebKit::ResourceLoadStatisticsDatabaseStore::setPrevalentResource):
(WebKit::ResourceLoadStatisticsDatabaseStore::setVeryPrevalentResource):
Every call to ensureResourceStatisticsForRegistrableDomain should
check the result to make sure the domain was inserted before
continuing, and return early (or return a value that does not further
rely on the database information, like an empty vector). Log these
errors but don't add a debug assert because there already is one in
ensureResourceStatisticsForRegistrableDomain.
- (WebKit::ResourceLoadStatisticsDatabaseStore::populateFromMemoryStore):
- (WebKit::ResourceLoadStatisticsDatabaseStore::mergeStatistics):
The simplest thing to do in this case is to return early if any domain
inserts fail before inserting domain relationships as a best-effort
approach. A future step could be maintaining a vector of statistics
which successfully inserted, and only adding those relationships.
- NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.h:
ensureResourceStatisticsForRegistrableDomain should return an
Optional domain ID to account for failed inserts.
- 3:50 PM Changeset in webkit [258737] by
-
- 6 edits in trunk/Source
Upstream the definition of HAVE_READ_ONLY_SYSTEM_VOLUME
https://bugs.webkit.org/show_bug.cgi?id=209305
Reviewed by Andy Estes.
Source/WebCore:
- platform/mac/BlacklistUpdater.mm:
Source/WebKit:
- Shared/mac/AuxiliaryProcessMac.mm:
(WebKit::AuxiliaryProcess::isSystemWebKit):
Source/WTF:
- wtf/PlatformHave.h:
- 3:44 PM Changeset in webkit [258736] by
-
- 6 edits in trunk
Remove Mobile Asset access from the WebContent process
https://bugs.webkit.org/show_bug.cgi?id=209302
<rdar://problem/56305023>
Reviewed by Per Arne Vollan.
Source/WebKit:
Tested by fast/sandbox/ios/sandbox-mach-lookup.html
- Resources/SandboxProfiles/ios/com.apple.WebKit.GPU.sb:
- Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:
LayoutTests:
- fast/sandbox/ios/sandbox-mach-lookup-expected.txt:
- fast/sandbox/ios/sandbox-mach-lookup.html:
- 3:27 PM Changeset in webkit [258735] by
-
- 3 edits32 adds in trunk
[css-grid] Changes in grid or elements inside the grid affects margin on other elements in the grid
https://bugs.webkit.org/show_bug.cgi?id=209203
Reviewed by Darin Adler.
LayoutTests/imported/w3c:
Imported new Web Platform tests to detect regressions in the auto-margins logic durignn relayouts.
- web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-001-expected.txt: Added.
- web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-001.html: Added.
- web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-002-expected.txt: Added.
- web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-002.html: Added.
- web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-003-expected.txt: Added.
- web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-003.html: Added.
- web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-004-expected.txt: Added.
- web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-004.html: Added.
- web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-005-expected.txt: Added.
- web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-005.html: Added.
- web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-006-expected.txt: Added.
- web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-006.html: Added.
- web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-007-expected.txt: Added.
- web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-007.html: Added.
- web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-008-expected.html: Added.
- web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-008.html: Added.
- web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-001-expected.txt: Added.
- web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-001.html: Added.
- web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-002-expected.txt: Added.
- web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-002.html: Added.
- web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-003-expected.txt: Added.
- web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-003.html: Added.
- web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-004-expected.txt: Added.
- web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-004.html: Added.
- web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-005-expected.txt: Added.
- web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-005.html: Added.
- web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-006-expected.txt: Added.
- web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-006.html: Added.
- web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-007-expected.txt: Added.
- web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-007.html: Added.
- web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-008-expected.html: Added.
- web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-008.html: Added.
Source/WebCore:
We should ignore the previously computed auto margins wheneven a relayout is performed.
Tests: imported/w3c/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-001.html
imported/w3c/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-002.html
imported/w3c/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-003.html
imported/w3c/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-004.html
imported/w3c/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-005.html
imported/w3c/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-006.html
imported/w3c/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-007.html
imported/w3c/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-008.html
imported/w3c/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-001.html
imported/w3c/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-002.html
imported/w3c/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-003.html
imported/w3c/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-004.html
imported/w3c/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-005.html
imported/w3c/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-006.html
imported/w3c/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-007.html
imported/w3c/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-008.html
- rendering/RenderGrid.cpp:
(WebCore::RenderGrid::updateAutoMarginsInRowAxisIfNeeded):
(WebCore::RenderGrid::updateAutoMarginsInColumnAxisIfNeeded):
- 3:18 PM Changeset in webkit [258734] by
-
- 9 edits2 deletes in trunk/Source/WebKit
Remove unused WebProcessPool::didGetStatistics
https://bugs.webkit.org/show_bug.cgi?id=209303
<rdar://problem/60648454>
Patch by Alex Christensen <achristensen@webkit.org> on 2020-03-19
Reviewed by Geoffrey Garen.
- UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::didGetStatistics): Deleted.
- UIProcess/WebProcessPool.h:
- UIProcess/WebProcessPool.messages.in:
- 3:06 PM Changeset in webkit [258733] by
-
- 4 edits in trunk/Source/WebCore
Remove caching of isOnScreen since it is not used.
https://bugs.webkit.org/show_bug.cgi?id=209306
Reviewed by Chris Fleizach.
AXIsolatedObject was caching isOnScreen and it wasn't used. It has a
performance impact since it needs to run on the main thread. thus this
change removes it from the cache.
- accessibility/AccessibilityObjectInterface.h:
- accessibility/isolatedtree/AXIsolatedObject.cpp:
(WebCore::AXIsolatedObject::initializeAttributeData):
- accessibility/isolatedtree/AXIsolatedObject.h:
- 2:59 PM Changeset in webkit [258732] by
-
- 5 edits in trunk/Source/JavaScriptCore
[JSC] StructureStubInfo::bufferedStructures should not ref/deref UniquedStringImpl
https://bugs.webkit.org/show_bug.cgi?id=209266
<rdar://problem/60508312>
Reviewed by Saam Barati.
StructureStubInfo::bufferedStructures includes RefPtr<UniquedStringImpl>. So destroying StructureStubInfo in
CodeBlock::finalizeUnconditionally can access to AtomStringTable, and get nullptr AtomStringTable since
CodeBlock::finalizeUnconditionally can be executed in heap-thread.
Temporarily setting AtomStringTable in the heap-thread when executing GC End phase is dangerous: Web worker's
JSC VM is releasing heapAccess when waiting for the next message in the RunLoop. This potentially means that
Web worker's main thread can run concurrently with Web worker's JSC VM's End phase heap-thread until the web
worker takes JSLock. (This is not a problem in WebCore since WebCore JSC VM never releases heapAccess. We cannot
take the same design since we would like to run End phase even if web worker is not getting any messages).
And removing resetJITData in CodeBlock::finalizeUnconditionally does not fix as well since CodeBlock::finalizeUnconditionally
calls StructureStubInfo::visitWeakReferences, and it removes some of entries of StructureStubInfo::bufferedStructures after
ByVal extension is introduced into StructureStubInfo.
This patch uses CacheableIdentifier for bufferedStructures. We make BufferedStructure class which holds Structure and CacheableIdentifier.
And StructureStubInfo holds HashSet<BufferedStructure>. We also visit CacheableIdentifier in StructureStubInfo::visitAggregate. To allow
concurrent collector to run this, we introduce m_bufferedStructuresLock in StructureStubInfo to guard m_bufferedStructures.
- bytecode/StructureStubInfo.cpp:
(JSC::StructureStubInfo::StructureStubInfo):
(JSC::StructureStubInfo::addAccessCase):
(JSC::StructureStubInfo::reset):
(JSC::StructureStubInfo::visitAggregate):
(JSC::StructureStubInfo::visitWeakReferences):
- bytecode/StructureStubInfo.h:
(JSC::StructureStubInfo::considerCaching):
(JSC::StructureStubInfo::getByIdSelfIdentifier):
(JSC::StructureStubInfo::cacheType const):
(JSC::StructureStubInfo::clearBufferedStructures):
(JSC::StructureStubInfo::BufferedStructure::BufferedStructure):
(JSC::StructureStubInfo::BufferedStructure::isHashTableDeletedValue const):
(JSC::StructureStubInfo::BufferedStructure::hash const):
(JSC::StructureStubInfo::BufferedStructure::operator==):
(JSC::StructureStubInfo::BufferedStructure::operator!=):
(JSC::StructureStubInfo::BufferedStructure::Hash::hash):
(JSC::StructureStubInfo::BufferedStructure::Hash::equal):
(JSC::StructureStubInfo::BufferedStructure::structure const):
(JSC::StructureStubInfo::BufferedStructure::byValId const):
- jit/JITOperations.cpp:
- runtime/CacheableIdentifier.h:
(JSC::CacheableIdentifier::hash const):
- 2:57 PM Changeset in webkit [258731] by
-
- 2 edits in trunk/Source/WebCore
URL needs to be isolatedCopied when cached in AXIsolatedObject.
https://bugs.webkit.org/show_bug.cgi?id=209298
Reviewed by Chris Fleizach.
AXIsolatedObject needs to isolatedCopy the URL property in order to use
it on the secondary thread.
- accessibility/isolatedtree/AXIsolatedObject.cpp:
(WebCore::AXIsolatedObject::initializeAttributeData):
- 2:41 PM Changeset in webkit [258730] by
-
- 4 edits in trunk/Source/WebInspectorUI
Web Inspector: AXI: disabled buttons shouldn't be focusable
https://bugs.webkit.org/show_bug.cgi?id=208283
<rdar://problem/59832150>
Reviewed by Devin Rousso.
Set tabIndex to "-1" when button becomes disabled.
- UserInterface/Views/ActivateButtonNavigationItem.js:
(WI.ActivateButtonNavigationItem):
- UserInterface/Views/ButtonNavigationItem.js:
_roleis defined in the parent class now.
(WI.ButtonNavigationItem):
(WI.ButtonNavigationItem.prototype.set enabled):
(WI.ButtonNavigationItem.prototype.get tabbable):
(WI.ButtonNavigationItem.prototype._updateTabIndex):
- UserInterface/Views/RadioButtonNavigationItem.js:
(WI.RadioButtonNavigationItem.prototype.get tabbable):
(WI.RadioButtonNavigationItem):
- 2:35 PM Changeset in webkit [258729] by
-
- 2 edits in trunk/Source/WebInspectorUI
Web Inspector: remove redundant code in TreeOutline.prototype.removeChildAtIndex
https://bugs.webkit.org/show_bug.cgi?id=209301
Reviewed by Joseph Pecoraro.
- UserInterface/Views/TreeOutline.js:
(WI.TreeOutline.prototype.removeChildAtIndex):
ChecksuppressSelectSiblingonce instead of three times.
- 2:18 PM Changeset in webkit [258728] by
-
- 11 edits in trunk
[Curl] Add an API returns description of verification errors.
https://bugs.webkit.org/show_bug.cgi?id=208913
Patch by Takashi Komori <Takashi.Komori@sony.com> on 2020-03-19
Reviewed by Fujii Hironori.
WKCertificateInfoCopyVerificationErrorDescription returns the description of SSL verification error as human readable string.
Browser can display more precise error information with this API.
API Test: Curl.CertificateAPI
Source/WebCore:
- platform/network/curl/CertificateInfo.h:
- platform/network/curl/CertificateInfoCurl.cpp:
(WebCore::CertificateInfo::verificationErrorDescription const):
Source/WebKit:
- Shared/API/c/curl/WKCertificateInfoCurl.cpp:
(WKCertificateInfoCopyVerificationErrorDescription):
- Shared/API/c/curl/WKCertificateInfoCurl.h:
Tools:
- MiniBrowser/win/Common.cpp:
(askServerTrustEvaluation):
- MiniBrowser/win/Common.h:
- MiniBrowser/win/WebKitBrowserWindow.cpp:
(createPEMString):
(WebKitBrowserWindow::canTrustServerCertificate):
- TestWebKitAPI/Tests/WebKit/curl/Certificates.cpp:
(TestWebKitAPI::Curl::TEST):
- 2:17 PM Changeset in webkit [258727] by
-
- 7 edits in trunk/LayoutTests
Update imported/w3c/web-platform-tests/css/css-text/line-break/line-break-{strict,normal}-015.xht
https://bugs.webkit.org/show_bug.cgi?id=209250
<rdar://problem/59957596>
Update them according to https://github.com/web-platform-tests/wpt/commit/7d24adef541b2e836f2b2f9534ce3f0e078f5782
Reviewed by Antti Koivisto.
- platform/ios/TestExpectations: Mark as failing on old OSes
- platform/mac/TestExpectations: Mark as failing on old OSes
- web-platform-tests/css/css-text/line-break/line-break-normal-015-expected.xht:
- web-platform-tests/css/css-text/line-break/line-break-normal-015.xht:
- web-platform-tests/css/css-text/line-break/line-break-strict-015-expected.xht:
- web-platform-tests/css/css-text/line-break/line-break-strict-015.xht:
- 2:13 PM Changeset in webkit [258726] by
-
- 5 edits in trunk
[iOS] Deny mach lookup access to power service
https://bugs.webkit.org/show_bug.cgi?id=208460
<rdar://problem/57026325>
Reviewed by Darin Adler.
Source/WebKit:
On iOS, deny mach lookup access to the power service in the WebContent process.
Test: fast/sandbox/ios/sandbox-mach-lookup.html
- Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:
LayoutTests:
- fast/sandbox/ios/sandbox-mach-lookup-expected.txt:
- fast/sandbox/ios/sandbox-mach-lookup.html:
- 2:03 PM Changeset in webkit [258725] by
-
- 2 edits in trunk/LayoutTests
[ iOS wk2 ] http/tests/workers/service/service-worker-cache-api.https.html is flaky timing out.
https://bugs.webkit.org/show_bug.cgi?id=209304
Unreviewed test gardening.
- platform/ios-wk2/TestExpectations:
- 1:21 PM Changeset in webkit [258724] by
-
- 1 edit in branches/safari-609-branch/Source/WebKit/UIProcess/WebPageProxy.cpp
Unreviewed build fix, rdar://problem/60633852
No member named 'counts' in 'WebKit::WebBackForwardList'
- 1:12 PM Changeset in webkit [258723] by
-
- 11 edits1 delete in branches/safari-609-branch/Source/WebKit
Revert r258722. rdar://problem/60633852
- 12:28 PM Changeset in webkit [258722] by
-
- 11 edits1 copy in branches/safari-609-branch/Source/WebKit
Cherry-pick r255135. rdar://problem/60633852
Frequent sync BackForwardBackListCount/BackForwardForwardListCount IPC on reddit.com
https://bugs.webkit.org/show_bug.cgi?id=206438
Reviewed by Darin Adler.
Frequent sync BackForwardBackListCount/BackForwardForwardListCount IPC on reddit.com. When scrolling on reddit.com,
you frequently see 2 consecutive sync IPCs (WebPageProxy::BackForwardBackListCount then WebPageProxy::BackForwardForwardListCount)
from the WebContent process to the UIProcess. Those are bad for performance. This happens every time the script on the page accesses
history.length, which is unfortunate, since this history length rarely changes.
To address the issue, the following changes were made:
- Merge BackForwardBackListCount / BackForwardForwardListCount IPCs into a single BackForwardListCounts IPC which returns both the back & forward counts, since we often need both (e.g. when accessing history.length) and since gettings those counts is very cheap compared to the cost of a sync IPC.
- Cache those counts in WebBackForwardListProxy and blow away the cached counts whenever the back/forward list changes. In the common case (where the back/forward list rarely changes), we now see a single sync IPC instead of many (verified on reddit.com).
No new tests, merely a performance improvement.
- UIProcess/WebPageProxy.cpp:
- UIProcess/WebPageProxy.h:
- UIProcess/WebPageProxy.messages.in:
- WebProcess/WebPage/WebBackForwardListProxy.cpp: (WebKit::WebBackForwardListProxy::addItemFromUIProcess): (WebKit::WebBackForwardListProxy::addItem): (WebKit::WebBackForwardListProxy::goToItem): (WebKit::WebBackForwardListProxy::backListCount const): (WebKit::WebBackForwardListProxy::forwardListCount const): (WebKit::WebBackForwardListProxy::cacheListCountsIfNecessary const): (WebKit::WebBackForwardListProxy::clearCachedListCounts): (WebKit::WebBackForwardListProxy::close): (WebKit::WebBackForwardListProxy::clear):
- WebProcess/WebPage/WebBackForwardListProxy.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@255135 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 12:16 PM Changeset in webkit [258721] by
-
- 15 edits in trunk/Source
Implement support for cursor interactions on iPad
https://bugs.webkit.org/show_bug.cgi?id=209268
Reviewed by Darin Adler.
No new tests in this patch, just upstreaming. Will attempt to enable
some macOS mouse event tests on iOS in the future, though.
- wtf/PlatformEnableCocoa.h:
Don't disable the contextmenu event on iOS anymore.
- wtf/PlatformHave.h:
Rename HAVE_HOVER_GESTURE_RECOGNIZER to HAVE_UIKIT_WITH_MOUSE_SUPPORT.
Add HAVE_UI_CURSOR_INTERACTION.
Enable HAVE_UI_PARALLAX_TRANSITION_GESTURE_RECOGNIZER on iOS.
- platform/RuntimeApplicationChecks.h:
- platform/cocoa/RuntimeApplicationChecksCocoa.mm:
(WebCore::IOSApplication::isNews):
(WebCore::IOSApplication::isStocks):
(WebCore::IOSApplication::isFeedly):
Add some bundle ID checks needed in WebKit.
- Platform/spi/ios/UIKitSPI.h:
- UIProcess/Cocoa/VersionChecks.h:
- UIProcess/ios/WKContentViewInteraction.h:
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView setupInteraction]):
(-[WKContentView cleanupInteraction]):
(-[WKContentView _removeDefaultGestureRecognizers]):
(-[WKContentView _addDefaultGestureRecognizers]):
(-[WKContentView gestureRecognizer:shouldReceiveTouch:]):
(-[WKContentView gestureRecognizer:shouldRecognizeSimultaneouslyWithGestureRecognizer:]):
(-[WKContentView _showShareSheet:inRect:completionHandler:]):
(-[WKContentView setupDragAndDropInteractions]):
(-[WKContentView shouldUseMouseGestureRecognizer]):
(-[WKContentView setupMouseGestureRecognizer]):
(-[WKContentView mouseGestureRecognizerChanged:]):
(-[WKContentView setupCursorInteraction]):
(-[WKContentView _cursorInteraction:regionForLocation:defaultRegion:completion:]):
(-[WKContentView cursorRegionForPositionInformation:point:]):
(-[WKContentView cursorInteraction:styleForRegion:modifiers:]):
(-[WKContentView _mouseGestureRecognizerChanged:]): Deleted.
- UIProcess/ios/WKMouseGestureRecognizer.h:
- UIProcess/ios/WKMouseGestureRecognizer.mm:
- WebProcess/WebCoreSupport/ios/WebChromeClientIOS.mm:
(WebKit::WebChromeClient::shouldUseMouseEventForSelection):
- 12:03 PM WebKitGTK/2.28.x edited by
- Propose r258710 (diff)
- 12:01 PM WebKitGTK/2.28.x edited by
- Propose r258717 and r258719 (diff)
- 11:43 AM Changeset in webkit [258720] by
-
- 2 edits in trunk/LayoutTests
Fix test expectation for fast/scrolling/mac/absolute-in-overflow-scroll-dynamic.html
https://bugs.webkit.org/show_bug.cgi?id=209052
unreviewed test gardening.
- platform/mac-wk2/TestExpectations:
- 11:41 AM Changeset in webkit [258719] by
-
- 2 edits in trunk/Source/JavaScriptCore
Unreviewed, build fix after r258717
https://bugs.webkit.org/show_bug.cgi?id=199295
- llint/LowLevelInterpreter.asm:
- 11:32 AM Changeset in webkit [258718] by
-
- 3 edits in trunk/LayoutTests
[ iOS wk2 and Mac Debug wk2 ] imported/w3c/web-platform-tests/service-workers/service-worker/respond-with-body-accessed-response.https.html is flaky failing.
https://bugs.webkit.org/show_bug.cgi?id=209295
Unreviewed test gardening.
- platform/ios-wk2/TestExpectations:
- platform/mac-wk2/TestExpectations:
- 11:28 AM Changeset in webkit [258717] by
-
- 2 edits in trunk/Source/JavaScriptCore
sanitizeStackForVMImpl writes below stack pointer, triggers huge warning spam from valgrind
https://bugs.webkit.org/show_bug.cgi?id=199295
Reviewed by Mark Lam.
During sanitizeStackForVMImpl, we should not access to the region beyond the stack-pointer.
This patch changes stack-pointer while sanitizeStackForVMImpl is zero-filling the old stack region.
- llint/LowLevelInterpreter.asm:
- 11:06 AM Changeset in webkit [258716] by
-
- 2 edits in trunk/LayoutTests
[ Mac wk2 ] tiled-drawing/scrolling/scroll-iframe-latched-selects.html is flaky failing.
https://bugs.webkit.org/show_bug.cgi?id=209283
Unreviewed test gardening.
- platform/mac-wk2/TestExpectations:
- 11:00 AM Changeset in webkit [258715] by
-
- 2 edits in branches/safari-609.2.1.2-branch/Source/JavaScriptCore
Cherry-pick r258062. rdar://problem/60396604
REGRESSION (r258038): Build failure on Windows 10 bots
<https://bugs.webkit.org/show_bug.cgi?id=208731>
<rdar://problem/59222568>
- assembler/testmasm.cpp: (JSC::testCompareDouble): (JSC::testCompareDoubleSameArg): (JSC::testMoveConditionallyFloatingPoint): (JSC::testMoveConditionallyFloatingPointSameArg):
- Add RELEASE_ASSERT_NOT_REACHED() statements to try to fix the bots.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@258062 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 11:00 AM Changeset in webkit [258714] by
-
- 3 edits in branches/safari-609.2.1.2-branch/Source/JavaScriptCore
Cherry-pick r258038. rdar://problem/60396604
Fix some issues in the ARM64 moveConditionallyAfterFloatingPointCompare() and moveDoubleConditionallyAfterFloatingPointCompare().
https://bugs.webkit.org/show_bug.cgi?id=208731
<rdar://problem/59222568>
Reviewed by Saam Barati.
Both the ARM64 moveConditionallyAfterFloatingPointCompare() and
moveDoubleConditionallyAfterFloatingPointCompare() had the following issues:
- For the DoubleNotEqual condition, they fail to set the result register if one or both of the comparison operands is a NaN.
- For the DoubleEqualOrUnordered condition, they can clobber the else case input register if one of the comparison operands is a NaN.
This patch fixes both of these, and exhaustive testmasm test cases for affected
MacroAssembler instruction emitters using these functions.
- assembler/MacroAssemblerARM64.h: (JSC::MacroAssemblerARM64::moveConditionallyAfterFloatingPointCompare): (JSC::MacroAssemblerARM64::moveDoubleConditionallyAfterFloatingPointCompare):
- assembler/testmasm.cpp: (JSC::testCompareDouble): (JSC::testCompareDoubleSameArg): (JSC::testMoveConditionallyFloatingPoint): (JSC::testMoveConditionallyDouble2): (JSC::testMoveConditionallyDouble3): (JSC::testMoveConditionallyDouble3DestSameAsThenCase): (JSC::testMoveConditionallyDouble3DestSameAsElseCase): (JSC::testMoveConditionallyFloat2): (JSC::testMoveConditionallyFloat3): (JSC::testMoveConditionallyFloat3DestSameAsThenCase): (JSC::testMoveConditionallyFloat3DestSameAsElseCase): (JSC::testMoveDoubleConditionallyDouble): (JSC::testMoveDoubleConditionallyDoubleDestSameAsThenCase): (JSC::testMoveDoubleConditionallyDoubleDestSameAsElseCase): (JSC::testMoveDoubleConditionallyFloat): (JSC::testMoveDoubleConditionallyFloatDestSameAsThenCase): (JSC::testMoveDoubleConditionallyFloatDestSameAsElseCase): (JSC::testMoveConditionallyFloatingPointSameArg): (JSC::testMoveConditionallyDouble2SameArg): (JSC::testMoveConditionallyDouble3SameArg): (JSC::testMoveConditionallyFloat2SameArg): (JSC::testMoveConditionallyFloat3SameArg): (JSC::testMoveDoubleConditionallyDoubleSameArg): (JSC::testMoveDoubleConditionallyFloatSameArg): (JSC::run):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@258038 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 10:59 AM Changeset in webkit [258713] by
-
- 2 edits in trunk/Source/WebKit
[iOS] Add telemetry for message filtering
https://bugs.webkit.org/show_bug.cgi?id=208925
<rdar://problem/58885485>
Reviewed by Darin Adler.
On iOS, add telemetry for message filtering in the WebContent process' sandbox.
No new tests, no behavior change.
- Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:
- 10:51 AM Changeset in webkit [258712] by
-
- 3 edits in trunk/Source/WebCore
AXIsolatedObject implementation of the title method.
https://bugs.webkit.org/show_bug.cgi?id=209291
Reviewed by Chris Fleizach.
- Implements AXIsolatedObgject::title.
- Modified implementation of AXIsolatedObject::titleAttributeValue to
use its appropriate key.
- accessibility/isolatedtree/AXIsolatedObject.cpp:
(WebCore::AXIsolatedObject::initializeAttributeData):
(WebCore::AXIsolatedObject::title const): Deleted.
- accessibility/isolatedtree/AXIsolatedObject.h:
- 10:45 AM Changeset in webkit [258711] by
-
- 3 edits2 adds in trunk
Source/WebCore:
AX: VO and safari: can't press the play button
https://bugs.webkit.org/show_bug.cgi?id=209249
Reviewed by Darin Adler.
Test: accessibility/ios-simulator/has-touch-event-listener-with-shadow.html
If a node is in a shadowRoot, going up the node parent tree will stop and not check the entire tree for touch event listeners
and a touch event won't be dispatched. We need to change to use the parentInComposedTree instead to go up the chain.
- accessibility/ios/AccessibilityObjectIOS.mm:
(WebCore::AccessibilityObject::hasTouchEventListener const):
LayoutTests:
AX: VO and safari: caan't press the play button
https://bugs.webkit.org/show_bug.cgi?id=209249
Reviewed by Darin Adler.
- accessibility/ios-simulator/has-touch-event-listener-with-shadow-expected.txt: Added.
- accessibility/ios-simulator/has-touch-event-listener-with-shadow.html: Added.
- 10:44 AM Changeset in webkit [258710] by
-
- 6 edits in trunk/JSTests
[JSC][BigEndians] Several JSC stress tests failing
https://bugs.webkit.org/show_bug.cgi?id=194007
Reviewed by Michael Catanzaro.
Adapt the DataView tests to be able to pass on little endian as well
as the big endian hardware. Do so by introducing method that determine
the endianess and based on its value it saves the expected results in
the right format.
- stress/dataview-get-cse.js:
(getIsLittleEndian):
(adjustForEndianess):
(test3.foo):
(test3):
- stress/dataview-jit-get.js:
(getIsLittleEndian):
(test1.adjustForEndianess):
(test1):
(test2.adjustForEndianess):
(test2):
(test3.adjustForEndianess):
(test3):
(adjustForEndianessUint32):
(test4):
(test5):
(test6):
(test7):
(test8):
- stress/dataview-jit-neuter.js:
(getIsLittleEndian):
(adjustForEndianess):
(test):
(test2):
- stress/dataview-jit-set-nan.js:
(getIsLittleEndian):
(adjustForEndianessFloat32):
(test):
- stress/dataview-jit-set.js:
(getIsLittleEndian):
(readHex):
(adjustForEndianessUint16):
(test):
(test2):
(adjustForEndianessUint32):
(test3):
(test4):
(adjustForEndianessFloat32):
(test5):
(adjustForEndianessFloat64):
(test6):
(isLittleEndian): Deleted.
- 10:44 AM Changeset in webkit [258709] by
-
- 3 edits in branches/safari-609-branch/Source/ThirdParty/libwebrtc
Cherry-pick r258690. rdar://problem/60633853
Cherry pick usrsctp commit 790a7a2555aefb392a5a69923f1e9d17b4968467
https://bugs.webkit.org/show_bug.cgi?id=209204
<rdar://problem/59362671>
Patch by Alex Christensen <achristensen@webkit.org> on 2020-03-19
Reviewed by Youenn Fablet.
- Source/third_party/usrsctp/usrsctplib/usrsctplib/netinet/sctp_auth.c:
- Source/third_party/usrsctp/usrsctplib/usrsctplib/netinet/sctp_pcb.c:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@258690 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 10:44 AM Changeset in webkit [258708] by
-
- 2 edits in branches/safari-609-branch/Source/WebKit
Apply patch. rdar://problem/60633852
- 10:23 AM Changeset in webkit [258707] by
-
- 4 edits in trunk/LayoutTests
Flaky Test: storage/indexeddb/cursor-leak.html and storage/indexeddb/cursor-leak-private.html
https://bugs.webkit.org/show_bug.cgi?id=209256
<rdar://problem/60097171>
Reviewed by Geoffrey Garen.
gc() does not guarantee all objects to be collected due to our conservative GC. To make the test more stable, we
now test if there is at lease one object is collected, which is enough to show cursor does not hold strong
reference to script value properties.
- storage/indexeddb/cursor-leak-expected.txt:
- storage/indexeddb/cursor-leak-private-expected.txt:
- storage/indexeddb/resources/cursor-leak.js:
(onOpen.tx.oncomplete):
(onOpen.cursorRequest.onsuccess): Deleted.
- 10:14 AM Changeset in webkit [258706] by
-
- 2 edits in trunk/Tools
Update build.webkit.org link for EWS
https://bugs.webkit.org/show_bug.cgi?id=209280
Reviewed by Alexey Proskuryakov.
- BuildSlaveSupport/build.webkit.org-config/templates/root.html:
- 10:07 AM Changeset in webkit [258705] by
-
- 2 edits in trunk/Tools
[WinCairo] extract-built-product fails after r258612
https://bugs.webkit.org/show_bug.cgi?id=209285
extractBuiltProduct also references the old name for the
requirements on wincairo.
Reviewed by Ross Kirsling.
- BuildSlaveSupport/built-product-archive:
- 10:02 AM Changeset in webkit [258704] by
-
- 2 edits in trunk/Source/WebCore
[WebAccessibilityObjectWrapper remoteAccessibilityParentObject] must run on the main thread.
https://bugs.webkit.org/show_bug.cgi?id=209284
Reviewed by Chris Fleizach.
- Dispatch [WebAccessibilityObjectWrapper remoteAccessibilityParentObject] to the main thread.
- [WebAccessibilityObjectWrapper windowElement:] must then call it outside the dispatched lambda.
- accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
(-[WebAccessibilityObjectWrapper remoteAccessibilityParentObject]):
(-[WebAccessibilityObjectWrapper windowElement:]):
- 9:49 AM Changeset in webkit [258703] by
-
- 3 edits in trunk/LayoutTests
[ iOS wk2 and Mac wk2 ] imported/w3c/web-platform-tests/fetch/stale-while-revalidate/frame-removal.html is flaky failing.
https://bugs.webkit.org/show_bug.cgi?id=209281
Unreviewed test gardening.
- platform/ios-wk2/TestExpectations:
- platform/mac-wk2/TestExpectations:
- 9:42 AM Changeset in webkit [258702] by
-
- 9 edits in trunk
[Web Animations] Mark promises as handled when rejected
https://bugs.webkit.org/show_bug.cgi?id=209240
<rdar://problem/60592305>
Patch by Antoine Quint <Antoine Quint> on 2020-03-19
Reviewed by Youenn Fablet.
LayoutTests/imported/w3c:
Add the new WPT tests added for this spec change (https://github.com/web-platform-tests/wpt/pull/22314) and revert some workarounds
made in our copy of WPT tests to previously silence flaky console output related to promise rejections (added in r258275 and r258276).
- web-platform-tests/web-animations/interfaces/Animation/finished-expected.txt:
- web-platform-tests/web-animations/interfaces/Animation/finished.html:
- web-platform-tests/web-animations/interfaces/Animation/ready-expected.txt:
- web-platform-tests/web-animations/interfaces/Animation/ready.html:
- web-platform-tests/web-animations/timing-model/animations/finishing-an-animation.html:
- web-platform-tests/web-animations/timing-model/animations/pausing-an-animation.html:
Source/WebCore:
Implementing the spec change discussed in https://github.com/w3c/csswg-drafts/issues/4556.
- animation/WebAnimation.cpp:
(WebCore::WebAnimation::cancel):
(WebCore::WebAnimation::resetPendingTasks):
- 9:03 AM Changeset in webkit [258701] by
-
- 16 edits in trunk/LayoutTests
Many tests relying on eventSender.monitorWheelEvents() are no longer flaky
https://bugs.webkit.org/show_bug.cgi?id=209272
Reviewed by Wenson Hsieh.
Remove tests from TestExpectations that were flakey because of bug 197819.
Fix some scroll-snap tests which were written before CSS OM View changes made document.body
not the scrolling element.
- platform/mac-wk2/TestExpectations:
- platform/mac/TestExpectations:
- tiled-drawing/scrolling/fast-scroll-div-latched-mainframe-with-handler-expected.txt:
- tiled-drawing/scrolling/fixed/four-bars-zoomed-expected.txt:
- tiled-drawing/scrolling/frames/frameset-frame-scrollability-expected.txt:
- tiled-drawing/scrolling/frames/frameset-nested-frame-scrollability-expected.txt:
- tiled-drawing/scrolling/scroll-snap/scroll-snap-iframe.html:
- tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-mainframe-horizontal.html:
- tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-mainframe-slow-horizontal.html:
- tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-mainframe-slow-vertical.html:
- tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-mainframe-vertical-then-horizontal.html:
- tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-mainframe-vertical.html:
- tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-overflow.html:
- tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-padding.html:
- tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-rotated.html:
- 8:34 AM Changeset in webkit [258700] by
-
- 6 edits in trunk/LayoutTests
Allow for some tolerance when checking canvas pixels in fast/mediastream tests
https://bugs.webkit.org/show_bug.cgi?id=209259
<rdar://problem/60609789>
Reviewed by Youenn Fablet.
- fast/mediastream/MediaStream-video-element-displays-buffer.html:
- fast/mediastream/MediaStream-video-element-video-tracks-disabled-then-enabled.html:
- fast/mediastream/media-stream-renders-first-frame.html:
- fast/mediastream/resize-trim.html:
- resources/platform-helper.js:
(checkPixelColorWithTolerance):
(isPixelBlack):
(isPixelTransparent):
(isPixelWhite):
(isPixelGray):
- 8:24 AM Changeset in webkit [258699] by
-
- 2 edits in trunk/Tools
[Flatpak SDK] Release logs not sent to journald when running within the SDK runtime
https://bugs.webkit.org/show_bug.cgi?id=209223
Reviewed by Carlos Alberto Lopez Perez.
flatpak build doesn't expose a --socket option for white-listing
the systemd journal socket. So white-list everything in /run. 🤷
- flatpak/flatpakutils.py:
(WebkitFlatpak.run_in_sandbox):
- 8:17 AM Changeset in webkit [258698] by
-
- 38 edits in trunk
Fix many warnings with Clang 7.0 on GTK x86-64 in Debug.
https://bugs.webkit.org/show_bug.cgi?id=209146
Reviewed by Darin Adler.
Source/JavaScriptCore:
- runtime/JSCellInlines.h:
(JSC::CallFrame::deprecatedVM const): A reference may not be NULL, so
this ASSERT() can never trip.
Source/WebCore:
Warning fixes, no new tests.
- Modules/encryptedmedia/MediaKeys.cpp:
(WebCore::MediaKeys::MediaKeys):
- Modules/webaudio/MediaStreamAudioSource.h: The m_numberOfFrames ivar
is platform-specific.
- loader/cache/CachedResource.cpp:
(WebCore::CachedResource::load):
- platform/graphics/texmap/TextureMapperGL.cpp:
(WebCore::TextureMapperGLData::getStaticVBO):
- platform/mediastream/RealtimeVideoSource.h:
- platform/mediastream/gstreamer/GStreamerAudioCapturer.h: There are
still virtual methods in this class, but no virtual destructor. Since
this won't be subclassed further (I doubt, anyway!) lets make it final
and plug the bug.
- platform/mediastream/gstreamer/GStreamerVideoCaptureSource.cpp:
- platform/mediastream/gstreamer/GStreamerVideoCapturer.h: See
AudioCapturer.
- platform/mediastream/libwebrtc/GStreamerVideoDecoderFactory.cpp:
(WebCore::GStreamerVideoDecoder::RegisterDecodeCompleteCallback): Deleted.
(WebCore::GStreamerVideoDecoder::ImplementationName const): Deleted.
- platform/mediastream/libwebrtc/GStreamerVideoEncoder.cpp:
- platform/mediastream/libwebrtc/GStreamerVideoEncoderFactory.cpp: The
encoder was being used uninitialized, and hence codec support can not
be working as intended. Fix that bug.
(WebCore::GStreamerVideoEncoder::AddCodecIfSupported):
(WebCore::GStreamerVideoEncoder::InitEncode): Deleted.
(WebCore::GStreamerVideoEncoder::GetEncoderInfo const): Deleted.
- platform/mediastream/libwebrtc/GStreamerVideoEncoderFactory.h:
- platform/network/soup/NetworkStorageSessionSoup.cpp:
(WebCore::NetworkStorageSession::setCookies):
- rendering/RenderLayerBacking.h: Condition the bear trap on Cocoa
platform where the crash is being seen. On GTK these traps generate
warning spam and we don't see the crash here.
- rendering/RenderThemeAdwaita.h:
- testing/Internals.cpp:
(WebCore::Internals::readPreferenceInteger):
(WebCore::Internals::encodedPreferenceValue):
(WebCore::Internals::getUTIFromMIMEType):
(WebCore::Internals::getUTIFromTag):
Source/WebDriver:
- Session.cpp:
(WebDriver::Session::newWindow):
(WebDriver::Session::elementIsFileUpload):
(WebDriver::Session::elementIsEditable):
(WebDriver::Session::setInputFileUploadFiles):
Source/WebKit:
- NetworkProcess/NetworkHTTPSUpgradeChecker.cpp:
(WebKit::NetworkHTTPSUpgradeChecker::query):
- NetworkProcess/NetworkLoadChecker.cpp: The m_isHTTPSUpgradeEnabled
ivar is only used on Cocoa platforms, on GTK it is causing warning
spam.
(WebKit::NetworkLoadChecker::NetworkLoadChecker):
- NetworkProcess/NetworkLoadChecker.h:
- Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp:
(WebKit::CoordinatedGraphicsScene::updateSceneState):
*
Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp:
m_inForceRepaint is not being used anymore.
(WebKit::ThreadedCompositor::forceRepaint):
- Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h:
- UIProcess/API/glib/WebKitNavigationClient.cpp:
- UIProcess/API/gtk/WebKitRemoteInspectorProtocolHandler.cpp:
(WebKit::RemoteInspectorProtocolHandler::RemoteInspectorProtocolHandler):
- UIProcess/API/gtk/WebKitRemoteInspectorProtocolHandler.h:
Source/WTF:
- wtf/LoggerHelper.h: When the RELEASE_LOG is disabled, avoid warning
spam about unused channel names. Call sites often create locals for
the channel name outside of RELEASE_LOG ifdef's, which cause many
unused variable warnings.
Tools:
- TestWebKitAPI/Tests/WebCore/TransformationMatrix.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebKitGLib/TestAutomationSession.cpp:
- TestWebKitAPI/Tests/WebKitGLib/TestDownloads.cpp:
(testDownloadMIMEType):
(testContextMenuDownloadActions):
- TestWebKitAPI/Tests/WebKitGtk/TestPrinting.cpp:
- 8:17 AM WPE edited by
- (diff)
- 8:16 AM BuildingGtk edited by
- (diff)
- 8:12 AM WPE edited by
- (diff)
- 7:11 AM Changeset in webkit [258697] by
-
- 6 edits in trunk
onwebkit{animation, transition}XX handlers missing from Document
https://bugs.webkit.org/show_bug.cgi?id=206170
<rdar://problem/58596373>
Patch by Antoine Quint <Antoine Quint> on 2020-03-19
Reviewed by Youenn Fablet.
Source/WebCore:
We now specify the non-standard CSS Animations and CSS Transitions event handlers on DocumentAndElementEventHandlers.idl rather than Element.idl
such that they specified on both Element and Document.
- dom/DocumentAndElementEventHandlers.idl:
- dom/Element.idl:
LayoutTests:
- fast/dom/event-handler-attributes-expected.txt:
- fast/dom/event-handler-attributes.html:
- 7:05 AM Changeset in webkit [258696] by
-
- 2 edits in trunk/Source/WebCore
[GTK][WPE] Media controls numeric position value is not automatically updated during playback
https://bugs.webkit.org/show_bug.cgi?id=209051
Reviewed by Philippe Normand.
The time label is not updated because updateTime() thinks the media controls are hidden when not hovered, but
for audio elements the controls are always visible.
- Modules/mediacontrols/mediaControlsAdwaita.js:
(Controller.prototype.controlsAreAlwaysVisible): Return true for audio elements.
- 7:03 AM Changeset in webkit [258695] by
-
- 2 edits in trunk/Tools
[GTK][WPE] REGRESSION(r258626): flatpak is used even when WEBKIT_JHBUILD is set
https://bugs.webkit.org/show_bug.cgi?id=209278
Reviewed by Philippe Normand.
This happens when using an external jhbuild, because shouldUseFlatpak() assumes that no command prefix always
means flatpak.
- Scripts/webkitdirs.pm:
(shouldUseFlatpak): Return early if WEBKIT_JHBUILD is set.
- 6:27 AM Changeset in webkit [258694] by
-
- 2 edits in trunk/Tools
[CMake] cache not cleared when build-webkit options change
https://bugs.webkit.org/show_bug.cgi?id=209277
Patch by Philippe Normand <pnormand@igalia.com> on 2020-03-19
Reviewed by Adrian Perez de Castro.
- Scripts/webkitdirs.pm:
(shouldRemoveCMakeCache): The expected function signature never
included the cache file path. Remove it.
- 5:06 AM Changeset in webkit [258693] by
-
- 6 edits in trunk
[GTK] media/track/track-automatic-subtitles.html is timing out
https://bugs.webkit.org/show_bug.cgi?id=116957
Reviewed by Adrian Perez de Castro.
Source/WebCore:
Moved CaptionUserPreferencesMediaAF::textTrackSelectionScore() implementation
to the CaptionUserPreferencesMedia superclass.
Tested by existing test.
- page/CaptionUserPreferences.cpp:
(WebCore::CaptionUserPreferences::textTrackSelectionScore const):
- page/CaptionUserPreferencesMediaAF.cpp:
- page/CaptionUserPreferencesMediaAF.h:
LayoutTests:
Removed test from expectations.
- platform/gtk/TestExpectations:
- 4:39 AM Changeset in webkit [258692] by
-
- 3 edits in trunk/LayoutTests
[GTK][WPE] Gardening, update TestExpectations
https://bugs.webkit.org/show_bug.cgi?id=209276
Unreviewed gardening.
Gardening of several WPT's css-writing-modes tests that were added for
the first time in r258661.
- platform/gtk/TestExpectations:
- platform/wpe/TestExpectations:
- 3:26 AM Changeset in webkit [258691] by
-
- 6 edits in trunk/Source
[GTK][WPE] Unreviewed, build fixes after r258547 when disabling release logging support
Source/WebCore:
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::MediaPlayerPrivateGStreamer):
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
- platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.h:
Source/WTF:
- wtf/Logger.h:
(WTF::Logger::logAlwaysVerbose const):
- 3:15 AM Changeset in webkit [258690] by
-
- 3 edits in trunk/Source/ThirdParty/libwebrtc
Cherry pick usrsctp commit 790a7a2555aefb392a5a69923f1e9d17b4968467
https://bugs.webkit.org/show_bug.cgi?id=209204
<rdar://problem/59362671>
Patch by Alex Christensen <achristensen@webkit.org> on 2020-03-19
Reviewed by Youenn Fablet.
- Source/third_party/usrsctp/usrsctplib/usrsctplib/netinet/sctp_auth.c:
- Source/third_party/usrsctp/usrsctplib/usrsctplib/netinet/sctp_pcb.c:
- 2:50 AM Changeset in webkit [258689] by
-
- 2 edits in trunk/Tools
REGRESSION(r258626): webkit-dirs warning
https://bugs.webkit.org/show_bug.cgi?id=209221
Reviewed by Adrian Perez de Castro.
- Scripts/webkitdirs.pm:
(buildCMakeProjectOrExit): Fix Perl Warning. 😎
- 2:12 AM Changeset in webkit [258688] by
-
- 1 edit2 deletes in trunk/LayoutTests
Unreviewed test gardening.
These two platform-specific expectations are no longer necessary since we silenced the console output for these tests (see bugs 192974 and 194309).
- platform/ios/media/modern-media-controls/compact-media-controls/compact-media-controls-constructor-expected.txt: Removed.
- platform/ios/media/modern-media-controls/compact-media-controls/compact-media-controls-layout-expected.txt: Removed.
- 2:02 AM Changeset in webkit [258687] by
-
- 2 edits in trunk/Tools
Add Chris Lord (Chris Lord) to the list of contributors
https://bugs.webkit.org/show_bug.cgi?id=209274
Unreviewed
- Scripts/webkitpy/common/config/contributors.json:
- 1:57 AM Changeset in webkit [258686] by
-
- 1 edit1 delete in trunk/LayoutTests
Delete accidentally committed file.
https://bugs.webkit.org/show_bug.cgi?id=209178
Unreviewed.
Patch by Frederic Wang <fwang@igalia.com> on 2020-03-19
- TestExpectations.orig: Removed.
- 1:29 AM Changeset in webkit [258685] by
-
- 30 edits in trunk/Source
Make URL::path() return a StringView
https://bugs.webkit.org/show_bug.cgi?id=209173
Reviewed by Alex Christensen.
Source/WebCore:
Update code according new path return type.
- Modules/plugins/YouTubePluginReplacement.cpp:
(WebCore::processAndCreateYouTubeURL):
(WebCore::YouTubePluginReplacement::youTubeURLFromAbsoluteURL):
- html/Autofill.cpp:
(WebCore::AutofillData::createFromHTMLFormControlElement):
- html/URLUtils.h:
(WebCore::URLUtils<T>::pathname const):
- loader/FormSubmission.cpp:
(WebCore::appendMailtoPostFormDataToURL):
- loader/appcache/ManifestParser.cpp:
(WebCore::manifestPath):
- page/Location.cpp:
(WebCore::Location::pathname const):
- page/UserContentURLPattern.cpp:
(WebCore::MatchTester::MatchTester):
(WebCore::UserContentURLPattern::matchesPath const):
- page/csp/ContentSecurityPolicySource.cpp:
(WebCore::ContentSecurityPolicySource::pathMatches const):
- platform/network/curl/CookieJarDB.cpp:
(WebCore::CookieJarDB::searchCookies):
(WebCore::CookieJarDB::deleteCookie):
- platform/network/curl/CookieUtil.cpp:
(WebCore::CookieUtil::defaultPathForURL):
- platform/network/curl/CurlRequest.cpp:
(WebCore::CurlRequest::invokeDidReceiveResponseForFile):
- platform/text/TextEncoding.cpp:
(WebCore::decodeURLEscapeSequences):
- platform/text/TextEncoding.h:
- workers/WorkerLocation.cpp:
(WebCore::WorkerLocation::pathname const):
- workers/service/ServiceWorkerContainer.cpp:
(WebCore::ServiceWorkerContainer::addRegistration):
- workers/service/ServiceWorkerJob.cpp:
(WebCore::ServiceWorkerJob::validateServiceWorkerResponse):
- workers/service/server/RegistrationDatabase.cpp:
(WebCore::RegistrationDatabase::doPushChanges):
Source/WebKit:
Update code according new path return type.
- NetworkProcess/soup/NetworkDataTaskSoup.cpp:
(WebKit::NetworkDataTaskSoup::didSendRequest):
- Shared/API/APIURL.h:
(API::URL::path const):
- UIProcess/API/glib/WebKitURISchemeRequest.cpp:
(webkitURISchemeRequestReadCallback):
- WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::objectContentType):
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::createPlugin):
Source/WebKitLegacy/mac:
- Misc/WebNSURLExtras.mm:
(-[NSString _webkit_stringByReplacingValidPercentEscapes]):
Source/WTF:
- wtf/URL.cpp:
(WTF::URL::path const):
- wtf/URL.h:
- wtf/text/StringView.h:
(WTF::startsWithLettersIgnoringASCIICase):
Add an overload for StringView.
- 1:14 AM Changeset in webkit [258684] by
-
- 5 edits in trunk/Source
Correctly set up context for Data Detectors
https://bugs.webkit.org/show_bug.cgi?id=209258
Source/WebCore/PAL:
Reviewed by Tim Horton.
- pal/spi/ios/DataDetectorsUISPI.h:
Source/WebKit:
<rdar://problem/60612327>
Reviewed by Tim Horton.
Stop passing in a nil context. This is OK now, but won't be in the near future.
Also, call -updateContext:withSourceRect: so that DataDetectors can populate the context appropriately.
- UIProcess/ios/WKActionSheetAssistant.mm:
(-[WKActionSheetAssistant contextMenuInteraction:configurationForMenuAtLocation:]):
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView dataDetectionContextForPositionInformation:]):
- 12:04 AM Changeset in webkit [258683] by
-
- 2 edits in trunk/Tools
Remove commit queue bubble from bot watchers dashboard
https://bugs.webkit.org/show_bug.cgi?id=209271
Reviewed by Alexey Proskuryakov.
Remove commit queue bubble from bot watchers dashboard now that it has moved to the new EWS.
- BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
(BubbleQueueServer):