Timeline
May 7, 2020:
- 10:48 PM Changeset in webkit [261368] by
-
- 5 edits4 adds in trunk
MayBegin wheel event in a <select> doesn't flash the scrollers
https://bugs.webkit.org/show_bug.cgi?id=211605
Reviewed by Antti Koivisto.
Source/WebCore:
We need to special-case scrollable <select> elements, because they are ScrollableAreas
which are never asynchronously scrolled, so the ScrollingTree never dispatches the handleWheelEventPhase()
which is necessary to flash overlay scrollbars. Scrollable <select> elements are always in the
non-fast scrollable region.
Fix findEnclosingScrollableContainer() to return a ScrollableArea for the "maybegin" and "canceled" events
that have no delta.
Remove some "inline" and make some things references.
Tests: fast/scrolling/mac/scrollbars/select-overlay-scrollbar-hovered.html
fast/scrolling/mac/scrollbars/select-overlay-scrollbar-reveal.html
- page/EventHandler.cpp:
(WebCore::handleWheelEventPhaseInScrollableArea):
(WebCore::didScrollInScrollableArea):
(WebCore::handleWheelEventInAppropriateEnclosingBox):
(WebCore::shouldGesturesTriggerActive):
(WebCore::EventHandler::eventLoopHandleMouseUp):
(WebCore::EventHandler::eventLoopHandleMouseDragged):
- page/mac/EventHandlerMac.mm:
(WebCore::findEnclosingScrollableContainer):
(WebCore::EventHandler::determineWheelEventTarget):
- testing/Internals.cpp:
(WebCore::Internals::scrollableAreaForNode): Fix to find the ScrollableArea for RenderListBoxes.
LayoutTests:
- fast/scrolling/mac/scrollbars/select-overlay-scrollbar-hovered-expected.txt: Added.
- fast/scrolling/mac/scrollbars/select-overlay-scrollbar-hovered.html: Added.
- fast/scrolling/mac/scrollbars/select-overlay-scrollbar-reveal-expected.txt: Added.
- fast/scrolling/mac/scrollbars/select-overlay-scrollbar-reveal.html: Added.
- 9:23 PM Changeset in webkit [261367] by
-
- 2 edits in trunk/LayoutTests
[GTK] Gardening two poster tests and a webgl failure
Unreviewed test gardening.
- platform/gtk/TestExpectations:
- 7:33 PM Changeset in webkit [261366] by
-
- 7 edits1 add in trunk
[WebAuthn] Roll back newly created credentials if an error occurs
https://bugs.webkit.org/show_bug.cgi?id=183530
<rdar://problem/43357305>
Reviewed by Brent Fulgham.
Source/WebKit:
We should clean up any newly created credentials if an error occurs before the relying party
registers the identity. Otherwise we are left with a dangling credential.
Covered by API tests.
- UIProcess/WebAuthentication/Cocoa/LocalAuthenticator.h:
- UIProcess/WebAuthentication/Cocoa/LocalAuthenticator.mm:
(WebKit::LocalAuthenticator::continueMakeCredentialAfterUserVerification):
(WebKit::LocalAuthenticator::continueGetAssertionAfterUserVerification):
(WebKit::LocalAuthenticator::receiveException const):
Tools:
- TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
- TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebKitCocoa/web-authentication-make-credential-la-no-attestation.html: Added.
- TestWebKitAPI/Tests/WebKitCocoa/web-authentication-make-credential-la.html:
- 7:22 PM Changeset in webkit [261365] by
-
- 2 edits in trunk/Tools
run-javascriptcore-tests with remote should be verbose
https://bugs.webkit.org/show_bug.cgi?id=211596
Reviewed by Alexey Proskuryakov.
Our iOS testing bots could use this better output.
- Scripts/run-javascriptcore-tests:
(runJSCStressTests):
- 7:14 PM Changeset in webkit [261364] by
-
- 11 edits in trunk/Source
Unreviewed, reverting r261252.
Reland r260684 now that a proper fix has landed in Reader
Reverted changeset:
"REGRESSION (r260684): Reader background is lost after
multitasking"
https://bugs.webkit.org/show_bug.cgi?id=211533
https://trac.webkit.org/changeset/261252
- 6:54 PM Changeset in webkit [261363] by
-
- 6 edits2 adds in trunk
SIGILL @ WebCore::Shape::createRasterShape -- DOS ASAN
https://bugs.webkit.org/show_bug.cgi?id=211539
Patch by Pinki Gyanchandani <pgyanchandani@apple.com> on 2020-05-07
Reviewed by Geoffrey Garen.
Source/WebCore:
Removed the RELEASE_ASSERT because its possible for imageData to be null when imageRect size is huge value.
Test: fast/shapes/shape-outside-floats/shape-outside-imagedata-overflow.html
- rendering/shapes/Shape.cpp:
(WebCore::Shape::createRasterShape):
LayoutTests:
Added a regression test and enabled it only for WK1.
- TestExpectations:
- fast/shapes/shape-outside-floats/shape-outside-imagedata-overflow-expected.txt: Added.
- fast/shapes/shape-outside-floats/shape-outside-imagedata-overflow.html: Added.
- platform/ios-wk1/TestExpectations:
- platform/mac-wk1/TestExpectations:
- 6:04 PM Changeset in webkit [261362] by
-
- 2 edits in trunk/Source/WebInspectorUI
Web Inspector: Timelines: visible outline after clicking the close X button
https://bugs.webkit.org/show_bug.cgi?id=211604
<rdar://problem/62998871>
Reviewed by Timothy Hatcher.
Never display focus outline for TreeOutline items.
- UserInterface/Views/TreeOutline.css:
(.tree-outline .item):
(body:not(.window-inactive, .window-docked-inactive) .tree-outline:focus-within .item.selected):
- 5:39 PM Changeset in webkit [261361] by
-
- 2 edits in trunk/Source/WebKit
Build Fix for MacCatalyst
https://bugs.webkit.org/show_bug.cgi?id=211601
Reviewed by Tim Horton.
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView _removeContextMenuViewIfPossible]):
- 4:54 PM Changeset in webkit [261360] by
-
- 2 edits in trunk/Source/WebKit
Crash under WebKit::XPCServiceMain
https://bugs.webkit.org/show_bug.cgi?id=211600
<rdar://problem/62875458>
Reviewed by Darin Adler.
Made the following changes:
- Crash under strcmp() could in theory happen if expectedBundleVersion.UTF8String was null, which could happen if expectedBundleVersion was null. I now use higher level String types for the versions, make sure they are not null and use String comparison to compare them.
- Call CRASH() instead of builtin_trap(), to guarantee that we crash with a SIGTRAP (see comment next to CRASH() macro).
- Move CRASH() call to a crashDueWebKitFrameworkVersionMismatch() never inlined function to make it clear when it crashes due to a framework version mismatch and distinguish from proper crashes.
- Shared/EntryPointUtilities/Cocoa/XPCService/XPCServiceMain.mm:
(WebKit::crashDueWebKitFrameworkVersionMismatch):
(WebKit::XPCServiceMain):
- 4:52 PM Changeset in webkit [261359] by
-
- 12 edits8 deletes in branches/safari-610.1.12-branch
Revert r261056. rdar://problem/62937746
- 4:52 PM Changeset in webkit [261358] by
-
- 539 edits19 adds160 deletes in branches/safari-610.1.12-branch/Source/ThirdParty/ANGLE
Cherry-pick r261262. rdar://problem/62998321
Update ANGLE to 2020-03-27
https://bugs.webkit.org/show_bug.cgi?id=209689
Reverting r259589. It caused
https://bugs.webkit.org/show_bug.cgi?id=210992
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@261262 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 4:50 PM Changeset in webkit [261357] by
-
- 2 edits in branches/safari-610.1.12-branch/Source/WebKit
Revert r260390. rdar://problem/62998314
- 4:50 PM Changeset in webkit [261356] by
-
- 2 edits in branches/safari-610.1.12-branch/Source/WebInspectorUI
Cherry-pick r261183. rdar://problem/62995520
Web Inspector: Uncaught Exception: undefined is not an object (evaluating 'this.InspectorAgent.initialized')
https://bugs.webkit.org/show_bug.cgi?id=211434
Reviewed by Joseph Pecoraro.
- UserInterface/Protocol/Target.js:
(WI.Target.prototype.initialize):
Workertargets don't (and are not expected to) have anInspectordomain.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@261183 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 4:50 PM Changeset in webkit [261355] by
-
- 22 edits2 deletes in branches/safari-610.1.12-branch/Source/WebInspectorUI
Cherry-pick r261108. rdar://problem/62995520
Web Inspector: drop support for iOS 8.*
https://bugs.webkit.org/show_bug.cgi?id=211312
Reviewed by Daniel Bates.
- UserInterface/Controllers/DOMManager.js: (WI.DOMManager.prototype.highlightSelector):
- UserInterface/Controllers/NetworkManager.js: (WI.NetworkManager.prototype.resourceRequestWillBeSent):
- UserInterface/Controllers/RuntimeManager.js: (WI.RuntimeManager.prototype.initializeTarget): (WI.RuntimeManager.prototype.evaluateInInspectedWindow):
- UserInterface/Controllers/TimelineManager.js: (WI.TimelineManager.defaultTimelineTypes): (WI.TimelineManager.prototype._loadNewRecording):
- UserInterface/Models/DOMNodeStyles.js: (WI.DOMNodeStyles.parseSelectorListPayload):
- UserInterface/Models/FPSInstrument.js: (WI.FPSInstrument): Deleted. (WI.FPSInstrument.supported): Deleted.
- UserInterface/Models/ObjectPreview.js: (WI.ObjectPreview.fromPayload):
- UserInterface/Models/ProfileNode.js: (WI.ProfileNode): (WI.ProfileNode.prototype.get startTime): (WI.ProfileNode.prototype.get endTime): (WI.ProfileNode.prototype.computeCallInfoForTimeRange): (WI.ProfileNode.prototype.get calls): Deleted. (WI.ProfileNode.prototype.computeCallInfoForTimeRange.totalTimeInRange): Deleted.
- UserInterface/Models/Resource.js: (WI.Resource.prototype.get initiatedResources): (WI.Resource.prototype.get originalRequestWillBeSentTimestamp): Deleted.
- UserInterface/Models/ResourceTimingData.js: (WI.ResourceTimingData.fromPayload):
- UserInterface/Models/ScriptTimelineRecord.js: (WI.ScriptTimelineRecord.prototype._initializeProfileFromPayload.profileNodeFromPayload):
- UserInterface/Models/TimelineRecording.js: (WI.TimelineRecording): (WI.TimelineRecording.prototype.computeElapsedTime): (WI.TimelineRecording.prototype.setLegacyBaseTimestamp): Deleted.
- UserInterface/Protocol/Legacy/8.0/InspectorBackendCommands.js: Removed.
- UserInterface/Protocol/RemoteObject.js: (WI.RemoteObject.fromPayload): (WI.RemoteObject.prototype.getDisplayablePropertyDescriptors):
- UserInterface/Protocol/Target.js: (WI.Target.prototype.initialize):
- UserInterface/Views/ObjectTreePropertyTreeElement.js: (WI.ObjectTreePropertyTreeElement.prototype._updateProperties): (WI.ObjectTreePropertyTreeElement):
- UserInterface/Views/ObjectTreeView.js: (WI.ObjectTreeView.prototype._updateProperties):
- UserInterface/Views/ScriptTimelineDataGridNode.js: (WI.ScriptTimelineDataGridNode.prototype.get data):
- UserInterface/Views/SourceCodeTextEditor.js: (WI.SourceCodeTextEditor.prototype._createTypeTokenAnnotator): (WI.SourceCodeTextEditor.prototype._createBasicBlockAnnotator):
- UserInterface/Views/SourcesNavigationSidebarPanel.js: (WI.SourcesNavigationSidebarPanel.prototype._updatePauseReasonSection):
- UserInterface/Views/TimelineOverview.js: (WI.TimelineOverview):
- UserInterface/Views/TimelineTabContentView.js: (WI.TimelineTabContentView): (WI.TimelineTabContentView.prototype.closed): (WI.TimelineTabContentView.prototype.restoreFromCookie):
- Versions/Inspector-iOS-8.0.json: Removed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@261108 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 4:50 PM Changeset in webkit [261354] by
-
- 13 edits1 add in branches/safari-610.1.12-branch
Cherry-pick r261296. rdar://problem/62995467
Unreviewed, reverting r260769.
https://bugs.webkit.org/show_bug.cgi?id=211578
Introduced regressions related to sharing (Requested by
perarne on #webkit).
Reverted changeset:
"[Cocoa] After r258891, r255119 can be reverted"
https://bugs.webkit.org/show_bug.cgi?id=211083
https://trac.webkit.org/changeset/260769
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@261296 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 4:50 PM Changeset in webkit [261353] by
-
- 2 edits in branches/safari-610.1.12-branch/Source/WebKit
Cherry-pick r261263. rdar://problem/62995496
Unreviewed, reverting r260689.
https://bugs.webkit.org/show_bug.cgi?id=211542
"Caused regressions deleting text and filling password fields"
(Requested by ddkilzer on #webkit).
Reverted changeset:
"WebPasteboardProxy::getPasteboardStringsForType() and
WebPasteboardProxy::readURLFromPasteboard() should check
return value of SharedMemory::createHandle()"
https://bugs.webkit.org/show_bug.cgi?id=211002
https://trac.webkit.org/changeset/260689
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@261263 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 4:50 PM Changeset in webkit [261352] by
-
- 11 edits in branches/safari-610.1.12-branch/Source
Cherry-pick r261252. rdar://problem/62995461
REGRESSION (r260684): Reader background is lost after multitasking
https://bugs.webkit.org/show_bug.cgi?id=211533
<rdar://problem/62941837>
Unreviewed, revert r260684 due to regression.
Source/WebCore:
- dom/EventTarget.cpp: (WebCore::EventTarget::fireEventListeners):
- page/FrameView.cpp: (WebCore::FrameView::sendResizeEventIfNeeded):
- page/Page.h: (WebCore::Page::shouldFireResizeEvents const): (WebCore::Page::setShouldFireResizeEvents):
Source/WebKit:
- UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::setShouldFireResizeEvents):
- UIProcess/WebPageProxy.h:
- UIProcess/ios/WKApplicationStateTrackingView.mm: (-[WKApplicationStateTrackingView _willBeginSnapshotSequence]): (-[WKApplicationStateTrackingView _didCompleteSnapshotSequence]):
- WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::setShouldFireResizeEvents):
- WebProcess/WebPage/WebPage.h:
- WebProcess/WebPage/WebPage.messages.in:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@261252 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 4:50 PM Changeset in webkit [261351] by
-
- 2 edits in branches/safari-610.1.12-branch/Source/WebCore
Cherry-pick r261245. rdar://problem/62995531
REGRESSION (r260753): Frequent crashes under TextIndicator's estimatedTextColorsForRange
https://bugs.webkit.org/show_bug.cgi?id=211523
<rdar://problem/62860203>
Reviewed by Darin Adler.
- page/TextIndicator.cpp: (WebCore::estimatedTextColorsForRange): TextIterator's node() getter can return null. r260753 accidentally refactored away the null check.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@261245 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 4:50 PM Changeset in webkit [261350] by
-
- 13 edits4 adds in branches/safari-610.1.12-branch
Cherry-pick r261147. rdar://problem/62995512
[JSC] DFG NotCellUse is used without considering about BigInt32
https://bugs.webkit.org/show_bug.cgi?id=211395
Reviewed by Saam Barati.
JSTests:
- stress/non-cell-nor-bigint-should-be-emitted-for-to-number-target-if-bigint-appears.js: Added. (shouldThrow): (test): (i.shouldThrow):
- stress/non-cell-nor-bigint-should-reject-bigint.js: Added. (shouldBe): (test):
- stress/should-not-emit-double-rep-for-bigint.js: Added. (foo):
- stress/urshift-value-to-int32-should-reject-bigint.js: Added. (shouldThrow): (test): (i.shouldThrow):
Source/JavaScriptCore:
When we see CompareXXX(BigInt32, Double), we are emitting CompareXXX(DoubleRep(BigInt:NotCellUse), Double). But this has two problems.
- We should emit CompareXXX(UntypedUse, UntypedUse) in this case.
- DoubleRep(NotCellUse) does not support converting BigInt32 to double. Since DoubleRep's semantics is for ToNumber, it should not accept BigInt32 since it should throw an error. However, DoubleRep currently assumes that NotCellUse value can be converted to double without any errors.
To keep DoubleRep's semantics ToNumber, we replace NotCellUse with NotCellNorBigIntUse, which rejects BigInt32. This patch also uses NotCellNorBigIntUse
for ValueToInt32 because of the same reason.
For CompareXXX and CompareEq nodes, we can optimize it if we introduce new DoubleRepAcceptingBigInt32 DFG node which can convert BigInt32 to Double, since
CompareXXX and CompareEq are not requiring toNumber semantics. This should be done in a separate bug https://bugs.webkit.org/show_bug.cgi?id=211407.
- bytecode/SpeculatedType.h: (JSC::isNotCellNorBigIntSpeculation):
- dfg/DFGAbstractInterpreterInlines.h: (JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
- dfg/DFGFixupPhase.cpp: (JSC::DFG::FixupPhase::fixupNode): (JSC::DFG::FixupPhase::fixIntConvertingEdge): (JSC::DFG::FixupPhase::fixupChecksInBlock):
- dfg/DFGNode.h: (JSC::DFG::Node::shouldSpeculateNotCellNorBigInt):
- dfg/DFGSafeToExecute.h: (JSC::DFG::SafeToExecuteEdge::operator()):
- dfg/DFGSpeculativeJIT.cpp: (JSC::DFG::SpeculativeJIT::compileValueToInt32): (JSC::DFG::SpeculativeJIT::compileDoubleRep): (JSC::DFG::SpeculativeJIT::speculateNotCellNorBigInt): (JSC::DFG::SpeculativeJIT::speculate):
- dfg/DFGSpeculativeJIT.h:
- dfg/DFGUseKind.cpp: (WTF::printInternal):
- dfg/DFGUseKind.h: (JSC::DFG::typeFilterFor): (JSC::DFG::checkMayCrashIfInputIsEmpty):
- ftl/FTLCapabilities.cpp: (JSC::FTL::canCompile):
- ftl/FTLLowerDFGToB3.cpp: (JSC::FTL::DFG::LowerDFGToB3::compileDoubleRep): (JSC::FTL::DFG::LowerDFGToB3::compileValueToInt32): (JSC::FTL::DFG::LowerDFGToB3::numberOrNotCellNorBigIntToInt32): (JSC::FTL::DFG::LowerDFGToB3::speculate): (JSC::FTL::DFG::LowerDFGToB3::speculateNotCellNorBigInt): (JSC::FTL::DFG::LowerDFGToB3::numberOrNotCellToInt32): Deleted.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@261147 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 4:50 PM Changeset in webkit [261349] by
-
- 2 edits in branches/safari-610.1.12-branch/Source/WebKit
Cherry-pick r261146. rdar://problem/62995486
REGRESSION (r260791?): Assert not reached in ResourceLoadStatisticsDatabaseStore::openAndUpdateSchemaIfNecessary() and ResourceLoadStatisticsDatabaseStore::addMissingTablesIfNecessary()
https://bugs.webkit.org/show_bug.cgi?id=211305
<rdar://problem/62737871>
Reviewed by Alex Christensen.
This patch adds a busy timeout for the ITP database to allow for
some concurrency flexibility when running many WebKitTestRunner tests, which
recreate the ITP database store very often to test both the memory and
database stores.
With the timeout, an attempt to write to the database when another
thread is holding the lock will keep attempting to insert for 5
seconds as long as the statement execution returns SQLITE_BUSY.
- NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp: (WebKit::ResourceLoadStatisticsDatabaseStore::openITPDatabase):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@261146 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 4:50 PM Changeset in webkit [261348] by
-
- 2 edits in branches/safari-610.1.12-branch/LayoutTests
Cherry-pick r261122. rdar://problem/62995479
REGRESSION (r261109): [ Mac ] inspector/css/getAllStyleSheets.html is failing
https://bugs.webkit.org/show_bug.cgi?id=211405
<rdar://problem/62863843>
Unreviewed, remove unnecessary call to function that no longer exists.
- inspector/css/getAllStyleSheets.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@261122 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 4:50 PM Changeset in webkit [261347] by
-
- 2 edits in branches/safari-610.1.12-branch/LayoutTests
Cherry-pick r261121. rdar://problem/62995508
REGRESSION (r261108): [ Mac ] inspector/timeline/timeline-recording.html is failing
https://bugs.webkit.org/show_bug.cgi?id=211404
<rdar://problem/62863766>
Unreviewed, update test expectation.
- inspector/timeline/timeline-recording-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@261121 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 4:50 PM Changeset in webkit [261346] by
-
- 2 edits in branches/safari-610.1.12-branch/Source/WebKit
Cherry-pick r261187. rdar://problem/62993016
Check for app-bound domains should confirm WKAppBoundDomains key exists when checking for default app-bound protocols.
https://bugs.webkit.org/show_bug.cgi?id=211451
<rdar://problem/62715316
Reviewed by Brent Fulgham.
Checks for WKAppBoundDomains key before treating a protocol as
app-bound. This is a regression in expected behavior after making
In-App Browser privacy opt-in based on the presence of the key.
Also moves the check for special protocols inside of the completion handler for
ensureAppBoundDomains to make sure the check for the key has finished.
- UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm: (WebKit::WebsiteDataStore::beginAppBoundDomainCheck): Added a comment to clarify why we need to check for both an empty app-bound domains list and the presence of the key for testing purposes.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@261187 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 4:50 PM Changeset in webkit [261345] by
-
- 3 edits in branches/safari-610.1.12-branch/Source/WebKit
Cherry-pick r261140. rdar://problem/62993055
[iOS] Make sure TestController::statisticsResetToConsistentState() does not hang due to process suspension
https://bugs.webkit.org/show_bug.cgi?id=211421
Reviewed by Maciej Stachowiak.
We have evidence of hangs in TestController::statisticsResetToConsistentState() on iOS and we suspect it
is due to process suspension. To address the issue, this patch updates the IPCs being sent as a result of
a call to statisticsResetToConsistentState() to take a background assertion while waiting for the IPC
response.
- UIProcess/Network/NetworkProcessProxy.cpp: (WebKit::NetworkProcessProxy::setUseITPDatabase): (WebKit::NetworkProcessProxy::resetCacheMaxAgeCapForPrevalentResources): (WebKit::NetworkProcessProxy::resetParametersToDefaultValues): (WebKit::NetworkProcessProxy::scheduleClearInMemoryAndPersistent): (WebKit::NetworkProcessProxy::resetCrossSiteLoadsWithLinkDecorationForTesting): (WebKit::NetworkProcessProxy::setShouldDowngradeReferrerForTesting): (WebKit::NetworkProcessProxy::setShouldBlockThirdPartyCookiesForTesting): (WebKit::NetworkProcessProxy::setShouldEnbleSameSiteStrictEnforcementForTesting): (WebKit::NetworkProcessProxy::setFirstPartyWebsiteDataRemovalModeForTesting):
- UIProcess/WebProcessProxy.cpp: (WebKit::WebProcessProxy::setShouldBlockThirdPartyCookiesForTesting):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@261140 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 4:22 PM Changeset in webkit [261344] by
-
- 5 edits in trunk
Web Inspector: Uncaught Exception: TypeError: null is not an object (evaluating 'mimeType.endsWith')
https://bugs.webkit.org/show_bug.cgi?id=211593
Reviewed by Joseph Pecoraro.
Source/WebInspectorUI:
- UserInterface/Views/ResourceClusterContentView.js:
(WI.ResourceClusterContentView.prototype._normalizeMIMETypeForDOM):
LayoutTests:
- inspector/unit-tests/mimetype-utilities.html:
- inspector/unit-tests/mimetype-utilities-expected.txt:
Add some tests for
parseMIMEType.
- 4:17 PM Changeset in webkit [261343] by
-
- 8 edits in trunk/Source
Remove AudioMediaStreamTrackRenderer::muted
https://bugs.webkit.org/show_bug.cgi?id=211289
Reviewed by Eric Carlson.
Source/WebCore:
- platform/mediastream/AudioMediaStreamTrackRenderer.h:
muted is unnecessary since we are using start/stop instead.
Source/WebKit:
muted is unnecessary since we are using start/stop instead.
- GPUProcess/webrtc/RemoteAudioMediaStreamTrackRenderer.cpp:
- GPUProcess/webrtc/RemoteAudioMediaStreamTrackRenderer.h:
- GPUProcess/webrtc/RemoteAudioMediaStreamTrackRenderer.messages.in:
- WebProcess/GPU/webrtc/AudioMediaStreamTrackRenderer.cpp:
- WebProcess/GPU/webrtc/AudioMediaStreamTrackRenderer.h:
- 4:08 PM Changeset in webkit [261342] by
-
- 3 edits in trunk/Source/WebCore
[macOS] Playhead in Touch Bar continues when loading stalls
https://bugs.webkit.org/show_bug.cgi?id=211585
<rdar://problem/33893306>
Reviewed by Darin Adler.
- platform/cocoa/PlaybackSessionModelMediaElement.h:
- platform/cocoa/PlaybackSessionModelMediaElement.mm:
(WebCore::PlaybackSessionModelMediaElement::updateForEventName): Listen for
waitingEvent
andcanplayevents. Don't claim to be playing when stalled.
(WebCore::PlaybackSessionModelMediaElement::isStalled const): New.
- 4:05 PM Changeset in webkit [261341] by
-
- 12 edits2 adds in trunk
Poster set after playback begins should be ignored
https://bugs.webkit.org/show_bug.cgi?id=211464
Reviewed by Jer Noble.
Source/WebCore:
Redo the poster frame logic to use the
show poster flaglogic from the spec.
Test: media/video-poster-set-after-playback.html
- html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::HTMLMediaElement): Initialize m_showPoster.
(WebCore::HTMLMediaElement::prepareForLoad): m_displayMode was removed.
(WebCore::HTMLMediaElement::selectMediaResource): Call setShowPosterFlag.
(WebCore::HTMLMediaElement::loadResource): Remove calls to setDisplayMode and updateDisplayState,
they have been deleted.
(WebCore::HTMLMediaElement::waitForSourceChange): Call setShowPosterFlag. Update spec text.
(WebCore::HTMLMediaElement::noneSupported): Call setShowPosterFlag.
(WebCore::HTMLMediaElement::mediaLoadingFailed): Remove call to updateDisplayState.
(WebCore::HTMLMediaElement::setReadyState): Ditto.
(WebCore::HTMLMediaElement::seekWithTolerance): Call setShowPosterFlag.
(WebCore::HTMLMediaElement::seekTask): Check m_showPoster, not displayMode.
(WebCore::HTMLMediaElement::playInternal): Call setShowPosterFlag.
(WebCore::HTMLMediaElement::mediaPlayerCharacteristicChanged): Don't check displayMode.
(WebCore::HTMLMediaElement::updatePlayState): No more setDisplayMode.
(WebCore::HTMLMediaElement::userCancelledLoad): Call setShowPosterFlag.
(WebCore::HTMLMediaElement::mediaPlayerFirstVideoFrameAvailable): Deleted.
- html/HTMLMediaElement.h:
(WebCore::HTMLMediaElement::showPosterFlag const):
(WebCore::HTMLMediaElement::setShowPosterFlag):
(WebCore::HTMLMediaElement::displayMode const): Deleted.
(WebCore::HTMLMediaElement::setDisplayMode): Deleted.
(WebCore::HTMLMediaElement::updateDisplayState): Deleted.
- html/HTMLVideoElement.cpp:
(WebCore::HTMLVideoElement::didAttachRenderers): No more updateDisplayState.
(WebCore::HTMLVideoElement::parseAttribute): Ditto. Call updateFromElement when poster is removed.
(WebCore::HTMLVideoElement::shouldDisplayPosterImage const): New.
(WebCore::HTMLVideoElement::mediaPlayerFirstVideoFrameAvailable): New, update player and
renderer if the poster isn't supposed to be visible.
(WebCore::HTMLVideoElement::setDisplayMode): Deleted.
(WebCore::HTMLVideoElement::updateDisplayState): Deleted.
- html/HTMLVideoElement.h:
- rendering/RenderVideo.cpp:
(WebCore::RenderVideo::failedToLoadPosterImage const): New.
- rendering/RenderVideo.h:
- testing/Internals.cpp:
(WebCore::Internals::elementShouldDisplayPosterImage const):
- testing/Internals.h:
- testing/Internals.idl:
LayoutTests:
- media/video-poster-set-after-playback-expected.txt: Added.
- media/video-poster-set-after-playback.html: Added.
- 4:01 PM Changeset in webkit [261340] by
-
- 2 edits in trunk/Source/WebInspectorUI
Web Inspector: Sources: Breakpoints status not remembered/restored correctly
https://bugs.webkit.org/show_bug.cgi?id=211558
Reviewed by Joseph Pecoraro.
- UserInterface/Controllers/DOMDebuggerManager.js:
(WI.DOMDebuggerManager.prototype.initializeTarget):
- 3:59 PM Changeset in webkit [261339] by
-
- 4 edits in trunk/Source/WebInspectorUI
Web Inspector: Storage: double clicking on a cookie field doesn't start editing it
https://bugs.webkit.org/show_bug.cgi?id=211598
Reviewed by Timothy Hatcher.
- UserInterface/Views/CookieStorageContentView.js:
(WI.CookieStorageContentView):
(WI.CookieStorageContentView.prototype.tableCellContextMenuClicked):
(WI.CookieStorageContentView.prototype.tablePopulateCell):
(WI.CookieStorageContentView.prototype._showCookiePopover):
(WI.CookieStorageContentView.prototype._handleSetCookieButtonClick):
Add a"dblclick"event listener to each cell that shows aWI.CookiePopoverfor that cell
and automatically select the current value of that field in theWI.Cookie. Unify the few
different ways to show aWI.CookiePopover.
- UserInterface/Views/CookiePopover.js:
(WI.CookiePopover.prototype.show.createRow):
Provide a way to programmatically trigger the focusing of an editor once shown.
- Localizations/en.lproj/localizedStrings.js:
- 3:58 PM Changeset in webkit [261338] by
-
- 2 edits in trunk/Source/WebCore
In Document::willBeRemovedFromFrame, clear FrameSelection before Editor so the selection is removed.
https://bugs.webkit.org/show_bug.cgi?id=211551
Reviewed by Geoffrey Garen.
Covered by existing tests.
- dom/Document.cpp:
(WebCore::Document::willBeRemovedFromFrame):
- 2:48 PM Changeset in webkit [261337] by
-
- 8 edits in trunk/Source
Versioning.
- 2:44 PM Changeset in webkit [261336] by
-
- 10 edits in trunk/Source/WebCore
[Web Animations] imported/w3c/web-platform-tests/web-animations/timing-model/timelines/update-and-send-events.html is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=211232
<rdar://problem/62650227>
Reviewed by Dean Jackson.
The flakiness came from this porting of the test:
animA.finished.then(() => { animB.cancel() });
animB.finished.then(() => { animA.cancel() });
Sometimes, animA and animB would finish in different frames even though they were designed to finish at the
same time. If this happened, animA.finished would resolve and trigger animB.cancel, which then rejected
animB.finished. This happened because animB was attached to a DocumentTimeline created by script which isn't
the main DocumenTimeline accessed via document.timeline. Some curious code would handle syncing of the
various timelines such that they would use a shared timebase. This was in DocumentTimeline::currentTime():
auto& mainDocumentTimeline = m_document->timeline();
if (&mainDocumentTimeline != this) {
if (auto mainDocumentTimelineCurrentTime = mainDocumentTimeline.currentTime())
return *mainDocumentTimelineCurrentTime - m_originTime;
return WTF::nullopt;
}
We now move the currentTime caching at the DocumentTimelinesController level which ensures all DocumentTimeline
objects attached to a given Document use the exact same currentTime(). This prompted some overdue refactoring
where also all the related animation suspension code is moved from DocumentTimeline up to DocumentTimelinesController.
- animation/DocumentTimeline.cpp:
(WebCore::DocumentTimeline::detachFromDocument):
(WebCore::DocumentTimeline::suspendAnimations):
(WebCore::DocumentTimeline::resumeAnimations):
(WebCore::DocumentTimeline::animationsAreSuspended const):
(WebCore::DocumentTimeline::currentTime):
(WebCore::DocumentTimeline::scheduleAnimationResolution):
(WebCore::DocumentTimeline::documentWillUpdateAnimationsAndSendEvents):
(WebCore::DocumentTimeline::animationsAreSuspended): Deleted.
(WebCore::DocumentTimeline::liveCurrentTime const): Deleted.
(WebCore::DocumentTimeline::cacheCurrentTime): Deleted.
(WebCore::DocumentTimeline::maybeClearCachedCurrentTime): Deleted.
- animation/DocumentTimeline.h:
- animation/DocumentTimelinesController.cpp:
(WebCore::DocumentTimelinesController::detachFromDocument):
(WebCore::DocumentTimelinesController::updateAnimationsAndSendEvents):
(WebCore::DocumentTimelinesController::suspendAnimations):
(WebCore::DocumentTimelinesController::resumeAnimations):
(WebCore::DocumentTimelinesController::animationsAreSuspended const):
(WebCore::DocumentTimelinesController::liveCurrentTime const):
(WebCore::DocumentTimelinesController::currentTime):
(WebCore::DocumentTimelinesController::cacheCurrentTime):
(WebCore::DocumentTimelinesController::maybeClearCachedCurrentTime):
- animation/DocumentTimelinesController.h:
- dom/Document.cpp:
(WebCore::Document::didBecomeCurrentDocumentInFrame):
(WebCore::Document::resume):
- dom/Document.h:
- page/Frame.cpp:
(WebCore::Frame::clearTimers):
(WebCore::Frame::resumeActiveDOMObjectsAndAnimations):
- page/Page.cpp:
(WebCore::Page::setIsVisibleInternal):
(WebCore::Page::hiddenPageCSSAnimationSuspensionStateChanged):
- testing/Internals.cpp:
(WebCore::Internals::animationsAreSuspended const):
(WebCore::Internals::suspendAnimations const):
(WebCore::Internals::resumeAnimations const):
- 2:39 PM Changeset in webkit [261335] by
-
- 1 copy in branches/safari-610.1.12-branch
New branch.
- 2:02 PM Changeset in webkit [261334] by
-
- 8 edits6 adds in trunk
REGRESSION (r252161): Animation of box-shadow with border-radius set is flashy
https://bugs.webkit.org/show_bug.cgi?id=211530
<rdar://problem/62570229>
Reviewed by Zalan Bujtas.
Source/WebCore:
Drawing inset box shadows with spread was broken, and in some cases generated invalid
rounded rects, causing inset shadows with border-radius to lose the radius.
First, with split inlines, the spread was not getting removed from the excluded edges.
Fix in the includeLogicalLeftEdge/includeLogicalRightEdge clauses, adding shiftXEdgeBy()/shiftYEdgeBy() helpers
to LayoutRect to simplify logic.
Second, when computing the rounded hole rect, we'd use the result of style.getRoundedInnerBorderFor()
but that doesn't take shadow spread into account, so we'd build a rounded rect with a rect that
accounted for spread, but radii computed without. That could result in unrenderable rounded rects.
Fix by calling style.getRoundedInnerBorderFor() a second time if we have spread; this will fix
up the radii for spread.
Tests: fast/box-shadow/inset-box-shadow-fractional-radius.html
fast/box-shadow/inset-shadow-split-inline.html
fast/box-shadow/inset-spread-box-shadow-split-inline.html
- platform/graphics/LayoutRect.h:
(WebCore::LayoutRect::shiftXEdgeBy):
(WebCore::LayoutRect::shiftYEdgeBy):
- rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::paintBoxShadow):
LayoutTests:
Some ref tests for inset shadows with border radius, with spread, and when on
split inlines.
- fast/box-shadow/inset-box-shadow-expected.html:
- fast/box-shadow/inset-box-shadow-fractional-radius-expected.html: Added.
- fast/box-shadow/inset-box-shadow-fractional-radius.html: Added.
- fast/box-shadow/inset-box-shadow.html:
- fast/box-shadow/inset-shadow-split-inline-expected.html: Added.
- fast/box-shadow/inset-shadow-split-inline.html: Added.
- fast/box-shadow/inset-spread-box-shadow-split-inline-expected.html: Added.
- fast/box-shadow/inset-spread-box-shadow-split-inline.html: Added.
- 1:57 PM Changeset in webkit [261333] by
-
- 39 edits in trunk/Source
Remove unused USE(REQUEST_ANIMATION_FRAME_DISPLAY_MONITOR)
https://bugs.webkit.org/show_bug.cgi?id=211582
Reviewed by Fujii Hironori.
After r261264 all ports implemented USE_REQUEST_ANIMATION_FRAME_DISPLAY_MONITOR.
Source/WebCore:
- page/ChromeClient.h:
(WebCore::ChromeClient::createDisplayRefreshMonitor const):
- page/Page.cpp:
(WebCore::Page::windowScreenDidChange):
- page/RenderingUpdateScheduler.cpp:
(WebCore::RenderingUpdateScheduler::RenderingUpdateScheduler):
(WebCore::RenderingUpdateScheduler::adjustRenderingUpdateFrequency):
(WebCore::RenderingUpdateScheduler::scheduleTimedRenderingUpdate):
(WebCore::RenderingUpdateScheduler::windowScreenDidChange):
- page/RenderingUpdateScheduler.h:
- platform/graphics/DisplayRefreshMonitor.cpp:
- platform/graphics/DisplayRefreshMonitor.h:
- platform/graphics/DisplayRefreshMonitorClient.cpp:
- platform/graphics/DisplayRefreshMonitorClient.h:
- platform/graphics/DisplayRefreshMonitorManager.cpp:
- platform/graphics/DisplayRefreshMonitorManager.h:
- platform/graphics/GraphicsLayerUpdater.cpp:
(WebCore::GraphicsLayerUpdater::GraphicsLayerUpdater):
(WebCore::GraphicsLayerUpdater::scheduleUpdate):
(WebCore::GraphicsLayerUpdater::screenDidChange):
(WebCore::GraphicsLayerUpdater::displayRefreshFired):
(WebCore::GraphicsLayerUpdater::createDisplayRefreshMonitor const):
- platform/graphics/GraphicsLayerUpdater.h:
- platform/graphics/gtk/DisplayRefreshMonitorGtk.cpp:
- platform/graphics/gtk/DisplayRefreshMonitorGtk.h:
- platform/graphics/ios/DisplayRefreshMonitorIOS.h:
- platform/graphics/ios/DisplayRefreshMonitorIOS.mm:
- platform/graphics/mac/DisplayRefreshMonitorMac.cpp:
- platform/graphics/mac/DisplayRefreshMonitorMac.h:
- rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::createDisplayRefreshMonitor const):
- rendering/RenderLayerCompositor.h:
Source/WebKit:
- Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp:
(WebKit::ThreadedCompositor::ThreadedCompositor):
(WebKit::m_displayRefreshMonitor):
(WebKit::ThreadedCompositor::invalidate):
(WebKit::ThreadedCompositor::sceneUpdateFinished):
(WebKit::ThreadedCompositor::displayRefreshMonitor):
- Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h:
- Shared/CoordinatedGraphics/threadedcompositor/ThreadedDisplayRefreshMonitor.cpp:
- Shared/CoordinatedGraphics/threadedcompositor/ThreadedDisplayRefreshMonitor.h:
- WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::createDisplayRefreshMonitor const):
- WebProcess/WebCoreSupport/WebChromeClient.h:
- WebProcess/WebPage/CoordinatedGraphics/DrawingAreaCoordinatedGraphics.cpp:
(WebKit::DrawingAreaCoordinatedGraphics::createDisplayRefreshMonitor):
- WebProcess/WebPage/CoordinatedGraphics/DrawingAreaCoordinatedGraphics.h:
- WebProcess/WebPage/CoordinatedGraphics/LayerTreeHost.cpp:
(WebKit::LayerTreeHost::createDisplayRefreshMonitor):
- WebProcess/WebPage/CoordinatedGraphics/LayerTreeHost.h:
(WebKit::LayerTreeHost::deviceOrPageScaleFactorChanged):
- WebProcess/WebPage/DrawingArea.cpp:
- WebProcess/WebPage/DrawingArea.h:
- WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDisplayRefreshMonitor.h:
- WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDisplayRefreshMonitor.mm:
- WebProcess/WebPage/mac/DrawingAreaMac.cpp:
Source/WTF:
- wtf/PlatformUse.h:
- 1:15 PM Changeset in webkit [261332] by
-
- 2 edits in trunk/Tools
webkitpy: Use apple_additions certificate path if available
https://bugs.webkit.org/show_bug.cgi?id=211584
Rubber-stamped by Aakash Jain
- Scripts/webkitpy/results/upload.py:
(Upload):
(Upload.certificate_chain): Certificate chain to be used, prefer apple_additions
over certifi.
(Upload.upload): Use Upload.certificate_chain().
(Upload.upload_archive): Ditto.
- 1:15 PM Changeset in webkit [261331] by
-
- 2 edits in trunk/Source/JavaScriptCore
Simplify preprocessor guards in GCMemoryOperations.h
https://bugs.webkit.org/show_bug.cgi?id=211588
Patch by Michael Catanzaro <Michael Catanzaro> on 2020-05-07
Reviewed by Darin Adler.
If we adjust the guards a bit, then we don't need to repeat the fallback path.
- heap/GCMemoryOperations.h:
(JSC::gcSafeMemmove):
(JSC::gcSafeZeroMemory):
- 1:07 PM Changeset in webkit [261330] by
-
- 2 edits in trunk/LayoutTests
[ macOS wk1 ] imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-text.html is flaky failing
https://bugs.webkit.org/show_bug.cgi?id=209201
Unreviewed test gardening.
Remove flaky expectation since the test is consistently passing.
- platform/mac-wk1/TestExpectations:
- 1:04 PM Changeset in webkit [261329] by
-
- 3 edits in trunk/LayoutTests
[ macOS debug ] REGRESSION (r259463): http/tests/media/clearkey/collect-webkit-media-session.html is failing
https://bugs.webkit.org/show_bug.cgi?id=209989
Unreviewed test gardening.
Remove failure expectations for tests that are now consistently passing.
- platform/mac-wk1/TestExpectations:
- platform/mac-wk2/TestExpectations:
- 1:03 PM WebKitGTK/2.28.x edited by
- (diff)
- 12:49 PM Changeset in webkit [261328] by
-
- 7 edits in trunk/Source
Give the DFG and FTL WorkList threads more stack space on ASAN builds.
https://bugs.webkit.org/show_bug.cgi?id=211535
<rdar://problem/62947884>
Reviewed by Geoffrey Garen.
Source/JavaScriptCore:
- dfg/DFGWorklist.cpp:
(JSC::DFG::Worklist::ThreadBody::ThreadBody):
- Mark the AutomaticThread as ThreadType::Compiler.
Source/WTF:
- Add the ability to set the ThreadType for AutomaticThreads.
- Give ThreadType::Compiler (which currently only used for the DFG anf FTL WorkList threads) a larger stack for OS(DARWIN) on ASAN builds.
This is needed because ASAN is a memory hungry beast, and we want the ASAN
builds to get to exercise the same amount of code a regular build will (instead
of failing out early with a stack overflow error).
- wtf/AutomaticThread.cpp:
(WTF::AutomaticThread::AutomaticThread):
(WTF::AutomaticThread::start):
- wtf/AutomaticThread.h:
- wtf/Threading.cpp:
(WTF::stackSize):
- wtf/Threading.h:
- 12:36 PM Changeset in webkit [261327] by
-
- 2 edits in trunk/Source/WebCore
Add watchOS media controls assets
https://bugs.webkit.org/show_bug.cgi?id=211508
Unreviewed. Cleaning up some stray logging.
- WebCore.xcodeproj/project.pbxproj:
- 12:30 PM Changeset in webkit [261326] by
-
- 2 edits in trunk/Source/JavaScriptCore
REGRESSION(r251875): Crash in JSC::StructureIDTable::get on ppc64le: gcSafeMemcpy broken on JSVALUE64 platforms other than x86_64 and aarch64
https://bugs.webkit.org/show_bug.cgi?id=210685
Patch by Daniel Kolesa <daniel@octaforge.org> on 2020-05-07
Reviewed by Michael Catanzaro.
Fix gcSafeMemcpy on non-x86_64/aarch64 64-bit architectures.
We were hitting an incorrect x86_64 assertion on values larger than
mediumCutoff on JSVALUE64 architectures other than x86_64 and aarch64,
as the control flow is wrong.
- heap/GCMemoryOperations.h:
(JSC::gcSafeMemcpy):
- 12:25 PM Changeset in webkit [261325] by
-
- 6 edits in trunk/Source
Add stack checks to the DFG and FTL bytecode parser.
https://bugs.webkit.org/show_bug.cgi?id=211547
<rdar://problem/62958880>
Reviewed by Yusuke Suzuki.
Source/JavaScriptCore:
Inlining can cause some level of recursion of the DFG bytecode parser. We should
do a stack check at each inlining check before recursing. If a stack overflow
appears to be imminent, then just refuse to inline, and therefore, don't recurse
deeper into the parser.
This issue is more noticeable on ASan debug builds where stack frames can be
humongous.
Removed the SUPPRESS_ASAN on cloberrize() and the associated comment from r260692.
It was a mis-diagnosis. The stack checks are what we need.
- dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::handleVarargsInlining):
(JSC::DFG::ByteCodeParser::handleInlining):
- dfg/DFGClobberize.h:
(JSC::DFG::clobberize):
- dfg/DFGGraph.h:
Source/WTF:
Added a StackCheck::Scope RAII object to help verify that the default reserved
zone size is at least adequate for known work loads. If this the StackCheck::Scope
assertions fail, then we either need more stack checks, or the reserved zone size
needs to be increased.
Note that the assertions are usually only on in Debug builds. Ideally, we would
want to measure the reserved zone size with a Release build. To do that, we
can just set VERIFY_STACK_CHECK_RESERVED_ZONE_SIZE to 1 unconditionally in
StackCheck.h and rebuild.
- wtf/StackCheck.h:
(WTF::StackCheck::Scope::Scope):
(WTF::StackCheck::Scope::~Scope):
(WTF::StackCheck::Scope::isSafeToRecurse):
(WTF::StackCheck::StackCheck):
- 12:12 PM Changeset in webkit [261324] by
-
- 2 edits in trunk/Tools
Unreviewed, reverting r260959.
https://bugs.webkit.org/show_bug.cgi?id=211587
"Causes MiniBrowser to crash when closing a window" (Requested
by ddkilzer on #webkit).
Reverted changeset:
"REGRESSION (r176862, r210483): Leaks of
BrowserWindowController in MiniBrowser/mac/AppDelegate.m"
https://bugs.webkit.org/show_bug.cgi?id=211243
https://trac.webkit.org/changeset/260959
- 11:55 AM Changeset in webkit [261323] by
-
- 5 edits in trunk/Source
Add some missing null checks for DocumentLoader
https://bugs.webkit.org/show_bug.cgi?id=211544
rdar://62843516
Reviewed by Anders Carlsson.
Source/WebCore:
- loader/FrameLoader.cpp:
(WebCore::FrameLoader::transitionToCommitted): Use some more RefPtr,
and check for null before calling DocumentLoader::responseMIMEType.
Also removed a comment that made no sense, and an assertion that was
there for no reason, left over from some point in history where it
made sense.
- loader/HistoryController.cpp:
(WebCore::FrameLoader::HistoryController::updateForRedirectWithLockedBackForwardList):
Add checks for null before calling urlForHistory and isClientRedirect.
Source/WebKit:
- WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
Add a null check before calling DocumentLoader::response.
- 11:42 AM Changeset in webkit [261322] by
-
- 3 edits in trunk/Source/ThirdParty/ANGLE
Fix Google Maps rendering corruption in simulator with ANGLE
https://bugs.webkit.org/show_bug.cgi?id=211398
glReadPixels call needs to respect the row stride of the IOSurface.
Patch by James Darpinian <James Darpinian> on 2020-05-07
Reviewed by Alex Christensen.
- src/libANGLE/renderer/gl/eagl/IOSurfaceSurfaceEAGL.h:
- src/libANGLE/renderer/gl/eagl/IOSurfaceSurfaceEAGL.mm:
(rx::IOSurfaceSurfaceEAGL::IOSurfaceSurfaceEAGL):
(rx::IOSurfaceSurfaceEAGL::releaseTexImage):
- 11:38 AM Changeset in webkit [261321] by
-
- 1 edit3 adds in trunk/LayoutTests
Add a test for
REGRESSION (r260753): Frequent crashes under TextIndicator's estimatedTextColorsForRange
https://bugs.webkit.org/show_bug.cgi?id=211532
Reviewed by Wenson Hsieh.
- fast/text-indicator/text-indicator-estimated-color-with-implicit-newline-expected.txt: Added.
- fast/text-indicator/text-indicator-estimated-color-with-implicit-newline.html: Added.
- platform/ios/fast/text-indicator/text-indicator-estimated-color-with-implicit-newline-expected.txt: Added.
This test would trigger the null deref fixed in r261245.
- 11:37 AM Changeset in webkit [261320] by
-
- 21 edits2 copies in trunk
Remove USE(INSERTION_UNDO_GROUPING) checks in macOS platform code
https://bugs.webkit.org/show_bug.cgi?id=211525
Reviewed by Anders Carlsson.
Source/WebCore:
- editing/mac/TextUndoInsertionMarkupMac.h: Remove
NSTextInputContext_Private.h usage. Moving to NSTextInputContextSPI.h
instead. Also remove #pragma once since this is an Objective-C-only
header, not for cross-platform use.
- editing/mac/TextUndoInsertionMarkupMac.mm: Above, plus move
NSUndoManager_Private.h to NSUndoManagerSPI.h.
Source/WebCore/PAL:
- PAL.xcodeproj/project.pbxproj: Added NSTextInputContextSPI.h and NSUndoManagerSPI.h.
- pal/PlatformMac.cmake: Ditto.
- pal/spi/mac/NSTextInputContextSPI.h: Added.
- pal/spi/mac/NSUndoManagerSPI.h: Added.
Source/WebKit:
- UIProcess/Cocoa/WebViewImpl.mm: Use NSTextInputContextSPI.h.
(WebKit::WebViewImpl::validAttributesForMarkedText): Removed
USE(INSERTION_UNDO_GROUPING) from the macOS-specific code here.
(WebKit::WebViewImpl::insertText): Ditto.
- UIProcess/PageClient.h: Ditto.
- UIProcess/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::registerInsertionUndoGrouping): Deleted.
This function is not needed at all on iOS.
- UIProcess/mac/PageClientImplMac.h: Removed USE(INSERTION_UNDO_GROUPING).
- UIProcess/mac/PageClientImplMac.mm:
(WebKit::PageClientImpl::registerInsertionUndoGrouping): Ditto.
Source/WebKitLegacy/mac:
- WebView/WebHTMLView.mm: Use NSTextInputContextSPI.h.
(-[WebHTMLView validAttributesForMarkedText]): Removed USE(INSERTION_UNDO_GROUPING).
(-[WebHTMLView insertText:]): Ditto.
Tools:
- DumpRenderTree/mac/TextInputControllerMac.m: Use NSTextInputContextSPI.h.
(-[TextInputController stringWithUndoGroupingInsertion:]): Removed
SUPPORT_INSERTION_UNDO_GROUPING.
- DumpRenderTree/mac/UIScriptControllerMac.mm: Use NSTextInputContextSPI.h.
- TestRunnerShared/spi/AppKitTestSPI.h: Removed
NSTextInputContext_Private.h, clients can use NSTextInputContextSPI.h.
- TestWebKitAPI/Tests/TestWebKitAPI/mac/AppKitSPI.h: Ditto.
- TestWebKitAPI/Tests/mac/CandidateTests.mm: Use NSTextInputContextSPI.h.
- TestWebKitAPI/Tests/mac/WKWebViewMacEditingTests.mm: Ditto.
- 11:24 AM Changeset in webkit [261319] by
-
- 5 edits4 deletes in trunk/Tools
Delete code for old commit queue
https://bugs.webkit.org/show_bug.cgi?id=211581
Reviewed by Alexey Proskuryakov.
- Scripts/webkitpy/common/config/committervalidator.py: Removed.
- Scripts/webkitpy/common/config/committervalidator_unittest.py: Removed.
- Scripts/webkitpy/tool/bot/commitqueuetask.py: Removed.
- Scripts/webkitpy/tool/bot/commitqueuetask_unittest.py: Removed.
- Scripts/webkitpy/tool/commands/queues.py:
(PatchProcessingQueue._upload_results_archive_for_patch):
(CommitQueue): Deleted.
- Scripts/webkitpy/tool/commands/queues_unittest.py:
(NeedsUpdateSequence._run):
(TestCommitQueue): Deleted.
(AlwaysCommitQueueTool): Deleted.
(SecondThoughtsCommitQueue): Deleted.
(CommitQueueTest): Deleted.
(test_did_pass_testing_ews): Deleted.
- Scripts/webkitpy/tool/steps/validatechangelogs.py:
- Scripts/webkitpy/tool/steps/validatereviewer.py:
- 11:21 AM Changeset in webkit [261318] by
-
- 2 edits in trunk/LayoutTests
[ Mac wk1 ] http/tests/security/clipboard/copy-paste-html-cross-origin-iframe-across-origin.html is flaky failing.
https://bugs.webkit.org/show_bug.cgi?id=209154
Unreviewed test gardening.
- platform/mac-wk1/TestExpectations:
- 11:12 AM Changeset in webkit [261317] by
-
- 3 edits6 adds in trunk/Source/WebCore
[Conditional=] not working for operations in WebGLRenderingContextBase.idl
https://bugs.webkit.org/show_bug.cgi?id=211528
Reviewed by Chris Dumez.
When an IDL interface under a given Condition defined an operation with
another Condition the generated source file should guard the operation
with both the Condition from the interface and the one from the
operation. This was working fine for sole interfaces but not for those
who were inheriting from a base one, i.e., it was not working for
supplemental interfaces.
Added a new minimalistic binding test showcasing the problem.
- bindings/scripts/CodeGenerator.pm:
(ProcessSupplementalDependencies): Add Conditionals from both interface and operation.
- bindings/scripts/test/JS/JSTestGlobalObject.cpp:
(WebCore::jsTestGlobalObjectTestOperationConditionalConstructorGetter): Updated result.
(WebCore::jsTestGlobalObjectTestOperationConditionalConstructor): Ditto.
(WebCore::setJSTestGlobalObjectTestOperationConditionalConstructorSetter): Ditto.
(WebCore::setJSTestGlobalObjectTestOperationConditionalConstructor): Ditto.
- bindings/scripts/test/JS/JSTestOperationBase.cpp: Added.
- bindings/scripts/test/JS/JSTestOperationBase.h: Added.
- bindings/scripts/test/JS/JSTestOperationConditional.cpp: Added.
- bindings/scripts/test/JS/JSTestOperationConditional.h: Added.
- bindings/scripts/test/TestOperationBase.idl: Added.
- bindings/scripts/test/TestOperationConditional.idl: Added.
- 11:07 AM Changeset in webkit [261316] by
-
- 2 edits in trunk/Tools
Unreviewed, reverting r261286.
Tests are still crashing / failing
Reverted changeset:
"Unskip the test since it should now be passing"
https://trac.webkit.org/changeset/261286
- 11:02 AM Changeset in webkit [261315] by
-
- 3 edits in trunk/Source/JavaScriptCore
REGRESSION (r261257): Lifetime problem with upconverted characters in toLocaleCase
https://bugs.webkit.org/show_bug.cgi?id=211580
rdar://62980449
Reviewed by Yusuke Suzuki.
The problem comes from the fact that callBufferProducingFunction is moving the same
arguments multiple times. At the moment, this works around the only practical
problem with that, but later it should be fixed in callBufferProducingFunction.
- runtime/IntlDateTimeFormat.cpp:
(JSC::IntlDateTimeFormat::initializeDateTimeFormat): Work around mistakes in how
callBufferProducingFunction works with arguments by calling get() explicitly on the
result of upconvertedCharacters. Later we could fix callBufferProducingFunction to
be safer, but for now this solves the problem.
- runtime/StringPrototype.cpp:
(JSC::toLocaleCase): Ditto.
- 11:01 AM Changeset in webkit [261314] by
-
- 7 edits in trunk
[Wheel event region] Include listeners on Window
https://bugs.webkit.org/show_bug.cgi?id=211577
Reviewed by Simon Fraser.
Source/WebCore:
Test: fast/scrolling/mac/wheel-event-listener-region-window.html
- dom/EventTarget.h:
- dom/Node.h:
- style/StyleAdjuster.cpp:
(WebCore::Style::Adjuster::computeEventListenerRegionTypes):
Take EventTarget so this can be used with DOMWindow.
- style/StyleAdjuster.h:
- style/StyleResolveForDocument.cpp:
(WebCore::Style::resolveForDocument):
LayoutTests:
- fast/scrolling/mac/wheel-event-listener-region-window-expected.txt: Added.
- fast/scrolling/mac/wheel-event-listener-region-window.html: Added.
- 11:00 AM Changeset in webkit [261313] by
-
- 4 edits2 adds in trunk
Fix ArrayMode nodes after r261260
https://bugs.webkit.org/show_bug.cgi?id=211543
Reviewed by Yusuke Suzuki.
I accidentally ran tests with a release build rather than
release+assert when uploading r261260. This patch skips the
CheckArray node in the ArrayMode clobbersTop() logic before
Fixup. And also marks a GetArrayLength in the TypedArray
intrsinics as ExitOK.
This patch also relands r261260.
- dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::handleIntrinsicGetter):
- dfg/DFGClobberize.h:
(JSC::DFG::clobberize):
- 10:58 AM Changeset in webkit [261312] by
-
- 7 edits in branches/safari-609-branch
Apply patch. rdar://problem/62977667
- 10:58 AM Changeset in webkit [261311] by
-
- 2 edits in branches/safari-609-branch/Source/WebKit
Cherry-pick r260474. rdar://problem/62977672
PiP buttons shows up in element fullscreen when PiP is disabled in WKWebViewConfiguration
https://bugs.webkit.org/show_bug.cgi?id=210813
Reviewed by Eric Carlson.
Not currently testable; entering fullscreen never completes in the iOS TestWebKitAPI app
because that process is not a UI Application.
- UIProcess/ios/fullscreen/WKFullScreenViewController.mm: (-[WKFullScreenViewController videoControlsManagerDidChange]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@260474 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 10:58 AM Changeset in webkit [261310] by
-
- 5 edits in branches/safari-609-branch/Source/WebCore
Cherry-pick r260480. rdar://problem/62977665
Cherry-pick r260301. rdar://problem/62083309
[WebGL] Confirm there are no errors when setting up framebuffers
https://bugs.webkit.org/show_bug.cgi?id=210632
<rdar://problem/61916680>
Reviewed by Simon Fraser.
We're seeing crashes on macOS inside GraphicsContextGL::reshape().
Specifically when we submit work at the end of the function via
glFlush.
At the moment the cause is a mystery, because we should bail out
before then if the multisample renderbuffer was not complete. In
the hope that it helps somewhat, add a call to glGetError to double
check that there isn't anything horribly wrong before we talk to
the GPU.
- html/canvas/WebGL2RenderingContext.cpp: (WebCore::WebGL2RenderingContext::WebGL2RenderingContext): If the underlying GCGL context was marked as "LOST" during initialization, skip the rest of our initialization.
- html/canvas/WebGLRenderingContext.cpp: Ditto. (WebCore::WebGLRenderingContext::WebGLRenderingContext):
- html/canvas/WebGLRenderingContextBase.cpp: Ditto. (WebCore::WebGLRenderingContextBase::WebGLRenderingContextBase):
- platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp: Check for a GL error during setup and, if there is one, skip directly into a LOST state. (WebCore::GraphicsContext3D::reshape):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@260301 268f45cc-cd09-0410-ab3c-d52691b4dbfc
git-svn-id: https://svn.webkit.org/repository/webkit/branches/safari-609.2.9.1-branch@260480 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 10:58 AM Changeset in webkit [261309] by
-
- 8 edits in branches/safari-609-branch/Source/WebKit
Apply patch. rdar://problem/62977657
- 10:58 AM Changeset in webkit [261308] by
-
- 6 edits in branches/safari-609-branch/Source/WebKit
Apply patch. rdar://problem/62977647
- 10:58 AM Changeset in webkit [261307] by
-
- 2 edits in branches/safari-609-branch/Source/WebKit
Apply patch. rdar://problem/62272254
- 10:45 AM Changeset in webkit [261306] by
-
- 2 edits in trunk/Source/WebCore
REGRESSION (r261056): [ Mac WK1 ] inspector/console/console-api.html is flaky crashing
https://bugs.webkit.org/show_bug.cgi?id=211386
Reviewed by Darin Adler.
Address additional review feedback.
- platform/mac/ScrollbarThemeMac.mm:
(WebCore::ScrollbarThemeMac::unregisterScrollbar):
- 10:37 AM Changeset in webkit [261305] by
-
- 6 edits in trunk/Source/WebKit
Drop dead platformPrepareToSuspend / platformProcessDidResume in NetworkProcess
https://bugs.webkit.org/show_bug.cgi?id=211579
Reviewed by Geoffrey Garen.
- NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::prepareToSuspend):
(WebKit::NetworkProcess::resume):
- NetworkProcess/NetworkProcess.h:
- NetworkProcess/cocoa/NetworkProcessCocoa.mm:
(WebKit::NetworkProcess::platformPrepareToSuspend): Deleted.
(WebKit::NetworkProcess::platformProcessDidResume): Deleted.
- NetworkProcess/curl/NetworkProcessCurl.cpp:
(WebKit::NetworkProcess::platformPrepareToSuspend): Deleted.
(WebKit::NetworkProcess::platformProcessDidResume): Deleted.
- NetworkProcess/soup/NetworkProcessSoup.cpp:
(WebKit::NetworkProcess::platformPrepareToSuspend): Deleted.
(WebKit::NetworkProcess::platformProcessDidResume): Deleted.
- 10:21 AM Changeset in webkit [261304] by
-
- 2 edits in trunk/LayoutTests
Unreviewed, mark imported/w3c/web-platform-tests/html/browsers/browsing-the-web/history-traversal/scroll-restoration-order.html as flaky on iOS.
This test has been flaky on iOS since its import.
- platform/ios-wk2/TestExpectations:
- 10:17 AM Changeset in webkit [261303] by
-
- 6 edits in trunk/Source/WebKit
ContextMenu: entire webpage pops and disappears to generate preview of embedded image
https://bugs.webkit.org/show_bug.cgi?id=211272
<rdar://problem/62482013>
Reviewed by Tim Horton.
The ActionSheetAssistant is always around, so using the presence of one
to determine if we need to remove the _contextMenuHintContainerView is incorrect
and causes it to be around on the next invocation of the context menu, and
causing the failure of the creation of a new preview, which then will default to
popping the whole page. We need to ask the ActionSheetAssistant if it is actively showing
anything, and then correctly clean up the _contextMenuHintContainerView after the
end of the interactions for FileUploadMenu and ActionSheetAssistant are done with their
interactions.
- UIProcess/ios/WKActionSheetAssistant.h:
- UIProcess/ios/WKActionSheetAssistant.mm:
(-[WKActionSheetAssistant removeContextMenuInteraction]):
(-[WKActionSheetAssistant hasContextMenuInteraction]):
- UIProcess/ios/WKContentViewInteraction.h:
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView removeContextMenuViewIfPossibleForActionSheetAssistant:]):
(-[WKContentView _canRemoveContextMenuView]):
(-[WKContentView _removeContextMenuViewIfPossible]):
(-[WKContentView contextMenuInteraction:willEndForConfiguration:animator:]):
- UIProcess/ios/forms/WKFileUploadPanel.mm:
(-[WKFileUploadPanel removeContextMenuInteraction]):
- 10:14 AM Changeset in webkit [261302] by
-
- 4 edits2 adds in trunk
[LFC[TFC] Adjust the table wrapper box style
https://bugs.webkit.org/show_bug.cgi?id=211574
Reviewed by Antti Koivisto.
Source/WebCore:
The computed values of properties 'position', 'float', 'margin-*', 'top', 'right', 'bottom', and 'left'
on the table element are used on the table wrapper box and not the table box; all other values of non-inheritable
properties are used on the table box and not the table wrapper box.
https://www.w3.org/TR/CSS22/tables.html#model
Test: fast/layoutformattingcontext/table-simple-with-border.html
- layout/layouttree/LayoutBox.cpp:
(WebCore::Layout::Box::isBlockContainerBox const):
- layout/layouttree/LayoutTreeBuilder.cpp:
(WebCore::Layout::TreeBuilder::createLayoutBox):
(WebCore::Layout::TreeBuilder::buildTableStructure):
LayoutTests:
- fast/layoutformattingcontext/table-simple-with-border-expected.txt: Added.
- fast/layoutformattingcontext/table-simple-with-border.html: Added.
- 10:05 AM Changeset in webkit [261301] by
-
- 8 edits in branches/safari-609-branch/Source
Versioning.
- 9:51 AM Changeset in webkit [261300] by
-
- 6 edits in trunk/Source/WebCore
Make debug build run in accessibility isolated tree mode = 1.
https://bugs.webkit.org/show_bug.cgi?id=211567
Reviewed by Chris Fleizach.
- Removed several unnecessary ASSERTs that prevent debug builds to run
in isolated tree mode = 1, i.e., isolated tree mode on main thread.
- AXIsolatedObject::children and updateBackingStore need to be executed
on both threads.
- accessibility/isolatedtree/AXIsolatedObject.cpp:
(WebCore::AXIsolatedObject::detachRemoteParts):
(WebCore::AXIsolatedObject::children): Need to update the children
regardless of the thread in which it is invoked. Pending, must add a
lock to prevent thread collision.
(WebCore::AXIsolatedObject::updateBackingStore): Need to update the
backing store regardless of the thread in whhich it is invoked.
- accessibility/isolatedtree/AXIsolatedTree.cpp:
(WebCore::AXIsolatedTree::generateSubtree):
(WebCore::AXIsolatedTree::setRootNodeID):
- accessibility/mac/WebAccessibilityObjectWrapperBase.mm: Enable
isolated tree mode = 1.
(-[WebAccessibilityObjectWrapperBase detach]):
(-[WebAccessibilityObjectWrapperBase axBackingObject]):
- accessibility/mac/WebAccessibilityObjectWrapperMac.mm: Use makeString
instead of String concatenation as pointed out by Darin Adler in bug 210914.
(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):
(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
(-[WebAccessibilityObjectWrapper accessibilityArrayAttributeValues:index:maxCount:]):
- 9:50 AM Changeset in webkit [261299] by
-
- 20 edits in trunk/Source/WebKit
Simplify several IPC sending call sites in the UIProcess
https://bugs.webkit.org/show_bug.cgi?id=211575
Reviewed by Alex Christensen.
Simplify several IPC sending call sites in the UIProcess by leveraging the fact
that WebPageProxy subclasses IPC::MessageSender.
- UIProcess/Cocoa/TextCheckingController.mm:
(WebKit::TextCheckingController::replaceRelativeToSelection):
(WebKit::TextCheckingController::removeAnnotationRelativeToSelection):
- UIProcess/Cocoa/WebPageProxyCocoa.mm:
(WebKit::WebPageProxy::performDictionaryLookupAtLocation):
(WebKit::WebPageProxy::performDictionaryLookupOfCurrentSelection):
(WebKit::WebPageProxy::insertDictatedTextAsync):
(WebKit::WebPageProxy::speakingErrorOccurred):
(WebKit::WebPageProxy::boundaryEventOccurred):
(WebKit::WebPageProxy::voicesDidChange):
- UIProcess/GeolocationPermissionRequestManagerProxy.cpp:
(WebKit::GeolocationPermissionRequestManagerProxy::didReceiveGeolocationPermissionDecision):
- UIProcess/Inspector/RemoteWebInspectorProxy.cpp:
(WebKit::RemoteWebInspectorProxy::setDiagnosticLoggingAvailable):
- UIProcess/Inspector/WebInspectorProxy.cpp:
(WebKit::WebInspectorProxy::setDiagnosticLoggingAvailable):
- UIProcess/Inspector/gtk/RemoteWebInspectorProxyGtk.cpp:
(WebKit::remoteFileReplaceContentsCallback):
- UIProcess/Inspector/gtk/WebInspectorProxyGtk.cpp:
(WebKit::fileReplaceContentsCallback):
- UIProcess/Inspector/mac/RemoteWebInspectorProxyMac.mm:
(WebKit::RemoteWebInspectorProxy::platformSave):
(WebKit::RemoteWebInspectorProxy::platformAppend):
- UIProcess/Inspector/mac/WebInspectorProxyMac.mm:
(WebKit::WebInspectorProxy::platformSave):
(WebKit::WebInspectorProxy::platformAppend):
- UIProcess/Notifications/NotificationPermissionRequestManagerProxy.cpp:
(WebKit::NotificationPermissionRequestManagerProxy::createRequest):
- UIProcess/UserMediaPermissionRequestManagerProxy.cpp:
(WebKit::UserMediaPermissionRequestManagerProxy::captureDevicesChanged):
(WebKit::UserMediaPermissionRequestManagerProxy::denyRequest):
- UIProcess/WebFrameProxy.cpp:
(WebKit::WebFrameProxy::collapseSelection):
- UIProcess/WebFullScreenManagerProxy.cpp:
(WebKit::WebFullScreenManagerProxy::willEnterFullScreen):
(WebKit::WebFullScreenManagerProxy::didEnterFullScreen):
(WebKit::WebFullScreenManagerProxy::willExitFullScreen):
(WebKit::WebFullScreenManagerProxy::didExitFullScreen):
(WebKit::WebFullScreenManagerProxy::setAnimatingFullScreen):
(WebKit::WebFullScreenManagerProxy::requestExitFullScreen):
(WebKit::WebFullScreenManagerProxy::saveScrollPosition):
(WebKit::WebFullScreenManagerProxy::restoreScrollPosition):
(WebKit::WebFullScreenManagerProxy::setFullscreenInsets):
(WebKit::WebFullScreenManagerProxy::setFullscreenAutoHideDuration):
(WebKit::WebFullScreenManagerProxy::setFullscreenControlsHidden):
- UIProcess/gtk/WebPageProxyGtk.cpp:
(WebKit::WebPageProxy::getCenterForZoomGesture):
- UIProcess/ios/SmartMagnificationController.mm:
(WebKit::SmartMagnificationController::handleSmartMagnificationGesture):
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView ensurePositionInformationIsUpToDate:]):
- UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::handleTwoFingerTapAtPoint):
(WebKit::WebPageProxy::handleStylusSingleTapAtPoint):
(WebKit::WebPageProxy::registerUIProcessAccessibilityTokens):
(WebKit::WebPageProxy::willStartUserTriggeredZooming):
(WebKit::WebPageProxy::potentialTapAtPosition):
(WebKit::WebPageProxy::commitPotentialTap):
(WebKit::WebPageProxy::cancelPotentialTap):
(WebKit::WebPageProxy::tapHighlightAtPosition):
(WebKit::WebPageProxy::handleTap):
(WebKit::WebPageProxy::didRecognizeLongPress):
(WebKit::WebPageProxy::handleDoubleTapForDoubleClickAtPoint):
(WebKit::WebPageProxy::inspectorNodeSearchMovedToPosition):
(WebKit::WebPageProxy::inspectorNodeSearchEndedAtPosition):
(WebKit::WebPageProxy::blurFocusedElement):
(WebKit::WebPageProxy::setIsShowingInputViewForFocusedElement):
(WebKit::WebPageProxy::setFocusedElementValue):
(WebKit::WebPageProxy::setFocusedElementValueAsNumber):
(WebKit::WebPageProxy::setFocusedElementSelectedIndex):
(WebKit::WebPageProxy::computePagesForPrintingAndDrawToPDF):
(WebKit::WebPageProxy::contentSizeCategoryDidChange):
(WebKit::WebPageProxy::generateSyntheticEditingCommand):
- UIProcess/mac/ViewGestureControllerMac.mm:
(WebKit::ViewGestureController::handleMagnificationGestureEvent):
(WebKit::ViewGestureController::handleSmartMagnificationGesture):
- UIProcess/mac/WebPageProxyMac.mm:
(WebKit::WebPageProxy::windowAndViewFramesChanged):
(WebKit::WebPageProxy::setMainFrameIsScrollable):
(WebKit::WebPageProxy::attributedSubstringForCharacterRangeAsync):
(WebKit::WebPageProxy::fontAtSelection):
(WebKit::WebPageProxy::stringSelectionForPasteboard):
(WebKit::WebPageProxy::dataSelectionForPasteboard):
(WebKit::WebPageProxy::readSelectionFromPasteboard):
(WebKit::WebPageProxy::replaceSelectionWithPasteboardData):
(WebKit::WebPageProxy::sendComplexTextInputToPlugin):
(WebKit::WebPageProxy::uppercaseWord):
(WebKit::WebPageProxy::lowercaseWord):
(WebKit::WebPageProxy::capitalizeWord):
(WebKit::WebPageProxy::setSmartInsertDeleteEnabled):
(WebKit::WebPageProxy::registerUIProcessAccessibilityTokens):
(WebKit::WebPageProxy::shouldDelayWindowOrderingForEvent):
(WebKit::WebPageProxy::acceptsFirstMouse):
- 9:39 AM Changeset in webkit [261298] by
-
- 5 edits2 adds in trunk
[LFC][TFC] Set section [top, left] used position.
https://bugs.webkit.org/show_bug.cgi?id=211546
Reviewed by Antti Koivisto.
Source/WebCore:
Test: fast/layoutformattingcontext/table-simple-with-padding.html
- layout/Verification.cpp:
(WebCore::Layout::outputMismatchingBlockBoxInformationIfNeeded):
- layout/tableformatting/TableFormattingContext.cpp:
(WebCore::Layout::TableFormattingContext::layoutInFlowContent):
(WebCore::Layout::TableFormattingContext::setUsedGeometryForSections):
- layout/tableformatting/TableFormattingContext.h:
LayoutTests:
- fast/layoutformattingcontext/table-simple-with-padding-expected.txt: Added.
- fast/layoutformattingcontext/table-simple-with-padding.html: Added.
- 9:38 AM Changeset in webkit [261297] by
-
- 5 edits2 adds in trunk
[Wheel event region] Include listeners on Document
https://bugs.webkit.org/show_bug.cgi?id=211571
Reviewed by Simon Fraser.
Source/WebCore:
Test: fast/scrolling/mac/wheel-event-listener-region-document.html
- style/StyleAdjuster.cpp:
(WebCore::Style::Adjuster::computeEventListenerRegionTypes):
(WebCore::Style::computeEventListenerRegionTypes): Deleted.
Make public and take Node instead of Element.
- style/StyleAdjuster.h:
- style/StyleResolveForDocument.cpp:
(WebCore::Style::resolveForDocument):
Gather event region bits from Document too.
LayoutTests:
- fast/scrolling/mac/wheel-event-listener-region-document-expected.txt: Added.
- fast/scrolling/mac/wheel-event-listener-region-document.html: Added.
- 9:29 AM Changeset in webkit [261296] by
-
- 13 edits1 add in trunk
Unreviewed, reverting r260769.
https://bugs.webkit.org/show_bug.cgi?id=211578
Introduced regressions related to sharing (Requested by
perarne on #webkit).
Reverted changeset:
"[Cocoa] After r258891, r255119 can be reverted"
https://bugs.webkit.org/show_bug.cgi?id=211083
https://trac.webkit.org/changeset/260769
- 9:23 AM Changeset in webkit [261295] by
-
- 1 edit2 deletes in trunk/LayoutTests
Unreviewed, reverting r261251.
Test is failing on iOS
Reverted changeset:
"Add a test for `REGRESSION (r260753): Frequent crashes under
TextIndicator's estimatedTextColorsForRange`"
https://bugs.webkit.org/show_bug.cgi?id=211532
https://trac.webkit.org/changeset/261251
- 9:21 AM Changeset in webkit [261294] by
-
- 2 edits in trunk/Tools
[Flatpak SDK] Fix string.format invocation
Reviewed by Philippe Normand.
- flatpak/flatpakutils.py:
(WebkitFlatpak.run_in_sandbox):
- 9:19 AM Changeset in webkit [261293] by
-
- 4 edits in trunk/Source/JavaScriptCore
Unreviewed, reverting r261260.
Caused 26 JSC test failures
Reverted changeset:
"DFG ByVal nodes with ArrayModes should clobberTop until Fixup
phase runs."
https://bugs.webkit.org/show_bug.cgi?id=211531
https://trac.webkit.org/changeset/261260
- 9:14 AM Changeset in webkit [261292] by
-
- 2 edits in trunk/LayoutTests
Unreviewed, mark html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-source.html as flaky.
This test has been flaky since import from WPT.
- 9:00 AM Changeset in webkit [261291] by
-
- 3 edits in trunk/Source/WebCore
Fix assertions seen when trying to draw an absurdly large shadow
https://bugs.webkit.org/show_bug.cgi?id=211541
rdar://62843377
Reviewed by Geoffrey Garen.
- platform/graphics/IntSize.h:
(WebCore::IntSize::unclampedArea const): Return uint64_t instead of
size_t. Two 32-bit positive integers multiplied fit in a 64-bit integer,
but there's no guarantee they fit in a "pointer sized" integer.
- platform/graphics/ShadowBlur.cpp:
(WebCore::ShadowBlur::drawRectShadow): When comparing an IntSize area with
a FloatSize area, avoid checked overflow by using IntSize::unclampedArea,
which returns something we can compare with a float. Using IntSize::area
meant we'd intentionally crash the process if the area number doesn't fit
in a 32-bit int, which is not important or helpful.
(WebCore::ShadowBlur::drawRectShadowWithTiling): Make sure
ScratchBuffer::scheduleScratchBufferPurge is always called after
ScratchBuffer::getScratchBuffer, even it returns nullptr. An alternative
would have been to change the logic inside getScratchBuffer, but this
seems easier to get right, and no need to optimize the failure case.
(WebCore::ShadowBlur::drawInsetShadowWithTiling): Ditto.
- 8:37 AM Changeset in webkit [261290] by
-
- 3 edits in trunk/Source/WebCore
Fix potential threading issue in AudioMediaStreamTrackRendererCocoa::render
https://bugs.webkit.org/show_bug.cgi?id=211560
Reviewed by Eric Carlson.
When the audio description is updated, the audio renderer is creating a new AudioSampleDataSource.
The refing of the source in the render method is not sufficient to protect agains the change.
For that purpose, we keep a separate reference to the source that is only used in the render method/render thread.
We add a boolean that tells the render method whether to update its source reference.
As long as the source reference is not updated, no new source will be created n the method processing the pushed samples.
- platform/mediastream/mac/AudioMediaStreamTrackRendererCocoa.cpp:
(WebCore::AudioMediaStreamTrackRendererCocoa::pushSamples):
(WebCore::AudioMediaStreamTrackRendererCocoa::render):
- platform/mediastream/mac/AudioMediaStreamTrackRendererCocoa.h:
- 8:32 AM Changeset in webkit [261289] by
-
- 3 edits1 delete in trunk/LayoutTests
[GTK][WPE] Gardening, update test expectations
https://bugs.webkit.org/show_bug.cgi?id=211573
Review of several test failures that could be closed. Updated test
expectations accordingly.
- platform/gtk/TestExpectations:
- platform/wpe/TestExpectations:
- platform/wpe/imported/w3c/web-platform-tests/css/css-transitions/properties-value-auto-001-expected.txt: Removed.
- 8:01 AM Changeset in webkit [261288] by
-
- 17 edits in trunk/Source/WebKit
[iOS] AuxiliaryProcessProxy::sendWithAsyncReply() should prevent auxiliary process suspension while processing the IPC
https://bugs.webkit.org/show_bug.cgi?id=209928
Reviewed by Youenn Fablet.
AuxiliaryProcessProxy::sendWithAsyncReply() should prevent auxiliary process suspension
on iOS while processing the IPC. If the process is suspended either before or during
the IPC, this could result in hangs. This is a speculative fix for the flaky timeouts
we see on many tests on iOS only. We know that missing activities with
sendWithAsyncReply has caused test timeouts in the past (Bug 211421).
- UIProcess/AuxiliaryProcessProxy.cpp:
(WebKit::AuxiliaryProcessProxy::sendMessage):
- UIProcess/AuxiliaryProcessProxy.h:
(WebKit::AuxiliaryProcessProxy::sendWithAsyncReply):
- UIProcess/GPU/GPUProcessProxy.cpp:
(WebKit::GPUProcessProxy::getGPUProcessConnection):
- UIProcess/GPU/GPUProcessProxy.h:
- UIProcess/Network/NetworkProcessProxy.cpp:
(WebKit::NetworkProcessProxy::getNetworkProcessConnection):
(WebKit::NetworkProcessProxy::setUseITPDatabase):
(WebKit::NetworkProcessProxy::resetCacheMaxAgeCapForPrevalentResources):
(WebKit::NetworkProcessProxy::resetParametersToDefaultValues):
(WebKit::NetworkProcessProxy::scheduleClearInMemoryAndPersistent):
(WebKit::NetworkProcessProxy::resetCrossSiteLoadsWithLinkDecorationForTesting):
(WebKit::NetworkProcessProxy::setAppBoundDomainsForResourceLoadStatistics):
(WebKit::NetworkProcessProxy::setShouldDowngradeReferrerForTesting):
(WebKit::NetworkProcessProxy::setThirdPartyCookieBlockingMode):
(WebKit::NetworkProcessProxy::setShouldEnbleSameSiteStrictEnforcementForTesting):
(WebKit::NetworkProcessProxy::setFirstPartyWebsiteDataRemovalModeForTesting):
(WebKit::NetworkProcessProxy::sendPrepareToSuspend):
- UIProcess/Network/NetworkProcessProxy.h:
- UIProcess/Plugins/PluginProcessProxy.cpp:
(WebKit::PluginProcessProxy::PluginProcessProxy):
- UIProcess/Plugins/PluginProcessProxy.h:
- UIProcess/ProcessThrottler.h:
(WebKit::ProcessThrottler::Activity::Activity):
(WebKit::ProcessThrottler::Activity::isQuietActivity const):
(WebKit::ProcessThrottler::Activity::invalidate):
- UIProcess/UserMediaPermissionRequestManagerProxy.cpp:
(WebKit::UserMediaPermissionRequestManagerProxy::finishGrantingRequest):
- UIProcess/WebBackForwardCacheEntry.cpp:
(WebKit::WebBackForwardCacheEntry::~WebBackForwardCacheEntry):
- UIProcess/WebCookieManagerProxy.cpp:
(WebKit::WebCookieManagerProxy::getHostnamesWithCookies):
(WebKit::WebCookieManagerProxy::deleteCookie):
(WebKit::WebCookieManagerProxy::deleteAllCookiesModifiedSince):
(WebKit::WebCookieManagerProxy::setCookies):
(WebKit::WebCookieManagerProxy::getAllCookies):
(WebKit::WebCookieManagerProxy::getCookies):
(WebKit::WebCookieManagerProxy::setHTTPCookieAcceptPolicy):
(WebKit::WebCookieManagerProxy::getHTTPCookieAcceptPolicy):
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::getProcessDisplayName):
- UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::setThirdPartyCookieBlockingMode):
(WebKit::WebProcessProxy::fetchWebsiteData):
(WebKit::WebProcessProxy::deleteWebsiteData):
(WebKit::WebProcessProxy::deleteWebsiteDataForOrigins):
(WebKit::WebProcessProxy::sendPrepareToSuspend):
(WebKit::WebProcessProxy::activePagesDomainsForTesting):
(WebKit::WebProcessProxy::establishServiceWorkerContext):
- UIProcess/WebProcessProxy.h:
- UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::insertTextPlaceholder):
(WebKit::WebPageProxy::removeTextPlaceholder):
(WebKit::WebPageProxy::requestAutocorrectionData):
(WebKit::WebPageProxy::requestEvasionRectsAboveSelection):
(WebKit::WebPageProxy::updateSelectionWithDelta):
(WebKit::WebPageProxy::requestDocumentEditingContext):
(WebKit::WebPageProxy::insertDroppedImagePlaceholders):
- 7:47 AM Changeset in webkit [261287] by
-
- 2 edits in trunk/Tools
[Flatpak SDK] Doesn't generate crash logs on the bots
https://bugs.webkit.org/show_bug.cgi?id=211568
Patch by Philippe Normand <pnormand@igalia.com> on 2020-05-07
Reviewed by Carlos Alberto Lopez Perez.
- flatpak/flatpakutils.py:
(WebkitFlatpak.run_in_sandbox): Bind-mount the
WEBKIT_CORE_DUMPS_DIRECTORY so that the crash-log generator is
able to write crash log reports there.
- 7:37 AM Changeset in webkit [261286] by
-
- 2 edits in trunk/Tools
Unskip the test since it should now be passing
Unreviewed test gardening.
- TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm:
- 7:29 AM Changeset in webkit [261285] by
-
- 2 edits in trunk/Source/WebCore
Fix for crash in AXIsolatedObject::identifierAttribute.
https://bugs.webkit.org/show_bug.cgi?id=211565
Reviewed by Chris Fleizach.
Covered by existing tests.
When adding the identifierAttribute property to the AXIsolatedObject's
properties map, must make an isolatedCopy of it in order to retrieve it
on the secondary thread.
- accessibility/isolatedtree/AXIsolatedObject.cpp:
(WebCore::AXIsolatedObject::initializeAttributeData):
- 7:26 AM Changeset in webkit [261284] by
-
- 2 edits in trunk/Source/WebKit
[GTK] REGRESSION(r260996): Pressing <Tab> in an HTTP authentication dialog makes the dialog lose focus
https://bugs.webkit.org/show_bug.cgi?id=211555
Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2020-05-07
Reviewed by Philippe Normand.
Bring back webkitWebViewBaseFocus to GTK3. I made it GTK4 only by mistake in r260996.
- UIProcess/API/gtk/WebKitWebViewBase.cpp:
(webkitWebViewBaseFocus):
(webkit_web_view_base_class_init):
- 7:16 AM Changeset in webkit [261283] by
-
- 3 edits in trunk/LayoutTests
[GTK][WPE] Gardening, update test expectations after r261251
https://bugs.webkit.org/show_bug.cgi?id=211570
Unreviewed gardening.
- platform/gtk/TestExpectations:
- platform/wpe/TestExpectations:
- 6:42 AM Changeset in webkit [261282] by
-
- 4 edits in trunk
[GTK] Test failures after Flatpak upgrade
https://bugs.webkit.org/show_bug.cgi?id=211497
Reviewed by Adrian Perez de Castro.
Tools:
- flatpak/flatpakutils.py:
(WebkitFlatpak.run_in_sandbox): Don't set WEBKIT_TOP_LEVEL. I'm
not sure why it's needed at all. If it needs to be set it should
be /app/webkit/ anyway. Setting it to /app triggers test failures
due to invalid computed paths by internals' pathToLocalResource().
LayoutTests:
- platform/gtk/TestExpectations: Unflag fixed tests. The webgl
failures seem more related to bug #211338 actually.
- 6:12 AM Changeset in webkit [261281] by
-
- 3 edits in trunk/LayoutTests
[GTK] Gardening, update baselines after r261248
https://bugs.webkit.org/show_bug.cgi?id=211562
Unreviewed gardening.
- accessibility/gtk/object-attributes-expected.txt:
- platform/gtk/accessibility/lists-expected.txt:
- 5:41 AM Changeset in webkit [261280] by
-
- 3 edits in trunk/Tools
Unreviewed. Fix GTK4 build with current GTK
GtkWindow and GtkOverlay aren't a GtkContainer anymore.
- MiniBrowser/gtk/BrowserTab.c:
(browserTabConstructed):
- MiniBrowser/gtk/BrowserWindow.c:
(browser_window_init):
- 4:16 AM Changeset in webkit [261279] by
-
- 13 edits2 adds in trunk
Add basic support for generating accurate wheel event listener region
https://bugs.webkit.org/show_bug.cgi?id=211512
Reviewed by Simon Fraser.
Source/WebCore:
Add fake properties for wheel event listeners to RenderStyle and use them to
generate regions in EventRegion. There is a separate region for non-passive
wheel event listeners (that will require synchronous handling).
The generated regions are not used for anything in this patch.
Style is not yet invalided on event listener additions and removals.
Test: fast/scrolling/mac/wheel-event-listener-region-basic.html
- dom/Node.h:
- rendering/EventRegion.cpp:
(WebCore::EventRegion::unite):
(WebCore::EventRegion::uniteEventListeners):
(WebCore::EventRegion::dump const):
- rendering/EventRegion.h:
- rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateEventRegion):
- rendering/style/RenderStyle.h:
(WebCore::RenderStyle::eventListenerRegionTypes const):
(WebCore::RenderStyle::setEventListenerRegionTypes):
- rendering/style/RenderStyleConstants.h:
- rendering/style/StyleRareInheritedData.cpp:
(WebCore::StyleRareInheritedData::StyleRareInheritedData):
(WebCore::StyleRareInheritedData::operator== const):
- rendering/style/StyleRareInheritedData.h:
- style/StyleAdjuster.cpp:
(WebCore::Style::computeEventListenerRegionTypes):
(WebCore::Style::Adjuster::adjust const):
LayoutTests:
- fast/scrolling/mac/wheel-event-listener-region-basic-expected.txt: Added.
- fast/scrolling/mac/wheel-event-listener-region-basic.html: Added.
- 2:36 AM Changeset in webkit [261278] by
-
- 4 edits in trunk/Source/WebKit
[GTK] Build warning fixes
Rubber-stamped by Žan Doberšek.
- UIProcess/API/gtk/WebKitWebViewBase.cpp:
(webkitWebViewBaseGrabFocus):
- UIProcess/GPU/GPUProcessProxy.cpp:
(WebKit::GPUProcessProxy::getGPUProcessConnection):
- UIProcess/Network/NetworkProcessProxy.cpp:
(WebKit::NetworkProcessProxy::getNetworkProcessConnection):
- 2:23 AM Changeset in webkit [261277] by
-
- 13 edits in trunk/Source
Sending WebRTC network packets should not go through the main thread
https://bugs.webkit.org/show_bug.cgi?id=211291
Reviewed by Eric Carlson.
Source/WebCore:
Covered by existing tests.
- Modules/mediastream/PeerConnectionBackend.cpp:
(WebCore::PeerConnectionBackend::filterSDP const):
Fix a case where the SDP would be badly formatted if we do not have yet a MDNS name for the corresponding IP address.
Small refactoring to use early returns.
- platform/mediastream/libwebrtc/LibWebRTCProvider.cpp:
(WebCore::LibWebRTCProvider::getStaticFactoryAndThreads):
- platform/mediastream/libwebrtc/LibWebRTCProvider.h:
Add the ability for WebKit LibWebRTCProvider to do some processing on creation of the RTC threads.
Source/WebKit:
Following on receiving RTC packets from a background thread, we also send RTC packets from a background thread.
Creation of the sockets also happens in a background thread.
LibWebRTCNetwork is getting the connection whenever a new connection to network process is created.
It will then hop to the RTC network thread to set the IPC connection to the libwebrtc socket factory.
At creation of the socket, we get the IPC connection to the network process and keep a ref in the RTC socket.
In case network process crashed and the IPC connection of the RTC network is null, we hop to the main thread to create a new IPC connection.
This will fail the creation of the socket (as well as new ones as well) as long as the IPC connection to network process is not valid again.
Covered by existing tests.
- WebProcess/Network/webrtc/LibWebRTCNetwork.cpp:
(WebKit::LibWebRTCNetwork::setAsActive):
(WebKit::LibWebRTCNetwork::setConnection):
(WebKit::LibWebRTCNetwork::dispatchToThread):
- WebProcess/Network/webrtc/LibWebRTCNetwork.h:
(WebKit::LibWebRTCNetwork::connection):
(WebKit::LibWebRTCNetwork::isActive const):
- WebProcess/Network/webrtc/LibWebRTCProvider.cpp:
(WebKit::LibWebRTCProvider::startedNetworkThread):
- WebProcess/Network/webrtc/LibWebRTCProvider.h:
- WebProcess/Network/webrtc/LibWebRTCSocket.cpp:
(WebKit::LibWebRTCSocket::SendTo):
(WebKit::LibWebRTCSocket::Close):
(WebKit::LibWebRTCSocket::SetOption):
(WebKit::LibWebRTCSocket::suspend):
- WebProcess/Network/webrtc/LibWebRTCSocket.h:
- WebProcess/Network/webrtc/LibWebRTCSocketFactory.cpp:
(WebKit::LibWebRTCSocketFactory::setConnection):
(WebKit::LibWebRTCSocketFactory::connection):
(WebKit::LibWebRTCSocketFactory::createServerTcpSocket):
(WebKit::LibWebRTCSocketFactory::createUdpSocket):
(WebKit::LibWebRTCSocketFactory::createClientTcpSocket):
(WebKit::LibWebRTCSocketFactory::createNewConnectionSocket):
(WebKit::LibWebRTCSocketFactory::addSocket):
(WebKit::LibWebRTCSocketFactory::removeSocket):
(WebKit::LibWebRTCSocketFactory::forSocketInGroup):
- WebProcess/Network/webrtc/LibWebRTCSocketFactory.h:
- 2:05 AM Changeset in webkit [261276] by
-
- 2 edits in trunk/Source/WebKit
[GTK4] Stop using the GtkWidget.destroy vfunc
https://bugs.webkit.org/show_bug.cgi?id=211553
Reviewed by Carlos Garcia Campos.
No new tests needed.
- UIProcess/API/gtk/WebKitWebViewBase.cpp:
(webkitWebViewBaseDestroy): Removed.
(webkitWebViewBaseDispose): Bring in the code from the removed function, adapt
to use g_clear_pointer() to destroy the nested dialog.
(webkit_web_view_base_class_init): Do not set the GtkWidget.destroy vfunc.
- 1:40 AM Changeset in webkit [261275] by
-
- 4 edits in trunk
[WPE][Qt] Enable by default
https://bugs.webkit.org/show_bug.cgi?id=211517
Patch by Philippe Normand <pnormand@igalia.com> on 2020-05-07
Reviewed by Adrian Perez de Castro.
.:
- Source/cmake/OptionsWPE.cmake: Now that the EWS and bots use the
Flatpak SDK, Qt5 libs are available so we can enable the module
and have bots run its tests.
Source/WebKit:
- PlatformWPE.cmake: Fix WPEQt build.
- 1:33 AM Changeset in webkit [261274] by
-
- 4 edits158 adds in trunk
[Flatpak SDK] Import build definitions
https://bugs.webkit.org/show_bug.cgi?id=211448
Reviewed by Carlos Alberto Lopez Perez.
To build the SDK, run
Tools/Scripts/webkit-flatpak-sdk --build,
this can take hours and use gigabytes of your hard-drive. To build
a single recipe, use something like:
Tools/Scripts/bst-wrapper build sdk/gtk.bst
To enter the Buildstream SDK shell and debug stuff when hacking on
a specific dependency,Tools/Scripts/bst-wrapper shell sdk/gtk.bst.
To test your changes in WebKit:
`shell
$ Tools/Scripts/webkit-flatpak -u --repo=Tools/buildstream/repo
$ Tools/Scripts/run-minibrowser --gtk --flatpak-repo=Tools/buildstream/repo <url>
...
`
bst-wrapper has the same options as bst itself, documented on
https://docs.buildstream.build/1.4.2/index.html.
Internally the bst-wrapper will install Buildstream and a few
other python dependencies in a local virtualenv managed by pipenv.
This is all abstracted though, in theory direct access to the
pipenv environment shouldn't be needed.
- Scripts/bst-wrapper: Added.
- Scripts/webkit-flatpak-sdk: Added.
- buildstream/Makefile: Added.
- buildstream/Pipfile: Added.
- buildstream/Pipfile.lock: Added.
- buildstream/elements/filtered-openh264.bst: Added.
- buildstream/elements/filtered.bst: Added.
- buildstream/elements/flatpak-platform-extensions.bst: Added.
- buildstream/elements/flatpak-runtimes.bst: Added.
- buildstream/elements/flatpak/platform-arch-libs-debug.bst: Added.
- buildstream/elements/flatpak/platform-arch-libs.bst: Added.
- buildstream/elements/flatpak/platform-image.bst: Added.
- buildstream/elements/flatpak/platform-locale.bst: Added.
- buildstream/elements/flatpak/platform.bst: Added.
- buildstream/elements/flatpak/sdk-arch-libs-debug.bst: Added.
- buildstream/elements/flatpak/sdk-arch-libs.bst: Added.
- buildstream/elements/flatpak/sdk-debug.bst: Added.
- buildstream/elements/flatpak/sdk-docs.bst: Added.
- buildstream/elements/flatpak/sdk-image.bst: Added.
- buildstream/elements/flatpak/sdk-locale.bst: Added.
- buildstream/elements/flatpak/sdk.bst: Added.
- buildstream/elements/freedesktop-sdk.bst: Added.
- buildstream/elements/manifests/platform-manifest.bst: Added.
- buildstream/elements/manifests/sdk-manifest.bst: Added.
- buildstream/elements/qt5.bst: Added.
- buildstream/elements/qt5/qtbase.bst: Added.
- buildstream/elements/qt5/qtdeclarative.bst: Added.
- buildstream/elements/qt5/qtquickcontrols.bst: Added.
- buildstream/elements/qt5/qtquickcontrols2.bst: Added.
- buildstream/elements/qt5/qtwayland.bst: Added.
- buildstream/elements/qt5/qtx11extras.bst: Added.
- buildstream/elements/sdk-build-depends/libusb.bst: Added.
- buildstream/elements/sdk-build-depends/sassc.bst: Added.
- buildstream/elements/sdk-build-depends/utf8proc.bst: Added.
- buildstream/elements/sdk-depends/libsass.bst: Added.
- buildstream/elements/sdk-platform.bst: Added.
- buildstream/elements/sdk.bst: Added.
- buildstream/elements/sdk/adwaita-icon-theme.bst: Added.
- buildstream/elements/sdk/at-spi2-atk.bst: Added.
- buildstream/elements/sdk/at-spi2-core.bst: Added.
- buildstream/elements/sdk/atk.bst: Added.
- buildstream/elements/sdk/brotli.bst: Added.
- buildstream/elements/sdk/capnp.bst: Added.
- buildstream/elements/sdk/enchant-2.bst: Added.
- buildstream/elements/sdk/glib-networking.bst: Added.
- buildstream/elements/sdk/glib.bst: Added.
- buildstream/elements/sdk/gobject-introspection.bst: Added.
- buildstream/elements/sdk/graphene.bst: Added.
- buildstream/elements/sdk/graphviz.bst: Added.
- buildstream/elements/sdk/gst-libav.bst: Added.
- buildstream/elements/sdk/gst-plugins-bad.bst: Added.
- buildstream/elements/sdk/gst-plugins-base.bst: Added.
- buildstream/elements/sdk/gst-plugins-good.bst: Added.
- buildstream/elements/sdk/gst-plugins-ugly.bst: Added.
- buildstream/elements/sdk/gstreamer.bst: Added.
- buildstream/elements/sdk/gtk+-3.bst: Added.
- buildstream/elements/sdk/gtk.bst: Added.
- buildstream/elements/sdk/icecc.bst: Added.
- buildstream/elements/sdk/intltool.bst: Added.
- buildstream/elements/sdk/krb5.bst: Added.
- buildstream/elements/sdk/libcap-ng.bst: Added.
- buildstream/elements/sdk/libevent.bst: Added.
- buildstream/elements/sdk/libgcrypt.bst: Added.
- buildstream/elements/sdk/libmanette.bst: Added.
- buildstream/elements/sdk/libnotify.bst: Added.
- buildstream/elements/sdk/libopenh264.bst: Added.
- buildstream/elements/sdk/libsecret.bst: Added.
- buildstream/elements/sdk/libsoup.bst: Added.
- buildstream/elements/sdk/libsrtp2.bst: Added.
- buildstream/elements/sdk/libusrsctp.bst: Added.
- buildstream/elements/sdk/libwpe.bst: Added.
- buildstream/elements/sdk/libzstd.bst: Added.
- buildstream/elements/sdk/lzo2.bst: Added.
- buildstream/elements/sdk/openjpeg.bst: Added.
- buildstream/elements/sdk/openxr.bst: Added.
- buildstream/elements/sdk/os-release.bst: Added.
- buildstream/elements/sdk/patchelf.bst: Added.
- buildstream/elements/sdk/psmisc.bst: Added.
- buildstream/elements/sdk/pycairo.bst: Added.
- buildstream/elements/sdk/pygobject.bst: Added.
- buildstream/elements/sdk/python2-pycairo.bst: Added.
- buildstream/elements/sdk/python2-pygobject.bst: Added.
- buildstream/elements/sdk/python2-six.bst: Added.
- buildstream/elements/sdk/python2-subprocess32.bst: Added.
- buildstream/elements/sdk/python2.bst: Added.
- buildstream/elements/sdk/rr.bst: Added.
- buildstream/elements/sdk/sccache.bst: Added.
- buildstream/elements/sdk/shared-mime-info.bst: Added.
- buildstream/elements/sdk/subversion.bst: Added.
- buildstream/elements/sdk/v4lutils.bst: Added.
- buildstream/elements/sdk/woff2.bst: Added.
- buildstream/elements/sdk/wpebackend-fdo.bst: Added.
- buildstream/elements/sdk/x264.bst: Added.
- buildstream/elements/sdk/xorg-server.bst: Added.
- buildstream/elements/test-infra.bst: Added.
- buildstream/elements/test-infra/apr-util.bst: Added.
- buildstream/elements/test-infra/apr.bst: Added.
- buildstream/elements/test-infra/httpd.bst: Added.
- buildstream/elements/test-infra/perl-cgi-pm.bst: Added.
- buildstream/elements/test-infra/perl-http-date-pm.bst: Added.
- buildstream/elements/test-infra/php.bst: Added.
- buildstream/elements/test-infra/webkitgtk-test-dicts.bst: Added.
- buildstream/elements/test-infra/webkitgtk-test-fonts.bst: Added.
- buildstream/files/krb5/krb5.conf: Added.
- buildstream/files/os-release/issue.in: Added.
- buildstream/files/os-release/issue.net.in: Added.
- buildstream/files/os-release/org.webkit.Platform.appdata.xml.in: Added.
- buildstream/files/os-release/org.webkit.Sdk.appdata.xml.in: Added.
- buildstream/files/os-release/os-release.in: Added.
- buildstream/patches/fdo-0001-Update-gcc-to-9.3.0.patch: Added.
- buildstream/patches/fdo/0001-Add-Jack.patch: Added.
- buildstream/patches/fdo/0001-components-xdg-desktop-portal.bst-Update-to-1.6.0.patch: Added.
- buildstream/patches/fdo/0001-ffmpeg-Add-MS-MPEG-DivX-variants.patch: Added.
- buildstream/patches/fdo/0002-Update-PipeWire-to-0.3.1.patch: Added.
- buildstream/patches/fdo/0002-ffmpeg-Add-VP6-and-Sorenson-Spark-video-codecs.patch: Added.
- buildstream/patches/fdo/0003-Add-Bluez.patch: Added.
- buildstream/patches/fdo/0003-ffmpeg-Add-Intel-Indeo-and-Cinepak-video-support.patch: Added.
- buildstream/patches/fdo/0004-ffmpeg-Add-MPEG-2-video-decoder.patch: Added.
- buildstream/patches/fdo/0005-ffmpeg-Add-msmpeg4v3-support.patch: Added.
- buildstream/patches/gst-libav-stop-caching-codecs.patch: Added.
- buildstream/patches/gst-plugins-bad-0001-h264parse-Post-a-WARNING-when-data-is-broken.patch: Added.
- buildstream/patches/gst-plugins-base-0001-glupload-Fix-fallback-from-direct-dmabuf-to-dmabuf-u.patch: Added.
- buildstream/patches/gst-plugins-base-0001-playbin-Handle-error-message-with-redirection-indica.patch: Added.
- buildstream/patches/gst-plugins-base-0002-glupload-fix-segfault.patch: Added.
- buildstream/patches/gst-plugins-good-qtdemux-Specify-REDIRECT-information-in-error-messag.patch: Added.
- buildstream/patches/gtk-meson-Bump-to-latest-version-of-the-3.24-branch.patch: Added.
- buildstream/patches/httpd-0001-configure-use-pkg-config-for-PCRE-detection.patch: Added.
- buildstream/patches/libav-0001-gstavviddec-Limit-default-number-of-decoder-threads.patch: Added.
- buildstream/patches/libgcrypt-0001-Use-pkg-config-to-detect-gpg-error.patch: Added.
- buildstream/patches/libgcrypt-use-only-dev-urandom-for-testing.patch: Added.
- buildstream/patches/libsecret-b53e9876f4611525b7a8f69a3110fbec51dcede0.patch: Added.
- buildstream/patches/nettle-no-debug.diff: Added.
- buildstream/patches/qtbase-avoid-hardcoding-kernel-version.patch: Added.
- buildstream/patches/qtbase-revert-correct-handling-for-xdg-runtime-dir.patch: Added.
- buildstream/patches/qtbase-use-wayland-on-gnome.patch: Added.
- buildstream/patches/qtdeclarative-use-python3.patch: Added.
- buildstream/patches/qtwayland-use-gnome-platform-theme-on-gnome-based-desktops.patch: Added.
- buildstream/patches/sccache-no-selenium.patch: Added.
- buildstream/patches/xserver-search-for-DRI-drivers-at-LIBGL_DRIVERS_PATH-environ.patch: Added.
- buildstream/project.conf: Added.
- buildstream/utils/generate-version: Added.
- gtk/install-dependencies:
- wpe/install-dependencies:
- 12:49 AM Changeset in webkit [261273] by
-
- 6 edits in trunk/Source/WebCore
[WebXR] Implement simulateUserActivation()
https://bugs.webkit.org/show_bug.cgi?id=211516
Reviewed by Youenn Fablet.
simulateUserActivation() is the method used by the WebXR Test API to
mock a user activation and thus let WebXR API think that the user is
behind the request that is going to be made in the function passed as
argument.
No new tests added as the imported WebXR web-platform-tests already make
use of this API.
- testing/WebXRTest.cpp:
(WebCore::WebXRTest::simulateUserActivation): Implemented.
- testing/WebXRTest.h: Added Document parameter.
- testing/WebXRTest.idl: Call with Document.
- testing/XRSimulateUserActivationFunction.h: Removed function params.
- testing/XRSimulateUserActivationFunction.idl: Ditto.
- 12:34 AM Changeset in webkit [261272] by
-
- 3 edits in trunk/LayoutTests
[GTK][WPE] Gardening, update test expectations after r259705
https://bugs.webkit.org/show_bug.cgi?id=211552
Unreviewed gardening.
- platform/gtk/TestExpectations:
- platform/wpe/TestExpectations:
- 12:00 AM Changeset in webkit [261271] by
-
- 8 edits in trunk
Fix broken exceptionFuzz tests.
https://bugs.webkit.org/show_bug.cgi?id=211550
Reviewed by Yusuke Suzuki.
JSTests:
The tests should not be relying on setting a JSC Option at runtime because the
options are already frozen by then. Instead, we set the needed
--useExceptionFuzz=true option from the command line.
- exceptionFuzz/3d-cube.js:
- exceptionFuzz/date-format-xparb.js:
- exceptionFuzz/earley-boyer.js:
Source/JavaScriptCore:
Remove the bad and now unused utility function to set Options::useExceptionFuzz().
- tools/JSDollarVM.cpp:
(JSC::JSDollarVM::finishCreation):
(JSC::functionEnableExceptionFuzz): Deleted.
Tools:
Pass the --useExceptionFuzz=true option from the command line for runExceptionFuzz.
- Scripts/run-jsc-stress-tests:
May 6, 2020:
- 11:36 PM Changeset in webkit [261270] by
-
- 7 edits1 add in trunk/Source/WebKit
Fix webkitpy tests after r261254
https://bugs.webkit.org/show_bug.cgi?id=211112
test.messages.in was accidentally deleted instead of moved, and messages_unittest.py needed to be told of the new locations of results.
The rest is just running the generator to update results.
- Scripts/MessageNames.cpp:
(IPC::description):
(IPC::receiverName):
(IPC::isValidMessageName):
- Scripts/MessageNames.h:
- Scripts/testMessageReceiver.cpp:
(Messages::WebPage::GetPluginProcessConnection::send):
(Messages::WebPage::TestMultipleAttributes::send):
(WebKit::WebPage::didReceiveMessage):
(WebKit::WebPage::didReceiveSyncMessage):
- Scripts/testMessages.h:
(Messages::WebPage::messageReceiverName):
(Messages::WebPage::LoadURL::name):
(Messages::WebPage::LoadURL::LoadURL):
(Messages::WebPage::LoadURL::arguments const):
(Messages::WebPage::LoadSomething::name):
(Messages::WebPage::LoadSomething::LoadSomething):
(Messages::WebPage::LoadSomething::arguments const):
(Messages::WebPage::TouchEvent::name):
(Messages::WebPage::TouchEvent::TouchEvent):
(Messages::WebPage::TouchEvent::arguments const):
(Messages::WebPage::AddEvent::name):
(Messages::WebPage::AddEvent::AddEvent):
(Messages::WebPage::AddEvent::arguments const):
(Messages::WebPage::LoadSomethingElse::name):
(Messages::WebPage::LoadSomethingElse::LoadSomethingElse):
(Messages::WebPage::LoadSomethingElse::arguments const):
(Messages::WebPage::DidReceivePolicyDecision::name):
(Messages::WebPage::DidReceivePolicyDecision::DidReceivePolicyDecision):
(Messages::WebPage::DidReceivePolicyDecision::arguments const):
(Messages::WebPage::Close::name):
(Messages::WebPage::Close::arguments const):
(Messages::WebPage::PreferencesDidChange::name):
(Messages::WebPage::PreferencesDidChange::PreferencesDidChange):
(Messages::WebPage::PreferencesDidChange::arguments const):
(Messages::WebPage::SendDoubleAndFloat::name):
(Messages::WebPage::SendDoubleAndFloat::SendDoubleAndFloat):
(Messages::WebPage::SendDoubleAndFloat::arguments const):
(Messages::WebPage::SendInts::name):
(Messages::WebPage::SendInts::SendInts):
(Messages::WebPage::SendInts::arguments const):
(Messages::WebPage::CreatePlugin::name):
(Messages::WebPage::CreatePlugin::CreatePlugin):
(Messages::WebPage::CreatePlugin::arguments const):
(Messages::WebPage::RunJavaScriptAlert::name):
(Messages::WebPage::RunJavaScriptAlert::RunJavaScriptAlert):
(Messages::WebPage::RunJavaScriptAlert::arguments const):
(Messages::WebPage::GetPlugins::name):
(Messages::WebPage::GetPlugins::GetPlugins):
(Messages::WebPage::GetPlugins::arguments const):
(Messages::WebPage::GetPluginProcessConnection::name):
(Messages::WebPage::GetPluginProcessConnection::GetPluginProcessConnection):
(Messages::WebPage::GetPluginProcessConnection::arguments const):
(Messages::WebPage::TestMultipleAttributes::name):
(Messages::WebPage::TestMultipleAttributes::arguments const):
(Messages::WebPage::TestParameterAttributes::name):
(Messages::WebPage::TestParameterAttributes::TestParameterAttributes):
(Messages::WebPage::TestParameterAttributes::arguments const):
(Messages::WebPage::TemplateTest::name):
(Messages::WebPage::TemplateTest::TemplateTest):
(Messages::WebPage::TemplateTest::arguments const):
(Messages::WebPage::SetVideoLayerID::name):
(Messages::WebPage::SetVideoLayerID::SetVideoLayerID):
(Messages::WebPage::SetVideoLayerID::arguments const):
(Messages::WebPage::DidCreateWebProcessConnection::name):
(Messages::WebPage::DidCreateWebProcessConnection::DidCreateWebProcessConnection):
(Messages::WebPage::DidCreateWebProcessConnection::arguments const):
(Messages::WebPage::InterpretKeyEvent::name):
(Messages::WebPage::InterpretKeyEvent::InterpretKeyEvent):
(Messages::WebPage::InterpretKeyEvent::arguments const):
(Messages::WebPage::DeprecatedOperation::name):
(Messages::WebPage::DeprecatedOperation::DeprecatedOperation):
(Messages::WebPage::DeprecatedOperation::arguments const):
(Messages::WebPage::ExperimentalOperation::name):
(Messages::WebPage::ExperimentalOperation::ExperimentalOperation):
(Messages::WebPage::ExperimentalOperation::arguments const):
(Messages::None::messageReceiverName): Deleted.
- Scripts/testMessagesReplies.h:
- Scripts/webkit/messages_unittest.py:
- Scripts/webkit/test.messages.in: Added.
- 11:18 PM Changeset in webkit [261269] by
-
- 3 edits in trunk/Source/WebKit
Context Menus presented from the wrong location when presented from sub-frames
https://bugs.webkit.org/show_bug.cgi?id=211537
<rdar://problem/60390846>
Reviewed by Tim Horton.
The calculation for bounds for selection Information did not take frames into account,
so if a frame was used, the location would not be correct in the context of the whole
page, so the presentation location ended up being way off.
- UIProcess/ios/forms/WKFileUploadPanel.mm:
(-[WKFileUploadPanel showDocumentPickerMenu]):
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::boundsPositionInformation):
(WebKit::selectionPositionInformation):
- 10:37 PM Changeset in webkit [261268] by
-
- 2 edits in trunk/LayoutTests
Unreviewed, reverting r260737.
Change not needed after r261267.
Reverted changeset:
"[GTK] Gardening, skipping more inspector tests."
https://trac.webkit.org/changeset/260737
- 10:34 PM Changeset in webkit [261267] by
-
- 2 edits in trunk/LayoutTests
Unreviewed, reverting r260713.
Change not needed after r260844.
Reverted changeset:
"[GTK] Gardening, temporarily skip WebInspector tests after
r210942 and r260696"
https://bugs.webkit.org/show_bug.cgi?id=211035
https://trac.webkit.org/changeset/260713
- 10:12 PM Changeset in webkit [261266] by
-
- 5 edits in trunk/LayoutTests
[GTK] Gardening, dump stderr in console log for several web-animation tests
https://bugs.webkit.org/show_bug.cgi?id=211549
Unreviewed gardening.
- platform/gtk/TestExpectations:
- platform/gtk/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-expected.txt:
- platform/gtk/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-expected.txt:
- platform/gtk/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-expected.txt:
- 10:08 PM Changeset in webkit [261265] by
-
- 2 edits in trunk/WebDriverTests
[WebDriver] gardening flaky test.
Unreviewed test gardening.
- TestExpectations.json:
- 8:40 PM Changeset in webkit [261264] by
-
- 5 edits2 adds in trunk/Source
[Win] Implement DisplayRefreshMonitor by using RunLoop::Timer
https://bugs.webkit.org/show_bug.cgi?id=211431
Reviewed by Don Olmstead.
Source/WebCore:
- PlatformWin.cmake:
- platform/graphics/DisplayRefreshMonitor.cpp:
(WebCore::DisplayRefreshMonitor::createDefaultDisplayRefreshMonitor):
- platform/graphics/win/DisplayRefreshMonitorWin.cpp: Added.
(WebCore::DisplayRefreshMonitorWin::create):
(WebCore::DisplayRefreshMonitorWin::DisplayRefreshMonitorWin):
(WebCore::DisplayRefreshMonitorWin::requestRefreshCallback):
(WebCore::DisplayRefreshMonitorWin::displayLinkFired):
- platform/graphics/win/DisplayRefreshMonitorWin.h: Added.
Source/WTF:
USE_REQUEST_ANIMATION_FRAME_DISPLAY_MONITOR is turned off only for Windows ports.
Turn it on, and add DisplayRefreshMonitorWin.
I'll remove USE_REQUEST_ANIMATION_FRAME_DISPLAY_MONITOR macro in a follow-up patch.
- wtf/PlatformUse.h:
- 7:13 PM Changeset in webkit [261263] by
-
- 2 edits in trunk/Source/WebKit
Unreviewed, reverting r260689.
https://bugs.webkit.org/show_bug.cgi?id=211542
"Caused regressions deleting text and filling password fields"
(Requested by ddkilzer on #webkit).
Reverted changeset:
"WebPasteboardProxy::getPasteboardStringsForType() and
WebPasteboardProxy::readURLFromPasteboard() should check
return value of SharedMemory::createHandle()"
https://bugs.webkit.org/show_bug.cgi?id=211002
https://trac.webkit.org/changeset/260689
- 5:27 PM Changeset in webkit [261262] by
-
- 539 edits19 adds160 deletes in trunk/Source/ThirdParty/ANGLE
Update ANGLE to 2020-03-27
https://bugs.webkit.org/show_bug.cgi?id=209689
Reverting r259589. It caused
https://bugs.webkit.org/show_bug.cgi?id=210992
- 5:18 PM Changeset in webkit [261261] by
-
- 7 edits in trunk/Source
[ContentObservation] Shutterstock search bar is not activated on the first tap
https://bugs.webkit.org/show_bug.cgi?id=211529
<rdar://problem/58843932>
Reviewed by Simon Fraser.
Source/WebCore:
- page/Quirks.cpp:
(WebCore::Quirks::shouldIgnoreContentObservationForSyntheticClick const):
- page/Quirks.h:
Source/WebKit:
Shutterstock has a “initial click” action which converts some “actionable” elements (<a>) to some other “actionable” elements (<button>).
If this initial click also happens to be on an element that triggers content observation (input), we see those changes as actionable content and not proceed with the click event (stay at hover).
Any subsequent click works as expected.
It’s very difficult to eliminate such false positives since all we see is that some "actionable" content is going away while some "actionable" content is being created.
This quirk ensures that the first tap on the page does not trigger content observation. (It also means that any hover menu gets submitted on the first tap, but apparently
the Shutterstock top menu bar works fine with click events.)
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::didStartPageTransition):
- WebProcess/WebPage/WebPage.h:
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::handleSyntheticClick):
- 5:00 PM Changeset in webkit [261260] by
-
- 5 edits in trunk
DFG ByVal nodes with ArrayModes should clobberTop until Fixup phase runs.
https://bugs.webkit.org/show_bug.cgi?id=211531
Reviewed by Yusuke Suzuki.
JSTests:
- stress/for-of-get-by-val-marks-clobbers-exit-state.js: Added.
(foo):
- stress/put-by-val-correctly-clobbers-exit-state-when-misprofiling-index.js: Added.
(let.foo.vm.createBuiltin):
Source/JavaScriptCore:
When parsing bytecode we may pick a relatively constrained
ArrayMode based on our profiling. Some of these modes may not
clobber exit state. However, Fixup sometimes wants to widen this
to a more generic mode based on other data. This causes us to
think it was valid to exit immediately after the
GetByVal/HasIndexedProperty, which would be wrong with the wider
ArrayMode. We may also incorrectly insert invalidition points
if clobberize gives us the wrong data.
To fix this clobberize should say All ByVal nodes clobberTop()
until after fixup. Additionally, this patch adds an assertion that
nodes don't go from not clobbering exit state to clobbering exit
state during fixup.
- dfg/DFGClobberize.h:
(JSC::DFG::clobberize):
- dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
(JSC::DFG::performFixup):
- dfg/DFGGraph.h:
- 4:50 PM Changeset in webkit [261259] by
-
- 11 edits1 copy in trunk/Source/WebKit
Use CocoaColor in more places instead of platform defines
https://bugs.webkit.org/show_bug.cgi?id=211527
Reviewed by Darin Adler and Tim Horton.
Use CocoaColor (added in r261247) in more places, and also introduce
CocoaFont.hand use it to simplify some
existing code that uses platform ifdefs for UIFont, NSFont, UIFontDescriptor and NSFontDescriptor.
No change in behavior.
- Platform/cocoa/CocoaColor.h:
- Platform/cocoa/CocoaFont.h: Copied from Source/WebKit/Platform/cocoa/CocoaColor.h.
- Platform/cocoa/CocoaImage.h:
Change
@classes toOBJC_CLASS, so that this header can be safely imported in C++ code.
- Shared/Cocoa/ArgumentCodersCocoa.mm:
(IPC::typeFromObject):
(IPC::isSerializableValue):
(IPC::encodeFontInternal):
(IPC::encodeObject):
(IPC::platformColorClass): Deleted.
(IPC::platformFontClass): Deleted.
- Shared/Cocoa/CoreTextHelpers.h:
- Shared/Cocoa/CoreTextHelpers.mm:
(WebKit::fontWithAttributes):
- Shared/Cocoa/WebCoreArgumentCodersCocoa.mm:
- UIProcess/Cocoa/WKSafeBrowsingWarning.h:
- UIProcess/Cocoa/WKSafeBrowsingWarning.mm:
(fontOfSize):
(colorForItem):
(-[WKSafeBrowsingBox setSafeBrowsingBackgroundColor:]):
(-[WKSafeBrowsingWarning showDetailsClicked]):
(-[WKSafeBrowsingTextView initWithAttributedString:forWarning:]):
- UIProcess/Cocoa/WebViewImpl.mm:
(WebKit::WebViewImpl::updateFontManagerIfNeeded):
- WebKit.xcodeproj/project.pbxproj:
- 4:16 PM Changeset in webkit [261258] by
-
- 3 edits2 adds in trunk
Nullptr crash in indentOutdentCommand::formatRange with asynchronous commands: indent and insert list.
https://bugs.webkit.org/show_bug.cgi?id=211466
<rdar://problem/62845430>
Reviewed by Geoffrey Garen.
Source/WebCore:
Check for null outerBlock returned by splitTreeToNode and bail out.
Test: fast/editing/indent-then-insertUL-crash.html
- editing/IndentOutdentCommand.cpp:
(WebCore::IndentOutdentCommand::indentIntoBlockquote):
LayoutTests:
Added a regression test for the crash.
- fast/editing/indent-then-insertUL-crash-expected.txt: Added.
- fast/editing/indent-then-insertUL-crash.html: Added.
- 4:01 PM Changeset in webkit [261257] by
-
- 11 edits in trunk/Source
Make a helper for the pattern of ICU functions that may need to be called twice to populate a buffer
https://bugs.webkit.org/show_bug.cgi?id=211499
Reviewed by Ross Kirsling.
Source/JavaScriptCore:
- runtime/IntlDateTimeFormat.cpp:
(JSC::defaultTimeZone): Use callBufferProducingFunction.
(JSC::canonicalizeTimeZoneName): Ditto.
(JSC::IntlDateTimeFormat::initializeDateTimeFormat): Ditto.
(JSC::IntlDateTimeFormat::format const): Ditto.
(JSC::IntlDateTimeFormat::formatToParts const): Ditto.
- runtime/IntlLocale.cpp:
(JSC::LocaleIDBuilder::toCanonical): Ditto.
(JSC::IntlLocale::language): Ditto.
(JSC::IntlLocale::script): Ditto.
(JSC::IntlLocale::region): Ditto.
- runtime/IntlNumberFormat.cpp:
(JSC::IntlNumberFormat::format const): Ditto.
(JSC::IntlNumberFormat::formatToParts const): Ditto.
- runtime/IntlObject.cpp:
(JSC::languageTagForLocaleID): Ditto.
- runtime/IntlRelativeTimeFormat.cpp:
(JSC::IntlRelativeTimeFormat::formatInternal const): Ditto.
(JSC::IntlRelativeTimeFormat::formatToParts const): Ditto.
- runtime/StringPrototype.cpp:
(JSC::toLocaleCase): Ditto.
Source/WebCore:
- editing/TextIterator.cpp:
(WebCore::normalizeCharacters): Use callBufferProducingFunction.
Source/WTF:
This first cut version is ready to be used in most, but not all, of the places we use the
needsToGrowToProduceBuffer function. The places it is not right for yet are ones that have
special considerations because of null character termination or destinations that are
not a Vector. Later we can refine that further, if we like, and possibly use something
similar in call sites that use needsToGrowToProduceCString as well.
- wtf/unicode/icu/ICUHelpers.h:
(WTF::needsToGrowToProduceBuffer): Changed to constexpr, since we can.
(WTF::needsToGrowToProduceCString): Ditto.
(WTF::CallBufferProducingFunction::findVector): Added. Implementation detail
of callBufferProducingFunction.
(WTF::CallBufferProducingFunction::argumentTuple): Ditto.
(WTF::callBufferProducingFunction): Added.
- 3:56 PM Changeset in webkit [261256] by
-
- 4 edits in trunk/Source/WebCore
REGRESSION (r261056): [ Mac WK1 ] inspector/console/console-api.html is flaky crashing
https://bugs.webkit.org/show_bug.cgi?id=211386
Reviewed by Tim Horton.
This bug was caused by the failure to clear the delegate on an NSScrollerImp when, for testing,
we flip between the native scrollbar theme, and the mock scrollbar theme.
The crux of the fix is to have ScrollAnimatorMac's scrollerImpForScrollbar() call a
static function on ScrollbarThemeMac to get the painters, rather than going through
the possibly-null ScrollbarThemeMac instance.
A belt-and-braces fix in ScrollbarThemeMac::unregisterScrollbar() always clears the delegate
on the NSScrollerImp when unregistering a scrollbar.
Finally, modernize code in various places.
- platform/mac/ScrollAnimatorMac.mm:
(WebCore::scrollerImpForScrollbar):
(WebCore::ScrollAnimatorMac::updateScrollerStyle):
- platform/mac/ScrollbarThemeMac.h:
- platform/mac/ScrollbarThemeMac.mm:
(WebCore::scrollbarMap):
(+[WebScrollbarPrefsObserver appearancePrefsChanged:]):
(WebCore::ScrollbarThemeMac::registerScrollbar):
(WebCore::ScrollbarThemeMac::unregisterScrollbar):
(WebCore::ScrollbarThemeMac::setNewPainterForScrollbar):
(WebCore::ScrollbarThemeMac::painterForScrollbar):
(WebCore::ScrollbarThemeMac::hasThumb):
(WebCore::ScrollbarThemeMac::minimumThumbLength):
(WebCore::ScrollbarThemeMac::updateEnabledState):
(WebCore::ScrollbarThemeMac::paint):
- 3:55 PM Changeset in webkit [261255] by
-
- 3 edits2 adds in trunk
Nullptr crash in InsertListCommand::doApply with user-select:none elements
https://bugs.webkit.org/show_bug.cgi?id=211534
<rdar://problem/62898521>
Reviewed by Geoffrey Garen.
Source/WebCore:
Check for empty position in InsertListCommand::doApply when searching for the start of
last paragraph in the selected range. Skip listifying individual paragraphs in the range.
Test: editing/inserting/insert-list-user-select-none-crash.html
- editing/InsertListCommand.cpp:
(WebCore::InsertListCommand::doApply):
LayoutTests:
Added a regression test for the crash.
- editing/inserting/insert-list-user-select-none-crash-expected.txt: Added.
- editing/inserting/insert-list-user-select-none-crash.html: Added.
- 3:54 PM Changeset in webkit [261254] by
-
- 65 edits2 copies9 moves2 adds3 deletes in trunk/Source
Reduce IPC overhead for message receiver name and message name to 2 bytes
https://bugs.webkit.org/show_bug.cgi?id=211112
Patch by Alex Christensen <achristensen@webkit.org> on 2020-05-06
Reviewed by Chris Dumez.
Source/WebKit:
- DerivedSources-output.xcfilelist:
- DerivedSources.make:
- GPUProcess/GPUConnectionToWebProcess.cpp:
(WebKit::GPUConnectionToWebProcess::didReceiveInvalidMessage):
- GPUProcess/GPUConnectionToWebProcess.h:
- NetworkProcess/NetworkConnectionToWebProcess.cpp:
(WebKit::NetworkConnectionToWebProcess::didReceiveMessage):
(WebKit::NetworkConnectionToWebProcess::didReceiveSyncMessage):
(WebKit::NetworkConnectionToWebProcess::didReceiveInvalidMessage):
- NetworkProcess/NetworkConnectionToWebProcess.h:
- NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::didReceiveMessage):
(WebKit::NetworkProcess::didReceiveSyncMessage):
- NetworkProcess/ios/NetworkConnectionToWebProcessIOS.mm:
(WebKit::NetworkConnectionToWebProcess::paymentCoordinatorAddMessageReceiver): Deleted.
(WebKit::NetworkConnectionToWebProcess::paymentCoordinatorRemoveMessageReceiver): Deleted.
- Platform/IPC/Connection.cpp:
(IPC::Connection::WaitForMessageState::WaitForMessageState):
(IPC::Connection::addWorkQueueMessageReceiver):
(IPC::Connection::removeWorkQueueMessageReceiver):
(IPC::Connection::dispatchWorkQueueMessageReceiverMessage):
(IPC::Connection::addThreadMessageReceiver):
(IPC::Connection::removeThreadMessageReceiver):
(IPC::Connection::dispatchThreadMessageReceiverMessage):
(IPC::Connection::createSyncMessageEncoder):
(IPC::Connection::sendMessage):
(IPC::Connection::waitForMessage):
(IPC::Connection::sendSyncMessage):
(IPC::Connection::waitForSyncReply):
(IPC::Connection::processIncomingMessage):
(IPC::Connection::dispatchSyncMessage):
(IPC::Connection::dispatchDidReceiveInvalidMessage):
(IPC::Connection::dispatchMessage):
(IPC::Connection::dispatchMessageToWorkQueueReceiver):
(IPC::Connection::dispatchMessageToThreadReceiver):
(IPC::Connection::dispatchIncomingMessages):
- Platform/IPC/Connection.h:
(IPC::Connection::send):
(IPC::Connection::sendWithAsyncReply):
(IPC::Connection::sendSync):
(IPC::Connection::waitForAndDispatchImmediately):
- Platform/IPC/Decoder.cpp:
- Platform/IPC/Decoder.h:
(IPC::Decoder::messageReceiverName const):
(IPC::Decoder::messageName const):
(IPC::Decoder::decode):
(IPC::Decoder::operator>>):
- Platform/IPC/Encoder.cpp:
(IPC::Encoder::Encoder):
(IPC::Encoder::encodeHeader):
- Platform/IPC/Encoder.h:
- Platform/IPC/HandleMessage.h:
(IPC::handleMessageAsync):
- Platform/IPC/MessageReceiverMap.cpp:
(IPC::MessageReceiverMap::addMessageReceiver):
(IPC::MessageReceiverMap::removeMessageReceiver):
(IPC::MessageReceiverMap::dispatchMessage):
(IPC::MessageReceiverMap::dispatchSyncMessage):
- Platform/IPC/MessageReceiverMap.h:
- Platform/IPC/MessageSender.h:
- Platform/IPC/cocoa/ConnectionCocoa.mm:
(IPC::Connection::open):
(IPC::Connection::sendMessage):
(IPC::Connection::sendOutgoingMessage):
(IPC::Connection::receiveSourceEventHandler):
- Platform/IPC/cocoa/MachMessage.cpp:
(IPC::MachMessage::create):
(IPC::MachMessage::MachMessage):
- Platform/IPC/cocoa/MachMessage.h:
(IPC::MachMessage::messageReceiverName const):
(IPC::MachMessage::messageName const):
- PluginProcess/WebProcessConnection.cpp:
(WebKit::WebProcessConnection::didReceiveInvalidMessage):
- PluginProcess/WebProcessConnection.h:
- Scripts/Makefile:
- Scripts/generate-message-receiver.py:
(main):
- Scripts/webkit/LegacyMessages-expected.h: Removed.
- Scripts/webkit/LegacyMessagesReplies-expected.h: Removed.
- Scripts/webkit/MessageNames.cpp: Added.
(IPC::description):
- Scripts/webkit/MessageNames.h: Added.
(IPC::receiverName):
(WTF::isValidEnum):
- Scripts/webkit/MessageReceiver-expected.cpp: Removed.
- Scripts/webkit/MessageReceiverSuperclass-expected.cpp: Removed.
- Scripts/webkit/Messages-expected.h: Removed.
- Scripts/webkit/MessagesReplies-expected.h: Removed.
- Scripts/webkit/MessagesRepliesSuperclassReplies-expected.h: Removed.
- Scripts/webkit/MessagesSuperclass-expected.h: Removed.
- Scripts/webkit/messages.py:
- Scripts/webkit/test-legacy-messages.in: Removed.
- Scripts/webkit/test-legacy.messages.in: Copied from Source/WebKit/Scripts/webkit/test-legacy-messages.in.
- Scripts/webkit/test-legacyMessageReceiver.cpp: Added.
(Messages::WebPage::GetPluginProcessConnection::send):
(Messages::WebPage::TestMultipleAttributes::send):
(WebKit::WebPage::didReceiveWebPageMessage):
(WebKit::WebPage::didReceiveSyncWebPageMessage):
- Scripts/webkit/test-legacyMessages.h: Added.
(Messages::WebPage::messageReceiverName):
(Messages::WebPage::LoadURL::name):
(Messages::WebPage::LoadURL::LoadURL):
(Messages::WebPage::LoadURL::arguments const):
(Messages::WebPage::LoadSomething::name):
(Messages::WebPage::LoadSomething::LoadSomething):
(Messages::WebPage::LoadSomething::arguments const):
(Messages::WebPage::TouchEvent::name):
(Messages::WebPage::TouchEvent::TouchEvent):
(Messages::WebPage::TouchEvent::arguments const):
(Messages::WebPage::AddEvent::name):
(Messages::WebPage::AddEvent::AddEvent):
(Messages::WebPage::AddEvent::arguments const):
(Messages::WebPage::LoadSomethingElse::name):
(Messages::WebPage::LoadSomethingElse::LoadSomethingElse):
(Messages::WebPage::LoadSomethingElse::arguments const):
(Messages::WebPage::DidReceivePolicyDecision::name):
(Messages::WebPage::DidReceivePolicyDecision::DidReceivePolicyDecision):
(Messages::WebPage::DidReceivePolicyDecision::arguments const):
(Messages::WebPage::Close::name):
(Messages::WebPage::Close::arguments const):
(Messages::WebPage::PreferencesDidChange::name):
(Messages::WebPage::PreferencesDidChange::PreferencesDidChange):
(Messages::WebPage::PreferencesDidChange::arguments const):
(Messages::WebPage::SendDoubleAndFloat::name):
(Messages::WebPage::SendDoubleAndFloat::SendDoubleAndFloat):
(Messages::WebPage::SendDoubleAndFloat::arguments const):
(Messages::WebPage::SendInts::name):
(Messages::WebPage::SendInts::SendInts):
(Messages::WebPage::SendInts::arguments const):
(Messages::WebPage::CreatePlugin::name):
(Messages::WebPage::CreatePlugin::CreatePlugin):
(Messages::WebPage::CreatePlugin::arguments const):
(Messages::WebPage::RunJavaScriptAlert::name):
(Messages::WebPage::RunJavaScriptAlert::RunJavaScriptAlert):
(Messages::WebPage::RunJavaScriptAlert::arguments const):
(Messages::WebPage::GetPlugins::name):
(Messages::WebPage::GetPlugins::GetPlugins):
(Messages::WebPage::GetPlugins::arguments const):
(Messages::WebPage::GetPluginProcessConnection::name):
(Messages::WebPage::GetPluginProcessConnection::GetPluginProcessConnection):
(Messages::WebPage::GetPluginProcessConnection::arguments const):
(Messages::WebPage::TestMultipleAttributes::name):
(Messages::WebPage::TestMultipleAttributes::arguments const):
(Messages::WebPage::TestParameterAttributes::name):
(Messages::WebPage::TestParameterAttributes::TestParameterAttributes):
(Messages::WebPage::TestParameterAttributes::arguments const):
(Messages::WebPage::TemplateTest::name):
(Messages::WebPage::TemplateTest::TemplateTest):
(Messages::WebPage::TemplateTest::arguments const):
(Messages::WebPage::SetVideoLayerID::name):
(Messages::WebPage::SetVideoLayerID::SetVideoLayerID):
(Messages::WebPage::SetVideoLayerID::arguments const):
(Messages::WebPage::DidCreateWebProcessConnection::name):
(Messages::WebPage::DidCreateWebProcessConnection::DidCreateWebProcessConnection):
(Messages::WebPage::DidCreateWebProcessConnection::arguments const):
(Messages::WebPage::InterpretKeyEvent::name):
(Messages::WebPage::InterpretKeyEvent::InterpretKeyEvent):
(Messages::WebPage::InterpretKeyEvent::arguments const):
(Messages::WebPage::DeprecatedOperation::name):
(Messages::WebPage::DeprecatedOperation::DeprecatedOperation):
(Messages::WebPage::DeprecatedOperation::arguments const):
(Messages::WebPage::ExperimentalOperation::name):
(Messages::WebPage::ExperimentalOperation::ExperimentalOperation):
(Messages::WebPage::ExperimentalOperation::arguments const):
- Scripts/webkit/test-legacyMessagesReplies.h: Added.
- Scripts/webkit/test-messages.in: Removed.
- Scripts/webkit/test-superclass-messages.in: Removed.
- Scripts/webkit/test-superclass.messages.in: Copied from Source/WebKit/Scripts/webkit/test-superclass-messages.in.
- Scripts/webkit/test-superclassMessageReceiver.cpp: Added.
(Messages::WebPage::TestAsyncMessage::callReply):
(Messages::WebPage::TestAsyncMessage::cancelReply):
(Messages::WebPage::TestAsyncMessage::send):
(Messages::WebPage::TestAsyncMessageWithNoArguments::callReply):
(Messages::WebPage::TestAsyncMessageWithNoArguments::cancelReply):
(Messages::WebPage::TestAsyncMessageWithNoArguments::send):
(Messages::WebPage::TestAsyncMessageWithMultipleArguments::callReply):
(Messages::WebPage::TestAsyncMessageWithMultipleArguments::cancelReply):
(Messages::WebPage::TestAsyncMessageWithMultipleArguments::send):
(Messages::WebPage::TestSyncMessage::send):
(Messages::WebPage::TestSynchronousMessage::send):
(WebKit::WebPage::didReceiveMessage):
(WebKit::WebPage::didReceiveSyncMessage):
- Scripts/webkit/test-superclassMessages.h: Added.
(Messages::WebPage::messageReceiverName):
(Messages::WebPage::LoadURL::name):
(Messages::WebPage::LoadURL::LoadURL):
(Messages::WebPage::LoadURL::arguments const):
(Messages::WebPage::TestAsyncMessage::name):
(Messages::WebPage::TestAsyncMessage::asyncMessageReplyName):
(Messages::WebPage::TestAsyncMessage::TestAsyncMessage):
(Messages::WebPage::TestAsyncMessage::arguments const):
(Messages::WebPage::TestAsyncMessageWithNoArguments::name):
(Messages::WebPage::TestAsyncMessageWithNoArguments::asyncMessageReplyName):
(Messages::WebPage::TestAsyncMessageWithNoArguments::arguments const):
(Messages::WebPage::TestAsyncMessageWithMultipleArguments::name):
(Messages::WebPage::TestAsyncMessageWithMultipleArguments::asyncMessageReplyName):
(Messages::WebPage::TestAsyncMessageWithMultipleArguments::arguments const):
(Messages::WebPage::TestSyncMessage::name):
(Messages::WebPage::TestSyncMessage::TestSyncMessage):
(Messages::WebPage::TestSyncMessage::arguments const):
(Messages::WebPage::TestSynchronousMessage::name):
(Messages::WebPage::TestSynchronousMessage::TestSynchronousMessage):
(Messages::WebPage::TestSynchronousMessage::arguments const):
- Scripts/webkit/test-superclassMessagesReplies.h: Added.
- Scripts/webkit/test.messages.in: Added.
- Scripts/webkit/testMessageReceiver.cpp: Added.
- Scripts/webkit/testMessages.h: Added.
(Messages::None::messageReceiverName):
- Scripts/webkit/testMessagesReplies.h: Added.
- Shared/ApplePay/WebPaymentCoordinatorProxy.h:
- Shared/ApplePay/cocoa/WebPaymentCoordinatorProxyCocoa.mm:
(WebKit::WebPaymentCoordinatorProxy::WebPaymentCoordinatorProxy):
(WebKit::WebPaymentCoordinatorProxy::~WebPaymentCoordinatorProxy):
- Shared/AuxiliaryProcess.cpp:
(WebKit::AuxiliaryProcess::addMessageReceiver):
(WebKit::AuxiliaryProcess::removeMessageReceiver):
(WebKit::AuxiliaryProcess::didReceiveInvalidMessage):
- Shared/AuxiliaryProcess.h:
(WebKit::AuxiliaryProcess::addMessageReceiver):
(WebKit::AuxiliaryProcess::removeMessageReceiver):
- Shared/Cocoa/AuxiliaryProcessCocoa.mm:
(WebKit::AuxiliaryProcess::didReceiveInvalidMessage):
- SourcesCocoa.txt:
- UIProcess/AuxiliaryProcessProxy.cpp:
(WebKit::AuxiliaryProcessProxy::addMessageReceiver):
(WebKit::AuxiliaryProcessProxy::removeMessageReceiver):
(WebKit::AuxiliaryProcessProxy::logInvalidMessage):
- UIProcess/AuxiliaryProcessProxy.h:
(WebKit::AuxiliaryProcessProxy::addMessageReceiver):
(WebKit::AuxiliaryProcessProxy::removeMessageReceiver):
(WebKit::AuxiliaryProcessProxy::send):
(WebKit::AuxiliaryProcessProxy::sendWithAsyncReply):
- UIProcess/Cocoa/UserMediaCaptureManagerProxy.h:
- UIProcess/Cocoa/WebPageProxyCocoa.mm:
(WebKit::WebPageProxy::paymentCoordinatorAddMessageReceiver): Deleted.
(WebKit::WebPageProxy::paymentCoordinatorRemoveMessageReceiver): Deleted.
- UIProcess/GPU/GPUProcessProxy.cpp:
(WebKit::GPUProcessProxy::didReceiveInvalidMessage):
- UIProcess/GPU/GPUProcessProxy.h:
- UIProcess/Network/NetworkProcessProxy.cpp:
(WebKit::NetworkProcessProxy::didReceiveInvalidMessage):
- UIProcess/Network/NetworkProcessProxy.h:
- UIProcess/Plugins/PluginProcessProxy.cpp:
(WebKit::PluginProcessProxy::didReceiveInvalidMessage):
- UIProcess/Plugins/PluginProcessProxy.h:
- UIProcess/ProvisionalPageProxy.cpp:
(WebKit::ProvisionalPageProxy::didReceiveMessage):
- UIProcess/SuspendedPageProxy.cpp:
(WebKit::messageNamesToIgnoreWhileSuspended):
(WebKit::SuspendedPageProxy::didReceiveMessage):
- UIProcess/WebPageProxy.h:
- UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::didReceiveInvalidMessage):
(WebKit::WebProcessPool::addMessageReceiver):
(WebKit::WebProcessPool::removeMessageReceiver):
- UIProcess/WebProcessPool.h:
- UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::shouldSendPendingMessage):
(WebKit::WebProcessProxy::didReceiveInvalidMessage):
- UIProcess/WebProcessProxy.h:
- WebProcess/GPU/GPUProcessConnection.cpp:
(WebKit::GPUProcessConnection::didReceiveInvalidMessage):
- WebProcess/GPU/GPUProcessConnection.h:
- WebProcess/Inspector/WebInspector.h:
- WebProcess/Inspector/WebInspectorUI.h:
- WebProcess/Network/NetworkProcessConnection.cpp:
(WebKit::NetworkProcessConnection::didReceiveInvalidMessage):
- WebProcess/Network/NetworkProcessConnection.h:
- WebProcess/Plugins/PluginProcessConnection.cpp:
(WebKit::PluginProcessConnection::didReceiveInvalidMessage):
- WebProcess/Plugins/PluginProcessConnection.h:
- WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDrawingArea.mm:
(WebKit::RemoteLayerTreeDrawingArea::updateRendering):
- WebProcess/WebProcess.cpp:
(WebKit::WebProcess::didReceiveMessage):
Source/WTF:
- wtf/EnumTraits.h:
- 3:43 PM Changeset in webkit [261253] by
-
- 13 edits2 deletes in trunk
Unreviewed, reverting r261239.
Caused fast/events/wheel-event-outside-body.html to assert on
macOS WK1
Reverted changeset:
"Add basic support for generating accurate wheel event
listener region"
https://bugs.webkit.org/show_bug.cgi?id=211512
https://trac.webkit.org/changeset/261239
- 3:05 PM Changeset in webkit [261252] by
-
- 11 edits in trunk/Source
REGRESSION (r260684): Reader background is lost after multitasking
https://bugs.webkit.org/show_bug.cgi?id=211533
<rdar://problem/62941837>
Unreviewed, revert r260684 due to regression.
Source/WebCore:
- dom/EventTarget.cpp:
(WebCore::EventTarget::fireEventListeners):
- page/FrameView.cpp:
(WebCore::FrameView::sendResizeEventIfNeeded):
- page/Page.h:
(WebCore::Page::shouldFireResizeEvents const):
(WebCore::Page::setShouldFireResizeEvents):
Source/WebKit:
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::setShouldFireResizeEvents):
- UIProcess/WebPageProxy.h:
- UIProcess/ios/WKApplicationStateTrackingView.mm:
(-[WKApplicationStateTrackingView _willBeginSnapshotSequence]):
(-[WKApplicationStateTrackingView _didCompleteSnapshotSequence]):
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::setShouldFireResizeEvents):
- WebProcess/WebPage/WebPage.h:
- WebProcess/WebPage/WebPage.messages.in:
- 2:54 PM Changeset in webkit [261251] by
-
- 1 edit2 adds in trunk/LayoutTests
Add a test for
REGRESSION (r260753): Frequent crashes under TextIndicator's estimatedTextColorsForRange
https://bugs.webkit.org/show_bug.cgi?id=211532
Reviewed by Wenson Hsieh.
- fast/text-indicator/text-indicator-estimated-color-with-implicit-newline-expected.txt: Added.
- fast/text-indicator/text-indicator-estimated-color-with-implicit-newline.html: Added.
This test would trigger the null deref fixed in r261245.
- 1:59 PM Changeset in webkit [261250] by
-
- 5 edits3 adds in trunk
ResourceLoadStatistics data summary call should create a web process pool if one doesn't exist
https://bugs.webkit.org/show_bug.cgi?id=211520
<rdar://problem/59869619>
Reviewed by Chris Dumez.
Source/WebKit:
Ensures that a process pool and network process exist when requesting
resource load statistics data.
- UIProcess/WebsiteData/WebsiteDataStore.cpp:
(WebKit::WebsiteDataStore::getResourceLoadStatisticsDataSummary):
Tools:
Added API test coverage.
- TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
- TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadStatistics.mm:
Removed stray comment from previous test.
(TEST):
- TestWebKitAPI/basicITPDatabase.db: Added.
- TestWebKitAPI/basicITPDatabase.db-shm: Added.
- TestWebKitAPI/basicITPDatabase.db-wal: Added.
New database resource with 2 entries: apple.com and webkit.org, with
webkit.org registered as a subframe of apple.com
- 1:35 PM Changeset in webkit [261249] by
-
- 3 edits in trunk/Source/WebKit
Better surfacing of the presenting parent PID in the Network process
https://bugs.webkit.org/show_bug.cgi?id=211495
<rdar://problem/62917205>
Reviewed by Youenn Fablet.
In Bug 205295, NetworkResourceLoader logging was improved, with one of
the changes being that the PID of parent process that invoked the
Network process was logged at the start of
NetworkResourceLoader::start(). However, there was an execution path
that skipped calling start()
(NetworkConnectionToWebProcess::scheduleResourceLoad ->
NetworkResourceLoader::startWithServiceWorker ->
serviceWorkerDidNotHandle -> restartNetworkLoad -> startNetworkLoad),
and so the the logging would not show the parent PID. This logging is
needed for diagnostic purposes, so tweak the logging a little bit more
in order to ensure we emit it. In this change, logging is added to
various loading-related NetworkConnectionToWebProcess entry points
(not just scheduleResourceLoad) in order to (a) ensure we emit the
logging we want and (b) to give a clearer picture of what operations
are being invoked in the Network process.
No new tests -- no new or changed functionality.
- NetworkProcess/NetworkConnectionToWebProcess.cpp:
(WebKit::NetworkConnectionToWebProcess::hasUploadStateChanged):
(WebKit::NetworkConnectionToWebProcess::resolveBlobReferences):
(WebKit::NetworkConnectionToWebProcess::scheduleResourceLoad):
(WebKit::NetworkConnectionToWebProcess::performSynchronousLoad):
(WebKit::NetworkConnectionToWebProcess::loadPing):
(WebKit::NetworkConnectionToWebProcess::preconnectTo):
(WebKit::NetworkConnectionToWebProcess::serverToContextConnectionNoLongerNeeded):
- NetworkProcess/NetworkResourceLoader.cpp:
(WebKit::NetworkResourceLoader::start):
- 1:11 PM Changeset in webkit [261248] by
-
- 16 edits1 add in trunk
AX: Implement accessibility of HTML 5.1 Drag & Drop
https://bugs.webkit.org/show_bug.cgi?id=211415
<rdar://problem/22695531>
Reviewed by Joanmarie Diggs.
Source/WebCore:
Support HTML5 drag and drop. Support dropzone attribute.
Add new notifications for VoiceOver to consume.
It appears that most of the dragging tests are skipped because of eventSender issues.
I think this test could do a little more if those issues were resolved. Specifically, not all
the notifications are seen that are expected.
Test: accessibility/mac/draggable.html
- accessibility/AXObjectCache.h:
- accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::supportsARIAAttributes const):
(WebCore::AccessibilityObject::isAXHidden const):
- accessibility/AccessibilityObject.h:
- accessibility/AccessibilityObjectInterface.h:
- accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::supportsDropping const):
(WebCore::AccessibilityRenderObject::supportsDragging const):
(WebCore::AccessibilityRenderObject::isGrabbed):
(WebCore::AccessibilityRenderObject::determineDropEffects):
(WebCore::AccessibilityRenderObject::supportsARIADropping const): Deleted.
(WebCore::AccessibilityRenderObject::supportsARIADragging const): Deleted.
(WebCore::AccessibilityRenderObject::isARIAGrabbed): Deleted.
(WebCore::AccessibilityRenderObject::determineARIADropEffects): Deleted.
- accessibility/AccessibilityRenderObject.h:
- accessibility/isolatedtree/AXIsolatedObject.cpp:
(WebCore::AXIsolatedObject::initializeAttributeData):
- accessibility/isolatedtree/AXIsolatedObject.h:
- accessibility/mac/AXObjectCacheMac.mm:
(WebCore::AXObjectCache::postPlatformNotification):
- accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
(-[WebAccessibilityObjectWrapper additionalAccessibilityAttributeNames]):
(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):
- html/HTMLAttributeNames.in:
- page/EventHandler.cpp:
(WebCore::EventHandler::dispatchDragEvent):
(WebCore::EventHandler::draggingElement const):
- page/EventHandler.h:
LayoutTests:
- accessibility/mac/draggable-expected.txt: Added.
- accessibility/mac/draggable.html: Added.
- 1:02 PM Changeset in webkit [261247] by
-
- 11 edits1 add in trunk
Cut and paste from Google Doc to Notes in several (non-Latin) languages doesn't work
https://bugs.webkit.org/show_bug.cgi?id=211498
<rdar://problem/56675345>
Reviewed by Darin Adler.
Source/WebCore:
When copying text in Google Docs, the page uses
DataTransfer.setDatato write text/html data to the system
pasteboard. This markup string includes a meta tag withcharset="utf-8", indicating that the HTML string that
was copied should be interpreted as UTF-8 data.
However, before we write this data to the system pasteboard, we first sanitize it by loading it in a separate
page, and then build the final sanitized markup string to write by iterating over only visible content in the
main document of this page. Importantly, this last step skips over the meta element containing the charset.
Later, when pasting in Notes or TextEdit, both apps use
-[NSAttributedString initWithData:...:]to convert the
HTML data on the pasteboard into an NSAttributedString. This takes the NSPasteboard's HTML data (a blob of
NSData) and synchronously loads it in a new legacy WebKit view by calling `-[WebFrame
loadData:MIMEType:textEncodingName:baseURL:], passing innil` as the text encoding name. Since WebKit is only
given a blob of data and no particular encoding, we fall back to default Latin-1 encoding, which produces
gibberish for CJK text.
To fix this, we automatically insert a
<meta charset="utf-8">tag when writing HTML to the pasteboard, if the
sanitized markup contains non-ASCII characters.
Test: CopyHTML.SanitizationPreservesCharacterSet
- Modules/async-clipboard/ClipboardItemBindingsDataSource.cpp:
(WebCore::ClipboardItemBindingsDataSource::ClipboardItemTypeLoader::sanitizeDataIfNeeded):
Pass in AddMetaCharsetIfNeeded::Yes.
- dom/DataTransfer.cpp:
(WebCore::DataTransfer::setDataFromItemList):
Pass in AddMetaCharsetIfNeeded::Yes here too.
- editing/cocoa/WebContentReaderCocoa.mm:
(WebCore::sanitizeMarkupWithArchive):
(WebCore::WebContentReader::readHTML):
(WebCore::WebContentMarkupReader::readHTML):
- editing/markup.cpp:
(WebCore::sanitizeMarkup):
Add a new enum so that we only add the extra meta tag when sanitizing content that is being written to the
system pasteboard through one of the clipboard DOM APIs.
(WebCore::sanitizedMarkupForFragmentInDocument):
- editing/markup.h:
Source/WebKit:
Add a new header to allow Cocoa code to reason about UIColors and NSColors on iOS and macOS (respectively)
without requiring platform ifdefs. A followup patch will adopt this in several places in WebKit, where we
currently need ifdefs for iOS and macOS.
- Platform/cocoa/CocoaColor.h: Added.
- WebKit.xcodeproj/project.pbxproj:
Tools:
Add a test to verify that when writing markup to the clipboard via DOM API, if non-ASCII characters appear in
the written markup, they can still be converted toNSAttributedStrings containing the expected non-Latin text.
- TestWebKitAPI/Configurations/Base.xcconfig:
Adjust header search paths so that we can import CocoaColor.h in WebKit.
- TestWebKitAPI/Tests/WebKitCocoa/CopyHTML.mm:
(readHTMLDataFromPasteboard):
(readHTMLStringFromPasteboard):
(readHTMLFromPasteboard): Deleted.
- 12:57 PM Changeset in webkit [261246] by
-
- 4 edits2 adds in trunk
pointermove event sometimes has incorrect pointerType of 'mouse' on touch interactions
https://bugs.webkit.org/show_bug.cgi?id=210716
<rdar://problem/62084817>
Patch by Antoine Quint <Antoine Quint> on 2020-05-06
Reviewed by Darin Adler.
Source/WebKit:
Set the SyntheticClickType to OneFingerTap when creating a synthetic "mousemove" event for a synthetic "click" event as part of a tap.
On top of being more indicative of the actual action that triggered the synthetic event, it also has the added quality that it will
not yield a "pointermove" event.
Test: pointerevents/ios/click-no-pointermove.html
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::dispatchSyntheticMouseMove):
LayoutTests:
Add a new test that checks that with content observation enabled a tap on a <button> element
dispatches synthetic mousemove and click events but no pointermove event.
- pointerevents/ios/click-no-pointermove-expected.txt: Added.
- pointerevents/ios/click-no-pointermove.html: Added.
- pointerevents/utils.js:
(target_test):
- 12:36 PM Changeset in webkit [261245] by
-
- 2 edits in trunk/Source/WebCore
REGRESSION (r260753): Frequent crashes under TextIndicator's estimatedTextColorsForRange
https://bugs.webkit.org/show_bug.cgi?id=211523
<rdar://problem/62860203>
Reviewed by Darin Adler.
- page/TextIndicator.cpp:
(WebCore::estimatedTextColorsForRange):
TextIterator's node() getter can return null. r260753 accidentally refactored away the null check.
- 12:09 PM Changeset in webkit [261244] by
-
- 2 edits in trunk/LayoutTests
Two 'tests' are running with out expectation files that are not real tests.
https://bugs.webkit.org/show_bug.cgi?id=208477
Unreviewed test gardening.
- platform/mac-wk1/TestExpectations: Skip the test that seems to create these files.
- 12:09 PM Changeset in webkit [261243] by
-
- 2 edits in trunk/Tools
REGRESSION (r260278): TestWebKitAPI.Fullscreen.Delegate is timing out on macOS bots
https://bugs.webkit.org/show_bug.cgi?id=210676
Unreviewed test gardening.
- TestWebKitAPI/Tests/WebKitCocoa/FullscreenAlert.mm:
(TestWebKitAPI::TEST): Skip the test to get the bots to green.
- 11:44 AM Changeset in webkit [261242] by
-
- 38 edits7 adds in trunk
Exempt app-bound domains from ITP's website data deletion and third-party cookie blocking between themselves
https://bugs.webkit.org/show_bug.cgi?id=210674
<rdar://problem/61950767>
Reviewed by Chris Dumez.
Source/WebCore:
This change adds functionality to NetworkStorageSession to allow it to exempt
app-bound domains from third-party cookie blocking.
Tests: http/tests/resourceLoadStatistics/exemptDomains/app-bound-domains-exempt-from-cookie-blocking-between-each-other.html
http/tests/resourceLoadStatistics/exemptDomains/app-bound-domains-exempt-from-website-data-deletion-database.html
http/tests/resourceLoadStatistics/exemptDomains/app-bound-domains-exempt-from-website-data-deletion.html
- platform/network/NetworkStorageSession.cpp:
(WebCore::NetworkStorageSession::shouldBlockCookies const):
(WebCore::NetworkStorageSession::shouldExemptDomainPairFromThirdPartyCookieBlocking const):
(WebCore::NetworkStorageSession::setAppBoundDomains):
(WebCore::NetworkStorageSession::resetAppBoundDomains):
- platform/network/NetworkStorageSession.h:
Source/WebKit:
This change forwards information about app-bound domains to ITP and web
processes so that they can be exempt from website data deletion and
third-party cookie blocking between themselves.
App-bound domains are configured statically and apply to all website
data stores. Therefore the setting needs to be forwarded to all
website data stores and ITP functionality in all network and web
content processes. This is done through the new static function
WebsiteDataStore::setAppBoundDomainsForITPIfInitialized().
Since app-bound domains are loaded lazily from disk and on a background
thread, this patch forwards them in ResourceLoadStatisticsParameters if
they've already been loaded. Then every time app-bound domains are
updated, they are forwarded to ITP. This ensures that ITP will have them
as soon as possible.
Setting app-bound domains for the purposes of ITP automatically switches
ITP's cookie blocking policy to the new
WebCore::ThirdPartyCookieBlockingMode::AllExceptBetweenAppBoundDomains.
This is done in WebResourceLoadStatisticsStore::setAppBoundDomains().
The C API changes are for test purposes.
- NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp:
- NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.cpp:
(WebKit::ResourceLoadStatisticsMemoryStore::registrableDomainsToDeleteOrRestrictWebsiteDataFor):
- NetworkProcess/Classifier/ResourceLoadStatisticsStore.cpp:
(WebKit::ResourceLoadStatisticsStore::setAppBoundDomains):
(WebKit::ResourceLoadStatisticsStore::resetParametersToDefaultValues):
(WebKit::ResourceLoadStatisticsStore::shouldExemptFromWebsiteDataDeletion const):
- NetworkProcess/Classifier/ResourceLoadStatisticsStore.h:
(WebKit::ResourceLoadStatisticsStore::standaloneApplicationDomain const): Deleted.
- NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp:
(WebKit::WebResourceLoadStatisticsStore::setAppBoundDomains):
(WebKit::WebResourceLoadStatisticsStore::resetParametersToDefaultValues):
- NetworkProcess/Classifier/WebResourceLoadStatisticsStore.h:
- NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::setAppBoundDomainsForResourceLoadStatistics):
(WebKit::NetworkProcess::setThirdPartyCookieBlockingMode):
(WebKit::NetworkProcess::setShouldBlockThirdPartyCookiesForTesting): Deleted.
Renamed setThirdPartyCookieBlockingMode.
- NetworkProcess/NetworkProcess.h:
- NetworkProcess/NetworkProcess.messages.in:
- NetworkProcess/cocoa/NetworkSessionCocoa.mm:
(WebKit::NetworkSessionCocoa::NetworkSessionCocoa):
- Shared/ResourceLoadStatisticsParameters.h:
(WebKit::ResourceLoadStatisticsParameters::encode const):
(WebKit::ResourceLoadStatisticsParameters::decode):
- UIProcess/API/C/WKWebsiteDataStoreRef.cpp:
(WKWebsiteDataStoreSetAppBoundDomainsForTesting):
- UIProcess/API/C/WKWebsiteDataStoreRef.h:
- UIProcess/Network/NetworkProcessProxy.cpp:
(WebKit::NetworkProcessProxy::setAppBoundDomainsForResourceLoadStatistics):
(WebKit::NetworkProcessProxy::setThirdPartyCookieBlockingMode):
(WebKit::NetworkProcessProxy::setShouldBlockThirdPartyCookiesForTesting): Deleted.
Renamed setThirdPartyCookieBlockingMode.
- UIProcess/Network/NetworkProcessProxy.h:
- UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::ensureNetworkProcess):
- UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::setThirdPartyCookieBlockingMode):
(WebKit::WebProcessProxy::setShouldBlockThirdPartyCookiesForTesting): Deleted.
Renamed setThirdPartyCookieBlockingMode.
- UIProcess/WebProcessProxy.h:
- UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm:
(WebKit::WebsiteDataStore::initializeAppBoundDomains):
(WebKit::WebsiteDataStore::ensureAppBoundDomains const):
(WebKit::WebsiteDataStore::appBoundDomainsIfInitialized):
This function allows fetching of app-bound domains without triggering
the lazy loading. This is just to allow speculative configuration of ITP
right when it's created — if any app-bound domains are already configured,
forward them to ITP via ResourceLoadStatisticsParameters.
(WebKit::WebsiteDataStore::setAppBoundDomainsForTesting):
This function is Cocoa-specific and only accepts localhost and 127.0.0.1
to be configured as app-bound domains.
- UIProcess/WebsiteData/WebsiteDataStore.cpp:
(WebKit::WebsiteDataStore::setResourceLoadStatisticsShouldBlockThirdPartyCookiesForTesting):
(WebKit::WebsiteDataStore::setThirdPartyCookieBlockingMode):
(WebKit::WebsiteDataStore::parameters):
(WebKit::WebsiteDataStore::forwardAppBoundDomainsToITPIfInitialized):
(WebKit::WebsiteDataStore::setAppBoundDomainsForITP):
- UIProcess/WebsiteData/WebsiteDataStore.h:
- WebProcess/WebProcess.cpp:
(WebKit::WebProcess::setThirdPartyCookieBlockingMode):
(WebKit::WebProcess::setShouldBlockThirdPartyCookiesForTesting): Deleted.
- WebProcess/WebProcess.h:
- WebProcess/WebProcess.messages.in:
Tools:
This change adds a new TestRunner function
setAppBoundDomain() which takes an array of origin
strings and sets them to app-bound domains.
- WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
- WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::didReceiveMessageToPage):
- WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setAppBoundDomains):
(WTR::TestRunner::didSetAppBoundDomainsCallback):
- WebKitTestRunner/InjectedBundle/TestRunner.h:
- WebKitTestRunner/TestController.cpp:
(WTR::AppBoundDomainsCallbackContext::AppBoundDomainsCallbackContext):
(WTR::didSetAppBoundDomainsCallback):
(WTR::TestController::setAppBoundDomains):
- WebKitTestRunner/TestController.h:
- WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
(WTR::TestInvocation::didSetAppBoundDomains):
- WebKitTestRunner/TestInvocation.h:
LayoutTests:
- http/tests/resourceLoadStatistics/exemptDomains/app-bound-domains-exempt-from-cookie-blocking-between-each-other-expected.txt: Added.
- http/tests/resourceLoadStatistics/exemptDomains/app-bound-domains-exempt-from-cookie-blocking-between-each-other.html: Added.
- http/tests/resourceLoadStatistics/exemptDomains/app-bound-domains-exempt-from-website-data-deletion-database-expected.txt: Added.
- http/tests/resourceLoadStatistics/exemptDomains/app-bound-domains-exempt-from-website-data-deletion-database.html: Added.
- http/tests/resourceLoadStatistics/exemptDomains/app-bound-domains-exempt-from-website-data-deletion-expected.txt: Added.
- http/tests/resourceLoadStatistics/exemptDomains/app-bound-domains-exempt-from-website-data-deletion.html: Added.
- 11:43 AM Changeset in webkit [261241] by
-
- 3 edits2 deletes in trunk/Tools
Delete code for feeder queue
https://bugs.webkit.org/show_bug.cgi?id=211518
Reviewed by Jonathan Bedard.
- Scripts/webkitpy/tool/bot/feeders.py: Removed.
- Scripts/webkitpy/tool/bot/feeders_unittest.py: Removed.
- Scripts/webkitpy/tool/commands/queues.py:
(FeederQueue): Deleted.
- Scripts/webkitpy/tool/commands/queues_unittest.py:
(TestFeederQueue): Deleted.
(FeederQueueTest): Deleted.
(PatchProcessingQueueTest): Deleted.
- 11:32 AM Changeset in webkit [261240] by
-
- 3 edits2 adds in trunk
[iOS] ASSERTION FAILED: !(_keyboardFlags & WebEventKeyboardInputModifierFlagsChanged) in -[WebEvent charactersIgnoringModifiers] when pressing modifier on PDF
https://bugs.webkit.org/show_bug.cgi?id=211472
Reviewed by Darin Adler.
Source/WebKit:
Do not ask for event character string for a flags changed event: they don't have one.
Test: fast/events/ios/pdf-modifer-key-down-crash.html
- UIProcess/ios/WKKeyboardScrollingAnimator.mm:
(-[WKKeyboardScrollingAnimator keyboardScrollForEvent:]):
LayoutTests:
Add a test.
- fast/events/ios/pdf-modifer-key-down-crash-expected.txt: Added.
- fast/events/ios/pdf-modifer-key-down-crash.html: Added.
- 11:00 AM Changeset in webkit [261239] by
-
- 13 edits2 adds in trunk
Add basic support for generating accurate wheel event listener region
https://bugs.webkit.org/show_bug.cgi?id=211512
Reviewed by Simon Fraser.
Source/WebCore:
Add fake properties for wheel event listeners to RenderStyle and use them to
generate regions in EventRegion. There is a separate region for non-passive
wheel event listeners (that will require synchronous handling).
The generated regions are not used for anything in this patch.
Style is not yet invalided on event listener additions and removals.
Test: fast/scrolling/mac/wheel-event-listener-region-basic.html
- dom/Node.h:
- rendering/EventRegion.cpp:
(WebCore::EventRegion::unite):
(WebCore::EventRegion::uniteEventListeners):
(WebCore::EventRegion::dump const):
- rendering/EventRegion.h:
- rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateEventRegion):
- rendering/style/RenderStyle.h:
(WebCore::RenderStyle::eventListenerRegionTypes const):
(WebCore::RenderStyle::setEventListenerRegionTypes):
- rendering/style/RenderStyleConstants.h:
- rendering/style/StyleRareInheritedData.cpp:
(WebCore::StyleRareInheritedData::StyleRareInheritedData):
(WebCore::StyleRareInheritedData::operator== const):
- rendering/style/StyleRareInheritedData.h:
- style/StyleAdjuster.cpp:
(WebCore::Style::computeEventListenerRegionTypes):
(WebCore::Style::Adjuster::adjust const):
LayoutTests:
- fast/scrolling/mac/wheel-event-listener-region-basic-expected.txt: Added.
- fast/scrolling/mac/wheel-event-listener-region-basic.html: Added.
- 10:32 AM Changeset in webkit [261238] by
-
- 2 edits in trunk/Source/WebKit
[MacCatalyst] Processes should check for network entitlement as we do for macOS apps
https://bugs.webkit.org/show_bug.cgi?id=211474
<rdar://problem/61182060>
Reviewed by Alexey Proskuryakov.
We should make the same entitlement checks in MacCatalyst as we do for macOS.
- Shared/EntryPointUtilities/Cocoa/XPCService/XPCServiceEntryPoint.mm:
(WebKit::XPCServiceInitializerDelegate::checkEntitlements):
- 10:14 AM Changeset in webkit [261237] by
-
- 9 edits in trunk/Source/WebInspectorUI
Web Inspector: Layers: the text at the bottom of the details sidebar can get squished
https://bugs.webkit.org/show_bug.cgi?id=211486
Reviewed by Brian Burg.
- UserInterface/Views/Sidebar.js:
(WI.Sidebar.prototype.get minimumWidth):
Ask both thethis._navigationBarandthis._selectedSidebarPanelinstead of just one.
- UserInterface/Views/GeneralStyleDetailsSidebarPanel.js:
(WI.GeneralStyleDetailsSidebarPanel.prototype.get minimumWidth): Added.
- UserInterface/Views/ComputedStyleDetailsPanel.js:
(WI.ComputedStyleDetailsPanel.prototype.get minimumWidth): Addede.
- UserInterface/Views/BoxModelDetailsSectionRow.js:
(WI.BoxModelDetailsSectionRow):
(WI.BoxModelDetailsSectionRow.prototype.get minimumWidth): Added.
(WI.BoxModelDetailsSectionRow.prototype._updateMetrics):
- UserInterface/Views/BoxModelDetailsSectionRow.css:
(.details-section .row.box-model):
Keep track of the outermost box and provide a way to report its width.
- UserInterface/Views/LayerDetailsSidebarPanel.js:
(WI.LayerDetailsSidebarPanel):
(WI.LayerDetailsSidebarPanel.prototype.get minimumWidth): Added.
(WI.LayerDetailsSidebarPanel.prototype._buildBottomBar):
(WI.LayerDetailsSidebarPanel.prototype._updateBottomBar):
- UserInterface/Views/LayerDetailsSidebarPanel.css:
(.panel.details.layer .bottom-bar):
(.panel.details.layer .bottom-bar > div):
Cache the width of the items in the bottom bar and use it inget minimumWidth.
- 9:38 AM WebKitGTK/Debugging edited by
- (diff)
- 9:36 AM WebKitGTK/Debugging edited by
- (diff)
- 9:30 AM Changeset in webkit [261236] by
-
- 2 edits in trunk/LayoutTests
fast/overflow/horizontal-scroll-after-back.html is a flaky timeout on macOS
https://bugs.webkit.org/show_bug.cgi?id=211515
<rdar://problem/61180247>
Reviewed by Darin Adler.
Update test to navigate to fast/history/resources/page-cache-helper.html instead of
a data URL which calls history.back() on load. Unlike the data URL, page-cache-helper.html
only navigates back in a 0-timer after the load event has fired. This is important to
guarantee that the current history item has been created before navigating back. If we
navigate back too early, then the current history item is still the one for the previous
page and we end up navigating back to the previous test, which would cause the timeout.
- fast/overflow/horizontal-scroll-after-back.html:
- 9:29 AM Changeset in webkit [261235] by
-
- 5 edits9 deletes in trunk/LayoutTests
Remove orphaned WPT expectations & unused harness
https://bugs.webkit.org/show_bug.cgi?id=211454
Reviewed by Darin Adler.
- wpt/html/dom/interfaces was renamed to wpt/html/dom/idlharness.
- wpt/dom/nodes/Document-createEvent was superseded by HTTPS version.
- w3c/resources/WebIDLParser.js is unused.
LayoutTests/imported/w3c:
- resources/WebIDLParser.js: Removed.
- web-platform-tests/dom/nodes/Document-createEvent-expected.txt: Removed.
- web-platform-tests/html/dom/interfaces-expected.txt: Removed.
- web-platform-tests/html/dom/interfaces.worker-expected.txt: Removed.
- web-platform-tests/html/dom/interfaces.worker.html: Removed.
LayoutTests:
- TestExpectations:
- platform/ios-wk2/imported/w3c/web-platform-tests/html/dom/interfaces.worker-expected.txt: Removed.
- platform/ios/imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt: Removed.
- platform/mac-wk1/TestExpectations:
- platform/wpe/imported/w3c/web-platform-tests/dom/nodes/Document-createEvent-expected.txt: Removed.
- platform/wpe/imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt: Removed.
- tests-options.json:
- 9:24 AM Changeset in webkit [261234] by
-
- 6 edits in trunk/Source
Remove now-unneeded USE(GRAMMAR_CHECKING)
https://bugs.webkit.org/show_bug.cgi?id=211452
Reviewed by Anders Carlsson.
Source/WebCore:
- editing/Editor.cpp:
(WebCore::Editor::advanceToNextMisspelling): Remove USE(GRAMMAR_CHECKING).
(WebCore::Editor::isSelectionUngrammatical): Ditto.
(WebCore::Editor::markMisspellingsOrBadGrammar): Ditto.
(WebCore::Editor::markBadGrammar): Ditto.
- editing/TextCheckingHelper.cpp:
(WebCore::TextCheckingHelper::markAllBadGrammar): Ditto.
(WebCore::checkTextOfParagraph): Ditto. Also correct misspelling of the
word "misspelling".
- editing/TextCheckingHelper.h: Ditto.
Source/WTF:
- wtf/PlatformUse.h: Don't set USE_GRAMMAR_CHECKING.
- 9:15 AM Changeset in webkit [261233] by
-
- 24 edits in trunk/Source
ASSERT_WITH_MESSAGE(m_isOwnedByMainThread == isMainThread()) when web inspecting
https://bugs.webkit.org/show_bug.cgi?id=203638
<rdar://problem/56761893>
Reviewed by Brian Burg.
Source/JavaScriptCore:
Mark the
InspectorEnvironment::executionStopwatchabstract function asconstand have it
return aStopwatch&instead of aRefPtr<Stopwatch>&as callers assume that it exists.
By not using aRefPtr, an additionalcopyRefcan be avoided.
- inspector/InspectorEnvironment.h:
- inspector/JSGlobalObjectInspectorController.h:
- inspector/JSGlobalObjectInspectorController.cpp:
(Inspector::JSGlobalObjectInspectorController::executionStopwatch const): Added.
(Inspector::JSGlobalObjectInspectorController::executionStopwatch): Deleted.
- inspector/agents/InspectorDebuggerAgent.cpp:
(Inspector::InspectorDebuggerAgent::didPause):
(Inspector::InspectorDebuggerAgent::breakpointActionProbe):
(Inspector::InspectorDebuggerAgent::didContinue):
- inspector/agents/InspectorHeapAgent.cpp:
(Inspector::InspectorHeapAgent::snapshot):
(Inspector::InspectorHeapAgent::willGarbageCollect):
(Inspector::InspectorHeapAgent::didGarbageCollect):
- inspector/agents/InspectorScriptProfilerAgent.cpp:
(Inspector::InspectorScriptProfilerAgent::startTracking):
(Inspector::InspectorScriptProfilerAgent::willEvaluateScript):
(Inspector::InspectorScriptProfilerAgent::didEvaluateScript):
(Inspector::InspectorScriptProfilerAgent::trackingComplete):
- runtime/SamplingProfiler.h:
- runtime/SamplingProfiler.cpp:
(JSC::SamplingProfiler::SamplingProfiler):
- runtime/VM.h:
- runtime/VM.cpp:
(JSC::VM::ensureSamplingProfiler):
Source/WebCore:
Mark the
InspectorEnvironment::executionStopwatchabstract function asconstand have it
return aStopwatch&instead of aRefPtr<Stopwatch>&as callers assume that it exists.
By not using aRefPtr, an additionalcopyRefcan be avoided.
- inspector/InspectorController.h:
- inspector/InspectorController.cpp:
(WebCore::InspectorController::executionStopwatch const): Added.
(WebCore::InspectorController::executionStopwatch): Deleted.
- inspector/WorkerInspectorController.h:
(WebCore::WorkerInspectorController::executionStopwatch const): Added.
(WebCore::WorkerInspectorController::executionStopwatch): Deleted.
- inspector/agents/InspectorAnimationAgent.cpp:
(WebCore::InspectorAnimationAgent::startTracking):
(WebCore::InspectorAnimationAgent::stopTracking):
(WebCore::InspectorAnimationAgent::willApplyKeyframeEffect):
(WebCore::InspectorAnimationAgent::stopTrackingDeclarativeAnimation):
- inspector/agents/InspectorCPUProfilerAgent.cpp:
(WebCore::InspectorCPUProfilerAgent::startTracking):
(WebCore::InspectorCPUProfilerAgent::stopTracking):
(WebCore::InspectorCPUProfilerAgent::collectSample):
- inspector/agents/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::mediaMetricsTimerFired):
- inspector/agents/InspectorMemoryAgent.cpp:
(WebCore::InspectorMemoryAgent::startTracking):
(WebCore::InspectorMemoryAgent::stopTracking):
(WebCore::InspectorMemoryAgent::didHandleMemoryPressure):
(WebCore::InspectorMemoryAgent::collectSample):
- inspector/agents/InspectorNetworkAgent.cpp:
(WebCore::InspectorNetworkAgent::buildObjectForTiming):
(WebCore::InspectorNetworkAgent::timestamp):
(WebCore::InspectorNetworkAgent::didFinishLoading):
- inspector/agents/InspectorPageAgent.cpp:
(WebCore::InspectorPageAgent::enable):
(WebCore::InspectorPageAgent::timestamp):
- inspector/agents/InspectorTimelineAgent.cpp:
(WebCore::InspectorTimelineAgent::timestamp):
Source/WTF:
- wtf/Stopwatch.h:
(WTF::Stopwatch::elapsedTime const): Added.
(WTF::Stopwatch::elapsedTimeSince const): Added.
(WTF::Stopwatch::elapsedTime): Deleted.
(WTF::Stopwatch::elapsedTimeSince): Deleted.
- 9:01 AM Changeset in webkit [261232] by
-
- 29 edits in trunk
Eliminate checks of USE(DICTATION_ALTERNATIVES) in Cocoa-specific code
https://bugs.webkit.org/show_bug.cgi?id=211460
Reviewed by Anders Carlsson.
Source/WebCore:
- editing/cocoa/AlternativeTextContextController.h: Remove USE(DICTATION_ALTERNATIVES).
Also remove unnecessary use of RetainPtr and add a FIXME. Also remove #pragma once
since this header is only imported from Objective-C++ sources.
- editing/cocoa/AlternativeTextContextController.mm: Ditto.
- editing/cocoa/AlternativeTextUIController.h: Ditto.
- editing/cocoa/AlternativeTextUIController.mm: Ditto.
- editing/mac/TextAlternativeWithRange.h: Ditto.
- editing/mac/TextAlternativeWithRange.mm: Ditto.
Source/WebKit:
- UIProcess/Cocoa/PageClientImplCocoa.h: Remove USE(DICTATION_ALTERNATIVES).
Also remove unnecessary use of RetainPtr.
- UIProcess/Cocoa/PageClientImplCocoa.mm:
(WebKit::PageClientImplCocoa::PageClientImplCocoa): Ditto.
(WebKit::PageClientImplCocoa::pageClosed): Ditto.
(WebKit::PageClientImplCocoa::dictationAlternatives): Ditto.
- UIProcess/Cocoa/WebPageProxyCocoa.mm:
(WebKit::WebPageProxy::insertDictatedTextAsync): Ditto.
- UIProcess/Cocoa/WebViewImpl.mm:
(WebKit::WebViewImpl::validAttributesForMarkedText): Ditto.
(WebKit::WebViewImpl::insertText): Ditto.
- UIProcess/PageClient.h: Ditto.
- UIProcess/ios/PageClientImplIOS.h: Ditto.
- UIProcess/ios/PageClientImplIOS.mm: Ditto.
- UIProcess/ios/WKContentViewInteraction.mm: Ditto.
- UIProcess/mac/PageClientImplMac.h: Ditto.
- UIProcess/mac/PageClientImplMac.mm: Ditto.
- WebProcess/WebCoreSupport/mac/WebAlternativeTextClient.cpp: Ditto.
Source/WebKitLegacy/mac:
- WebCoreSupport/WebAlternativeTextClient.h: Removed USE(DICTATION_ALTERNATIVES).
- WebCoreSupport/WebAlternativeTextClient.mm:
(WebAlternativeTextClient::dictationAlternatives): Ditto.
- WebView/WebHTMLView.mm: Ditto.
- WebView/WebView.mm: Ditto. Also use modern for loop.
- WebView/WebViewData.h: Ditto.
- WebView/WebViewData.mm: Ditto.
- WebView/WebViewInternal.h: Ditto.
Tools:
- TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm: Remove USE(DICTATION_ALTERNATIVES).
- 8:39 AM Changeset in webkit [261231] by
-
- 8 edits in trunk/Tools
Python3: Support Python3 in Tools/webkitpy/benchmark_runner
https://bugs.webkit.org/show_bug.cgi?id=211249
Reviewed by Jonathan Bedard.
- Scripts/webkitpy/benchmark_runner/benchmark_builder.py:
(BenchmarkBuilder._fetch_remote_archive):
- Scripts/webkitpy/benchmark_runner/benchmark_results.py:
(BenchmarkResults._format_values):
(BenchmarkResults._subtest_values_by_config_iteration):
- Scripts/webkitpy/benchmark_runner/benchmark_runner.py:
(istext):
(BenchmarkRunner._run_benchmark):
(BenchmarkRunner._merge):
(BenchmarkRunner.show_results):
- Scripts/webkitpy/benchmark_runner/browser_driver/osx_safari_driver.py:
(OSXSafariDriver.launch_url):
- Scripts/webkitpy/benchmark_runner/http_server_driver/http_server_driver.py:
(HTTPServerDriver):
- Scripts/webkitpy/benchmark_runner/http_server_driver/simple_http_server_driver.py:
(SimpleHTTPServerDriver.serve):
(SimpleHTTPServerDriver._wait_for_http_server):
- Scripts/webkitpy/benchmark_runner/run_benchmark.py:
(parse_args):
(list_benchmark_plans):
- Scripts/webkitpy/style/checker.py:
(CheckerDispatcher._create_checker):
- 8:32 AM Changeset in webkit [261230] by
-
- 3 edits in trunk/Source/WebKit
[GTK] Cleanup KeyBindingTranslator on WebView disposal
https://bugs.webkit.org/show_bug.cgi?id=211465
Reviewed by Carlos Garcia Campos.
Fixes assertion in debug mode when a test failed and the widget
followed a destruction pattern where KeyBindingTranslator would be
destroyed before the container widget is cleaned up.
Also renamed the method from 'destroyed' to 'invalidate' to try to
better convey the action being performed on the KeyBindingTranslator.
Covered by existing tests.
- UIProcess/API/gtk/WebKitWebViewBase.cpp:
(webkitWebViewBaseContainerRemove): Update method name.
(webkitWebViewBaseDispose): Cleanup keyBindingTranslator when
disposing this widget.
- UIProcess/gtk/KeyBindingTranslator.h:
(WebKit::KeyBindingTranslator::invalidate): Renamed from destroyed.
(WebKit::KeyBindingTranslator::destroyed): Deleted.
- 8:30 AM Changeset in webkit [261229] by
-
- 3 edits in trunk/Source/WebCore
Factor EventHandler code that sends mouseEnteredContentArea/mouseExitedContentArea into its own function
https://bugs.webkit.org/show_bug.cgi?id=211494
Reviewed by Antti Koivisto.
mouseEnteredContentArea/mouseEnteredContentArea are used only to notify overlay scrollbars
of state changes. Factor the code that calls these functions into a separate EventHandler
function, and refactor it for clarity, now we know that both lastElementUnderMouse and elementUnderMouse
must belong to this EventHandler's Frame's Document.
- page/EventHandler.cpp:
(WebCore::EventHandler::updateMouseEventTargetNode):
(WebCore::EventHandler::notifyScrollableAreasOfMouseEnterExit):
- page/EventHandler.h:
- 8:00 AM Changeset in webkit [261228] by
-
- 5 edits in trunk/Source
Reduce HAVE(HOSTED_CORE_ANIMATION)
https://bugs.webkit.org/show_bug.cgi?id=211423
Reviewed by Anders Carlsson.
Source/WebKit:
- UIProcess/Cocoa/WebProcessPoolCocoa.mm:
(WebKit::WebProcessPool::platformInitializeWebProcess): Removed redundant #if
checking both HAVE(HOSTED_CORE_ANIMATION) and !PLATFORM(IOS_FAMILY).
- UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
(WebKit::PluginProcessProxy::platformInitializePluginProcess): Removed unnecessary
HAVE(HOSTED_CORE_ANIMATION) check in code that is only compiled for macOS.
Source/WTF:
- wtf/PlatformHave.h: Simplified conditional to just PLATFORM(MAC)
for HOSTED_CORE_ANIMATION.
- 7:30 AM Changeset in webkit [261227] by
-
- 5 edits2 deletes in trunk/Tools
Delete code for QueueStatusServer
https://bugs.webkit.org/show_bug.cgi?id=211504
Reviewed by Jonathan Bedard.
- QueueStatusServer: Removed.
- BuildSlaveSupport/ews-build/steps.py:
(CheckPatchRelevance): Removed QueueStatusServer.
- Scripts/webkitpy/tool/steps/checkpatchrelevance.py:
(CheckPatchRelevance): Removed QueueStatusServer.
- Scripts/webkitpy/common/net/statusserver.py: Removed implementation of most methods. Will delete it completely
in subsequent patch along-with all its callers.
- Scripts/webkitpy/common/net/statusserver_unittest.py: Removed.
- Scripts/webkitpy/test/main.py:
- 7:18 AM Changeset in webkit [261226] by
-
- 3 edits in trunk/Source/WebCore
[LFC] BlockFormattingContext::computeHeightAndMargin should special case the table box
https://bugs.webkit.org/show_bug.cgi?id=211493
Reviewed by Antti Koivisto.
By the time we get to BlockFormattingContext::computeHeightAndMargin(), the used valued for the table height is already been computed.
(Table box height is mostly content driven, and both the computed height and the min/max pair are taken into account
while we are laying out the table content).
- layout/blockformatting/BlockFormattingContext.cpp:
(WebCore::Layout::BlockFormattingContext::computeHeightAndMargin):
- layout/blockformatting/BlockFormattingContextGeometry.cpp:
(WebCore::Layout::BlockFormattingContext::Geometry::inFlowHeightAndMargin):
- 7:15 AM Changeset in webkit [261225] by
-
- 2 edits in trunk/LayoutTests
REGRESSION (r261163): [ Mac WK2 ] webrtc/libwebrtc/descriptionGetters.html is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=211455
<rdar://problem/62895451>
Reviewed by Eric Carlson.
- webrtc/libwebrtc/descriptionGetters.html:
Sanitize SDP before comparison as port information and candidates are no longer blocked by main thread.
- 7:04 AM Changeset in webkit [261224] by
-
- 2 edits4 adds in trunk/Source/WebCore
Add watchOS media controls assets
https://bugs.webkit.org/show_bug.cgi?id=211508
<rdar://problem/62926565>
Patch by Antoine Quint <Antoine Quint> on 2020-05-06
Reviewed by Eric Carlson.
- Modules/modern-media-controls/images/watchOS/ActivityIndicatorSpriteCompact@2x.png: Added.
- Modules/modern-media-controls/images/watchOS/InvalidCompact.pdf: Added.
- Modules/modern-media-controls/images/watchOS/PlayCompact.pdf: Added.
- WebCore.xcodeproj/project.pbxproj:
- 7:04 AM Changeset in webkit [261223] by
-
- 3 edits in trunk/Source/WebCore
[LFC][BFC] FormattingContext::ConstraintsForInFlowContent should include the computed value of height
https://bugs.webkit.org/show_bug.cgi?id=211487
Reviewed by Antti Koivisto.
When the formatting context root has fixed height, the computed value should be passed in to the formatting context layout
as the available vertical space.
- layout/FormattingContextGeometry.cpp:
(WebCore::Layout::FormattingContext::Geometry::constraintsForInFlowContent):
- layout/tableformatting/TableFormattingContext.cpp:
(WebCore::Layout::TableFormattingContext::computeAndDistributeExtraVerticalSpace):
- 6:33 AM Changeset in webkit [261222] by
-
- 2 edits in trunk/LayoutTests
[GTK] Gardening, expected to fail but passed
https://bugs.webkit.org/show_bug.cgi?id=211510
Unreviewed gardening.
- platform/gtk/TestExpectations:
- 6:05 AM Changeset in webkit [261221] by
-
- 6 edits6 adds2 deletes in trunk/LayoutTests
[WPE] Gardening, update baselines after r261219
https://bugs.webkit.org/show_bug.cgi?id=211507
Unreviewed gardening.
- platform/wpe/fast/css/font-face-opentype-expected.txt: Updated after r261190.
- platform/wpe/fast/xmlhttprequest/xmlhttprequest-nonexistent-file-expected.txt: Removed.
- platform/wpe/imported/w3c/web-platform-tests/css/css-animations/Element-getAnimations.tentative-expected.txt: Added after r260139.
- platform/wpe/imported/w3c/web-platform-tests/css/css-animations/animation-base-response-001-expected.txt: Added after r260662.
- platform/wpe/imported/w3c/web-platform-tests/svg/import/pservers-grad-08-b-manual-expected.txt: Updated after r261191.
- platform/wpe/imported/w3c/web-platform-tests/svg/import/text-altglyph-01-b-manual-expected.txt: Updated after r261191.
- platform/wpe/imported/w3c/web-platform-tests/wasm/jsapi/global/value-set.any-expected.txt: Added after r260690.
- platform/wpe/imported/w3c/web-platform-tests/wasm/jsapi/global/value-set.any.worker-expected.txt: Added after r260690.
- platform/wpe/storage/domstorage/sessionstorage/blocked-file-access-expected.txt: Removed.
- platform/wpe/svg/batik/text/xmlSpace-expected.txt: Updated after r261154.
- 2:30 AM Changeset in webkit [261220] by
-
- 10 edits3 adds in trunk
[WebXR] Implement isSessionSupported()
https://bugs.webkit.org/show_bug.cgi?id=211187
Reviewed by Dean Jackson.
LayoutTests/imported/w3c:
- web-platform-tests/webxr/xrDevice_isSessionSupported_immersive.https-expected.txt: Added.
- web-platform-tests/webxr/xrDevice_isSessionSupported_immersive_unsupported.https-expected.txt: Added.
- web-platform-tests/webxr/xrDevice_isSessionSupported_inline.https-expected.txt: Added.
Source/WebCore:
The isSessionSupported() method queries if a given mode may be supported
by the UA and device capabilities. Apart from the needed machinery in
the webxr Module we're adding an OpenXR implementation of the
enumerateImmersiveXRDevices() method required by isSessionSupported().
The method is not completely implemented as it lacks a few action at its
very end, like firing events. They'll be implemented in follow up
patches as they require additional changes.
Some OpenXR runtimes as Monado always enumerate at least one device even
if none is connected. This dummy device might interfere with tests
execution (as there will be more devices than expected) so we're adding
a testMode to WebXRSystem which does not query platform for existing
devices.
Added expected results and unskipped some WPT that are now passing.
- Modules/webxr/WebXRSystem.cpp:
(WebCore::WebXRSystem::ensureImmersiveXRDeviceIsSelected): Asks platform
code for the list of attached XR devices and properly set the active
immersive device if any.
(WebCore::WebXRSystem::isSessionSupported): Partially implemented.
(WebCore::WebXRSystem::registerSimulatedXRDeviceForTesting): Set the
passed in mock device as either the current active immersive or inline
device.
(WebCore::WebXRSystem::unregisterSimulatedXRDeviceForTesting): Removes
the passed in mock device from the list of immersive devices.
- Modules/webxr/WebXRSystem.h:
- html/FeaturePolicy.cpp:
(WebCore::policyTypeName): Handle XRSpatialTracking.
(WebCore::FeaturePolicy::parse): Parse "xr-spatial-tracking".
(WebCore::FeaturePolicy::allows const): Handle XRSpatialTracking.
- html/FeaturePolicy.h: Added XRSpatialTracking.
- platform/xr/PlatformXR.h:
(PlatformXR::Instance::immersiveXRDevices const): Keep a list of immersive devices.
- platform/xr/openxr/PlatformXR.cpp:
(PlatformXR::Instance::Impl::collectSupportedSessionModes): Gather supported session
modes for a given device from OpenXR.
(PlatformXR::Instance::enumerateImmersiveXRDevices): Collect devices from OpenXR. We
are currently asking for HMD devices.
LayoutTests:
- platform/wpe/TestExpectations: Added some skipped tests that are now passing.
- 1:28 AM Changeset in webkit [261219] by
-
- 6 edits2 adds in trunk/LayoutTests
GTK] Gardening, update expectations and baselines after r261191
https://bugs.webkit.org/show_bug.cgi?id=211502
Unreviewed gardening.
embedded-credentials.tentative.sub-expected.txt is passing more tests
than the general baseline since r260937.
- platform/gtk/TestExpectations:
- platform/gtk/fast/css/font-face-opentype-expected.txt: Updated after r261190.
- platform/gtk/imported/w3c/web-platform-tests/fetch/security/embedded-credentials.tentative.sub-expected.txt: Added.
- platform/gtk/imported/w3c/web-platform-tests/svg/import/pservers-grad-08-b-manual-expected.txt: Updated after r261191.
- platform/gtk/imported/w3c/web-platform-tests/svg/import/text-altglyph-01-b-manual-expected.txt: Updated after r261191.
- platform/gtk/svg/batik/text/xmlSpace-expected.txt: Updated after r261154.
- 1:09 AM Changeset in webkit [261218] by
-
- 2 edits in trunk/Source/WebCore
[Web Animations] Coordinate "update animations and send events" procedure across multiple timelines
https://bugs.webkit.org/show_bug.cgi?id=202109
Unreviewed.
Remove an unused function.
- animation/AnimationTimeline.h:
(WebCore::AnimationTimeline::allAnimations const): Deleted.
- 1:06 AM Changeset in webkit [261217] by
-
- 6 edits in trunk
Fix animation ordering to make imported/w3c/web-platform-tests/css/css-animations/Element-getAnimations.tentative.html pass
https://bugs.webkit.org/show_bug.cgi?id=211468
<rdar://problem/62732578>
Reviewed by David Kilzer.
LayoutTests/imported/w3c:
Mark the final two failures in imported/w3c/web-platform-tests/css/css-animations/Element-getAnimations.tentative.html as PASS.
- web-platform-tests/css/css-animations/Element-getAnimations.tentative-expected.txt:
Source/WebCore:
The "Animation composite order" section of the CSS Animations Level 2 specification (https://drafts.csswg.org/css-animations-2/#animation-composite-order)
defines the relative composite order of animations. We bake this into compareAnimationsByCompositeOrder(), but this function would not yield consistent
results if it is called in a non-stable sort, because if both CSSAnimation objects passed to this function have the same backing Animation object, they
would not return the same value if passed in a different order. The Web Animations spec always ensures that procedures that sort using the composite
order are called as part of a stable sort. So we change all call sites to use std::stable_sort and add an assertion in case we have two CSSAnimation
objects with the same backing Animation objects to catch cases like this in the future.
Finally, since we already know only relevant animations can find their way into the output of Document::getAnimations(), we also ensure we iterate over
m_animations (which holds only relevant animations) rather than m_allAnimations (which may not).
- animation/DocumentTimeline.cpp:
(WebCore::DocumentTimeline::getAnimations const):
- animation/KeyframeEffectStack.cpp:
(WebCore::KeyframeEffectStack::ensureEffectsAreSorted):
- animation/WebAnimationUtilities.cpp:
(WebCore::compareAnimationsByCompositeOrder):