Timeline
Jul 2, 2020:
- 10:51 PM Changeset in webkit [263883] by
-
- 7 edits in trunk/Source/WebCore
ReadableStream::create() should handle any exceptions that may be thrown during construction.
https://bugs.webkit.org/show_bug.cgi?id=213819
Reviewed by Youenn Fablet and Yusuke Suzuki.
Win EWS detected that ReadableStream::create() can throw exceptions, and we were
failing to handle it. This patch fixes that.
- Modules/cache/DOMCache.cpp:
(WebCore::DOMCache::put):
- Modules/fetch/FetchBodyOwner.cpp:
(WebCore::FetchBodyOwner::readableStream):
(WebCore::FetchBodyOwner::createReadableStream):
- Modules/fetch/FetchBodyOwner.h:
- Modules/fetch/FetchResponse.cpp:
(WebCore::FetchResponse::clone):
- bindings/js/ReadableStream.cpp:
(WebCore::ReadableStream::create):
- bindings/js/ReadableStream.h:
- 9:17 PM Changeset in webkit [263882] by
-
- 24 edits in trunk/Source
Make _WKWebsiteDataStoreConfiguration SPI for HSTS storage to replace _WKProcessPoolConfiguration.hstsStorageDirectory
https://bugs.webkit.org/show_bug.cgi?id=213048
Patch by Alex Christensen <achristensen@webkit.org> on 2020-07-02
Reviewed by Youenn Fablet.
Source/WebCore/PAL:
- pal/spi/cf/CFNetworkSPI.h:
Source/WebKit:
This uses CFNetwork SPI introduced in rdar://problem/50109631 to allow HSTS storage per NSURLSession.
To be complete, I also deprecated our UI process HSTS state removal attempt SPIs, WKContextResetHSTSHosts and
WKContextResetHSTSHostsAddedAfterDate, which had their last use removed in rdar://problem/64220838.
I manually verified that this new SPI puts HSTS data in the specified location, and I also verified that HSTS
state querying and removal works with the new CFNetwork SPI as it did with the old one.
- NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::fetchWebsiteData):
(WebKit::NetworkProcess::deleteWebsiteData):
(WebKit::NetworkProcess::deleteWebsiteDataForOrigins):
(WebKit::NetworkProcess::deleteAndRestrictWebsiteDataForRegistrableDomains):
(WebKit::NetworkProcess::registrableDomainsWithWebsiteData):
- NetworkProcess/NetworkProcess.h:
- NetworkProcess/NetworkSessionCreationParameters.cpp:
(WebKit::NetworkSessionCreationParameters::encode const):
(WebKit::NetworkSessionCreationParameters::decode):
- NetworkProcess/NetworkSessionCreationParameters.h:
- NetworkProcess/cocoa/NetworkProcessCocoa.mm:
(WebKit::NetworkProcess::hostNamesWithHSTSCache const):
(WebKit::NetworkProcess::deleteHSTSCacheForHostNames):
(WebKit::NetworkProcess::clearHSTSCache):
(WebKit::NetworkProcess::getHostNamesWithHSTSCache): Deleted.
- NetworkProcess/cocoa/NetworkSessionCocoa.h:
- NetworkProcess/cocoa/NetworkSessionCocoa.mm:
(WebKit::NetworkSessionCocoa::hstsStorage const):
(WebKit::NetworkSessionCocoa::NetworkSessionCocoa):
- NetworkProcess/soup/NetworkProcessSoup.cpp:
(WebKit::NetworkProcess::hostNamesWithHSTSCache const):
(WebKit::NetworkProcess::deleteHSTSCacheForHostNames):
(WebKit::NetworkProcess::clearHSTSCache):
(WebKit::NetworkProcess::getHostNamesWithHSTSCache): Deleted.
- UIProcess/API/C/mac/WKContextPrivateMac.h:
- UIProcess/API/C/mac/WKContextPrivateMac.mm:
(WKContextResetHSTSHosts):
(WKContextResetHSTSHostsAddedAfterDate):
- UIProcess/API/Cocoa/_WKProcessPoolConfiguration.h:
- UIProcess/API/Cocoa/_WKWebsiteDataStoreConfiguration.h:
- UIProcess/API/Cocoa/_WKWebsiteDataStoreConfiguration.mm:
(-[_WKWebsiteDataStoreConfiguration hstsStorageDirectory]):
(-[_WKWebsiteDataStoreConfiguration setHSTSStorageDirectory:]):
- UIProcess/Cocoa/WebProcessPoolCocoa.mm:
(WebKit::privateBrowsingSession): Deleted.
(WebKit::WebProcessPool::resetHSTSHosts): Deleted.
(WebKit::WebProcessPool::resetHSTSHostsAddedAfterDate): Deleted.
- UIProcess/WebProcessPool.h:
- UIProcess/WebsiteData/WebsiteDataStore.cpp:
(WebKit::WebsiteDataStore::resolveDirectoriesIfNecessary):
(WebKit::WebsiteDataStore::parameters):
- UIProcess/WebsiteData/WebsiteDataStore.h:
(WebKit::WebsiteDataStore::resolvedHSTSStorageDirectory const):
- UIProcess/WebsiteData/WebsiteDataStoreConfiguration.cpp:
(WebKit::WebsiteDataStoreConfiguration::copy const):
- UIProcess/WebsiteData/WebsiteDataStoreConfiguration.h:
Source/WTF:
- wtf/PlatformHave.h:
- 8:40 PM Changeset in webkit [263881] by
-
- 13 edits in trunk
Update Mac CMake build
.:
- Source/cmake/OptionsMac.cmake:
Source/JavaScriptCore:
- PlatformMac.cmake:
Source/WebCore:
- PlatformMac.cmake:
Source/WebKit:
- PlatformMac.cmake:
Source/WebKitLegacy:
- PlatformMac.cmake:
Tools:
- DumpRenderTree/PlatformMac.cmake:
- WebKitTestRunner/PlatformMac.cmake:
- 8:19 PM Changeset in webkit [263880] by
-
- 2 edits in trunk/Source/WebCore
MIMETypeRegistry::getExtensionsForMIMEType() needs to handle wildcard MIME types
https://bugs.webkit.org/show_bug.cgi?id=213826
Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2020-07-02
Reviewed by Darin Adler.
Addressing post commit review comments for r263832.
- platform/cocoa/MIMETypeRegistryCocoa.mm:
(WebCore::extensionsForMIMETypeMap):
- 7:01 PM Changeset in webkit [263879] by
-
- 8 edits in trunk
Add testing infrastructure and SPI declaration for HTTP/2 ping
https://bugs.webkit.org/show_bug.cgi?id=213913
Patch by Alex Christensen <achristensen@webkit.org> on 2020-07-02
Reviewed by Jer Noble.
Source/WebCore/PAL:
- pal/spi/cf/CFNetworkSPI.h:
Source/WTF:
This is work towards rdar://problem/64495827
- wtf/PlatformHave.h:
Tools:
- TestWebKitAPI/Tests/WebKitCocoa/Preconnect.mm:
(-[SessionDelegate URLSession:task:didReceiveChallenge:completionHandler:]):
(TestWebKitAPI::pingPong):
(TestWebKitAPI::TEST):
- TestWebKitAPI/cocoa/HTTPServer.h:
(TestWebKitAPI::H2::Frame::Frame):
(TestWebKitAPI::H2::Frame::type const):
(TestWebKitAPI::H2::Frame::flags const):
(TestWebKitAPI::H2::Frame::streamID const):
(TestWebKitAPI::H2::Frame::payload const):
(TestWebKitAPI::H2::Connection::create):
(TestWebKitAPI::H2::Connection::Connection):
- TestWebKitAPI/cocoa/HTTPServer.mm:
(TestWebKitAPI::HTTPServer::listenerParameters):
(TestWebKitAPI::dataFromVector):
(TestWebKitAPI::vectorFromData):
(TestWebKitAPI::HTTPServer::request const):
(TestWebKitAPI::Connection::receiveBytes const):
(TestWebKitAPI::Connection::receiveHTTPRequest const):
(TestWebKitAPI::Connection::send const):
(TestWebKitAPI::H2::Connection::send const):
(TestWebKitAPI::H2::Connection::receive const):
- 6:05 PM Changeset in webkit [263878] by
-
- 3 edits3 adds in trunk/Source/WebCore
GameController.framework soft linking refactoring
https://bugs.webkit.org/show_bug.cgi?id=213909
Reviewed by Tim Horton.
No new tests (No behavior changes)
- WebCore.xcodeproj/project.pbxproj:
- platform/gamepad/cocoa/GameControllerGamepadProvider.mm:
(WebCore::GameControllerGamepadProvider::startMonitoringGamepads):
- platform/gamepad/cocoa/GameControllerSPI.h: Added.
- platform/gamepad/cocoa/GameControllerSoftLink.h: Added.
- platform/gamepad/cocoa/GameControllerSoftLink.mm: Added.
- 5:22 PM Changeset in webkit [263877] by
-
- 1 copy in tags/Safari-610.1.20.2
Tag Safari-610.1.20.2.
- 5:17 PM Changeset in webkit [263876] by
-
- 16 edits2 deletes in branches/safari-610.1.20-branch
Cherry-pick r263854. rdar://problem/65048370
Still seeing MediaRecorder test crashes after re-landing
r263633
Reverted changesets:
"MediaRecorder stopRecorder() returns empty Blob after first
use"
https://bugs.webkit.org/show_bug.cgi?id=212274
https://trac.webkit.org/changeset/263633
"MediaRecorder.start() Method is Ignoring the "timeslice"
Parameter"
https://bugs.webkit.org/show_bug.cgi?id=202233
https://trac.webkit.org/changeset/263651
"Support MediaRecorder.onstart"
https://bugs.webkit.org/show_bug.cgi?id=213720
https://trac.webkit.org/changeset/263671
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@263854 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 5:08 PM Changeset in webkit [263875] by
-
- 8 edits in branches/safari-610.1.20-branch/Source
Versioning.
WebKit-610.1.20.2
- 4:15 PM Changeset in webkit [263874] by
-
- 8 edits in trunk
Custom URL schemes should be treated as app-bound
https://bugs.webkit.org/show_bug.cgi?id=213889
<rdar://problem/64804671>
Reviewed by Brent Fulgham.
Source/WebKit:
For applications which opt-in to App-Bound Domains, allow
specification of app-bound custom URL schemes. All content loaded
using an app-bound scheme will have access to otherwise restricted
APIs. A custom scheme is specified by a colon at the end of a string
in the WKAppBoundDomains list. Custom schemes are included in the
count of 10 app-bound domains.
- UIProcess/API/Cocoa/WKWebsiteDataStore.mm:
(-[WKWebsiteDataStore _appBoundSchemes:]):
- UIProcess/API/Cocoa/WKWebsiteDataStorePrivate.h:
SPI for testing.
- UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm:
(WebKit::appBoundSchemes):
(WebKit::WebsiteDataStore::initializeAppBoundDomains):
Change variable name from appBoundDomains to appBoundData now that
more than domains can be specified in the Info.plist.
(WebKit::WebsiteDataStore::ensureAppBoundDomains const):
Return both domains and schemes to avoid code duplication, at the expense
of occasionally returning an unused parameter if only domains or only
schemes are needed.
(WebKit::WebsiteDataStore::beginAppBoundDomainCheck):
(WebKit::WebsiteDataStore::getAppBoundDomains const):
(WebKit::WebsiteDataStore::getAppBoundSchemes const):
- UIProcess/WebsiteData/WebsiteDataStore.h:
Tools:
Added custom schemes to TestWebKitAPI's Info.plist for testing
duplicate values and the max of 10 domains/schemes. Added
two API tests to check that schemes are properly read from the
Info.plist and that content loaded using a specified app-bound scheme
has restricted API use.
- TestWebKitAPI/Info.plist:
- TestWebKitAPI/Tests/WebKitCocoa/InAppBrowserPrivacy.mm:
(TEST):
- 3:50 PM Changeset in webkit [263873] by
-
- 1 copy in tags/Safari-610.1.20.1
Tag Safari-610.1.20.1.
- 3:49 PM Changeset in webkit [263872] by
-
- 2 edits in trunk/Source/WebInspectorUI
Web Inspector: Allow selecting text of Response (DOM Tree)
https://bugs.webkit.org/show_bug.cgi?id=213617
Reviewed by Joseph Pecoraro.
- UserInterface/Views/DOMTreeOutline.css:
(.tree-outline.dom.non-selectable):
- 3:49 PM Changeset in webkit [263871] by
-
- 3 edits in branches/safari-610.1.20-branch/Source/ThirdParty/libwebrtc
Apply patch. rdar://problem/64901603
- 3:44 PM Changeset in webkit [263870] by
-
- 1 delete in tags/Safari-610.1.20.1
Delete tag.
- 3:43 PM Changeset in webkit [263869] by
-
- 2 edits in trunk/Source/WebKit
Crash in +[UIViewController _viewControllerForFullScreenPresentationFromView:] when WKContentView is deallocated
https://bugs.webkit.org/show_bug.cgi?id=213867
Patch by Austin Blackwood <ablackwoood@apple.com> on 2020-07-02
Reviewed by Darin Adler.
+[UIViewController _viewControllerForFullScreenPresentationFromView:]
asserts that the view parameter is non-nil. WKFileUploadPanel
passes its view (a weak pointer to the WKContentView), which may
have already been nil'd out when the content view tries to dismiss
the panel in its own dealloc.
- UIProcess/ios/forms/WKFileUploadPanel.mm:
(-[WKFileUploadPanel dismiss]):
Check for nil.
- 3:42 PM Changeset in webkit [263868] by
-
- 3 edits in branches/safari-610.1.20-branch/Source/ThirdParty/libwebrtc
Revert r263828. rdar://problem/64901603
- 3:37 PM Changeset in webkit [263867] by
-
- 1 copy in tags/Safari-610.1.20.1
Tag Safari-610.1.20.1.
- 3:36 PM Changeset in webkit [263866] by
-
- 3 edits in branches/safari-610.1.20-branch/Source/ThirdParty/libwebrtc
Cherry-pick r263828. rdar://problem/64901603
Fix the arm64 iOS simulator build
https://bugs.webkit.org/show_bug.cgi?id=213868
<rdar://problem/64901603>
- Configurations/libvpx.xcconfig:
- Configurations/libwebrtc.xcconfig:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@263828 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 3:31 PM Changeset in webkit [263865] by
-
- 8 edits in branches/safari-610.1.20-branch/Source
Versioning.
WebKit-610.1.20.1
- 3:31 PM Changeset in webkit [263864] by
-
- 2 edits in trunk/LayoutTests
[ macOS wk1 ] imported/w3c/web-platform-tests/css/css-flexbox/overflow-auto-008.html is flaky failing
https://bugs.webkit.org/show_bug.cgi?id=213896
Unreviewed test gardening.
Added prefix with bug
Patch by Karl Rackler <Karl Rackler> on 2020-07-02
- platform/mac-wk1/TestExpectations:
- 3:30 PM Changeset in webkit [263863] by
-
- 16 edits2 adds in branches/safari-610.1.20-branch
Revert r263854. rdar://problem/65048370
- 2:38 PM Changeset in webkit [263862] by
-
- 1 copy in tags/Safari-610.1.20
Tag Safari-610.1.20.
- 2:11 PM Changeset in webkit [263861] by
-
- 16 edits2 deletes in branches/safari-610.1.20-branch
Cherry-pick r263854. rdar://problem/65048370
Still seeing MediaRecorder test crashes after re-landing
r263633
Reverted changesets:
"MediaRecorder stopRecorder() returns empty Blob after first
use"
https://bugs.webkit.org/show_bug.cgi?id=212274
https://trac.webkit.org/changeset/263633
"MediaRecorder.start() Method is Ignoring the "timeslice"
Parameter"
https://bugs.webkit.org/show_bug.cgi?id=202233
https://trac.webkit.org/changeset/263651
"Support MediaRecorder.onstart"
https://bugs.webkit.org/show_bug.cgi?id=213720
https://trac.webkit.org/changeset/263671
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@263854 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 2:08 PM Changeset in webkit [263860] by
-
- 3 edits2 adds in trunk
REGRESSION(r260276): menu items in footer of https://salo.ai are invisible until you hover or resize
https://bugs.webkit.org/show_bug.cgi?id=213712
<rdar://problem/64893190>
Reviewed by Zalan Bujtas.
Source/WebCore:
A negative z-index child triggers a foreground layer inside overflow scroll. This foreground layer
gets the PaintingOverflowContents flag but not the PaintingCompositingScrollingPhase flag, but we still need
to avoid the clip check that happens in RenderBlock::paint(), so change RenderLayer::paintLayerContents()
to just check for isPaintingOverflowContents.
Test: compositing/scrolling/async-overflow-scrolling/foreground-layer-paint-phase.html
- rendering/RenderLayer.cpp:
(WebCore::RenderLayer::paintLayerContents):
LayoutTests:
- compositing/scrolling/async-overflow-scrolling/foreground-layer-paint-phase-expected.html: Added.
- compositing/scrolling/async-overflow-scrolling/foreground-layer-paint-phase.html: Added.
- 1:35 PM Changeset in webkit [263859] by
-
- 2 edits in trunk/LayoutTests
[ macOS wk1 ] imported/w3c/web-platform-tests/css/css-flexbox/overflow-auto-008.html is flaky failing
https://bugs.webkit.org/show_bug.cgi?id=213896
Unreviewed test gardening.
Patch by Karl Rackler <Karl Rackler> on 2020-07-02
- platform/mac-wk1/TestExpectations:
- 1:35 PM Changeset in webkit [263858] by
-
- 3 edits2 adds in trunk
visualViewport.addEventListener("scroll"* fires permanently after zoom or orientation change
https://bugs.webkit.org/show_bug.cgi?id=211522
<rdar://problem/62939371>
Reviewed by Simon Fraser.
Source/WebCore:
Correctly set the flag indicating that a scroll event has been dispatched on the visual viewport.
Test: fast/visual-viewport/scroll-event-fired-during-scroll-alone.html
- dom/Document.cpp:
(WebCore::Document::runScrollSteps):
LayoutTests:
Add a test that checks that after a call to scrollTo() no further "scroll" events are dispatched on window.visualViewport.
- fast/visual-viewport/scroll-event-fired-during-scroll-alone-expected.txt: Added.
- fast/visual-viewport/scroll-event-fired-during-scroll-alone.html: Added.
- 1:26 PM Changeset in webkit [263857] by
-
- 3 edits in trunk/Source/WebKit
FloatingPointEnvironment::saveMainThreadEnvironment() is not called for macOS Catalyst apps on Apple Silicon
https://bugs.webkit.org/show_bug.cgi?id=213897
<rdar://problem/64607098>
Reviewed by Darin Adler.
FloatingPointEnvironment::saveMainThreadEnvironment() is not called for macOS Catalyst apps on Apple Silicon
This causes crashes because FloatingPointEnvironment::propagateMainThreadEnvironment() is called for worker
threads for such apps on this platform.
- Shared/ios/AuxiliaryProcessIOS.mm:
(WebKit::AuxiliaryProcess::initializeSandbox):
Drop some dead code for PLATFORM(MACCATALYST) since the whole file is protected with !PLATFORM(MACCATALYST).
Mac Catalyst uses AuxiliaryProcessMac.mm instead.
- Shared/mac/AuxiliaryProcessMac.mm:
(WebKit::AuxiliaryProcess::platformInitialize):
Call FloatingPointEnvironment::saveMainThreadEnvironment() on AuxiliaryProcessMac.mm since this
platformInitialize() is used for Mac Catalyst and Catalyst apps may now run on Apple Silicon / ARM.
Note that FloatingPointEnvironment::saveMainThreadEnvironment() is a no-op on platforms where it is
not needed.
- 12:54 PM Changeset in webkit [263856] by
-
- 54 edits2 copies43 adds in trunk/LayoutTests
Resync web-platform-tests/html/browsers from upstream
https://bugs.webkit.org/show_bug.cgi?id=213892
Reviewed by Geoffrey Garen.
LayoutTests/imported/w3c:
Resync web-platform-tests/html/browsers from upstream 145839c323ba1ec8b9737.
- resources/import-expectations.json:
- resources/resource-files.json:
- web-platform-tests/html/browsers/*: Updated.
LayoutTests:
- tests-options.json:
- 12:45 PM Changeset in webkit [263855] by
-
- 58 edits in trunk
Overlapping content on earny.co
https://bugs.webkit.org/show_bug.cgi?id=213864
<rdar://problem/61011802>
Reviewed by Simon Fraser.
LayoutTests/imported/w3c:
- web-platform-tests/css/css-writing-modes/orthogonal-parent-shrink-to-fit-001-expected.txt:
- web-platform-tests/css/css-writing-modes/orthogonal-parent-shrink-to-fit-001q-expected.txt:
- web-platform-tests/css/css-writing-modes/orthogonal-parent-shrink-to-fit-001r-expected.txt:
- web-platform-tests/css/css-writing-modes/orthogonal-parent-shrink-to-fit-001u-expected.txt:
- web-platform-tests/css/css-writing-modes/orthogonal-parent-shrink-to-fit-001v-expected.txt:
Source/WebCore:
Do not use a 1px value for initial min/max content width.
- rendering/AutoTableLayout.cpp:
(WebCore::AutoTableLayout::recalcColumn):
(WebCore::AutoTableLayout::calcEffectiveLogicalWidth):
(WebCore::AutoTableLayout::layout): I found 2 places where we rely on the initial 1px value for min/max width. This might cause some "regression".
LayoutTests:
Progressions. Some of them are visually observable and they match Chrome/FF.
- css2.1/20110323/abspos-containing-block-initial-004e-expected.txt:
- css2.1/20110323/abspos-containing-block-initial-004f-expected.txt:
- fast/table/auto-100-percent-width-expected.txt:
- fast/table/large-shrink-wrapped-width.html:
- fast/table/table-section-split-with-after-content-expected.txt:
- platform/mac/fast/css/acid2-expected.txt:
- platform/mac/fast/css/acid2-pixel-expected.txt:
- platform/mac/fast/css/percentage-non-integer-expected.txt:
- platform/mac/fast/dynamic/insert-before-table-part-in-continuation-expected.txt:
- platform/mac/fast/repaint/table-cell-move-expected.txt:
- platform/mac/fast/table/cell-absolute-child-expected.txt:
- platform/mac/fast/table/empty-cells-expected.txt:
- platform/mac/fast/table/prepend-in-anonymous-table-expected.txt:
- platform/mac/fast/table/table-cell-split-expected.txt:
- platform/mac/fast/table/table-insert-before-non-anonymous-block-expected.txt:
- platform/mac/http/tests/misc/acid2-expected.txt:
- platform/mac/http/tests/misc/acid2-pixel-expected.txt:
- platform/mac/http/tests/misc/acid3-expected.txt:
- platform/mac/tables/mozilla/bugs/bug100334-expected.txt:
- platform/mac/tables/mozilla/bugs/bug10633-expected.txt:
- platform/mac/tables/mozilla/bugs/bug1188-expected.txt:
- platform/mac/tables/mozilla/bugs/bug1302-expected.txt:
- platform/mac/tables/mozilla/bugs/bug16012-expected.txt:
- platform/mac/tables/mozilla/bugs/bug222336-expected.txt:
- platform/mac/tables/mozilla/bugs/bug3037-1-expected.txt:
- platform/mac/tables/mozilla_expected_failures/other/empty_cells-expected.txt:
- 12:34 PM Changeset in webkit [263854] by
-
- 17 edits4 deletes in trunk
Unreviewed, reverting r263633, r263651, and r263671.
Still seeing MediaRecorder test crashes after re-landing
r263633
Reverted changesets:
"MediaRecorder stopRecorder() returns empty Blob after first
use"
https://bugs.webkit.org/show_bug.cgi?id=212274
https://trac.webkit.org/changeset/263633
"MediaRecorder.start() Method is Ignoring the "timeslice"
Parameter"
https://bugs.webkit.org/show_bug.cgi?id=202233
https://trac.webkit.org/changeset/263651
"Support MediaRecorder.onstart"
https://bugs.webkit.org/show_bug.cgi?id=213720
https://trac.webkit.org/changeset/263671
- 11:56 AM Changeset in webkit [263853] by
-
- 3 edits2 adds in trunk
REGRESSION: Comments section at dpreview has overlapping names with comment on phone
https://bugs.webkit.org/show_bug.cgi?id=213890
Source/WebCore:
<rdar://problem/64693599>
Reviewed by Simon Fraser.
Test: fast/text-autosizing/ios/float-miscomputed-line-height.html
- rendering/TextAutoSizing.cpp:
(WebCore::TextAutoSizingValue::adjustTextNodeSizes):
Negative value is used to indicate unset line-height. We shouldn't make adjustments in this case.
This matches Style::BuilderCustom code.
LayoutTests:
Reviewed by Simon Fraser.
- fast/text-autosizing/ios/float-miscomputed-line-height-expected.html: Added.
- fast/text-autosizing/ios/float-miscomputed-line-height.html: Added.
- 11:45 AM Changeset in webkit [263852] by
-
- 2 edits in trunk/Source/WebKit
Crash under WebKit::NetworkProcessProxy::updateProcessAssertion()
https://bugs.webkit.org/show_bug.cgi?id=213891
<rdar://problem/65017909>
Reviewed by Alex Christensen.
The crash was due to NetworkProcessProxy::updateProcessAssertion() re-entering while
in the middle of them_activityFromWebProcesses = nullptr;assignment. Calling
the ProcessThrottler::BackgroundActivity destructor, could cause updateProcessAssertion()
to get called again, in which case we may dereference m_activityFromWebProcesses and
crash. To address the issue, usestd::exchange(m_activityFromWebProcesses, nullptr);
instead, so that m_activityFromWebProcesses becomes null BEFORE the BackgroundActivity
destructor gets called. updateProcessAssertion() will still re-enter but
m_activityFromWebProcesses will be nullptr and updateProcessAssertion() will do the
right thing.
- UIProcess/Network/NetworkProcessProxy.cpp:
(WebKit::NetworkProcessProxy::updateProcessAssertion):
- 10:56 AM Changeset in webkit [263851] by
-
- 1 edit8 deletes in trunk/LayoutTests/imported/w3c
Unreviewed, drop some outdated tests in WebCrypto API.
Those tests failed to get removed during the recent re-sync from upstream in r263598.
They are actually still present but under different names so we have duplicate
copies right now.
- web-platform-tests/WebCryptoAPI/derive_bits_keys/test_hkdf-expected.txt: Removed.
- web-platform-tests/WebCryptoAPI/derive_bits_keys/test_pbkdf2-expected.txt: Removed.
- web-platform-tests/WebCryptoAPI/getRandomValues.js: Removed.
- web-platform-tests/WebCryptoAPI/getRandomValues.worker-expected.txt: Removed.
- web-platform-tests/WebCryptoAPI/getRandomValues.worker.html: Removed.
- web-platform-tests/WebCryptoAPI/getRandomValues.worker.js: Removed.
- web-platform-tests/WebCryptoAPI/test_getRandomValues-expected.txt: Removed.
- web-platform-tests/WebCryptoAPI/test_getRandomValues.html: Removed.
- 10:30 AM Changeset in webkit [263850] by
-
- 2 edits in trunk/LayoutTests
Remove expectation for fast/canvas/canvas-radial-gradient-spreadMethod.html as it is passing. Added back imported/w3c/canvas/2d.gradient.radial.cone.bottom.html as it is failing.
https://bugs.webkit.org/show_bug.cgi?id=213840
Unreviewed test gardening.
Patch by Karl Rackler <Karl Rackler> on 2020-07-02
- platform/ios/TestExpectations:
- 10:17 AM Changeset in webkit [263849] by
-
- 2 edits in trunk/JSTests
Unreviewed, mark JSTests/test262/test/intl402/NumberFormat/prototype/format/numbering-systems.js fail since it requires ICU 66
https://bugs.webkit.org/show_bug.cgi?id=213872
This test in test262 requires ICU 66 while Catalina bot is using ICU 64.
- test262/config.yaml:
- 9:31 AM Changeset in webkit [263848] by
-
- 2 edits in trunk/Tools
REGRESSION(r263625): run-minibrowser fails on mac
https://bugs.webkit.org/show_bug.cgi?id=213876
Patch by Philippe Normand <pnormand@igalia.com> on 2020-07-02
Reviewed by Darin Adler.
- Scripts/webkitpy/port/base.py:
(Port.run_minibrowser): _run_script() expects a string as first argument. Command-line args
are passed through a keyword.
- 9:17 AM Changeset in webkit [263847] by
-
- 2 edits in trunk/LayoutTests
Unreviewed, unskip most webaudio WPT tests in Debug.
- 7:52 AM Changeset in webkit [263846] by
-
- 3 edits2 adds in trunk
[LFC][BFC] Remove redundant margin-border-padding when computing the intrinsic width
https://bugs.webkit.org/show_bug.cgi?id=213882
Reviewed by Antti Koivisto.
Source/WebCore:
The child intrinsic width already includes the margin-border-padding values.
Test: fast/layoutformattingcontext/table-with-margin-content-simple.html
- layout/blockformatting/BlockFormattingContextGeometry.cpp:
(WebCore::Layout::BlockFormattingContext::Geometry::intrinsicWidthConstraints):
LayoutTests:
- fast/layoutformattingcontext/table-with-margin-content-simple-expected.html: Added.
- fast/layoutformattingcontext/table-with-margin-content-simple.html: Added.
- 7:52 AM Changeset in webkit [263845] by
-
- 3 edits2 adds in trunk
[LFC][IFC] Use <tr> computed height as minimum height for the row
https://bugs.webkit.org/show_bug.cgi?id=213880
Reviewed by Antti Koivisto.
Source/WebCore:
Test: fast/layoutformattingcontext/table-fixed-row-height-simple.html
- layout/tableformatting/TableLayout.cpp:
(WebCore::Layout::TableFormattingContext::TableLayout::distributedVerticalSpace):
LayoutTests:
- fast/layoutformattingcontext/table-fixed-row-height-simple-expected.html: Added.
- fast/layoutformattingcontext/table-fixed-row-height-simple.html: Added.
- 7:05 AM Changeset in webkit [263844] by
-
- 11 edits2 adds in trunk
getUserMedia returns OverConstrained on Jitsi
https://bugs.webkit.org/show_bug.cgi?id=210932
<rdar://problem/64403675>
Reviewed by Philippe Normand.
Source/WebCore:
We compute the max width, max height and max frame rate across all presets.
In case a preset for the max resolution is different from the preset for the max frame rate,
we were selecting capture parameters that no preset can match.
To fix the issue, in case the frame rate constraint is not mandatory, and we do not find a preset
when starting to capture, we remove the frame rate constraint, pick the preset and choose the max frame rate from that preset.
Update mock sources to have a high resolution preset with low frame rate to enable writing a test.
Test: fast/mediastream/get-user-media-ideal-constraints.html
- platform/mediastream/RealtimeMediaSource.cpp:
(WebCore::RealtimeMediaSource::supportsSizeAndFrameRate):
- platform/mediastream/RealtimeVideoCaptureSource.cpp:
(WebCore::RealtimeVideoCaptureSource::bestSupportedSizeAndFrameRate):
(WebCore::RealtimeVideoCaptureSource::setSizeAndFrameRate):
- platform/mediastream/VideoPreset.h:
(WebCore::VideoPreset::maxFrameRate const):
- platform/mock/MockRealtimeMediaSourceCenter.cpp:
(WebCore::defaultDevices):
LayoutTests:
We bumped the max width/height for mock sources and have to update existing tests according to that.
- fast/mediastream/MediaStreamTrack-getCapabilities-expected.txt:
- fast/mediastream/apply-constraints-advanced-expected.txt:
- fast/mediastream/apply-constraints-advanced.html:
- fast/mediastream/apply-constraints-video-expected.txt:
- fast/mediastream/apply-constraints-video.html:
- fast/mediastream/get-user-media-ideal-constraints-expected.txt: Added.
- fast/mediastream/get-user-media-ideal-constraints.html: Added.
- 5:41 AM Changeset in webkit [263843] by
-
- 8 edits in trunk
Unreviewed. Fix GTK4 build
Source/WebCore:
- platform/gtk/GtkVersioning.h:
(gtk_scrolled_window_new):
Source/WebKit:
- UIProcess/API/gtk/WebKitScriptDialogImpl.cpp:
(webkitScriptDialogImplConstructed):
- UIProcess/gtk/WebDataListSuggestionsDropdownGtk.cpp:
(WebKit::WebDataListSuggestionsDropdownGtk::WebDataListSuggestionsDropdownGtk):
- UIProcess/gtk/WebPopupMenuProxyGtk.cpp:
(WebKit::WebPopupMenuProxyGtk::createPopupMenu):
Tools:
- MiniBrowser/gtk/BrowserSettingsDialog.c:
(browser_settings_dialog_init):
- 5:40 AM Changeset in webkit [263842] by
-
- 6 edits in trunk/LayoutTests
Remove expectation for fast/events/input-events-forecolor-data.html and fast/events/input-events-ime-composition.html and fast/events/input-events-selection-forecolor-data.html and fast/events/input-events-spell-checking-datatransfer.html and fast/events/offsetX-offsetY.html and fast/events/scale-and-scroll-iframe-body.html and fast/events/scale-and-scroll-iframe-window.html and fast/events/scroll-to-anchor-vertical-lr-writing-mode.html and fast/events/scroll-to-anchor-vertical-writing-mode.html and fast/forms/range/slider-transformed.html and fast/forms/range/slider-zoomed.html and fast/frames/content-opacity-1.html and fast/frames/content-opacity-2.html and fast/frames/iframe-text-contents.html and fast/frames/onlyCommentInIFrame.html and fast/frames/paint-iframe-background.html and fast/frames/sandboxed-iframe-close-top-noclose.html and fast/hidpi/image-srcset-invalid-descriptor.html and fast/hidpi/image-srcset-png-canvas.html and fast/html/listing.html as they are passing.
https://bugs.webkit.org/show_bug.cgi?id=213863
Unreviewed test gardening.
Patch by Karl Rackler <Karl Rackler> on 2020-07-02
- platform/ios-simulator-wk1/TestExpectations:
- platform/ios-simulator-wk2/TestExpectations:
- platform/ios-simulator/TestExpectations:
- platform/ios-wk2/TestExpectations:
- platform/ios/TestExpectations:
- 5:38 AM Changeset in webkit [263841] by
-
- 9 edits2 adds3 deletes in trunk
Fragment navigation involving fragment identifiers does not match specification
https://bugs.webkit.org/show_bug.cgi?id=83930
Patch by Rob Buis <rbuis@igalia.com> on 2020-07-02
Reviewed by Darin Adler.
LayoutTests/imported/w3c:
Update improved test results and import scroll-frag-non-utf8-encoded-document.html.
- web-platform-tests/html/browsers/browsing-the-web/scroll-to-fragid/fragment-and-encoding-2-expected.txt:
- web-platform-tests/html/browsers/browsing-the-web/scroll-to-fragid/fragment-and-encoding-expected.txt:
- web-platform-tests/html/browsers/browsing-the-web/scroll-to-fragid/scroll-frag-non-utf8-encoded-document-expected.txt: Added.
- web-platform-tests/html/browsers/browsing-the-web/scroll-to-fragid/scroll-frag-non-utf8-encoded-document.html: Added.
- web-platform-tests/html/browsers/browsing-the-web/scroll-to-fragid/scroll-to-anchor-name-expected.txt:
Source/WebCore:
Implement step 5 and 6 of [1] to allow fragment identifier lookup
using percent-decoding, after normal lookup failed.
Behavior matches Chrome and Firefox.
[1] https://html.spec.whatwg.org/multipage/browsing-the-web.html#the-indicated-part-of-the-document
Tests: imported/w3c/web-platform-tests/html/browsers/browsing-the-web/scroll-to-fragid/scroll-to-anchor-name.html
imported/w3c/web-platform-tests/html/browsers/browsing-the-web/scroll-to-fragid/fragment-and-encoding-2.html
imported/w3c/web-platform-tests/html/browsers/browsing-the-web/scroll-to-fragid/fragment-and-encoding.html
imported/w3c/web-platform-tests/html/browsers/browsing-the-web/scroll-to-fragid/scroll-frag-non-utf8-encoded-document.html
- page/FrameView.cpp:
(WebCore::FrameView::scrollToFragmentInternal):
LayoutTests:
Replace anchor-frames-gbk.html by scroll-frag-non-utf8-encoded-document.html.
- http/tests/navigation/anchor-frames-gbk-expected.txt: Removed.
- http/tests/navigation/anchor-frames-gbk.html: Removed.
- http/tests/navigation/resources/frame-with-anchor-gbk.html: Removed.
- platform/ios-wk1/TestExpectations:
- platform/ios-wk2/TestExpectations:
- 3:40 AM Changeset in webkit [263840] by
-
- 2 edits in trunk/LayoutTests
Unreviewed GTK multimedia gardening
https://bugs.webkit.org/show_bug.cgi?id=213877
Crashes in media/context-menu-actions.html are flaky instead of always reproducible.
- platform/gtk/TestExpectations:
- 2:26 AM Changeset in webkit [263839] by
-
- 3 edits1 add in trunk/Tools
[Flatpak SDK] Add perl-term-readkey
https://bugs.webkit.org/show_bug.cgi?id=213787
Patch by Philippe Normand <pnormand@igalia.com> on 2020-07-02
Reviewed by Adrian Perez de Castro.
This is yet another git-svn runtime dependency.
- buildstream/elements/sdk-platform.bst:
- buildstream/elements/sdk/perl-term-readkey.bst: Added.
- 2:19 AM Changeset in webkit [263838] by
-
- 4 edits in trunk/Source/WebCore
[GTK] Kinetic scrolling is still triggered if you wait before lifting fingers
https://bugs.webkit.org/show_bug.cgi?id=213789
Patch by Alexander Mikhaylenko <Alexander Mikhaylenko> on 2020-07-02
Reviewed by Carlos Garcia Campos.
The intended behavior for kinetic scrolling is that it's possible to not trigger it by
stopping moving fingers before lifting them, as opposed to doing a fling/swipe. However,
right now it's broken and trying to do this triggers kinetic scrolling as well.
Currently, the last scroll event with (0, 0) deltas isn't added to the scroll history for
kinetic scrolling. However, this is wrong, because the last event, or rather the timespan
between it and the previous scroll event, actually determines the kinetic scrolling velocity:
if this event follows the previous one quickly, the velocity is large, but if there was a long
pause, the velocity would be close to 0.
See https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/1902 and
https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/1903 for the equivalent GTK fixes.
- page/scrolling/nicosia/ScrollingTreeFrameScrollingNodeNicosia.cpp:
(WebCore::ScrollingTreeFrameScrollingNodeNicosia::handleWheelEvent):
- page/scrolling/nicosia/ScrollingTreeOverflowScrollingNodeNicosia.cpp:
(WebCore::ScrollingTreeOverflowScrollingNodeNicosia::handleWheelEvent):
- platform/generic/ScrollAnimatorGeneric.cpp:
(WebCore::ScrollAnimatorGeneric::handleWheelEvent):
- 1:47 AM Changeset in webkit [263837] by
-
- 4 edits1 add in trunk
[JSC] Configure option-offered numberingSystem in Intl.NumberFormat through locale
https://bugs.webkit.org/show_bug.cgi?id=213872
Reviewed by Ross Kirsling.
JSTests:
- stress/intl-numberformat-nu.js: Added.
(shouldBe):
- test262/expectations.yaml:
Source/JavaScriptCore:
We need to pass numberingSystem option to ICU through locale when constructing UNumberFormat.
We are passing it when we get "en-US-u-nu-hanidec" locale, but we are not passing it when
we are gettingnew Intl.NumberFormat("en-US", { numberingSystem: "hanidec" }).
- runtime/IntlNumberFormat.cpp:
(JSC::IntlNumberFormat::initializeNumberFormat):
- 1:20 AM Changeset in webkit [263836] by
-
- 4 edits in trunk/Source/WebCore
[GStreamer] Rewrite mediastreamsrc element
https://bugs.webkit.org/show_bug.cgi?id=213777
Reviewed by Xabier Rodriguez-Calvar.
The underlying functionality remains the same, design-wise. This is mostly a refactoring
switching to smart pointers as much as possible and trying to comply with WebKit code style
guidelines.
The previous version of this element was leaking pad templates and sticky stream-start
events (in webkitMediaStreamSrcTrackEnded).
The LIBWEBRTC ifdef guards were removed as well, because there's no actual libwebrtc
dependency involved in this code.
No new tests, existing webrtc and fast/mediastream tests cover this patch.
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
- platform/mediastream/gstreamer/GStreamerMediaStreamSource.cpp:
(mediaStreamTrackPrivateGetTags):
(webkitMediaStreamNew):
(WebKitMediaStreamTrackObserver::WebKitMediaStreamTrackObserver):
(WebKitMediaStreamObserver::WebKitMediaStreamObserver):
(InternalSource::InternalSource):
(InternalSource::~InternalSource):
(InternalSource::src const):
(InternalSource::pushSample):
(webkitMediaStreamSrcUriGetType):
(webkitMediaStreamSrcUriGetProtocols):
(webkitMediaStreamSrcUriGetUri):
(webkitMediaStreamSrcUriSetUri):
(webkitMediaStreamSrcUriHandlerInit):
(webkitMediaStreamSrcSetProperty):
(webkitMediaStreamSrcGetProperty):
(webkitMediaStreamSrcConstructed):
(stopObservingTracks):
(webkitMediaStreamSrcFinalize):
(webkitMediaStreamSrcChangeState):
(webkit_media_stream_src_class_init):
(webkitMediaStreamSrcChain):
(webkitMediaStreamSrcAddPad):
(ProbeData::ProbeData):
(webkitMediaStreamSrcPadProbeCb):
(webkitMediaStreamSrcSetupSrc):
(webkitMediaStreamSrcPostStreamCollection):
(webkitMediaStreamSrcAddTrack):
(webkitMediaStreamSrcRemoveTrackByType):
(webkitMediaStreamSrcSetStream):
(webkitMediaStreamSrcPushVideoSample):
(webkitMediaStreamSrcPushAudioSample):
(webkitMediaStreamSrcTrackEnded):
(webkitMediaStreamSrcNew):
- platform/mediastream/gstreamer/GStreamerMediaStreamSource.h:
- 1:14 AM Changeset in webkit [263835] by
-
- 5 edits in trunk/LayoutTests
[GTK] Layout test media/context-menu-actions.html is failing
https://bugs.webkit.org/show_bug.cgi?id=183611
Reviewed by Xabier Rodriguez-Calvar.
Changing to fullscreen is an async operation, so we now use testExpectedEventually() to wait for
the final value.
Simply setting an event handler on video.onwebkitfullscreenchange wouldn't have been enough, since the
event is triggered before the fullscreen operation has been completed and checking for
video.webkitDisplayingFullscreen == true would still fail by then.
Using the 'webkitbeginfullscreen' event isn't possible either, because it's never triggered when
FULLSCREEN_API is enabled.
- media/context-menu-actions.html: Use asynchronous testing.
- media/video-test.js:
(testExpectedEventually): Add an optional "timeout" parameter to avoid a test timeout (all the output
would be lost) in case we wait forever for the comparison to evaluate to the expected value.
(reportExpected): Add an optional "explanation" parameter for extra reporting.
- platform/gtk-wayland/TestExpectations: Unskipped the test.
- platform/gtk/TestExpectations: Ditto.
- 12:20 AM Changeset in webkit [263834] by
-
- 2 edits in trunk/LayoutTests
[GLIB] Unreviewed test gardening. Skip AX tests added in r263823 as they're timing out.
- platform/glib/TestExpectations:
Jul 1, 2020:
- 11:00 PM Changeset in webkit [263833] by
-
- 4 edits1 add in trunk
[JSC] Intl.Collator should set usage:"search" option through ICU locale
https://bugs.webkit.org/show_bug.cgi?id=213869
Reviewed by Ross Kirsling.
JSTests:
- stress/intl-collator-co-extension.js: Added.
(shouldBe):
(shouldBeArray):
(explicitTrueBeforeICU67):
- test262/expectations.yaml:
Source/JavaScriptCore:
Intl.Collator has usage:"search" option, and it affects on collation. However, UCollator does not have an interface to set this collation option,
and only way to configure UCollator is setting "-u-co-search" unicode extension to passed locale string. This patch adds "-u-co-search" unicode
extension if Usage::Search is specified.
- runtime/IntlCollator.cpp:
(JSC::IntlCollator::initializeCollator):
- 10:02 PM Changeset in webkit [263832] by
-
- 8 edits in trunk/Source
MIMETypeRegistry::getExtensionsForMIMEType() needs to handle wildcard MIME types
https://bugs.webkit.org/show_bug.cgi?id=213826
Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2020-07-01
Reviewed by Darin Adler.
Source/WebCore:
Working towards webkit.org/b/213347, it needs to be possible for WebCore
to get the file extensions for wildcard MIME types, e.g. "image/*" or "video/*".
For Cocoa platforms, we will enumerate the UTIs of the system. Get the
MIMEType and the extensions of each UTI. Add the following pairs to a
singleton HashMap:
{ MIMEType, extension }
{ Type(MIMEType)/*, extension }
Change MIMETypeRegistry::getExtensionsForMIMEType() such that it calls
extensionsForWildcardMIMEType() if the MIMEType ends with "*".
- platform/MIMETypeRegistry.h:
- platform/cocoa/MIMETypeRegistryCocoa.mm:
(WebCore::extensionsForMIMETypeMap):
(WebCore::extensionsForWildcardMIMEType):
(WebCore::MIMETypeRegistry::getExtensionsForMIMEType):
- platform/playstation/MIMETypeRegistryPlayStation.cpp:
(WebCore::MIMETypeRegistry::getExtensionsForMIMEType):
- platform/win/MIMETypeRegistryWin.cpp:
(WebCore::MIMETypeRegistry::getExtensionsForMIMEType):
- platform/xdg/MIMETypeRegistryXdg.cpp:
(WebCore::MIMETypeRegistry::getExtensionsForMIMEType):
Source/WebKit:
Replace extensionsForMIMEType() with MIMETypeRegistry::getExtensionsForMIMEType().
- UIProcess/API/Cocoa/WKOpenPanelParameters.mm:
(-[WKOpenPanelParameters _allowedFileExtensions]):
- 9:04 PM Changeset in webkit [263831] by
-
- 2 edits in trunk/Source/WebKit
[SOUP] Build fix after r263797 for older soup versions.
Build was failing in LTS distributions due to -fpermissive
Unreviewed build fix.
- NetworkProcess/soup/WebSocketTaskSoup.cpp:
(WebKit::WebSocketTask::sendString):
- 8:08 PM Changeset in webkit [263830] by
-
- 31 edits in trunk/Source
Allow the File object to be created with a replacement file
https://bugs.webkit.org/show_bug.cgi?id=213825
Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2020-07-01
Reviewed by Darin Adler.
Source/WebCore:
Working towards webkit.org/b/213347, it needs to be possible to create
the File object with an optional replacement file. Only the registered
BlobDataFileReference will be created with both the original file path
and the replacement file path. So it can delete the replacement file when
it is destroyed. Otherwise BlobDataFileReference will be created with the
replacement file path.
It is important to create the File object with the replacement file because
it needs to get the meta-data and the bytes of the replacement file not
the original file.
- fileapi/File.cpp:
(WebCore::File::create):
- fileapi/File.h:
- fileapi/ThreadableBlobRegistry.cpp:
(WebCore::ThreadableBlobRegistry::registerFileBlobURL):
- fileapi/ThreadableBlobRegistry.h:
- html/DirectoryFileListCreator.cpp:
(WebCore::createFileList):
- html/FileInputType.cpp:
(WebCore::FileInputType::filesFromFormControlState):
When the Files are created from a FormControlState, they will be created
without replacement files since they might have been deleted.
(WebCore::FileInputType::filesChosen):
(WebCore::FileInputType::receiveDroppedFiles):
- platform/FileChooser.cpp:
(WebCore::FileChooser::chooseFiles):
(WebCore::FileChooser::chooseMediaFiles):
- platform/FileChooser.h:
(WebCore::FileChooserFileInfo::isolatedCopy const):
(WebCore::FileChooser::chooseFiles):
(WebCore::FileChooserFileInfo::FileChooserFileInfo): Deleted.
- platform/network/BlobDataFileReference.cpp:
(WebCore::BlobDataFileReference::BlobDataFileReference):
(WebCore::BlobDataFileReference::~BlobDataFileReference):
(WebCore::BlobDataFileReference::path):
(WebCore::BlobDataFileReference::startTrackingModifications):
- platform/network/BlobDataFileReference.h:
- platform/network/BlobRegistry.h:
Source/WebKit:
The UIProcess passes a list of strings which represents the replacement
paths along with a list to the original paths to the WebProcess. The
WebProcess passes these two list to FileChooser which creates the File
objects and register the Blobs.
The WebProcess registers the Blobs in the NetworkProcess which creates
BlobDataFileReference objects with both the original path and the
replacement path.
The WebProcess unregisters the Blobs from the NetworkProcess which deletes
the corresponding BlobDataFileReference from its registry. Upon destroying
the BlobDataFileReference, the replacement file should be deleted.
- NetworkProcess/NetworkConnectionToWebProcess.cpp:
(WebKit::NetworkConnectionToWebProcess::registerFileBlobURL):
(WebKit::NetworkConnectionToWebProcess::registerBlobURLOptionallyFileBacked):
- NetworkProcess/NetworkConnectionToWebProcess.h:
- NetworkProcess/NetworkConnectionToWebProcess.messages.in:
- NetworkProcess/NetworkProcessPlatformStrategies.cpp:
(WebKit::NetworkProcessPlatformStrategies::createBlobRegistry):
- Shared/BlobDataFileReferenceWithSandboxExtension.cpp:
(WebKit::BlobDataFileReferenceWithSandboxExtension::BlobDataFileReferenceWithSandboxExtension):
- Shared/BlobDataFileReferenceWithSandboxExtension.h:
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didChooseFilesForOpenPanel):
- WebProcess/FileAPI/BlobRegistryProxy.cpp:
(WebKit::BlobRegistryProxy::registerFileBlobURL):
- WebProcess/FileAPI/BlobRegistryProxy.h:
- WebProcess/WebPage/WebOpenPanelResultListener.cpp:
(WebKit::WebOpenPanelResultListener::didChooseFiles):
- WebProcess/WebPage/WebOpenPanelResultListener.h:
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::didChooseFilesForOpenPanel):
- WebProcess/WebPage/WebPage.h:
- WebProcess/WebPage/WebPage.messages.in:
Source/WebKitLegacy/mac:
- WebCoreSupport/WebPlatformStrategies.mm:
Source/WebKitLegacy/win:
- WebCoreSupport/WebPlatformStrategies.cpp:
- 7:58 PM Changeset in webkit [263829] by
-
- 5 edits1 add1 delete in trunk
[CMake] Add WOFF2 targets
https://bugs.webkit.org/show_bug.cgi?id=213865
Reviewed by Fujii Hironori.
.:
Rework the Find module for WOFF2 to provide targets for libwoff2common and
libwoff2dec. Previously only libwoff2dec was specified in the find module. This
is because pkg-config works on that platform and because shared libraries are
supported. Neither is true for Windows so the module was expanded in anticipation
of support for WinCairo.
- Source/cmake/FindWOFF2.cmake: Added.
- Source/cmake/FindWOFF2Dec.cmake: Removed.
- Source/cmake/OptionsGTK.cmake:
- Source/cmake/OptionsWPE.cmake:
Source/WebCore:
Use the WOFF:: targets when USE_WOFF2 is set.
- CMakeLists.txt:
- 6:26 PM Changeset in webkit [263828] by
-
- 3 edits in trunk/Source/ThirdParty/libwebrtc
Fix the arm64 iOS simulator build
https://bugs.webkit.org/show_bug.cgi?id=213868
<rdar://problem/64901603>
- Configurations/libvpx.xcconfig:
- Configurations/libwebrtc.xcconfig:
- 5:43 PM Changeset in webkit [263827] by
-
- 3 edits in branches/safari-610.1.20-branch/Source/WebKit
Cherry-pick r263793. rdar://problem/65011200
Fix Swift overlay build after r263727.
https://bugs.webkit.org/show_bug.cgi?id=213823.
Unreviewed, follow up build fix.
- SwiftOverlay/Tests/WebKitTests.swift: (WebKitTests.testAPI): Fix tests to refer to new parameter name.
- UIProcess/API/Cocoa/WebKitSwiftOverlay.swift: (callAsyncJavaScript(_:arguments:in:in:completionHandler:Error:)): Use the imported ObjC name that the compiler expects. (evaluateJavaScript(_:in:in:completionHandler:Error:)): Ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@263793 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 5:43 PM Changeset in webkit [263826] by
-
- 2 edits in branches/safari-610.1.20-branch/Source/WebKit
Cherry-pick r263781. rdar://problem/65011200
Fix Swift overlay build after r263727.
<rdar://problem/64962370> and https://bugs.webkit.org/show_bug.cgi?id=213823
Reviewed by Darin Adler.
No new tests (No behavior change).
Adapt the Swift overlay refinemnt to handle the inFrame: argument for these methods.
- UIProcess/API/Cocoa/WebKitSwiftOverlay.swift: (callAsyncJavaScript(_:arguments:in:in:completionHandler:Error:)): (evaluateJavaScript(_:in:in:completionHandler:Error:)): (callAsyncJavaScript(_:arguments:in:completionHandler:Error:)): Deleted. (evaluateJavaScript(_:in:completionHandler:Error:)): Deleted.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@263781 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 5:32 PM Changeset in webkit [263825] by
-
- 28 edits5 adds in trunk
Swipe snapshot is removed too early when swiping away from a page that is still loading
https://bugs.webkit.org/show_bug.cgi?id=213763
<rdar://problem/64576811>
Reviewed by Darin Adler.
Source/WebKit:
Test: http/tests/swipe/swipe-back-with-outstanding-load-cancellation.html
When swiping back from a page that is still loading, when the swipe commits,
and we start navigating back to the previous page, the unfinished forward navigation
is cancelled.
This cancellation resulted in a "didFailLoadForMainFrame" making it to ViewGestureController,
which took it as an indication that the navigation *it* was interested in (the back navigation)
had failed, and immediately removed the snapshot.
Instead of listening to any random navigation's load notifications, keep track of the navigation
started by goToBackForwardItem, and only listen to notifications from it, ignoring the others.
This requires a bunch of plumbing to get the navigation from WebPageProxy to ViewGestureController,
but is otherwise fairly trivial.
- UIProcess/API/gtk/PageClientImpl.cpp:
(WebKit::PageClientImpl::didFinishNavigation):
(WebKit::PageClientImpl::didFailNavigation):
(WebKit::PageClientImpl::didFinishLoadForMainFrame): Deleted.
(WebKit::PageClientImpl::didFailLoadForMainFrame): Deleted.
- UIProcess/API/gtk/PageClientImpl.h:
- UIProcess/API/gtk/WebKitWebViewBase.cpp:
(webkitWebViewBaseDidFinishLoadForMainFrame):
(webkitWebViewBaseDidFailLoadForMainFrame):
- UIProcess/API/gtk/WebKitWebViewBasePrivate.h:
- UIProcess/API/ios/WKWebViewIOS.h:
- UIProcess/API/ios/WKWebViewIOS.mm:
(-[WKWebView _didFinishNavigation:]):
(-[WKWebView _didFailNavigation:]):
(-[WKWebView _didFinishLoadForMainFrame]): Deleted.
(-[WKWebView _didFailLoadForMainFrame]): Deleted.
- UIProcess/API/wpe/PageClientImpl.cpp:
(WebKit::PageClientImpl::didFinishNavigation):
(WebKit::PageClientImpl::didFailNavigation):
(WebKit::PageClientImpl::didFinishLoadForMainFrame): Deleted.
(WebKit::PageClientImpl::didFailLoadForMainFrame): Deleted.
- UIProcess/API/wpe/PageClientImpl.h:
- UIProcess/PageClient.h:
- UIProcess/ViewGestureController.cpp:
(WebKit::ViewGestureController::didReachNavigationTerminalState):
(WebKit::ViewGestureController::willEndSwipeGesture):
(WebKit::ViewGestureController::didReachMainFrameLoadTerminalState): Deleted.
- UIProcess/ViewGestureController.h:
(WebKit::ViewGestureController::didFinishNavigation):
(WebKit::ViewGestureController::didFailNavigation):
(WebKit::ViewGestureController::didFinishLoadForMainFrame): Deleted.
(WebKit::ViewGestureController::didFailLoadForMainFrame): Deleted.
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didFinishLoadForFrame):
(WebKit::WebPageProxy::didFailLoadForFrame):
(WebKit::WebPageProxy::didSameDocumentNavigationForFrame):
- UIProcess/ios/PageClientImplIOS.h:
- UIProcess/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::didFinishNavigation):
(WebKit::PageClientImpl::didFailNavigation):
(WebKit::PageClientImpl::didFinishLoadForMainFrame): Deleted.
(WebKit::PageClientImpl::didFailLoadForMainFrame): Deleted.
- UIProcess/ios/ViewGestureControllerIOS.mm:
(WebKit::ViewGestureController::willEndSwipeGesture):
(WebKit::ViewGestureController::resetState):
- UIProcess/mac/PageClientImplMac.h:
- UIProcess/mac/PageClientImplMac.mm:
(WebKit::PageClientImpl::didFinishNavigation):
(WebKit::PageClientImpl::didFailNavigation):
(WebKit::PageClientImpl::didFinishLoadForMainFrame): Deleted.
(WebKit::PageClientImpl::didFailLoadForMainFrame): Deleted.
- UIProcess/mac/ViewGestureControllerMac.mm:
(WebKit::ViewGestureController::resetState):
- UIProcess/playstation/PageClientImpl.cpp:
(WebKit::PageClientImpl::didFinishNavigation):
(WebKit::PageClientImpl::didFailNavigation):
(WebKit::PageClientImpl::didFinishLoadForMainFrame): Deleted.
(WebKit::PageClientImpl::didFailLoadForMainFrame): Deleted.
- UIProcess/playstation/PageClientImpl.h:
- UIProcess/win/PageClientImpl.cpp:
(WebKit::PageClientImpl::didFinishNavigation):
(WebKit::PageClientImpl::didFinishLoadForMainFrame): Deleted.
- UIProcess/win/PageClientImpl.h:
LayoutTests:
- http/tests/swipe/resources/swipe-test.js: Added.
- http/tests/swipe/swipe-back-with-outstanding-load-cancellation-expected.txt: Added.
- http/tests/swipe/swipe-back-with-outstanding-load-cancellation.html: Added.
Add a test that ensures that we don't remove the swipe snapshot before the "back" page is loaded.
Before this fix, this test fails the assertion that we're on the first page in didRemoveSwipeSnapshotCallback.
- 4:50 PM Changeset in webkit [263824] by
-
- 21 edits in trunk/Source/JavaScriptCore
Rename zeroExtend32ToPtr to zeroExtend32ToWord
https://bugs.webkit.org/show_bug.cgi?id=213866
Reviewed by Saam Barati.
The old name no longer makes sense now that we have configurations
where sizeof(void*) != sizeof(CPURegister).
- assembler/MacroAssemblerARM64.h:
(JSC::MacroAssemblerARM64::branchTruncateDoubleToInt32):
(JSC::MacroAssemblerARM64::zeroExtend32ToWord):
(JSC::MacroAssemblerARM64::branchMul32):
(JSC::MacroAssemblerARM64::zeroExtend32ToPtr): Deleted.
- assembler/MacroAssemblerARMv7.h:
(JSC::MacroAssemblerARMv7::zeroExtend32ToWord):
(JSC::MacroAssemblerARMv7::zeroExtend32ToPtr): Deleted.
- assembler/MacroAssemblerMIPS.h:
(JSC::MacroAssemblerMIPS::zeroExtend32ToWord):
(JSC::MacroAssemblerMIPS::zeroExtend32ToPtr): Deleted.
- assembler/MacroAssemblerX86Common.h:
(JSC::MacroAssemblerX86Common::add32):
(JSC::MacroAssemblerX86Common::and32):
(JSC::MacroAssemblerX86Common::mul32):
(JSC::MacroAssemblerX86Common::or32):
(JSC::MacroAssemblerX86Common::xor32):
(JSC::MacroAssemblerX86Common::zeroExtend32ToWord):
(JSC::MacroAssemblerX86Common::branchAdd32):
(JSC::MacroAssemblerX86Common::zeroExtend32ToPtr): Deleted.
- b3/air/AirOpcode.opcodes:
- bytecode/AccessCase.cpp:
(JSC::AccessCase::generateWithGuard):
- dfg/DFGOSRExit.cpp:
(JSC::DFG::OSRExit::compileExit):
- dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileStringSlice):
(JSC::DFG::SpeculativeJIT::compileValueToInt32):
(JSC::DFG::SpeculativeJIT::compileUInt32ToNumber):
(JSC::DFG::SpeculativeJIT::setIntTypedArrayLoadResult):
(JSC::DFG::SpeculativeJIT::compileArithDiv):
(JSC::DFG::SpeculativeJIT::compileCreateRest):
(JSC::DFG::SpeculativeJIT::compileArraySlice):
(JSC::DFG::SpeculativeJIT::compileArrayIndexOf):
(JSC::DFG::SpeculativeJIT::compileNewTypedArrayWithSize):
(JSC::DFG::SpeculativeJIT::emitAllocateButterfly):
(JSC::DFG::SpeculativeJIT::compileWeakMapGet):
(JSC::DFG::SpeculativeJIT::emitInitializeButterfly):
- dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::fillSpeculateInt32Internal):
(JSC::DFG::SpeculativeJIT::compile):
- ftl/FTLOSRExitCompiler.cpp:
(JSC::FTL::reboxAccordingToFormat):
- jit/CallFrameShuffler64.cpp:
(JSC::CallFrameShuffler::emitBox):
- jit/JITOpcodes.cpp:
(JSC::JIT::emit_op_has_indexed_property):
- jit/JITOpcodes32_64.cpp:
(JSC::JIT::emit_op_has_indexed_property):
- jit/JITPropertyAccess.cpp:
(JSC::JIT::emit_op_put_by_val):
- jit/JSInterfaceJIT.h:
(JSC::JSInterfaceJIT::emitLoadInt32):
- wasm/js/JSToWasm.cpp:
(JSC::Wasm::boxWasmResult):
- wasm/js/WasmToJS.cpp:
(JSC::Wasm::wasmToJS):
- wasm/js/WebAssemblyFunction.cpp:
(JSC::WebAssemblyFunction::jsCallEntrypointSlow):
- yarr/YarrJIT.cpp:
- 4:35 PM Changeset in webkit [263823] by
-
- 15 edits4 adds in trunk
AX: Implement relevant simulated key presses for custom ARIA widgets for increment/decrement
https://bugs.webkit.org/show_bug.cgi?id=213744
Reviewed by Darin Adler.
Source/WebCore:
In order to allow custom ARIA widgets to work, we can post keyboard events for specific ax actions
that are not handled natively.
Spec: https://github.com/WICG/aom/blob/gh-pages/explainer.md#user-action-events-from-assistive-technology
Test: accessibility/keyevents-posted-for-increment-actions.html
accessibility/keyevents-for-increment-actions-with-node-removal.html
- accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::postKeyboardKeysForValueChange):
(WebCore::AccessibilityNodeObject::setNodeValue):
(WebCore::AccessibilityNodeObject::changeValueByStep):
(WebCore::AccessibilityNodeObject::changeValueByPercent):
- accessibility/AccessibilityNodeObject.h:
- accessibility/AccessibilityObject.h:
- accessibility/AccessibilityObjectInterface.h:
- accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::setValue):
- accessibility/AccessibilityRenderObject.h:
- accessibility/AccessibilityScrollbar.cpp:
(WebCore::AccessibilityScrollbar::setValue):
- accessibility/AccessibilityScrollbar.h:
- accessibility/AccessibilitySlider.cpp:
(WebCore::AccessibilitySlider::setValue):
- accessibility/AccessibilitySlider.h:
- accessibility/isolatedtree/AXIsolatedObject.cpp:
(WebCore::AXIsolatedObject::setValue):
- accessibility/isolatedtree/AXIsolatedObject.h:
LayoutTests:
- accessibility/keyevents-posted-for-increment-actions-expected.txt: Added.
- accessibility/keyevents-posted-for-increment-actions.html: Added.
- accessibility/keyevents-for-increment-actions-with-node-removal-expected.txt: Added.
- accessibility/keyevents-for-increment-actions-with-node-removal.htmk: Added.
- 2:46 PM Changeset in webkit [263822] by
-
- 4 edits in trunk/LayoutTests
[ iOS Debug and Mojave Debug ] http/tests/storage/storage-map-leaking.html is flaky timing out.
https://bugs.webkit.org/show_bug.cgi?id=213795
<rdar://problem/64937993>
Reviewed by Darin Adler.
Because our GC is conservative, a particular JS wrapper is not guaranteed to go away in a timely fashion.
To try and make the test more reliable, we now use 4 separate Storage wrappers instead of a single one.
We treat the test as passing if any of the 4 storage wrappers go away after removing the 4 subframes from
4 separate origins.
- http/tests/storage/storage-map-leaking.html:
- platform/ios-wk2/TestExpectations:
- platform/mac-wk2/TestExpectations:
- 2:04 PM Changeset in webkit [263821] by
-
- 2 edits in trunk/Source/WebKit
[iOS] Allow the WebContent sandbox to check the 'hw.product' sysctl
https://bugs.webkit.org/show_bug.cgi?id=213861
<rdar://problem/64988957>
Reviewed by Per Arne Vollan.
Telemetry shows that we need to read the 'hw.product' sysctl in the font subsystem,
primarily to enable certain font features (for various products) in different locales.
- Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:
- 2:01 PM Changeset in webkit [263820] by
-
- 837 edits21 copies9 moves105 adds16 deletes in trunk
Add a functional WebRTC VP9 codec
https://bugs.webkit.org/show_bug.cgi?id=213778
Reviewed by Eric Carlson.
Source/ThirdParty/libwebrtc:
Update libvpx to synchronize VP9 support with the rest of libwebrtc.
Disable vp9_noop in the build system and use function vp9 encoder/decoder instead.
- Configurations/libvpx.xcconfig:
- Source/third_party/libvpx/BUILD.gn:
- Source/third_party/libvpx/OWNERS:
- Source/third_party/libvpx/README.chromium:
- Source/third_party/libvpx/generate_gni.sh:
- Source/third_party/libvpx/libvpx_srcs.gni:
- Source/third_party/libvpx/lint_config.sh:
- Source/third_party/libvpx/run_perl.py:
- Source/third_party/libvpx/source/config/ios/arm-neon/vp8_rtcd.h:
- Source/third_party/libvpx/source/config/ios/arm-neon/vp9_rtcd.h:
- Source/third_party/libvpx/source/config/ios/arm-neon/vpx_config.asm:
- Source/third_party/libvpx/source/config/ios/arm-neon/vpx_config.c:
- Source/third_party/libvpx/source/config/ios/arm-neon/vpx_config.h:
- Source/third_party/libvpx/source/config/ios/arm-neon/vpx_dsp_rtcd.h:
- Source/third_party/libvpx/source/config/ios/arm64/vp8_rtcd.h:
- Source/third_party/libvpx/source/config/ios/arm64/vp9_rtcd.h:
- Source/third_party/libvpx/source/config/ios/arm64/vpx_config.asm:
- Source/third_party/libvpx/source/config/ios/arm64/vpx_config.c:
- Source/third_party/libvpx/source/config/ios/arm64/vpx_config.h:
- Source/third_party/libvpx/source/config/ios/arm64/vpx_dsp_rtcd.h:
- Source/third_party/libvpx/source/config/linux/arm-neon-cpu-detect/vp8_rtcd.h:
- Source/third_party/libvpx/source/config/linux/arm-neon-cpu-detect/vp9_rtcd.h:
- Source/third_party/libvpx/source/config/linux/arm-neon-cpu-detect/vpx_config.asm:
- Source/third_party/libvpx/source/config/linux/arm-neon-cpu-detect/vpx_config.c:
- Source/third_party/libvpx/source/config/linux/arm-neon-cpu-detect/vpx_config.h:
- Source/third_party/libvpx/source/config/linux/arm-neon-cpu-detect/vpx_dsp_rtcd.h:
- Source/third_party/libvpx/source/config/linux/arm-neon-highbd/vp8_rtcd.h: Copied from Source/ThirdParty/libwebrtc/Source/third_party/libvpx/source/config/linux/arm-neon/vp8_rtcd.h.
- Source/third_party/libvpx/source/config/linux/arm-neon-highbd/vp9_rtcd.h: Copied from Source/ThirdParty/libwebrtc/Source/third_party/libvpx/source/config/linux/generic/vp9_rtcd.h.
- Source/third_party/libvpx/source/config/linux/arm-neon-highbd/vpx_config.asm: Copied from Source/ThirdParty/libwebrtc/Source/third_party/libvpx/source/config/linux/arm-neon/vpx_config.asm.
- Source/third_party/libvpx/source/config/linux/arm-neon-highbd/vpx_config.c: Copied from Source/ThirdParty/libwebrtc/Source/third_party/libvpx/source/config/ios/arm-neon/vpx_config.c.
(vpx_codec_build_config):
- Source/third_party/libvpx/source/config/linux/arm-neon-highbd/vpx_config.h: Copied from Source/ThirdParty/libwebrtc/Source/third_party/libvpx/source/config/linux/arm-neon/vpx_config.h.
- Source/third_party/libvpx/source/config/linux/arm-neon-highbd/vpx_dsp_rtcd.h: Copied from Source/ThirdParty/libwebrtc/Source/third_party/libvpx/source/config/linux/generic/vpx_dsp_rtcd.h.
- Source/third_party/libvpx/source/config/linux/arm-neon-highbd/vpx_scale_rtcd.h: Added.
- Source/third_party/libvpx/source/config/linux/arm-neon/vp8_rtcd.h:
- Source/third_party/libvpx/source/config/linux/arm-neon/vp9_rtcd.h:
- Source/third_party/libvpx/source/config/linux/arm-neon/vpx_config.asm:
- Source/third_party/libvpx/source/config/linux/arm-neon/vpx_config.c:
- Source/third_party/libvpx/source/config/linux/arm-neon/vpx_config.h:
- Source/third_party/libvpx/source/config/linux/arm-neon/vpx_dsp_rtcd.h:
- Source/third_party/libvpx/source/config/linux/arm/vp8_rtcd.h:
- Source/third_party/libvpx/source/config/linux/arm/vp9_rtcd.h:
- Source/third_party/libvpx/source/config/linux/arm/vpx_config.asm:
- Source/third_party/libvpx/source/config/linux/arm/vpx_config.c:
- Source/third_party/libvpx/source/config/linux/arm/vpx_config.h:
- Source/third_party/libvpx/source/config/linux/arm/vpx_dsp_rtcd.h:
- Source/third_party/libvpx/source/config/linux/arm64-highbd/vp8_rtcd.h: Copied from Source/ThirdParty/libwebrtc/Source/third_party/libvpx/source/config/linux/arm-neon/vp8_rtcd.h.
- Source/third_party/libvpx/source/config/linux/arm64-highbd/vp9_rtcd.h: Copied from Source/ThirdParty/libwebrtc/Source/third_party/libvpx/source/config/linux/generic/vp9_rtcd.h.
- Source/third_party/libvpx/source/config/linux/arm64-highbd/vpx_config.asm: Copied from Source/ThirdParty/libwebrtc/Source/third_party/libvpx/source/config/linux/arm64/vpx_config.asm.
- Source/third_party/libvpx/source/config/linux/arm64-highbd/vpx_config.c: Copied from Source/ThirdParty/libwebrtc/Source/third_party/libvpx/source/config/ios/arm64/vpx_config.c.
(vpx_codec_build_config):
- Source/third_party/libvpx/source/config/linux/arm64-highbd/vpx_config.h: Copied from Source/ThirdParty/libwebrtc/Source/third_party/libvpx/source/config/linux/arm64/vpx_config.h.
- Source/third_party/libvpx/source/config/linux/arm64-highbd/vpx_dsp_rtcd.h: Copied from Source/ThirdParty/libwebrtc/Source/third_party/libvpx/source/config/linux/generic/vpx_dsp_rtcd.h.
- Source/third_party/libvpx/source/config/linux/arm64-highbd/vpx_scale_rtcd.h: Added.
- Source/third_party/libvpx/source/config/linux/arm64/vp8_rtcd.h:
- Source/third_party/libvpx/source/config/linux/arm64/vp9_rtcd.h:
- Source/third_party/libvpx/source/config/linux/arm64/vpx_config.asm:
- Source/third_party/libvpx/source/config/linux/arm64/vpx_config.c:
- Source/third_party/libvpx/source/config/linux/arm64/vpx_config.h:
- Source/third_party/libvpx/source/config/linux/arm64/vpx_dsp_rtcd.h:
- Source/third_party/libvpx/source/config/linux/generic/vp8_rtcd.h:
- Source/third_party/libvpx/source/config/linux/generic/vp9_rtcd.h:
- Source/third_party/libvpx/source/config/linux/generic/vpx_config.asm:
- Source/third_party/libvpx/source/config/linux/generic/vpx_config.c:
- Source/third_party/libvpx/source/config/linux/generic/vpx_config.h:
- Source/third_party/libvpx/source/config/linux/generic/vpx_dsp_rtcd.h:
- Source/third_party/libvpx/source/config/linux/ia32/vp8_rtcd.h:
- Source/third_party/libvpx/source/config/linux/ia32/vp9_rtcd.h:
- Source/third_party/libvpx/source/config/linux/ia32/vpx_config.asm:
- Source/third_party/libvpx/source/config/linux/ia32/vpx_config.c:
- Source/third_party/libvpx/source/config/linux/ia32/vpx_config.h:
- Source/third_party/libvpx/source/config/linux/ia32/vpx_dsp_rtcd.h:
- Source/third_party/libvpx/source/config/linux/mips64el/vp8_rtcd.h:
- Source/third_party/libvpx/source/config/linux/mips64el/vp9_rtcd.h:
- Source/third_party/libvpx/source/config/linux/mips64el/vpx_config.c:
- Source/third_party/libvpx/source/config/linux/mips64el/vpx_config.h:
- Source/third_party/libvpx/source/config/linux/mips64el/vpx_dsp_rtcd.h:
- Source/third_party/libvpx/source/config/linux/mipsel/vp8_rtcd.h:
- Source/third_party/libvpx/source/config/linux/mipsel/vp9_rtcd.h:
- Source/third_party/libvpx/source/config/linux/mipsel/vpx_config.c:
- Source/third_party/libvpx/source/config/linux/mipsel/vpx_config.h:
- Source/third_party/libvpx/source/config/linux/mipsel/vpx_dsp_rtcd.h:
- Source/third_party/libvpx/source/config/linux/x64/vp8_rtcd.h:
- Source/third_party/libvpx/source/config/linux/x64/vp9_rtcd.h:
- Source/third_party/libvpx/source/config/linux/x64/vpx_config.asm:
- Source/third_party/libvpx/source/config/linux/x64/vpx_config.c:
- Source/third_party/libvpx/source/config/linux/x64/vpx_config.h:
- Source/third_party/libvpx/source/config/linux/x64/vpx_dsp_rtcd.h:
- Source/third_party/libvpx/source/config/mac/ia32/vp8_rtcd.h:
- Source/third_party/libvpx/source/config/mac/ia32/vp9_rtcd.h:
- Source/third_party/libvpx/source/config/mac/ia32/vpx_config.asm:
- Source/third_party/libvpx/source/config/mac/ia32/vpx_config.c:
- Source/third_party/libvpx/source/config/mac/ia32/vpx_config.h:
- Source/third_party/libvpx/source/config/mac/ia32/vpx_dsp_rtcd.h:
- Source/third_party/libvpx/source/config/mac/x64/vp8_rtcd.h:
- Source/third_party/libvpx/source/config/mac/x64/vp8_rtcd_no_acceleration.h:
- Source/third_party/libvpx/source/config/mac/x64/vp9_rtcd.h:
- Source/third_party/libvpx/source/config/mac/x64/vpx_config.asm:
- Source/third_party/libvpx/source/config/mac/x64/vpx_config.c:
- Source/third_party/libvpx/source/config/mac/x64/vpx_config.h:
- Source/third_party/libvpx/source/config/mac/x64/vpx_dsp_rtcd.h:
- Source/third_party/libvpx/source/config/mac/x64/vpx_dsp_rtcd_no_acceleration.h:
- Source/third_party/libvpx/source/config/nacl/vp8_rtcd.h:
- Source/third_party/libvpx/source/config/nacl/vp9_rtcd.h:
- Source/third_party/libvpx/source/config/nacl/vpx_config.c:
- Source/third_party/libvpx/source/config/nacl/vpx_config.h:
- Source/third_party/libvpx/source/config/nacl/vpx_dsp_rtcd.h:
- Source/third_party/libvpx/source/config/vpx_version.h:
- Source/third_party/libvpx/source/config/win/arm64/vp8_rtcd.h: Copied from Source/ThirdParty/libwebrtc/Source/third_party/libvpx/source/config/linux/arm-neon/vp8_rtcd.h.
- Source/third_party/libvpx/source/config/win/arm64/vp9_rtcd.h: Copied from Source/ThirdParty/libwebrtc/Source/third_party/libvpx/source/config/linux/generic/vp9_rtcd.h.
- Source/third_party/libvpx/source/config/win/arm64/vpx_config.asm: Copied from Source/ThirdParty/libwebrtc/Source/third_party/libvpx/source/config/ios/arm64/vpx_config.asm.
- Source/third_party/libvpx/source/config/win/arm64/vpx_config.c: Copied from Source/ThirdParty/libwebrtc/Source/third_party/libvpx/source/config/linux/mips64el/vpx_config.c.
(vpx_codec_build_config):
- Source/third_party/libvpx/source/config/win/arm64/vpx_config.h: Copied from Source/ThirdParty/libwebrtc/Source/third_party/libvpx/source/config/linux/arm64/vpx_config.h.
- Source/third_party/libvpx/source/config/win/arm64/vpx_dsp_rtcd.h: Copied from Source/ThirdParty/libwebrtc/Source/third_party/libvpx/source/config/linux/generic/vpx_dsp_rtcd.h.
- Source/third_party/libvpx/source/config/win/arm64/vpx_scale_rtcd.h: Added.
- Source/third_party/libvpx/source/config/win/ia32/vp8_rtcd.h:
- Source/third_party/libvpx/source/config/win/ia32/vp9_rtcd.h:
- Source/third_party/libvpx/source/config/win/ia32/vpx_config.asm:
- Source/third_party/libvpx/source/config/win/ia32/vpx_config.c:
- Source/third_party/libvpx/source/config/win/ia32/vpx_config.h:
- Source/third_party/libvpx/source/config/win/ia32/vpx_dsp_rtcd.h:
- Source/third_party/libvpx/source/config/win/x64/vp8_rtcd.h:
- Source/third_party/libvpx/source/config/win/x64/vp9_rtcd.h:
- Source/third_party/libvpx/source/config/win/x64/vpx_config.asm:
- Source/third_party/libvpx/source/config/win/x64/vpx_config.c:
- Source/third_party/libvpx/source/config/win/x64/vpx_config.h:
- Source/third_party/libvpx/source/config/win/x64/vpx_dsp_rtcd.h:
- libwebrtc.xcodeproj/project.pbxproj:
LayoutTests:
- webrtc/vp9-expected.txt:
- webrtc/vp9.html:
- 1:29 PM Changeset in webkit [263819] by
-
- 15 edits in trunk/Source
Upstream application accent color support
https://bugs.webkit.org/show_bug.cgi?id=213859
Reviewed by Wenson Hsieh.
Source/WebCore/PAL:
- pal/spi/mac/NSApplicationSPI.h:
Source/WebKit:
- Shared/WebPageCreationParameters.cpp:
(WebKit::WebPageCreationParameters::encode const):
(WebKit::WebPageCreationParameters::decode):
- Shared/WebPageCreationParameters.h:
- UIProcess/Cocoa/PageClientImplCocoa.h:
- UIProcess/PageClient.h:
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::creationParameters):
- UIProcess/mac/PageClientImplMac.h:
- UIProcess/mac/PageClientImplMac.mm:
(WebKit::PageClientImpl::accentColor):
- WebProcess/WebPage/WebPage.cpp:
(WebKit::m_limitsNavigationsToAppBoundDomains):
- WebProcess/WebPage/WebPage.h:
- WebProcess/WebPage/mac/WebPageMac.mm:
(WebKit::WebPage::setAccentColor):
Plumb accent color to the Web Content process so that it is used when
deciding the colors of selection and form controls.
Source/WTF:
- wtf/PlatformHave.h:
- 1:16 PM Changeset in webkit [263818] by
-
- 4 edits in trunk/PerformanceTests
Make it so JetStream2 can run with the d8 shell
https://bugs.webkit.org/show_bug.cgi?id=213856
Reviewed by Keith Miller.
We use d8's Realm API to create separate global objects for
each test to run in.
- JetStream2/JetStreamDriver.js:
(Driver.prototype.runCode.globalObject.loadString):
(Driver.prototype.runCode):
(prototype.async run):
- JetStream2/cli.js:
- JetStream2/index.html:
- 1:14 PM Changeset in webkit [263817] by
-
- 2 edits in trunk/Source/WebKit
Add WebXR to WebKit.plist preferences, off by default
https://bugs.webkit.org/show_bug.cgi?id=213860
<rdar://64411568>
Reviewed by Tim Horton.
Right now we look for "WebXR" in the plist, however, it's not in
the file. It so happens that, *I think*, we fall back to false for
missing keys. We should have an entry for readability and
consistency, though.
No tests needed because this shouldn't change behavior.
- FeatureFlags/WebKit.plist:
- 10:42 AM Changeset in webkit [263816] by
-
- 3 edits in trunk/Source/WebKit
Regression(r259242) WebKit no longer does client navigations at foreground priority for extensions
https://bugs.webkit.org/show_bug.cgi?id=213852
<rdar://problem/63300428>
Reviewed by Alex Christensen.
r259242 tried to address a ASSERT(window) debug assertion hit in applicationType()
by only calling applicationType() when the window is non-null and assuming the
process is an application when the window is null. However, this is not correct
for extensions. The first thing isApplicationVisible() does is call
_UIApplicationIsExtension() to determine if we are an extension. It does not need
the window to make this determination. As a result, I have reverted r259242 and
simply dropped the ASSERT(window) assertion in isApplicationVisible() instead.
This fixes the regression tracked by <rdar://problem/63300428> by reverting the
change that caused it (r259242) and drops the assertion that was hit before r259242.
- UIProcess/ApplicationStateTracker.mm:
(WebKit::applicationType):
- UIProcess/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::isApplicationVisible):
- 10:26 AM Changeset in webkit [263815] by
-
- 9 edits3 adds in trunk/Source/WebInspectorUI
Web Inspector: add back support for 10.3.1
https://bugs.webkit.org/show_bug.cgi?id=213764
Reviewed by Brian Burg.
- UserInterface/Controllers/NetworkManager.js:
(WI.NetworkManager.prototype.initializeTarget):
(WI.NetworkManager.prototype.webSocketWillSendHandshakeRequest):
(WI.NetworkManager.prototype.markResourceRequestAsServedFromMemoryCache): Added.
(WI.NetworkManager.prototype.resourceRequestDidReceiveResponse):
- UserInterface/Models/Resource.js:
(WI.Resource.prototype.legacyMarkServedFromMemoryCache): Added.
(WI.Resource.prototype.legacyMarkServedFromDiskCache): Added.
- UserInterface/Models/WebSocketResource.js:
(WI.WebSocketResource.prototype.addFrame):
- UserInterface/Protocol/Legacy/10.3/InspectorBackendCommands.js: Added.
- UserInterface/Protocol/NetworkObserver.js:
(WI.NetworkObserver.prototype.requestServedFromCache): Added.
- UserInterface/Views/NetworkTableContentView.js:
(WI.NetworkTableContentView):
- UserInterface/Views/NetworkTimelineView.js:
(WI.NetworkTimelineView):
- UserInterface/Views/ResourceDetailsSidebarPanel.js:
(WI.ResourceDetailsSidebarPanel.prototype._refreshRequestAndResponse):
- UserInterface/Views/WebSocketContentView.js:
(WI.WebSocketContentView):
(WI.WebSocketContentView.prototype._addRow):
- Versions/Inspector-iOS-10.3.json: Added.
- 10:23 AM Changeset in webkit [263814] by
-
- 8 edits in trunk
Fix the WebKit build after <rdar://problem/64288191>
https://bugs.webkit.org/show_bug.cgi?id=213832
Reviewed by Tim Horton.
Source/WebCore:
Upcoming changes to <UIKit/UIWebDocumentView.h> will cause the WebKit build to break, due to conflicting
declarations of WKObject in both WebCore (WAK) code and the WebKit API. Avoid this by renaming the WAK version
to WAKObject, rather than WKObject.
Additionally, fix some minor style issues along the way.
- platform/ios/wak/WKTypes.h:
- platform/ios/wak/WKUtilities.c:
(WKRetain):
(WKRelease):
(_WAKObjectDealloc):
(WKGetClassInfo):
(_WKObjectDealloc): Deleted.
- platform/ios/wak/WKUtilities.h:
- platform/ios/wak/WKView.h:
- platform/ios/wak/WKView.mm:
(_WKViewDealloc):
Tools:
Additionally, fix a naming conflict that will result from
WebArchivePboardTypebeing declared in both
<WebKitLegacy/WebArchive.h>and DumpRenderTree, by making the latter a local variable instead.
- DumpRenderTree/mac/TestRunnerMac.mm:
(TestRunner::imageCountInGeneralPasteboard const):
- 10:08 AM Changeset in webkit [263813] by
-
- 8 edits in trunk
[iOS] Implement support for UIWKDocumentRequestSpatialAndCurrentSelection
https://bugs.webkit.org/show_bug.cgi?id=213704
<rdar://problem/59738878>
Reviewed by Wenson Hsieh.
Source/WebKit:
Implement support for the new request type UIWKDocumentRequestSpatialAndCurrentSelection.
Requests of this type return the contents inside the range that covers both the specified
rect and the current selection, if there is one.
The flag UIWKDocumentRequestSpatialAndCurrentSelection was added in <rdar://problem/64867540>.
- Platform/spi/ios/UIKitSPI.h: Same thing I did in TestWebKitAPI/ios/UIKitSPI.h. See Tools ChangeLog for why.
- Shared/DocumentEditingContext.h:
- UIProcess/ios/WKContentViewInteraction.mm:
(toWebDocumentRequestOptions):
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::requestDocumentEditingContext):
Tools:
Add some tests.
- TestWebKitAPI/Tests/WebKitCocoa/DocumentEditingContext.mm:
(TEST):
- TestWebKitAPI/ios/UIKitSPI.h: Define the enumerator using a macro just like what was done for
UIWKDocumentRequestMarkedTextRects. The reason for the macro instead of modifying the enumeration
definition in this file is to 1) avoid breaking the build for Apple engineers that haven't picked
up <rdar://problem/64867540> and to 2) avoid breaking the OpenSource build.
- 9:58 AM Changeset in webkit [263812] by
-
- 2 edits in trunk/LayoutTests
Remove expectation for fast/events/before-input-delete-empty-list-target-ranges.html and fast/events/before-input-events-prevent-insert-composition.html and fast/events/before-input-events-prevent-recomposition.html as they are passing.
https://bugs.webkit.org/show_bug.cgi?id=213848
Unreviewed test gardening.
Patch by Karl Rackler <Karl Rackler> on 2020-07-01
- platform/ios-simulator/TestExpectations:
- 9:41 AM Changeset in webkit [263811] by
-
- 2 edits in trunk/LayoutTests
Remove expectation for fast/events/fire-scroll-event.html as it is passing.
https://bugs.webkit.org/show_bug.cgi?id=213850
Unreviewed test gardening.
Patch by Karl Rackler <Karl Rackler> on 2020-07-01
- platform/ios-simulator/TestExpectations:
- 9:20 AM Changeset in webkit [263810] by
-
- 2 edits in trunk/Source/JavaScriptCore
Script to copy over testapi.js is redundant in xcodebuild
https://bugs.webkit.org/show_bug.cgi?id=213824
Reviewed by Keith Miller.
We're already copying over the entire testapiScripts directory.
No need to manually copy just one file from it, too.
- JavaScriptCore.xcodeproj/project.pbxproj:
- 9:19 AM Changeset in webkit [263809] by
-
- 2 edits in trunk/LayoutTests
[GLIB] Unreviewed test gardening. Remove unnecessary baseline after r263797.
- platform/glib/imported/w3c/web-platform-tests/websockets/interfaces/WebSocket/bufferedAmount/bufferedAmount-unicode-expected.txt:
- 9:15 AM Changeset in webkit [263808] by
-
- 2 edits in trunk/LayoutTests
Remove expectation for fast/events/before-input-prevent-cut.html as they are passing.
https://bugs.webkit.org/show_bug.cgi?id=213849
Unreviewed test gardening.
Patch by Karl Rackler <Karl Rackler> on 2020-07-01
- platform/ios/TestExpectations:
- 9:14 AM Changeset in webkit [263807] by
-
- 4 edits in trunk/Source/WebKit
Crash under IPC::isValidMessageName()
https://bugs.webkit.org/show_bug.cgi?id=213751
<rdar://problem/64773416>
Reviewed by Geoffrey Garen.
This is a speculative fix for the crashes tracked by <rdar://problem/64773416>.
The suspicion is that the compiler optimizes the code for IPC::isValidMessageName()
because its parameter is of type MessageName. It may therefore assume the parameter
is a valid MessageName enum value, which is ironic because the purpose of this
function is to check whether or not the enum value is valid.
To address the issue, I got rid of the #ifdefs in MessageName enum so that the
enum values have an underlying value in the range [0, MessageName::Last]. I then
updated the isValidEnum template specialization to verify that the input integer
is indeed in the range [0, MessageName::Last] before casting it to a MessageName
and calling IPC::isValidMessageName().
- Scripts/webkit/messages.py:
- 9:03 AM Changeset in webkit [263806] by
-
- 12 edits in trunk
WKUserScripts injecting into all frames seem to violate app-bound domains
https://bugs.webkit.org/show_bug.cgi?id=213816
<rdar://problem/64872296>
Reviewed by Brady Eidson.
Source/WebKit:
Patch to make app-bound domain checks on a per-frame basis instead
of per-page-based-on-main-frame. This will prevent WKUserScripts from
being injected in subframes when the main frame is app-bound. Now, all
ancestors of a frame must be app-bound in order for a frame to
evaluate user script.
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::setIsNavigatingToAppBoundDomainAndCheckIfPermitted):
Move 'isMainFrame' check to be inside of the check for
m_limitsNavigationsToAppBoundDomains. The navigation should fail if
the main frame is not app-bound and the WKWebView is marked with the
limitsNavigationToAppBoundDomains flag, but non-app-bound subframe
loads are allowed to continue.
(WebKit::WebPageProxy::decidePolicyForNavigationAction):
- UIProcess/WebPageProxy.h:
(WebKit::WebPageProxy::isTopFrameNavigatingToAppBoundDomain const):
- UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::download):
- WebProcess/Network/WebLoaderStrategy.cpp:
(WebKit::WebLoaderStrategy::scheduleLoadFromNetworkProcess):
(WebKit::WebLoaderStrategy::loadResourceSynchronously):
(WebKit::WebLoaderStrategy::startPingLoad):
(WebKit::WebLoaderStrategy::preconnectTo):
For reporting loads to the Network Process, we only care if the main
frame is app bound, so we need to store that info in the WebPage and
WebPageProxy.
- WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::shouldEnableInAppBrowserPrivacyProtections const):
- WebProcess/WebPage/WebFrame.cpp:
(WebKit::WebFrame::startDownload):
(WebKit::WebFrame::convertMainResourceLoadToDownload):
(WebKit::WebFrame::shouldEnableInAppBrowserPrivacyProtections):
(WebKit::WebFrame::isTopFrameNavigatingToAppBoundDomain const):
- WebProcess/WebPage/WebFrame.h:
(WebKit::WebFrame::setIsNavigatingToAppBoundDomain):
(WebKit::WebFrame::isNavigatingToAppBoundDomain const):
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::loadRequest):
(WebKit::WebPage::loadDataImpl):
(WebKit::WebPage::didReceivePolicyDecision):
(WebKit::WebPage::runJavaScript):
(WebKit::WebPage::setIsNavigatingToAppBoundDomain):
(WebKit::WebPage::shouldEnableInAppBrowserPrivacyProtections): Deleted.
- WebProcess/WebPage/WebPage.h:
(WebKit::WebPage::needsInAppBrowserPrivacyQuirks):
(WebKit::WebPage::isNavigatingToAppBoundDomain const): Deleted.
Move all app-bound domain logic from the WebPage to the WebFrame now
that checks are on a per-frame basis.
Tools:
Added API test coverage. Sets up a tree like so: [app-bound domain,
non-app-bound domain, app-bound domain]. Script injection should only
be successful in the top frame. Since message handlers are disabled for non-
app-bound domains, this test injects script which loads an image using a
custom url scheme. If the load succeeds, we increment a counter, and
expect only one successful script load (the main frame).
- TestWebKitAPI/Tests/WebKitCocoa/InAppBrowserPrivacy.mm:
(-[InAppBrowserSchemeHandler webView:startURLSchemeTask:]):
- 8:57 AM Changeset in webkit [263805] by
-
- 3 edits2 adds in trunk
[LFC][TFC] Add support for non-baseline aligned cell height
https://bugs.webkit.org/show_bug.cgi?id=213845
Reviewed by Antti Koivisto.
Source/WebCore:
Adjust max ascent/descent only when the cell is basline aligned.
Test: fast/layoutformattingcontext/table-cell-height-middle-align-simple.html
- layout/tableformatting/TableLayout.cpp:
(WebCore::Layout::TableFormattingContext::TableLayout::distributedVerticalSpace):
LayoutTests:
- fast/layoutformattingcontext/table-cell-height-middle-align-simple-expected.html: Added.
- fast/layoutformattingcontext/table-cell-height-middle-align-simple.html: Added.
- 8:47 AM Changeset in webkit [263804] by
-
- 1 edit2 moves2 adds in trunk/LayoutTests
pointerevents/ios/touch-action-none-on-iframe.html times out
https://bugs.webkit.org/show_bug.cgi?id=213846
<rdar://problem/60393092>
Reviewed by Antti Koivisto.
The test pointerevents/ios/touch-action-none-on-iframe.html was mistakenly assuming that setting
touch-action: noneon
an <iframe> should prevent scrolling on the outer document with a swipe gesture over the inner document. We're renaming
this test as pointerevents/ios/touch-action-none-on-iframe-outer.html and modifying it to expect scrolling to occur, and
also make it a promise_test to avoid further timeouts due to failures in an async_test.
We also add a new test pointerevents/ios/touch-action-none-on-iframe-inner.html which sets
touch-action: noneon the
inner document which should indeed prevent scrolling of both the inner and outer documents.
- pointerevents/ios/touch-action-none-on-iframe-inner-expected.txt: Added.
- pointerevents/ios/touch-action-none-on-iframe-inner.html: Added.
- pointerevents/ios/touch-action-none-on-iframe-outer-expected.txt: Renamed from LayoutTests/pointerevents/ios/touch-action-none-on-iframe-expected.txt.
- pointerevents/ios/touch-action-none-on-iframe-outer.html: Renamed from LayoutTests/pointerevents/ios/touch-action-none-on-iframe.html.
- 8:40 AM Changeset in webkit [263803] by
-
- 3 edits in trunk/LayoutTests
Remove expectation for fast/dom/Window/open-invalid-url.html and fast/dom/Range/simple-line-layout-getclientrects.html and fast/dom/attr_dead_doc.html and fast/dom/horizontal-scrollbar-when-dir-change.html and fast/dom/vertical-scrollbar-when-dir-change.html as they are passing.
https://bugs.webkit.org/show_bug.cgi?id=213847
Unreviewed test gardening.
Patch by Karl Rackler <Karl Rackler> on 2020-07-01
- platform/ios-simulator/TestExpectations:
- platform/ios/TestExpectations:
- 8:26 AM Changeset in webkit [263802] by
-
- 3 edits2 adds in trunk
[Media Controls] Tracks panel can show text tracks with mode "hidden" as selected
https://bugs.webkit.org/show_bug.cgi?id=213839
<rdar://problem/57989325>
Reviewed by Jer Noble.
Source/WebCore:
We only considered text tracks that had their "mode" set to "disabled" as tracks that weren't selected,
but there is also the "hidden" mode which should share the same UI state. We now check for "mode" to
be set to "showing" to consider a text track as selected in the tracks panel.
Test: media/modern-media-controls/tracks-support/tracks-support-hidden-tracks.html
- Modules/modern-media-controls/media/tracks-support.js:
(TracksSupport.prototype.tracksPanelIsTrackInSectionSelected):
LayoutTests:
Add a new test that dumps the selection state of tracks in the tracks panel when all of media.textTracks
have been set to mode = "hidden".
- media/modern-media-controls/tracks-support/tracks-support-hidden-tracks-expected.txt: Added.
- media/modern-media-controls/tracks-support/tracks-support-hidden-tracks.html: Added.
- 7:49 AM Changeset in webkit [263801] by
-
- 2 edits in trunk/LayoutTests
Remove expectation for fast/css/replaced-element-implicit-size.html as they are passing.
https://bugs.webkit.org/show_bug.cgi?id=213843
Unreviewed test gardening.
Patch by Karl Rackler <Karl Rackler> on 2020-07-01
- platform/ios/TestExpectations:
- 7:31 AM Changeset in webkit [263800] by
-
- 2 edits in trunk/Source/WebCore
Regression (r263788): Windows build broken: nameForRenderTreeAsText is not a member of WebCore::Color
https://bugs.webkit.org/show_bug.cgi?id=213841
<rdar://problem/64985276>
Fix Windows build.
- platform/graphics/ca/win/PlatformCALayerWin.cpp:
(printColor):
- 7:28 AM Changeset in webkit [263799] by
-
- 2 edits in trunk/LayoutTests
Remove expectation for fast/canvas/canvas-gradient-addStop-error.html and fast/canvas/canvas-radial-gradient-spreadMethod.html as they are passing.
https://bugs.webkit.org/show_bug.cgi?id=213840
Unreviewed test gardening.
Patch by Karl Rackler <Karl Rackler> on 2020-07-01
- platform/ios/TestExpectations:
- 7:27 AM Changeset in webkit [263798] by
-
- 2 edits in trunk/LayoutTests
Remove expectation for fast/css/font-calculated-value.html as it is passing.
https://bugs.webkit.org/show_bug.cgi?id=178952
Unreviewed test gardening.
Patch by Karl Rackler <Karl Rackler> on 2020-07-01
- platform/ios/TestExpectations:
- 7:23 AM Changeset in webkit [263797] by
-
- 19 edits in trunk/Source
Make NetworkSendQueue use CString instead of String for UTF-8 data
https://bugs.webkit.org/show_bug.cgi?id=213714
Reviewed by Darin Adler.
Source/WebCore:
Use CString instead of String in NetworkSendQueue as all data is to be encoded as UTF-8.
This allows converting and allocating the UTF-8 string only once.
Covered by existing tests.
- Modules/mediastream/RTCDataChannel.cpp:
(WebCore::RTCDataChannel::createMessageQueue):
(WebCore::RTCDataChannel::send):
- Modules/mediastream/libwebrtc/LibWebRTCDataChannelHandler.cpp:
(WebCore::LibWebRTCDataChannelHandler::sendStringData):
(WebCore::LibWebRTCDataChannelHandler::sendRawData):
- Modules/mediastream/libwebrtc/LibWebRTCDataChannelHandler.h:
- fileapi/NetworkSendQueue.cpp:
(WebCore::NetworkSendQueue::enqueue):
(WebCore::NetworkSendQueue::processMessages):
- fileapi/NetworkSendQueue.h:
- platform/mediastream/RTCDataChannelHandler.h:
- platform/mock/RTCDataChannelHandlerMock.cpp:
(WebCore::RTCDataChannelHandlerMock::sendStringData):
- platform/mock/RTCDataChannelHandlerMock.h:
Source/WebKit:
Update code to use CString/DataReference to transmit WebSocket text messages.
- NetworkProcess/NetworkSocketChannel.cpp:
(WebKit::NetworkSocketChannel::sendString):
- NetworkProcess/NetworkSocketChannel.h:
- NetworkProcess/NetworkSocketChannel.messages.in:
- NetworkProcess/WebSocketTask.h:
(WebKit::WebSocketTask::sendString):
- NetworkProcess/cocoa/WebSocketTaskCocoa.h:
- NetworkProcess/cocoa/WebSocketTaskCocoa.mm:
(WebKit::WebSocketTask::sendString):
- NetworkProcess/soup/WebSocketTaskSoup.h:
- NetworkProcess/soup/WebSocketTaskSoup.cpp:
(WebKit::WebSocketTask::sendString):
- WebProcess/Network/WebSocketChannel.cpp:
(WebKit::WebSocketChannel::createMessageQueue):
(WebKit::WebSocketChannel::send):
- 7:16 AM Changeset in webkit [263796] by
-
- 2 edits in trunk/LayoutTests
Remove expectation for fast/block/positioning/rtl-fixed-positioning.html as it is passing.
https://bugs.webkit.org/show_bug.cgi?id=213838
Unreviewed test gardening.
Patch by Karl Rackler <Karl Rackler> on 2020-07-01
- platform/ios-simulator/TestExpectations:
- 3:49 AM Changeset in webkit [263795] by
-
- 4 edits in trunk/Source
Use more efficient makeString() instead of StringBuilder
https://bugs.webkit.org/show_bug.cgi?id=213708
Reviewed by Sam Weinig.
Source/WebCore:
This patch refactors throwRequiredMemberTypeError() and throwArgument*Error()
methods, replacing all StringBuilder usages with more efficient makeString().
Extracts makeArgumentTypeErrorMessage(), similiar to existing helpers,
which can be reused if neccessary.
No new tests, no behavior change.
- bindings/js/JSDOMExceptionHandling.cpp:
(WebCore::makeArgumentTypeErrorMessage):
(WebCore::throwArgumentMustBeEnumError):
(WebCore::throwArgumentMustBeFunctionError):
(WebCore::throwArgumentMustBeObjectError):
(WebCore::throwArgumentTypeError):
(WebCore::throwRequiredMemberTypeError):
(WebCore::appendArgumentMustBe): Deleted.
Source/WTF:
Introduces StringTypeAdapter<std::tuple> overload, which enables using
makeString() instead of StringBuilder in more cases.
- wtf/text/StringConcatenate.h:
(WTF::StringTypeAdapter<std::tuple<StringTypes...>, void>): Added.
- 3:41 AM Changeset in webkit [263794] by
-
- 4 edits in trunk
[css-flexbox] Don't include scrollbar extents when computing sizes for percentage resolution
https://bugs.webkit.org/show_bug.cgi?id=213739
Reviewed by Javier Fernandez.
Source/WebCore:
Content override sizes do include scrollbars so they must be substracted when using the override size
to compute percentages.
- rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::crossSizeForPercentageResolution): Remove scrollbars.
(WebCore::RenderFlexibleBox::mainSizeForPercentageResolution): Ditto.
LayoutTests:
- TestExpectations: Unskipped percentage-heights-004.html.
- 3:36 AM Changeset in webkit [263793] by
-
- 3 edits in trunk/Source/WebKit
Fix Swift overlay build after r263727.
https://bugs.webkit.org/show_bug.cgi?id=213823.
Unreviewed, follow up build fix.
- SwiftOverlay/Tests/WebKitTests.swift:
(WebKitTests.testAPI): Fix tests to refer to new parameter name.
- UIProcess/API/Cocoa/WebKitSwiftOverlay.swift:
(callAsyncJavaScript(_:arguments:in:in:completionHandler:Error:)): Use
the imported ObjC name that the compiler expects.
(evaluateJavaScript(_:in:in:completionHandler:Error:)): Ditto.
- 3:36 AM Changeset in webkit [263792] by
-
- 3 edits in trunk/Source/WebCore
[css-flex] Remove death code paths when evaluating percentage resolution
https://bugs.webkit.org/show_bug.cgi?id=213809
Reviewed by Manuel Rego Casasnovas.
Both crossSizeForPercentageResolution() and mainSizeForPercentageResolution() are only called from
childLogicalHeightForPercentageResolution(). The former is called whenever hasOrthogonalFlow(child)
is false and the latter when it's true. However crossSizeForPercentageResolution() has a path for
hasOrthogonalFlow(child)==true which is impossible to reach. The same happens to
mainSizeForPercentageResolution() which has a path for hasOrthogonalFlow(child)==false which is
also impossible to reach.
Remove both death code paths and replace them by assertions. We're also making both methods
private since are not meant to be used from the outside.
- rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::crossSizeForPercentageResolution): Remove death code path.
(WebCore::RenderFlexibleBox::mainSizeForPercentageResolution): Ditto.
- rendering/RenderFlexibleBox.h: Make both calls private.
- 3:34 AM Changeset in webkit [263791] by
-
- 3 edits in trunk/LayoutTests
[GTK] Unreviewed test gardening. Garden flaky failures in EWS GTK-WK2 queue.
- platform/glib/TestExpectations:
- platform/gtk/TestExpectations:
- 12:09 AM Changeset in webkit [263790] by
-
- 11 edits in trunk/Source/JavaScriptCore
Use properly flag names for tests of Tools/Scripts/run-builtins-generator-tests
https://bugs.webkit.org/show_bug.cgi?id=213733
Patch by Tetsuharu Ohzeki <Tetsuharu Ohzeki> on 2020-07-01
Reviewed by Youenn Fablet.
Test cases under Source/JavaScriptCore/Scripts/tests/builtins/ uses exist compilation flags.
But they can take an arbitary flag name and don't have to use an exist flag.
I think it's better to rename them to more proper ones.
- Scripts/tests/builtins/WebCore-ArbitraryConditionalGuard-Separate.js:
- Scripts/tests/builtins/WebCore-DuplicateKeyValueAnnotation-Separate.js:
- Scripts/tests/builtins/WebCore-GuardedBuiltin-Separate.js:
- Scripts/tests/builtins/WebCore-GuardedInternalBuiltin-Separate.js:
- Scripts/tests/builtins/WebCore-xmlCasingTest-Separate.js:
- Scripts/tests/builtins/expected/WebCore-ArbitraryConditionalGuard-Separate.js-result:
- Scripts/tests/builtins/expected/WebCore-GuardedBuiltin-Separate.js-result:
- Scripts/tests/builtins/expected/WebCore-GuardedInternalBuiltin-Separate.js-result:
- Scripts/tests/builtins/expected/WebCore-xmlCasingTest-Separate.js-result:
- Scripts/tests/builtins/expected/WebCoreJSBuiltins.h-result:
- 12:08 AM Changeset in webkit [263789] by
-
- 16 edits3 deletes in trunk/Source/WebKit
Make NetworkRTCProvider receive IPC messages from a background thread
https://bugs.webkit.org/show_bug.cgi?id=213557
Reviewed by Geoffrey Garen.
To ensure webrtc packets do not get blocked on the main thread,
we process WebProcess IPC message directly in the socket thread.
For new sockets, we still go through the main thread, to check suspension or proxy values.
For sending packets/setting options/closing sockets, we stay in the background thread.
- DerivedSources-output.xcfilelist:
- DerivedSources.make:
- NetworkProcess/NetworkConnectionToWebProcess.cpp:
(WebKit::NetworkConnectionToWebProcess::didReceiveMessage):
- NetworkProcess/webrtc/LibWebRTCSocketClient.cpp:
(WebKit::LibWebRTCSocketClient::sendTo):
- NetworkProcess/webrtc/LibWebRTCSocketClient.h:
- NetworkProcess/webrtc/NetworkRTCProvider.cpp:
(WebKit::NetworkRTCProvider::NetworkRTCProvider):
(WebKit::NetworkRTCProvider::close):
(WebKit::NetworkRTCProvider::createSocket):
(WebKit::NetworkRTCProvider::createUDPSocket):
(WebKit::NetworkRTCProvider::createServerTCPSocket):
(WebKit::NetworkRTCProvider::createClientTCPSocket):
(WebKit::NetworkRTCProvider::wrapNewTCPConnection):
(WebKit::NetworkRTCProvider::sendToSocket):
(WebKit::NetworkRTCProvider::closeSocket):
(WebKit::NetworkRTCProvider::setSocketOption):
(WebKit::NetworkRTCProvider::addSocket):
(WebKit::NetworkRTCProvider::takeSocket):
(WebKit::NetworkRTCProvider::newConnection):
(WebKit::NetworkRTCProvider::dispatchToThread):
- NetworkProcess/webrtc/NetworkRTCProvider.h:
(WebKit::NetworkRTCProvider::didReceiveNetworkRTCMonitorMessage):
- NetworkProcess/webrtc/NetworkRTCProvider.messages.in:
- NetworkProcess/webrtc/NetworkRTCSocket.cpp: Removed.
- NetworkProcess/webrtc/NetworkRTCSocket.h: Removed.
- NetworkProcess/webrtc/NetworkRTCSocket.messages.in: Removed.
- SourcesCocoa.txt:
- SourcesGTK.txt:
- SourcesWPE.txt:
- WebKit.xcodeproj/project.pbxproj:
- WebProcess/Network/webrtc/LibWebRTCSocket.cpp:
(WebKit::LibWebRTCSocket::SendTo):
(WebKit::LibWebRTCSocket::Close):
(WebKit::LibWebRTCSocket::SetOption):
(WebKit::LibWebRTCSocket::suspend):