Timeline
Oct 11, 2017:
- 11:46 PM Changeset in webkit [223233] by
-
- 5 edits in tags/Safari-605.1.10/Source/WebCore
Cherry-pick r223212. rdar://problem/33667497
- 11:45 PM Changeset in webkit [223232] by
-
- 9 edits1 add in trunk
import.meta should not be assignable
https://bugs.webkit.org/show_bug.cgi?id=178202
Reviewed by Saam Barati.
JSTests:
- modules/import-meta-assignment.js: Added.
(shouldThrow):
(SyntaxError.import.meta.can.shouldThrow):
Source/JavaScriptCore:
import.metacannot be used for LHS. This patch adds MetaPropertyNode
and make NewTargetNode and ImportMetaNode as derived classes of MetaPropertyNode.
We change the parser not to allow assignments for MetaPropertyNode.
- bytecompiler/NodesCodegen.cpp:
(JSC::ImportMetaNode::emitBytecode):
- parser/ASTBuilder.h:
(JSC::ASTBuilder::createImportMetaExpr):
(JSC::ASTBuilder::isMetaProperty):
(JSC::ASTBuilder::isImportMeta):
- parser/NodeConstructors.h:
(JSC::MetaPropertyNode::MetaPropertyNode):
(JSC::NewTargetNode::NewTargetNode):
(JSC::ImportMetaNode::ImportMetaNode):
- parser/Nodes.h:
(JSC::ExpressionNode::isMetaProperty const):
(JSC::ExpressionNode::isImportMeta const):
- parser/Parser.cpp:
(JSC::Parser<LexerType>::metaPropertyName):
(JSC::Parser<LexerType>::parseAssignmentExpression):
(JSC::Parser<LexerType>::parseMemberExpression):
(JSC::Parser<LexerType>::parseUnaryExpression):
- parser/Parser.h:
- parser/SyntaxChecker.h:
(JSC::SyntaxChecker::createImportMetaExpr):
(JSC::SyntaxChecker::isMetaProperty):
(JSC::SyntaxChecker::isImportMeta):
- 11:15 PM Changeset in webkit [223231] by
-
- 1 copy in tags/Safari-605.1.10
Tag Safari-605.1.10.
- 10:20 PM October 2017 Meeting edited by
- (diff)
- 9:31 PM Changeset in webkit [223230] by
-
- 2 edits in trunk/Source/WebKit
Fix debug build
Unreviewed.
Add ENABLE(SERVICE_WORKER) guard.
- UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::createWebPage):
- 9:24 PM Changeset in webkit [223229] by
-
- 6 edits1 copy1 add in branches/safari-604-branch/Source/WebKit
Apply patch. rdar://problem/34920294
- 8:01 PM Changeset in webkit [223228] by
-
- 7 edits in trunk/Source/WebCore
Correct nullptr deref in selection handling.
https://bugs.webkit.org/show_bug.cgi?id=178189
<rdar://problem/33833012>
Reviewed by Ryosuke Niwa.
The VisibleSelection::toNormalizedRange returns nullptr for certain conditions (e.g., 'isNone'
and 'isOrphaned' cases). It's possible to crash the WebProcess by executing a code path with
an orphaned selection range.
The return value of 'toNormalizedRange' is checked for nullptr in many places, but not everywhere.
This patch adds those missing nullptr checks.
- accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
(-[WebAccessibilityObjectWrapper textMarkerRangeForSelection]):
- editing/DeleteSelectionCommand.cpp:
(WebCore::DeleteSelectionCommand::makeStylingElementsDirectChildrenOfEditableRootToPreventStyleLoss):
- editing/EditingStyle.cpp:
(WebCore::EditingStyle::styleAtSelectionStart):
- editing/Editor.cpp:
(WebCore::Editor::misspelledWordAtCaretOrRange const):
- page/DOMSelection.cpp:
(WebCore::DOMSelection::containsNode const):
- page/DragController.cpp:
(WebCore::DragController::concludeEditDrag):
- 6:35 PM Changeset in webkit [223227] by
-
- 2 edits in trunk/LayoutTests
Mark http/tests/cache-storage/cache-clearing.https.html as failing on Windows.
https://bugs.webkit.org/show_bug.cgi?id=178200
Unreviewed test gardening.
- platform/win/TestExpectations:
- 6:15 PM Changeset in webkit [223226] by
-
- 3 edits in trunk/Tools
run-benchmark script should set 'XPC_DYLD_FRAMEWORK_PATH' while launching local-built Safari on Mac.
https://bugs.webkit.org/show_bug.cgi?id=178199
Reviewed by Saam Barati.
'XPC_DYLD_FRAMEWORK_PATH' should be set while launching Safari on run-benchmark script.
'force_remove' function should support both file and directory.
- Scripts/webkitpy/benchmark_runner/browser_driver/osx_safari_driver.py:
(OSXSafariDriver.launch_url):
- Scripts/webkitpy/benchmark_runner/utils.py:
(force_remove):
- 6:13 PM Changeset in webkit [223225] by
-
- 7 edits in trunk/Source
Versioning.
- 6:06 PM Changeset in webkit [223224] by
-
- 7 edits in branches/safari-604.3.5.0-branch/Source
Versioning.
- 6:03 PM Changeset in webkit [223223] by
-
- 7 edits in branches/safari-604-branch/Source
Versioning.
- 5:53 PM Changeset in webkit [223222] by
-
- 5 edits in trunk
Runtime disable poly proto because it may be a 3-4% Speedometer regression
https://bugs.webkit.org/show_bug.cgi?id=178192
Reviewed by JF Bastien.
Source/JavaScriptCore:
- runtime/Options.h:
- runtime/StructureInlines.h:
(JSC::Structure::shouldConvertToPolyProto):
Tools:
- Scripts/run-jsc-stress-tests:
- 5:47 PM Changeset in webkit [223221] by
-
- 7 edits in trunk
Unreviewed, rolling out r223215.
This change broke the Sierra build.
Reverted changeset:
"[Apple Pay] Add subLocality and subAdministrativeArea to
ApplePayPaymentContact"
https://bugs.webkit.org/show_bug.cgi?id=178191
https://trac.webkit.org/changeset/223215
- 5:46 PM Changeset in webkit [223220] by
-
- 2 edits in trunk/Source/WebKit
Add API to clean CacheStorage data
https://bugs.webkit.org/show_bug.cgi?id=178034
Unreviewed.
Patch by Youenn Fablet <youenn@apple.com> on 2017-10-11
- NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::fetchWebsiteData): Fixing lifetime of aggregator.
- 5:33 PM Changeset in webkit [223219] by
-
- 2 edits in trunk/Source/WTF
[JSC] Add ability to build with ARMV8 ILP32 ABI
https://bugs.webkit.org/show_bug.cgi?id=178194
Reviewed by Saam Barati.
For ARMV8 32 bit ABI, use JSVALUE32_64 and the CLOOP.
- wtf/Platform.h:
- 5:33 PM Changeset in webkit [223218] by
-
- 1 edit1 add in trunk/LayoutTests
Rebaseline fast/scrolling/adjust-scroll-offset-on-zoom.html for iOS.
Unreviewed test gardening.
- platform/ios/fast/scrolling/adjust-scroll-offset-on-zoom-expected.txt: Added.
- 5:27 PM Changeset in webkit [223217] by
-
- 7 edits4 deletes in trunk
XMLHttpRequest: do not sniff text/html, and do not sniff XML when responseType is set to "text"
https://bugs.webkit.org/show_bug.cgi?id=168724
Reviewed by Ryosuke Niwa.
LayoutTests/imported/w3c:
Rebaseline web-platform-tests now that all checks are passing.
- web-platform-tests/XMLHttpRequest/responsetext-decoding-expected.txt:
Source/WebCore:
WebKit enabled HTML / XML charset detection for HTML-ish / XML-ish
responses even when response type is text, which does not match the
specification.
This patch is based on the following Blink patch by Yutaka Hirano <yhirano@chromium.org>:
Tests:
imported/w3c/web-platform-tests/XMLHttpRequest/responsetext-decoding.htm
imported/w3c/web-platform-tests/XMLHttpRequest/responsedocument-decoding.htm
- xml/XMLHttpRequest.cpp:
(WebCore::XMLHttpRequest::createDecoder const):
(WebCore::XMLHttpRequest::didReceiveData):
- xml/XMLHttpRequest.h:
LayoutTests:
Drop outdated test, proper behavior is covered by web-platform-tests.
- fast/xmlhttprequest/xmlhttprequest-html-response-encoding-expected.txt: Removed.
- fast/xmlhttprequest/xmlhttprequest-html-response-encoding.html: Removed.
- 5:17 PM Changeset in webkit [223216] by
-
- 2 edits in trunk/LayoutTests
Mark imported/w3c/web-platform-tests/XMLHttpRequest/open-url-worker-origin.htm as flaky.
https://bugs.webkit.org/show_bug.cgi?id=178190
Unreviewed test gardening.
- platform/mac/TestExpectations:
- 5:14 PM Changeset in webkit [223215] by
-
- 7 edits in trunk
[Apple Pay] Add subLocality and subAdministrativeArea to ApplePayPaymentContact
https://bugs.webkit.org/show_bug.cgi?id=178191
<rdar://problem/34906367>
Reviewed by Tim Horton.
Source/WebCore:
Added test cases to http/tests/ssl/applepay/ApplePaySession.html.
- Modules/applepay/ApplePayPaymentContact.h:
- Modules/applepay/ApplePayPaymentContact.idl:
- Modules/applepay/cocoa/PaymentContactCocoa.mm:
(WebCore::convert):
LayoutTests:
- http/tests/ssl/applepay/ApplePaySession-expected.txt:
- http/tests/ssl/applepay/ApplePaySession.html:
- 5:00 PM Changeset in webkit [223214] by
-
- 4 edits in trunk/JSTests
Unreviewed. Actually skip certain type profiler tests in debug.
- typeProfiler.yaml:
- typeProfiler/deltablue-for-of.js:
- typeProfiler/getter-richards.js:
- 5:00 PM October 2017 Meeting edited by
- Make Maciej the speaker of feature focus talk, and swap the time slot … (diff)
- 4:55 PM Changeset in webkit [223213] by
-
- 26 edits1 copy2 adds in trunk
Add API to clean CacheStorage data
https://bugs.webkit.org/show_bug.cgi?id=178034
Patch by Youenn Fablet <youenn@apple.com> on 2017-10-11
Reviewed by Chris Dumez.
Source/WebCore:
Test: http/tests/cache-storage/cache-clearing.https.html
- platform/FileSystem.h:
Source/WebKit:
Introducing a new website data type for DOMCache.
Adding API to delete DOMCache for a given origin or for all origins.
This is added to WKWebsiteDataStore.
Cleaning a CacheStorage will remove all data in the Cache object but the object will stay live
for the duration of the NetworkProcess.
This allows ensuring that once a cache is cleaned, WebProcess will update to this new state.
Fetching of WebsiteData for DOMCache is not implemented yet since we do not keep a list of all origins for which we have data.
- NetworkProcess/NetworkProcess.cpp:
(WebKit::fetchDOMCacheEntries):
(WebKit::NetworkProcess::fetchWebsiteData):
(WebKit::NetworkProcess::deleteWebsiteData):
(WebKit::NetworkProcess::deleteWebsiteDataForOrigins):
- NetworkProcess/cache/CacheStorageEngine.cpp:
(WebKit::CacheStorage::Engine::cachesRootPath):
(WebKit::CacheStorage::Engine::fetchEntries):
(WebKit::CacheStorage::ClearTasksHandler::ClearTasksHandler):
(WebKit::CacheStorage::ClearTasksHandler::~ClearTasksHandler):
(WebKit::CacheStorage::Engine::clearEngines):
(WebKit::CacheStorage::Engine::clearCachesForOrigins):
(WebKit::CacheStorage::Engine::readCachesFromDisk):
(WebKit::CacheStorage::deleteFolder):
(WebKit::CacheStorage::Engine::clearCaches):
(WebKit::CacheStorage::Engine::unlock): Removing the assertion as Cache objects are removed when clearing data.
- NetworkProcess/cache/CacheStorageEngine.h:
- NetworkProcess/cache/CacheStorageEngineCaches.cpp:
(WebKit::CacheStorage::Caches::Caches):
(WebKit::CacheStorage::Caches::clear):
- NetworkProcess/cache/CacheStorageEngineCaches.h:
(WebKit::CacheStorage::Caches::create):
- Shared/WebsiteData/WebsiteDataType.h:
- UIProcess/API/C/WKWebsiteDataStoreRef.cpp:
(WKWebsiteDataStoreRemoveAllDOMCaches):
(WKWebsiteDataStoreRemoveDOMCacheForOrigin):
- UIProcess/API/C/WKWebsiteDataStoreRef.h:
- UIProcess/API/Cocoa/WKWebsiteDataRecord.h:
- UIProcess/API/Cocoa/WKWebsiteDataRecord.mm:
(dataTypesToString):
- UIProcess/API/Cocoa/WKWebsiteDataRecordInternal.h:
(WebKit::toWebsiteDataType):
(WebKit::toWKWebsiteDataTypes):
- UIProcess/API/Cocoa/WKWebsiteDataStore.mm:
(+[WKWebsiteDataStore allWebsiteDataTypes]):
- UIProcess/WebsiteData/WebsiteDataStore.cpp:
(WebKit::computeNetworkProcessAccessTypeForDataFetch):
(WebKit::computeNetworkProcessAccessTypeForDataRemoval):
Source/WTF:
Moving CallbackAggregator pattern into its own class for easier reuse.
- WTF.xcodeproj/project.pbxproj:
- wtf/CallbackAggregator.h: Added.
(WTF::CallbackAggregator::create):
(WTF::CallbackAggregator::~CallbackAggregator):
(WTF::CallbackAggregator::CallbackAggregator):
Tools:
Adding internals API to trigger deleting all or origin-persistent cache storage persistent data.
- WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
- WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::clearDOMCache):
- WebKitTestRunner/InjectedBundle/TestRunner.h:
- WebKitTestRunner/TestController.cpp:
(WTR::TestController::clearDOMCache):
- WebKitTestRunner/TestController.h:
- WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
LayoutTests:
- http/tests/cache-storage/cache-clearing.https-expected.txt: Added.
- http/tests/cache-storage/cache-clearing.https.html: Added.
- 4:26 PM Changeset in webkit [223212] by
-
- 5 edits in trunk/Source/WebCore
Part 2: Fix -Wcast-qual and -Wunused-lambda-capture warnings in WebCore with new clang compiler
<https://webkit.org/b/178036>
<rdar://problem/33667497>
Reviewed by Chris Dumez.
- Modules/cache/WorkerCacheStorageConnection.cpp:
(WebCore::WorkerCacheStorageConnection::doRemove):
- Change ASSERT() to ASSERT_UNUSED() to suppress warnings about unused lambda capture for 'cacheIdentifier' in Release builds.
- bridge/objc/objc_class.mm:
(JSC::Bindings::ObjcClass::classForIsA): Change C-style cast
into reinterpret_cast and const_cast to go from CFTypeRef to
ObjcClass*.
- crypto/mac/CryptoKeyRSAMac.cpp:
(WebCore::castDataArgumentToCCRSACryptorCreateFromDataIfNeeded):
Add. Introduce method to add a required const_cast for older
OSes since the signature of CCRSACryptorCreateFromData() changed
in iOS 11 & High Sierra.
(WebCore::CryptoKeyRSA::create): Use
castDataArgumentToCCRSACryptorCreateFromDataIfNeeded().
- platform/graphics/cocoa/WebCoreDecompressionSession.mm:
(WebCore::WebCoreDecompressionSession::handleDecompressionOutput):
Remove unused lambda capture for 'status'.
- 3:21 PM Changeset in webkit [223211] by
-
- 25 edits2 adds in trunk
[Geolocation] Expose Coordinates.floorLevel
https://bugs.webkit.org/show_bug.cgi?id=178173
<rdar://problem/34918936>
Reviewed by Ryosuke Niwa.
Source/WebCore:
Expose Coordinates.floorLevel via the Geolocation API. This is currently
a WebKit-specific extension and it is only populated on iOS / WKTR / DRT.
It is null on other platforms.
Test: fast/dom/Geolocation/floorLevel.html
- Modules/geolocation/Coordinates.h:
(WebCore::Coordinates::floorLevel const):
- Modules/geolocation/Coordinates.idl:
- Modules/geolocation/GeolocationPosition.h:
(WebCore::GeolocationPosition::encode const):
(WebCore::GeolocationPosition::decode):
- Modules/geolocation/ios/GeolocationPositionIOS.mm:
(WebCore::GeolocationPosition::GeolocationPosition):
- page/Settings.in:
Source/WebKit:
- UIProcess/API/C/WKGeolocationPosition.cpp:
(WKGeolocationPositionCreate):
(WKGeolocationPositionCreate_b):
(WKGeolocationPositionCreate_c):
- UIProcess/API/C/WKGeolocationPosition.h:
Tools:
Add test infrastructure for testing Coordinates.floorLevel.
- DumpRenderTree/TestRunner.cpp:
(setMockGeolocationPositionCallback):
- DumpRenderTree/TestRunner.h:
- DumpRenderTree/mac/TestRunnerMac.mm:
(TestRunner::setMockGeolocationPosition):
- DumpRenderTree/win/TestRunnerWin.cpp:
(TestRunner::setMockGeolocationPosition):
- WebKitTestRunner/GeolocationProviderMock.cpp:
(WTR::GeolocationProviderMock::setPosition):
- WebKitTestRunner/GeolocationProviderMock.h:
- WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
- WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::setMockGeolocationPosition):
- WebKitTestRunner/InjectedBundle/InjectedBundle.h:
- WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setMockGeolocationPosition):
- WebKitTestRunner/InjectedBundle/TestRunner.h:
- WebKitTestRunner/TestController.cpp:
(WTR::TestController::setMockGeolocationPosition):
- WebKitTestRunner/TestController.h:
- WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
LayoutTests:
Add layout test coverage.
- fast/dom/Geolocation/floorLevel-expected.txt: Added.
- fast/dom/Geolocation/floorLevel.html: Added.
- 2:33 PM Changeset in webkit [223210] by
-
- 5 edits2 adds in trunk
Avoid triggering layout from style change
https://bugs.webkit.org/show_bug.cgi?id=178184
Source/WebCore:
rdar://problem/34699113
Reviewed by Zalan Bujtas.
It's bad for RenderBox::styleDidChange() to scroll RenderLayers, because that
can trigger layout via FrameView::updateWidgetPositions() and ScrollingCoordinator::absoluteEventTrackingRegions().
So postpone the scrolling until after layout.
Test: fast/scrolling/adjust-scroll-offset-on-zoom.html
- rendering/RenderBox.cpp:
(WebCore::RenderBox::styleDidChange):
- rendering/RenderLayer.cpp:
(WebCore::RenderLayer::updateLayerPositions):
(WebCore::RenderLayer::setPostLayoutScrollPosition):
(WebCore::RenderLayer::applyPostLayoutScrollPositionIfNeeded):
- rendering/RenderLayer.h:
LayoutTests:
Reviewed by Zalan Bujtas.
- fast/scrolling/adjust-scroll-offset-on-zoom-expected.txt: Added.
- fast/scrolling/adjust-scroll-offset-on-zoom.html: Added.
- 1:54 PM Changeset in webkit [223209] by
-
- 4 edits in trunk/Source/WebInspectorUI
Web Inspector: Make 3D objects selectable in Layers visualization
https://bugs.webkit.org/show_bug.cgi?id=178136
Patch by Ross Kirsling <Ross Kirsling> on 2017-10-11
Reviewed by Devin Rousso.
- UserInterface/Views/Layers3DContentView.js:
(WI.Layers3DContentView):
(WI.Layers3DContentView.prototype.initialLayout):
(WI.Layers3DContentView.prototype._canvasMouseDown):
(WI.Layers3DContentView.prototype._updateLayerGroupSelection):
Implement selection of 3D layer objects.
(WI.Layers3DContentView.prototype._addLayerGroup): Renamed from _addLayer.
(WI.Layers3DContentView.prototype._updateLayerGroupPosition):
(WI.Layers3DContentView.prototype._createLayerMesh):
Refactor -- one group per layer (visible plane and composited outline), not groups by shape.
(WI.Layers3DContentView.prototype.layout):
(WI.Layers3DContentView.prototype._updateLayers):
(WI.Layers3DContentView.prototype._clearLayers): Deleted.
Don't destroy all 3D objects on every LayerTreeDidChange; make use of layerTreeMutations.
(Not only a performance improvement, but also necessary to properly preserve highlighting.)
(WI.Layers3DContentView.prototype.selectLayerById):
Allow selection to be updated from the outside.
- UserInterface/Views/LayerDetailsSidebarPanel.js:
(WI.LayerDetailsSidebarPanel.prototype.selectNodeByLayerId):
(WI.LayerDetailsSidebarPanel.prototype._buildDataGrid):
(WI.LayerDetailsSidebarPanel.prototype._dataGridSelectedNodeChanged):
Allow selection to be updated from the outside.
(WI.LayerDetailsSidebarPanel.prototype.inspect):
(WI.LayerDetailsSidebarPanel.prototype._updateLayers): Renamed from _updateDisplayWithLayers.
(WI.LayerDetailsSidebarPanel.prototype._updateDataGrid):
(WI.LayerDetailsSidebarPanel.prototype._updateBottomBar):
(WI.LayerDetailsSidebarPanel.prototype._contentForPopover):
(WI.LayerDetailsSidebarPanel.prototype._dataGridNodeForLayer): Deleted.
Cleanup.
- UserInterface/Views/LayersTabContentView.js:
(WI.LayersTabContentView):
(WI.LayersTabContentView.prototype._detailsSidebarSelectedLayerChanged):
(WI.LayersTabContentView.prototype._contentViewSelectedLayerChanged):
Orchestrate communication of selection state between visualization and sidebar.
- 1:43 PM Changeset in webkit [223208] by
-
- 1 copy in tags/Safari-604.4.1
Tag Safari-604.4.1.
- 1:41 PM Changeset in webkit [223207] by
-
- 21 edits in trunk
Bump default cache storage quota to 20MB
https://bugs.webkit.org/show_bug.cgi?id=178132
Patch by Youenn Fablet <youenn@apple.com> on 2017-10-11
Reviewed by Alex Christensen.
Source/WebCore:
Covered by http/wpt/cache-storage/cache-quota.any.html.
- platform/network/NetworkStorageSession.h:
(WebCore::NetworkStorageSession::cacheStoragePerOriginQuota const):
(WebCore::NetworkStorageSession::setCacheStoragePerOriginQuota):
Source/WebKit:
Adding the ability to set the quota per origin through WebsiteDataStore.
Moving cache storage directory setting also in WebsiteDataStore.
- NetworkProcess/NetworkConnectionToWebProcess.cpp:
(WebKit::NetworkConnectionToWebProcess::ensureLegacyPrivateBrowsingSession):
- NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::initializeNetworkProcess):
- NetworkProcess/mac/RemoteNetworkingContext.mm:
(WebKit::RemoteNetworkingContext::ensureWebsiteDataStoreSession):
- Shared/WebsiteDataStoreParameters.cpp:
(WebKit::WebsiteDataStoreParameters::encode const):
(WebKit::WebsiteDataStoreParameters::decode):
- Shared/WebsiteDataStoreParameters.h:
- UIProcess/API/APIProcessPoolConfiguration.cpp:
(API::ProcessPoolConfiguration::createWithLegacyOptions):
(API::ProcessPoolConfiguration::createWithWebsiteDataStoreConfiguration):
(API::ProcessPoolConfiguration::ProcessPoolConfiguration):
(API::ProcessPoolConfiguration::copy):
- UIProcess/API/APIProcessPoolConfiguration.h:
- UIProcess/API/C/WKContextConfigurationRef.cpp:
- UIProcess/API/C/WKContextConfigurationRef.h:
- UIProcess/API/Cocoa/WKWebsiteDataStore.mm:
(-[WKWebsiteDataStore _cacheStoragePerOriginQuota]):
(-[WKWebsiteDataStore _setCacheStoragePerOriginQuota:]):
(-[WKWebsiteDataStore _cacheStorageDirectory]):
(-[WKWebsiteDataStore _setCacheStorageDirectory:]):
- UIProcess/API/Cocoa/WKWebsiteDataStorePrivate.h:
- UIProcess/Cocoa/WebProcessPoolCocoa.mm:
- UIProcess/WebProcessPool.cpp:
(WebKit::legacyWebsiteDataStoreConfiguration):
(WebKit::WebProcessPool::ensureNetworkProcess):
(WebKit::WebProcessPool::setAnyPageGroupMightHavePrivateBrowsingEnabled):
- UIProcess/WebProcessPool.h:
- UIProcess/WebsiteData/WebsiteDataStore.h:
(WebKit::WebsiteDataStore::cacheStoragePerOriginQuota const):
(WebKit::WebsiteDataStore::setCacheStoragePerOriginQuota):
(WebKit::WebsiteDataStore::cacheStorageDirectory const):
(WebKit::WebsiteDataStore::setCacheStorageDirectory):
Tools:
- WebKitTestRunner/TestController.cpp:
(WTR::TestController::generateContextConfiguration const):
- WebKitTestRunner/cocoa/TestControllerCocoa.mm:
(WTR::initializeWebViewConfiguration): Setting quota to 400kb
- 1:30 PM Changeset in webkit [223206] by
-
- 13 edits4 copies1 move1 add in trunk/Source
Allow PAL to log messages
https://bugs.webkit.org/show_bug.cgi?id=171523
Reviewed by Alex Christensen.
Source/WebCore:
Make the model of WebCore/PAL match the model of WebKit/WebCore. This is because PAL will
need to log things (because existing files in WebCore/platform need to log things).
No new tests because there is no behavior change.
- WebCore.xcodeproj/project.pbxproj:
- page/mac/PageMac.mm:
(WebCore::Page::platformInitialize):
- platform/Logging.cpp:
(WebCore::registerNotifyCallback): Deleted.
- platform/Logging.h:
- rendering/SimpleLineLayout.cpp:
(WebCore::SimpleLineLayout::canUseForWithReason):
Source/WebCore/PAL:
- PAL.xcodeproj/project.pbxproj:
- pal/CMakeLists.txt:
- pal/LogInitialization.h: Copied from Source/WebCore/platform/LogMacros.h.
- pal/LogMacros.h: Copied from Source/WebCore/platform/LogMacros.h.
- pal/Logging.cpp: Copied from Source/WebCore/platform/Logging.cpp.
(PAL::isLogChannelEnabled):
(PAL::setLogChannelToAccumulate):
(PAL::initializeLogChannelsIfNecessary):
(PAL::registerNotifyCallback):
- pal/Logging.h: Copied from Source/WebCore/platform/LogMacros.h.
- pal/PlatformMac.cmake:
- pal/cocoa/LoggingCocoa.mm: Renamed from Source/WebCore/platform/LogMacros.h.
(PAL::logLevelString):
Source/WebKit:
- Platform/Logging.h:
- Scripts/generate-forwarding-headers.pl:
- 1:21 PM October 2017 Meeting edited by
- (diff)
- 1:20 PM October 2017 Meeting edited by
- (diff)
- 1:16 PM Changeset in webkit [223205] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed, fix build with some SDKs.
Stop capturing |this| unnecessarily in lambda.
- Modules/entriesapi/FileSystemDirectoryEntry.cpp:
(WebCore::FileSystemDirectoryEntry::getEntry):
- 12:51 PM Changeset in webkit [223204] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed, fix build with some SDKs.
Stop capturing |this| unnecessarily in lambda.
- Modules/entriesapi/DOMFileSystem.cpp:
(WebCore::DOMFileSystem::getFile):
- 12:40 PM Changeset in webkit [223203] by
-
- 4 edits28 adds in trunk/LayoutTests/imported/w3c
Re-sync XMLHttpRequests Web-Platform-Tests
https://bugs.webkit.org/show_bug.cgi?id=178172
Reviewed by Youenn Fablet.
Re-sync XMLHttpRequests Web-Platform-Tests from upstream 2f76ef2c1d.
- resources/import-expectations.json:
- web-platform-tests/XMLHttpRequest/abort-after-stop-expected.txt: Added.
- web-platform-tests/XMLHttpRequest/abort-after-stop.htm: Added.
- web-platform-tests/XMLHttpRequest/event-error-order.sub-expected.txt: Added.
- web-platform-tests/XMLHttpRequest/event-error-order.sub.html: Added.
- web-platform-tests/XMLHttpRequest/event-timeout-order-expected.txt: Added.
- web-platform-tests/XMLHttpRequest/event-timeout-order.htm: Added.
- web-platform-tests/XMLHttpRequest/open-url-worker-origin-expected.txt: Added.
- web-platform-tests/XMLHttpRequest/open-url-worker-origin.htm: Added.
- web-platform-tests/XMLHttpRequest/preserve-ua-header-on-redirect-expected.txt: Added.
- web-platform-tests/XMLHttpRequest/preserve-ua-header-on-redirect.htm: Added.
- web-platform-tests/XMLHttpRequest/responsedocument-decoding-expected.txt: Added.
- web-platform-tests/XMLHttpRequest/responsedocument-decoding.htm: Added.
- web-platform-tests/XMLHttpRequest/responsetext-decoding-expected.txt:
- web-platform-tests/XMLHttpRequest/responsetext-decoding.htm:
- web-platform-tests/XMLHttpRequest/send-after-setting-document-domain-expected.txt: Added.
- web-platform-tests/XMLHttpRequest/send-after-setting-document-domain.htm: Added.
- web-platform-tests/XMLHttpRequest/send-authentication-basic-cors-expected.txt: Added.
- web-platform-tests/XMLHttpRequest/send-authentication-basic-cors-not-enabled-expected.txt: Added.
- web-platform-tests/XMLHttpRequest/send-authentication-basic-cors-not-enabled.htm: Added.
- web-platform-tests/XMLHttpRequest/send-authentication-basic-cors.htm: Added.
- web-platform-tests/XMLHttpRequest/send-authentication-basic-expected.txt: Added.
- web-platform-tests/XMLHttpRequest/send-authentication-basic-repeat-no-args-expected.txt: Added.
- web-platform-tests/XMLHttpRequest/send-authentication-basic-repeat-no-args.htm: Added.
- web-platform-tests/XMLHttpRequest/send-authentication-basic-setrequestheader-expected.txt: Added.
- web-platform-tests/XMLHttpRequest/send-authentication-basic-setrequestheader.htm: Added.
- web-platform-tests/XMLHttpRequest/send-authentication-basic.htm: Added.
- web-platform-tests/XMLHttpRequest/send-authentication-competing-names-passwords-expected.txt: Added.
- web-platform-tests/XMLHttpRequest/send-authentication-competing-names-passwords.htm: Added.
- web-platform-tests/XMLHttpRequest/send-entity-body-basic-expected.txt: Added.
- web-platform-tests/XMLHttpRequest/send-entity-body-basic.htm: Added.
- web-platform-tests/XMLHttpRequest/send-network-error-async-events.sub-expected.txt: Added.
- web-platform-tests/XMLHttpRequest/send-network-error-async-events.sub.htm: Added.
- web-platform-tests/XMLHttpRequest/w3c-import.log:
- 12:33 PM Changeset in webkit [223202] by
-
- 22 edits6 deletes in trunk
Unreviewed, rolling out r223113 and r223121.
https://bugs.webkit.org/show_bug.cgi?id=178182
Reintroduced 20% regression on Kraken (Requested by rniwa on
#webkit).
Reverted changesets:
"Enable gigacage on iOS"
https://bugs.webkit.org/show_bug.cgi?id=177586
https://trac.webkit.org/changeset/223113
"Use one virtual allocation for all gigacages and their
runways"
https://bugs.webkit.org/show_bug.cgi?id=178050
https://trac.webkit.org/changeset/223121
- 12:24 PM Changeset in webkit [223201] by
-
- 2 edits in trunk/JSTests
Disable test262 named capture group tests with direct unicode names and with references before definitions
https://bugs.webkit.org/show_bug.cgi?id=178177
Reviewed by Keith Miller.
Bugs to track fixing these test are:
https://bugs.webkit.org/show_bug.cgi?id=178174 -
"Add support in named capture group identifiers for direct surrogate pairs"
https://bugs.webkit.org/show_bug.cgi?id=178175 -
"Test262 failure with Named Capture Groups - using a reference before the group is defined"
- test262.yaml:
- 12:23 PM Changeset in webkit [223200] by
-
- 1 copy in tags/Safari-604.3.5.0.2
Tag Safari-604.3.5.0.2.
- 12:19 PM Changeset in webkit [223199] by
-
- 7 edits in branches/safari-604.3.5.0-branch/Source
Versioning.
- 12:18 PM Changeset in webkit [223198] by
-
- 3 edits in trunk/Source/WebCore
Extract logic to paint composition underlines to its own function
https://bugs.webkit.org/show_bug.cgi?id=178038
Reviewed by Zalan Bujtas.
No functionality changed. So, no new tests.
- rendering/InlineTextBox.cpp:
(WebCore::InlineTextBox::paint): Modified to call paintCompositionUnderlines().
(WebCore::InlineTextBox::paintCompositionUnderlines const): Added; extract code
from InlineTextBox::paint() and modernized it.
(WebCore::InlineTextBox::paintCompositionUnderline const): Added.
(WebCore::InlineTextBox::paintCompositionUnderline): Deleted; made const.
- rendering/InlineTextBox.h:
- 12:13 PM Changeset in webkit [223197] by
-
- 2 edits in trunk/Source/JavaScriptCore
Update JavaScriptCore/ucd/CaseFolding.txt to Unicode database 10.0
https://bugs.webkit.org/show_bug.cgi?id=178106
Reviewed by Keith Miller.
- ucd/CaseFolding.txt:
- 12:13 PM Changeset in webkit [223196] by
-
- 3 edits in trunk/Source/WebCore
InlineTextBox::isSelected() should only return true for a non-empty selection
and remove incorrect FIXME from InlineTextBox::localSelectionRect()
https://bugs.webkit.org/show_bug.cgi?id=160786
Reviewed by Zalan Bujtas.
Partial revert of r204400 in InlineTextBox::{isSelected, localSelectionRect}().
The function InlineTextBox::isSelected() should only return true for a non-empty selection.
Also remove an incorrect FIXME added to InlineTextBox::localSelectionRect() that questioned
whether it was correct for it to return an empty rectangle. It is correct for it to return
such a rectangle because this function is used to implement Element.getClientRects(). And
Element.getClientRects() can return a rectangle with zero width or zero height by step 3
of algorithm getClientRects() of section Extensions to the Element interface of the
CSSOM View Module spec., <https://drafts.csswg.org/cssom-view/> (Editor's Draft, 15 September 2017).
- rendering/InlineTextBox.cpp:
(WebCore::InlineTextBox::isSelected const): Only return true for a non-empty selection
and remove unnecessary FIXME. Also rename variables to improve readability.
(WebCore::InlineTextBox::localSelectionRect const): Remove inaccurate FIXME comment.
- rendering/InlineTextBox.h:
- 12:01 PM Changeset in webkit [223195] by
-
- 42 edits14 adds in trunk
Sanitize URL in pasteboard for other applications and cross origin content
https://bugs.webkit.org/show_bug.cgi?id=178060
<rdar://problem/34874518>
Reviewed by Wenson Hsieh.
Source/WebCore:
This patch introduces the sanitization of URL when written from a web content to prevent web content from
exploiting the URL parser of other applications in the system particularly of those that actively monitor
system pasteboard (a.k.a. clipboard on non-Cocoa platforms) and decode or otherwise process URLs.
Because the Web compatibility requires that DataTransfer exposes the original URL to any document in the
same origin as the one which wrote the URL into the pasteboard, we store a string which uniquely identifies
the origin of an originating document into our custom pasteboard data. Note that we expose any URL which
didn't come from WebKit since we don't expect URLs to reveal privacy sensitive information. We use UUID for
the origin identifier of a null origin document.
An alternative approach is to store the pasteboard data from the same origin into the document and invalidate
it when the system pasteboard changes. However, Pasteboard object cannot know about Document (as Pasteboard
is a platform object and Document is a WebCore object), this turns out be quite tricky as there are multiple
places where we create Pasteboard objects, and they all need to be aware of this special same origin
Pasteboard object that hangs off of Document. Also, this approach would result in the same origin code paths
to diverge between null origin and non-null origin documents.
Tests: editing/pasteboard/data-transfer-get-data-on-copying-pasting-malformed-url-in-same-document.html
editing/pasteboard/data-transfer-set-data-ignore-copied-walformed-url-in-null-origin.html
editing/pasteboard/data-transfer-set-data-sanitlize-url-when-copying-in-null-origin.html
editing/pasteboard/data-transfer-set-data-sanitlize-url-when-dragging-in-null-origin.html
http/tests/security/clipboard/copy-paste-url-across-origin-sanitizes-url.html
CopyURL.ValidURL
CopyURL.UnescapedURL
CopyURL.MalformedURL
DataInteractionTests.DataTransferSetDataValidURL
DataInteractionTests.DataTransferSetDataUnescapedURL
DataInteractionTests.DataTransferSetDataInvalidURL
- dom/DataTransfer.cpp:
(WebCore::originForDocument): Extracted from createForCopyAndPaste.
(WebCore::DataTransfer::createForCopyAndPaste):
(WebCore::DataTransfer::getDataForItem const): Read the URL from the custom data when the originating content
is of the same origin. When the originating content is cross origin, or there is no custom data (e.g. written
by another native application; or sanitization didn't result in any difference), then callback to native value.
(WebCore::DataTransfer::setDataFromItemList): Sanitize the URL before writing it to the native pasteboard.
Store the original value if the sanitization resulted in any difference.
(WebCore::DataTransfer::types const):
(WebCore::DataTransfer::commitToPasteboard): Moved the code to write custom data to Pasteboard since we need
to write the origin string with it.
(WebCore::DataTransfer::createForDragStartEvent): Added Document as an argument to compute the origin string.
(WebCore::DataTransfer::createForDrop): Ditto.
(WebCore::DataTransfer::createForUpdatingDropTarget):
(WebCore::DataTransfer::moveDragState):
- dom/DataTransfer.h:
- dom/Document.cpp:
(WebCore::Document::uniqueIdentifier): Added. See above.
- dom/Document.h:
- editing/Editor.cpp:
(WebCore::createDataTransferForClipboardEvent):
(WebCore::dispatchClipboardEvent):
- page/DragController.cpp:
(WebCore::DragController::dispatchTextInputEventFor):
- page/EventHandler.cpp:
(WebCore::EventHandler::performDragAndDrop):
(WebCore::EventHandler::handleDrag):
- platform/Pasteboard.h:
- platform/PasteboardStrategy.h:
- platform/PlatformPasteboard.h:
- platform/StaticPasteboard.cpp:
(WebCore::StaticPasteboard::takeCustomData): Moved the logic to write to native pasteboard to DataTransfer.
- platform/StaticPasteboard.h:
- platform/cocoa/PasteboardCocoa.mm:
(WebCore::Pasteboard::typesSafeForBindings):
(WebCore::Pasteboard::readStringInCustomData): Rewritten using readCustomData. See below.
(WebCore::Pasteboard::readOrigin): Added.
(WebCore::Pasteboard::readCustomData): Added. Populates the cache. Because a single Pasteboard object is never
allowed to read values once its content is updated by other applications, we can permanently cache the result.
- platform/gtk/PasteboardGtk.cpp:
(WebCore::Pasteboard::typesSafeForBindings): Now takes the unused origin string.
(WebCore::Pasteboard::readOrigin): Added.
- platform/gtk/PlatformPasteboardGtk.cpp:
(WebCore::PlatformPasteboard::typesSafeForDOMToReadAndWrite const): Now takes the unused origin string.
- platform/ios/PlatformPasteboardIOS.mm:
(WebCore::originKeyKeyForTeamData): Added.
(WebCore::customTypesKeyForTeamData): Added. Replaces the use of PasteboardCustomData::cocoaType() in the team
data for clarity since the team data key isn't same as the pasteboard type. We don't have to worry about the
backwards compatibility since drag & drop session doesn't persist across iOS upgrades, and there is no publicly
released iOS with this team data support.
(WebCore::PlatformPasteboard::typesSafeForDOMToReadAndWrite const): Read the origin string and the custom data
off the team data. Don't expose custom types that are written by cross origin documents.
(WebCore::PlatformPasteboard::write): Add the orign string with custom pasteboard types in the team data.
(WebCore::PlatformPasteboard::readURL): Fixed a bug that this function was not reading NSURL when UIPasteboard
serializes NSURL as a plist. This code is exercised by CopyURL.ValidURL.
- platform/mac/PlatformPasteboardMac.mm:
(WebCore::PlatformPasteboard::typesSafeForDOMToReadAndWrite const): Don't add custom pasteboard types that are
added by cross origin documents.
- platform/win/PasteboardWin.cpp:
(WebCore::Pasteboard::typesSafeForBindings): Now takes the unused origin string.
(WebCore::Pasteboard::readOrigin): Added.
- platform/wpe/PasteboardWPE.cpp:
(WebCore::Pasteboard::typesSafeForBindings): Now takes the unused origin string.
(WebCore::Pasteboard::readOrigin): Added.
- platform/wpe/PlatformPasteboardWPE.cpp:
(WebCore::PlatformPasteboard::typesSafeForDOMToReadAndWrite const): Now takes the unused origin string.
Source/WebKit:
Plubmed the origin identifier through IPC from Pasteboard in WebContent process to PlatformPasteboard in UIProcess.
- UIProcess/Cocoa/WebPasteboardProxyCocoa.mm:
(WebKit::WebPasteboardProxy::typesSafeForDOMToReadAndWrite):
- UIProcess/WebPasteboardProxy.cpp:
(WebKit::WebPasteboardProxy::typesSafeForDOMToReadAndWrite):
- UIProcess/WebPasteboardProxy.h:
- UIProcess/WebPasteboardProxy.messages.in:
- WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
(WebKit::WebPlatformStrategies::typesSafeForDOMToReadAndWrite):
- WebProcess/WebCoreSupport/WebPlatformStrategies.h:
Source/WebKitLegacy/mac:
- WebCoreSupport/WebPlatformStrategies.h:
- WebCoreSupport/WebPlatformStrategies.mm:
(WebPlatformStrategies::typesSafeForDOMToReadAndWrite):
Tools:
Added API tests for sanitizing URLs copied from web content, and that the original URL is exposed to the web content.
- TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
- TestWebKitAPI/Tests/WebKitCocoa/CopyURL.mm: Added.
(readURLFromPasteboard): A helper function.
- TestWebKitAPI/Tests/WebKitCocoa/copy-url.html: Added.
- TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
(DataInteractionTests.DataTransferGetDataWhenDroppingCustomData): Rebaselined. https://www.apple.com is no longer
normalized to https://www.apple.com/ by NSURL / UIPasteboard as expected.
(DataInteractionTests.DataTransferSetDataValidURL): Added.
(DataInteractionTests.DataTransferSetDataUnescapedURL): Added.
(DataInteractionTests.qDataTransferSetDataInvalidURL): Added.
LayoutTests:
Added tests for copying & pasting URLs. URLs should be %-escaped and any invalid URL should be stripped away and
invisible to a cross-origin content or a null origin document but the same origin content should have access to
its original form.
- TestExpectations:
- editing/pasteboard/data-transfer-get-data-on-copying-pasting-malformed-url-in-same-document-expected.txt: Added.
- editing/pasteboard/data-transfer-get-data-on-copying-pasting-malformed-url-in-same-document.html: Added.
- editing/pasteboard/data-transfer-get-data-on-drop-custom-expected.txt: Rebaselined. We no longer normalize
"https://www.apple.com" into "https://www.apple.com/" by NSURL / UIPasteboard within the same origin content.
- editing/pasteboard/data-transfer-get-data-on-paste-custom-expected.txt: Ditto.
- editing/pasteboard/data-transfer-set-data-ignore-copied-walformed-url-in-null-expected.txt: Added.
- editing/pasteboard/data-transfer-set-data-ignore-copied-walformed-url-in-null-origin-expected.txt: Added.
- editing/pasteboard/data-transfer-set-data-ignore-copied-walformed-url-in-null-origin.html: Added.
- editing/pasteboard/data-transfer-set-data-sanitlize-url-when-copying-in-null-origin-expected.txt: Added.
- editing/pasteboard/data-transfer-set-data-sanitlize-url-when-copying-in-null-origin.html: Added.
- editing/pasteboard/data-transfer-set-data-sanitlize-url-when-dragging-in-null-origin-expected.txt: Added.
- editing/pasteboard/data-transfer-set-data-sanitlize-url-when-dragging-in-null-origin.html: Added.
- editing/pasteboard/dataTransfer-setData-getData-expected.txt: Rebaselined. More test cases are passing.
- editing/pasteboard/dataTransfer-setData-getData.html: Updated expectations as the original URL is now preserved.
- http/tests/security/clipboard/copy-paste-url-across-origin-sanitizes-url-expected.txt: Added.
- http/tests/security/clipboard/copy-paste-url-across-origin-sanitizes-url.html: Added.
- http/tests/security/clipboard/resources/copy.html: Added.
- platform/mac-wk1/TestExpectations:
- 11:32 AM Changeset in webkit [223194] by
-
- 6 edits in trunk/Source/WebCore
Remove some obsolete layout assertions
https://bugs.webkit.org/show_bug.cgi?id=178170
Reviewed by Zalan Bujtas.
We have strong assertions against render tree mutation functions being called in layout. These are unnecessary.
- rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::moveChildTo):
- rendering/RenderElement.cpp:
(WebCore::RenderElement::takeChildInternal):
- rendering/RenderElement.h:
- rendering/RenderListItem.cpp:
(WebCore::RenderListItem::layout):
- rendering/RenderListItem.h:
- 10:48 AM Changeset in webkit [223193] by
-
- 13 edits2 copies3 adds in trunk
[Payment Request] Implement Apple Pay merchant validation
https://bugs.webkit.org/show_bug.cgi?id=178159
Reviewed by Brady Eidson.
Source/WebCore:
When ApplePayPaymentHandler::validateMerchant() is called, dispatch the
applepayvalidatemerchant event to the PaymentRequest object.
The event object is an ApplePayMerchantValidationEvent, on which the client calls complete()
with a merchant session.
Test: http/tests/ssl/applepay/ApplePayMerchantValidationEvent.https.html
- DerivedSources.make:
- Modules/applepay/ApplePayValidateMerchantEvent.h:
- Modules/applepay/paymentrequest/ApplePayMerchantValidationEvent.cpp: Added.
(WebCore::ApplePayMerchantValidationEvent::create):
(WebCore::ApplePayMerchantValidationEvent::ApplePayMerchantValidationEvent):
(WebCore::ApplePayMerchantValidationEvent::complete):
(WebCore::ApplePayMerchantValidationEvent::eventInterface const):
- Modules/applepay/paymentrequest/ApplePayMerchantValidationEvent.h: Added.
- Modules/applepay/paymentrequest/ApplePayMerchantValidationEvent.idl: Added.
- Modules/applepay/paymentrequest/ApplePayPaymentHandler.cpp:
(WebCore::ApplePayPaymentHandler::validateMerchant):
- Modules/applepay/paymentrequest/ApplePayPaymentHandler.h:
- Modules/paymentrequest/PaymentRequest.idl:
- WebCore.xcodeproj/project.pbxproj:
- dom/EventNames.h:
- dom/EventNames.in:
- testing/Internals.cpp:
(WebCore::Internals::Internals):
- testing/MockPaymentCoordinator.cpp:
(WebCore::MockPaymentCoordinator::MockPaymentCoordinator):
(WebCore::MockPaymentCoordinator::showPaymentUI):
- testing/MockPaymentCoordinator.h:
LayoutTests:
- http/tests/ssl/applepay/ApplePayMerchantValidationEvent.https-expected.txt: Added.
- http/tests/ssl/applepay/ApplePayMerchantValidationEvent.https.html: Added.
- 10:47 AM October 2017 Meeting edited by
- (diff)
- 10:41 AM Changeset in webkit [223192] by
-
- 40 edits1 copy1 add in trunk
Modernize Geolocation code
https://bugs.webkit.org/show_bug.cgi?id=178148
Reviewed by Ryosuke Niwa.
Source/WebCore:
Modernize Geolocation code:
- Use std::optional<> instead of separate boolean members
- Make GeolocationPosition a simple struct that can be passed via IPC
- Replace WebGeolocationPosition::Data with GeolocationPosition
- Move logic to construct a GeolocationPosition from a CLLocation on iOS in one place to avoid code duplication.
- Modules/geolocation/Coordinates.cpp:
(WebCore::Coordinates::Coordinates):
- Modules/geolocation/Coordinates.h:
(WebCore::Coordinates::create):
(WebCore::Coordinates::isolatedCopy const):
(WebCore::Coordinates::latitude const):
(WebCore::Coordinates::longitude const):
(WebCore::Coordinates::altitude const):
(WebCore::Coordinates::accuracy const):
(WebCore::Coordinates::altitudeAccuracy const):
(WebCore::Coordinates::heading const):
(WebCore::Coordinates::speed const):
- Modules/geolocation/Geolocation.cpp:
(WebCore::createGeoposition):
(WebCore::Geolocation::lastPosition):
- Modules/geolocation/GeolocationClient.h:
- Modules/geolocation/GeolocationController.cpp:
(WebCore::GeolocationController::positionChanged):
(WebCore::GeolocationController::lastPosition):
- Modules/geolocation/GeolocationController.h:
- Modules/geolocation/GeolocationPosition.h:
(WebCore::GeolocationPosition::GeolocationPosition):
The default constructor is only needed by our IPC decoding code.
(WebCore::GeolocationPosition::encode const):
(WebCore::GeolocationPosition::decode):
- Modules/geolocation/ios/GeolocationPositionIOS.mm: Copied from Source/WebCore/Modules/geolocation/Coordinates.cpp.
(WebCore::GeolocationPosition::GeolocationPosition):
- WebCore.xcodeproj/project.pbxproj:
- platform/mock/GeolocationClientMock.cpp:
(WebCore::GeolocationClientMock::lastPosition):
(WebCore::GeolocationClientMock::controllerTimerFired):
- platform/mock/GeolocationClientMock.h:
Source/WebKit:
- Shared/WebGeolocationPosition.cpp:
(WebKit::WebGeolocationPosition::create):
(WebKit::WebGeolocationPosition::~WebGeolocationPosition):
- Shared/WebGeolocationPosition.h:
(WebKit::WebGeolocationPosition::timestamp const):
(WebKit::WebGeolocationPosition::latitude const):
(WebKit::WebGeolocationPosition::longitude const):
(WebKit::WebGeolocationPosition::accuracy const):
(WebKit::WebGeolocationPosition::altitude const):
(WebKit::WebGeolocationPosition::altitudeAccuracy const):
(WebKit::WebGeolocationPosition::heading const):
(WebKit::WebGeolocationPosition::speed const):
(WebKit::WebGeolocationPosition::corePosition const):
(WebKit::WebGeolocationPosition::WebGeolocationPosition):
- UIProcess/API/C/WKGeolocationPosition.cpp:
(WKGeolocationPositionCreate_b):
- UIProcess/API/Cocoa/_WKGeolocationPosition.mm:
(WebKit::wrapper):
- UIProcess/API/glib/WebKitGeolocationProvider.cpp:
(WebKit::WebKitGeolocationProvider::notifyPositionChanged):
- UIProcess/WebGeolocationManagerProxy.cpp:
(WebKit::WebGeolocationManagerProxy::providerDidChangePosition):
- UIProcess/ios/WKGeolocationProviderIOS.mm:
(-[WKLegacyCoreLocationProvider positionChanged:]):
- WebProcess/Geolocation/WebGeolocationManager.cpp:
(WebKit::WebGeolocationManager::didChangePosition):
- WebProcess/Geolocation/WebGeolocationManager.h:
- WebProcess/Geolocation/WebGeolocationManager.messages.in:
- WebProcess/WebCoreSupport/WebGeolocationClient.cpp:
(WebKit::WebGeolocationClient::lastPosition):
- WebProcess/WebCoreSupport/WebGeolocationClient.h:
Source/WebKitLegacy/ios:
- Misc/WebGeolocationCoreLocationProvider.h:
- Misc/WebGeolocationCoreLocationProvider.mm:
(-[WebGeolocationCoreLocationProvider sendLocation:]):
- Misc/WebGeolocationProviderIOS.mm:
(-[_WebCoreLocationUpdateThreadingProxy positionChanged:]):
Source/WebKitLegacy/mac:
- WebCoreSupport/WebGeolocationClient.h:
- WebCoreSupport/WebGeolocationClient.mm:
(WebGeolocationClient::lastPosition):
- WebView/WebGeolocationPosition.mm:
(-[WebGeolocationPositionInternal initWithCoreGeolocationPosition:]):
(core):
(-[WebGeolocationPosition initWithTimestamp:latitude:longitude:accuracy:]):
(-[WebGeolocationPosition initWithGeolocationPosition:]):
- WebView/WebGeolocationPositionInternal.h:
Source/WebKitLegacy/win:
- WebCoreSupport/WebGeolocationClient.cpp:
(WebGeolocationClient::lastPosition):
- WebCoreSupport/WebGeolocationClient.h:
- WebGeolocationPosition.cpp:
(WebGeolocationPosition::initWithTimestamp):
(core):
- WebGeolocationPosition.h:
(WebGeolocationPosition::impl const):
Tools:
- DumpRenderTree/mac/TestRunnerMac.mm:
(TestRunner::setMockGeolocationPosition):
- 10:34 AM October 2017 Meeting edited by
- (diff)
- 10:27 AM Changeset in webkit [223191] by
-
- 31 edits1 copy in trunk
Add a SW context process (where SW scripts will actually execute).
https://bugs.webkit.org/show_bug.cgi?id=178156
Source/WebCore:
Reviewed by Andy Estes.
No new tests (Covered by changes to existing tests).
This patch adds an auxiliary "ServiceWorker context" WebProcess to a WebProcessPool.
This process is where ServiceWorker scripts will execute, separate from the client WebProcess
hosting the page(s) they are serving.
This patch also adds all of the plumbing to pass along a fetched service worker script to this
context WebProcess, as well as message back failure to actually start the script so we can test.
Touches lots of code sites but is basically just a lot of plumbing.
- WebCore.xcodeproj/project.pbxproj:
- workers/service/ServiceWorkerContextData.h: Copied from Source/WebCore/workers/service/server/SWServerWorker.h.
(WebCore::ServiceWorkerContextData::encode const):
(WebCore::ServiceWorkerContextData::decode):
- workers/service/server/SWServer.cpp:
(WebCore::SWServer::Connection::finishFetchingScriptInServer):
(WebCore::SWServer::Connection::scriptContextFailedToStart):
(WebCore::SWServer::scriptFetchFinished):
(WebCore::SWServer::scriptContextFailedToStart):
(WebCore::SWServer::createWorker):
- workers/service/server/SWServer.h:
- workers/service/server/SWServerRegistration.cpp:
(WebCore::SWServerRegistration::scriptFetchFinished):
(WebCore::SWServerRegistration::scriptContextFailedToStart):
- workers/service/server/SWServerRegistration.h:
- workers/service/server/SWServerWorker.cpp:
(WebCore::SWServerWorker::SWServerWorker):
(WebCore::SWServerWorker::~SWServerWorker):
- workers/service/server/SWServerWorker.h:
(WebCore::SWServerWorker::create):
(WebCore::SWServerWorker::scriptURL const):
(WebCore::SWServerWorker::script const):
(WebCore::SWServerWorker::type const):
(WebCore::SWServerWorker::workerID const):
Source/WebKit:
Reviewed by Andy Estes.
This patch adds an auxiliary "ServiceWorker context" WebProcess to a WebProcessPool.
This process is where ServiceWorker scripts will execute, separate from the client WebProcess
hosting the page(s) they are serving.
This patch also adds all of the plumbing to pass along a fetched service worker script to this
context WebProcess, as well as message back failure to actually start the script so we can test.
Touches lots of code sites but is basically just a lot of plumbing.
- StorageProcess/ServiceWorker/WebSWServerConnection.cpp:
(WebKit::WebSWServerConnection::WebSWServerConnection):
(WebKit::WebSWServerConnection::startServiceWorkerContext):
(WebKit::WebSWServerConnection::sendToContextProcess):
(WebKit::WebSWServerConnection::setContextConnection):
- StorageProcess/ServiceWorker/WebSWServerConnection.h:
- StorageProcess/StorageProcess.cpp:
(WebKit::StorageProcess::workerContextProcessConnection):
(WebKit::StorageProcess::createWorkerContextProcessConnection):
(WebKit::StorageProcess::didGetWorkerContextProcessConnection):
(WebKit::StorageProcess::serviceWorkerContextFailedToStart):
(WebKit::StorageProcess::registerSWServerConnection):
(WebKit::StorageProcess::unregisterSWServerConnection):
- StorageProcess/StorageProcess.h:
- StorageProcess/StorageProcess.messages.in:
- StorageProcess/StorageToWebProcessConnection.cpp:
(WebKit::StorageToWebProcessConnection::~StorageToWebProcessConnection):
(WebKit::StorageToWebProcessConnection::establishSWServerConnection):
(WebKit::StorageToWebProcessConnection::removeSWServerConnection):
(WebKit::StorageToWebProcessConnection::workerContextProcessConnectionCreated):
- StorageProcess/StorageToWebProcessConnection.h:
- UIProcess/Storage/StorageProcessProxy.cpp:
(WebKit::StorageProcessProxy::create):
(WebKit::StorageProcessProxy::StorageProcessProxy):
(WebKit::StorageProcessProxy::didClose):
(WebKit::StorageProcessProxy::getWorkerContextProcessConnection):
(WebKit::StorageProcessProxy::didGetWorkerContextProcessConnection):
- UIProcess/Storage/StorageProcessProxy.h:
- UIProcess/Storage/StorageProcessProxy.messages.in:
- UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::ensureStorageProcessAndWebsiteDataStore):
(WebKit::WebProcessPool::getWorkerContextProcessConnection):
(WebKit::WebProcessPool::didGetWorkerContextProcessConnection):
(WebKit::WebProcessPool::disconnectProcess):
(WebKit::WebProcessPool::createWebPage):
- UIProcess/WebProcessPool.h:
- UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::didGetWorkerContextConnection):
- UIProcess/WebProcessProxy.h:
- UIProcess/WebProcessProxy.messages.in:
- WebProcess/WebProcess.cpp:
(WebKit::WebProcess::getWorkerContextConnection):
(WebKit::WebProcess::startServiceWorkerContext):
- WebProcess/WebProcess.h:
- WebProcess/WebProcess.messages.in:
LayoutTests:
Reviewed by Andy Estes.
- http/tests/workers/service/basic-register-exceptions-expected.txt:
- http/tests/workers/service/basic-register-expected.txt:
- http/tests/workers/service/registration-task-queue-scheduling-1-expected.txt:
- 10:04 AM Changeset in webkit [223190] by
-
- 6 edits2 adds in trunk
[ATK] Expose value of aria-keyshortcuts as object attribute
https://bugs.webkit.org/show_bug.cgi?id=171175
Reviewed by Chris Fleizach.
Source/WebCore:
Expose the author-provided string through the "keyshortcuts" object attribute.
Test: accessibility/gtk/aria-keyshortcuts.html
- accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::ariaKeyShortcutsValue const):
- accessibility/AccessibilityObject.h:
- accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
(webkitAccessibleGetAttributes):
- html/HTMLAttributeNames.in:
LayoutTests:
- accessibility/gtk/aria-keyshortcuts-expected.txt: Added.
- accessibility/gtk/aria-keyshortcuts.html: Added.
- 9:27 AM Changeset in webkit [223189] by
-
- 6 edits71 adds in trunk/LayoutTests
Import media capture WPT tests
https://bugs.webkit.org/show_bug.cgi?id=178138
Patch by Youenn Fablet <youenn@apple.com> on 2017-10-11
Reviewed by Eric Carlson.
LayoutTests/imported/w3c:
- resources/import-expectations.json:
- web-platform-tests/feature-policy/resources/feature-policy-payment.html: Added.
- web-platform-tests/feature-policy/resources/feature-policy-usb.html: Added.
- web-platform-tests/feature-policy/resources/feature-policy-webvr.html: Added.
- web-platform-tests/feature-policy/resources/featurepolicy.js: Added.
(test_feature_availability):
(expect_feature_available_default):
(expect_feature_unavailable_default):
(test_result):
(test_feature_availability_with_post_message_result):
(run_all_fp_tests_allow_self):
- web-platform-tests/feature-policy/resources/redirect-on-load.html: Added.
- web-platform-tests/feature-policy/resources/w3c-import.log: Added.
- web-platform-tests/mediacapture-streams/GUM-api.https-expected.txt: Added.
- web-platform-tests/mediacapture-streams/GUM-api.https.html: Added.
- web-platform-tests/mediacapture-streams/GUM-deny.https-expected.txt: Added.
- web-platform-tests/mediacapture-streams/GUM-deny.https.html: Added.
- web-platform-tests/mediacapture-streams/GUM-empty-option-param.https-expected.txt: Added.
- web-platform-tests/mediacapture-streams/GUM-empty-option-param.https.html: Added.
- web-platform-tests/mediacapture-streams/GUM-impossible-constraint.https-expected.txt: Added.
- web-platform-tests/mediacapture-streams/GUM-impossible-constraint.https.html: Added.
- web-platform-tests/mediacapture-streams/GUM-optional-constraint.https-expected.txt: Added.
- web-platform-tests/mediacapture-streams/GUM-optional-constraint.https.html: Added.
- web-platform-tests/mediacapture-streams/GUM-trivial-constraint.https-expected.txt: Added.
- web-platform-tests/mediacapture-streams/GUM-trivial-constraint.https.html: Added.
- web-platform-tests/mediacapture-streams/GUM-unknownkey-option-param.https-expected.txt: Added.
- web-platform-tests/mediacapture-streams/GUM-unknownkey-option-param.https.html: Added.
- web-platform-tests/mediacapture-streams/MediaDevices-IDL-all-expected.txt: Added.
- web-platform-tests/mediacapture-streams/MediaDevices-IDL-all.html: Added.
- web-platform-tests/mediacapture-streams/MediaDevices-IDL-enumerateDevices-expected.txt: Added.
- web-platform-tests/mediacapture-streams/MediaDevices-IDL-enumerateDevices.html: Added.
- web-platform-tests/mediacapture-streams/MediaDevices-enumerateDevices.https-expected.txt: Added.
- web-platform-tests/mediacapture-streams/MediaDevices-enumerateDevices.https.html: Added.
- web-platform-tests/mediacapture-streams/MediaDevices-getUserMedia.https-expected.txt: Added.
- web-platform-tests/mediacapture-streams/MediaDevices-getUserMedia.https.html: Added.
- web-platform-tests/mediacapture-streams/MediaStream-MediaElement-preload-none.https-expected.txt: Added.
- web-platform-tests/mediacapture-streams/MediaStream-MediaElement-preload-none.https.html: Added.
- web-platform-tests/mediacapture-streams/MediaStream-MediaElement-srcObject.https-expected.txt: Added.
- web-platform-tests/mediacapture-streams/MediaStream-MediaElement-srcObject.https.html: Added.
- web-platform-tests/mediacapture-streams/MediaStream-add-audio-track.https-expected.txt: Added.
- web-platform-tests/mediacapture-streams/MediaStream-add-audio-track.https.html: Added.
- web-platform-tests/mediacapture-streams/MediaStream-audio-only.https-expected.txt: Added.
- web-platform-tests/mediacapture-streams/MediaStream-audio-only.https.html: Added.
- web-platform-tests/mediacapture-streams/MediaStream-default-feature-policy.https.sub-expected.txt: Added.
- web-platform-tests/mediacapture-streams/MediaStream-default-feature-policy.https.sub.html: Added.
- web-platform-tests/mediacapture-streams/MediaStream-finished-add.https-expected.txt: Added.
- web-platform-tests/mediacapture-streams/MediaStream-finished-add.https.html: Added.
- web-platform-tests/mediacapture-streams/MediaStream-gettrackid.https-expected.txt: Added.
- web-platform-tests/mediacapture-streams/MediaStream-gettrackid.https.html: Added.
- web-platform-tests/mediacapture-streams/MediaStream-id-manual.https-expected.txt: Added.
- web-platform-tests/mediacapture-streams/MediaStream-id-manual.https.html: Added.
- web-platform-tests/mediacapture-streams/MediaStream-idl.https-expected.txt: Added.
- web-platform-tests/mediacapture-streams/MediaStream-idl.https.html: Added.
- web-platform-tests/mediacapture-streams/MediaStream-removetrack.https-expected.txt: Added.
- web-platform-tests/mediacapture-streams/MediaStream-removetrack.https.html: Added.
- web-platform-tests/mediacapture-streams/MediaStream-video-only.https-expected.txt: Added.
- web-platform-tests/mediacapture-streams/MediaStream-video-only.https.html: Added.
- web-platform-tests/mediacapture-streams/MediaStreamTrack-MediaElement-disabled-audio-is-silence.https-expected.txt: Added.
- web-platform-tests/mediacapture-streams/MediaStreamTrack-MediaElement-disabled-audio-is-silence.https.html: Added.
- web-platform-tests/mediacapture-streams/MediaStreamTrack-MediaElement-disabled-video-is-black.https-expected.txt: Added.
- web-platform-tests/mediacapture-streams/MediaStreamTrack-MediaElement-disabled-video-is-black.https.html: Added.
- web-platform-tests/mediacapture-streams/MediaStreamTrack-end-manual.https-expected.txt: Added.
- web-platform-tests/mediacapture-streams/MediaStreamTrack-end-manual.https.html: Added.
- web-platform-tests/mediacapture-streams/MediaStreamTrack-getSettings.https-expected.txt: Added.
- web-platform-tests/mediacapture-streams/MediaStreamTrack-getSettings.https.html: Added.
- web-platform-tests/mediacapture-streams/MediaStreamTrack-id.https-expected.txt: Added.
- web-platform-tests/mediacapture-streams/MediaStreamTrack-id.https.html: Added.
- web-platform-tests/mediacapture-streams/MediaStreamTrack-init.https-expected.txt: Added.
- web-platform-tests/mediacapture-streams/MediaStreamTrack-init.https.html: Added.
- web-platform-tests/mediacapture-streams/MediaStreamTrackEvent-constructor.https-expected.txt: Added.
- web-platform-tests/mediacapture-streams/MediaStreamTrackEvent-constructor.https.html: Added.
- web-platform-tests/mediacapture-streams/OWNERS: Added.
- web-platform-tests/mediacapture-streams/historical-expected.txt: Added.
- web-platform-tests/mediacapture-streams/historical.html: Added.
- web-platform-tests/mediacapture-streams/w3c-import.log: Added.
LayoutTests:
Skipping tests for ports not supporting getUserMedia.
- platform/mac-wk1/TestExpectations:
- platform/win/TestExpectations:
- platform/wpe/TestExpectations:
- 9:12 AM Changeset in webkit [223188] by
-
- 1 edit in trunk/Source/WebCore/Modules/applepay/paymentrequest/ApplePayPaymentHandler.cpp
Try to fix the Sierra build after r223163.
- Modules/applepay/paymentrequest/ApplePayPaymentHandler.cpp:
(WebCore::convertAndValidate):
- 9:09 AM Changeset in webkit [223187] by
-
- 2 edits1 add in branches/safari-604-branch
Cherry-pick r222963. rdar://problem/34891307
- 9:09 AM Changeset in webkit [223186] by
-
- 2 edits in branches/safari-604-branch/Source/WTF
Cherry-pick r223111. rdar://problem/34920353
- 9:09 AM Changeset in webkit [223185] by
-
- 3 edits in branches/safari-604-branch/Source/WebKit
Cherry-pick r222826. rdar://problem/34792131
- 9:09 AM Changeset in webkit [223184] by
-
- 3 edits3 adds in branches/safari-604-branch
Cherry-pick r222788. rdar://problem/34771440
- 9:09 AM Changeset in webkit [223183] by
-
- 2 edits in branches/safari-604-branch/Source/WebInspectorUI
Cherry-pick r222762. rdar://problem/34771420
- 9:09 AM Changeset in webkit [223182] by
-
- 4 edits in branches/safari-604-branch/Source/WebCore
Cherry-pick r221937. rdar://problem/34893195
- 9:09 AM Changeset in webkit [223181] by
-
- 2 edits in branches/safari-604-branch/Source/WebCore
Cherry-pick r221872. rdar://problem/34891288
- 9:09 AM Changeset in webkit [223180] by
-
- 4 edits2 adds in branches/safari-604-branch
Cherry-pick r221831. rdar://problem/34891283
- 8:53 AM Changeset in webkit [223179] by
-
- 42 edits in trunk/Source/WebKit
Remove ENABLE_NETWORK_CACHE
https://bugs.webkit.org/show_bug.cgi?id=177424
Reviewed by Antti Koivisto.
- NetworkProcess/NetworkConnectionToWebProcess.cpp:
(WebKit::NetworkConnectionToWebProcess::storeDerivedDataToCache):
- NetworkProcess/NetworkConnectionToWebProcess.h:
- NetworkProcess/NetworkConnectionToWebProcess.messages.in:
- NetworkProcess/NetworkProcess.cpp:
(WebKit::fetchDiskCacheEntries):
(WebKit::clearDiskCacheEntries):
(WebKit::NetworkProcess::setCacheModel):
- NetworkProcess/NetworkProcess.h:
(WebKit::NetworkProcess::cache):
- NetworkProcess/NetworkProcessCreationParameters.cpp:
(WebKit::NetworkProcessCreationParameters::encode const):
(WebKit::NetworkProcessCreationParameters::decode):
- NetworkProcess/NetworkProcessCreationParameters.h:
- NetworkProcess/NetworkResourceLoader.cpp:
(WebKit::NetworkResourceLoader::NetworkResourceLoader):
(WebKit::NetworkResourceLoader::canUseCachedRedirect const):
(WebKit::NetworkResourceLoader::start):
(WebKit::NetworkResourceLoader::retrieveCacheEntry):
(WebKit::NetworkResourceLoader::startNetworkLoad):
(WebKit::NetworkResourceLoader::abort):
(WebKit::NetworkResourceLoader::didReceiveResponse):
(WebKit::NetworkResourceLoader::didReceiveBuffer):
(WebKit::NetworkResourceLoader::didFinishLoading):
(WebKit::NetworkResourceLoader::didFailLoading):
(WebKit::NetworkResourceLoader::willSendRedirectedRequest):
(WebKit::NetworkResourceLoader::continueWillSendRequest):
(WebKit::NetworkResourceLoader::dispatchWillSendRequestForCacheEntry):
- NetworkProcess/NetworkResourceLoader.h:
- NetworkProcess/cache/NetworkCache.cpp:
- NetworkProcess/cache/NetworkCache.h:
- NetworkProcess/cache/NetworkCacheBlobStorage.cpp:
- NetworkProcess/cache/NetworkCacheBlobStorage.h:
- NetworkProcess/cache/NetworkCacheCoders.cpp:
- NetworkProcess/cache/NetworkCacheCoders.h:
- NetworkProcess/cache/NetworkCacheCodersCocoa.cpp:
- NetworkProcess/cache/NetworkCacheCodersSoup.cpp:
- NetworkProcess/cache/NetworkCacheData.cpp:
- NetworkProcess/cache/NetworkCacheData.h:
- NetworkProcess/cache/NetworkCacheDataCocoa.mm:
- NetworkProcess/cache/NetworkCacheDataSoup.cpp:
- NetworkProcess/cache/NetworkCacheEntry.cpp:
- NetworkProcess/cache/NetworkCacheEntry.h:
- NetworkProcess/cache/NetworkCacheFileSystem.cpp:
- NetworkProcess/cache/NetworkCacheFileSystem.h:
- NetworkProcess/cache/NetworkCacheIOChannel.h:
- NetworkProcess/cache/NetworkCacheIOChannelCocoa.mm:
- NetworkProcess/cache/NetworkCacheIOChannelSoup.cpp:
- NetworkProcess/cache/NetworkCacheKey.cpp:
- NetworkProcess/cache/NetworkCacheKey.h:
- NetworkProcess/cache/NetworkCacheStatistics.cpp:
- NetworkProcess/cache/NetworkCacheStatistics.h:
- NetworkProcess/cache/NetworkCacheStorage.cpp:
- NetworkProcess/cache/NetworkCacheStorage.h:
- NetworkProcess/cocoa/NetworkProcessCocoa.mm:
(WebKit::NetworkProcess::platformInitializeNetworkProcessCocoa):
(WebKit::NetworkProcess::clearDiskCache):
- NetworkProcess/ios/NetworkProcessIOS.mm:
(WebKit::NetworkProcess::clearCacheForAllOrigins):
- NetworkProcess/soup/NetworkProcessSoup.cpp:
(WebKit::NetworkProcess::platformInitializeNetworkProcess):
(WebKit::NetworkProcess::clearDiskCache):
- UIProcess/Cocoa/WebProcessPoolCocoa.mm:
(WebKit::registerUserDefaultsIfNeeded):
(WebKit::WebProcessPool::platformInitializeNetworkProcess):
(WebKit::WebProcessPool::legacyPlatformDefaultNetworkCacheDirectory):
(WebKit::WebProcessPool::isNetworkCacheEnabled):
- UIProcess/soup/WebProcessPoolSoup.cpp:
(WebKit::WebProcessPool::platformInitializeNetworkProcess):
- WebProcess/Network/WebLoaderStrategy.cpp:
(WebKit::WebLoaderStrategy::storeDerivedDataToCache):
- config.h:
- 7:51 AM Changeset in webkit [223178] by
-
- 4 edits1 add in trunk
[GStreamer] Many media source tests crashing with GStreamer-CRITICAL : _gst_util_uint64_scale: assertion 'denom != 0' failed in gst_qtdemux_configure_stream()
https://bugs.webkit.org/show_bug.cgi?id=176804
Reviewed by Michael Catanzaro.
Tools:
Add patch to fix assert in qtdemux.
- gstreamer/jhbuild.modules:
- gstreamer/patches/gst-plugins-good-0009-qtdemux-fix-assert-when-moof-contains-one-sample.patch: Added.
LayoutTests:
Update expectations for fixed tests.
- platform/gtk/TestExpectations:
- 6:59 AM Changeset in webkit [223177] by
-
- 22 edits in trunk/Tools
Use https for trac changeset and browser links
https://bugs.webkit.org/show_bug.cgi?id=178167
Reviewed by Alexey Proskuryakov.
Switch the http://trac.webkit.org/changeset and
http://trac.webkit.org/browser links that are printed by webkitpy to
https. Also update the test expectations.
- Scripts/webkitpy/common/checkout/checkout_unittest.py:
- Scripts/webkitpy/common/config/committervalidator_unittest.py:
(CommitterValidatorTest.test_flag_permission_rejection_message):
- Scripts/webkitpy/common/config/urls.py:
(view_source_url):
(view_revision_url):
- Scripts/webkitpy/common/net/bugzilla/bug_unittest.py:
(BugTest.test_commit_revision):
- Scripts/webkitpy/common/net/bugzilla/bugzilla_mock.py:
- Scripts/webkitpy/common/net/buildbot/buildbot_unittest.py:
- Scripts/webkitpy/performance_tests/perftestsrunner_integrationtest.py:
(MainTest):
(MainTest.test_run_with_upload_json_should_generate_perf_webkit_json):
- Scripts/webkitpy/style/checkers/changelog_unittest.py:
(ChangeLogCheckerTest.test_missing_bug_number):
- Scripts/webkitpy/tool/bot/feeders_unittest.py:
- Scripts/webkitpy/tool/bot/flakytestreporter_unittest.py:
- Scripts/webkitpy/tool/bot/ircbot_unittest.py:
(IRCBotTest.test_rollout):
(IRCBotTest.test_revert):
(IRCBotTest.test_multi_rollout):
(IRCBotTest.test_rollout_with_r_in_svn_revision):
(IRCBotTest.test_multi_rollout_with_r_in_svn_revision):
(IRCBotTest.test_rollout_invalidate_reason):
(test_multi_rollout_invalidate_reason):
- Scripts/webkitpy/tool/bot/sheriff_unittest.py:
- Scripts/webkitpy/tool/commands/download_unittest.py:
- Scripts/webkitpy/tool/commands/newcommitbot_unittest.py:
- Scripts/webkitpy/tool/commands/queues_unittest.py:
- Scripts/webkitpy/tool/commands/suggestnominations.py:
(SuggestNominations._count_commit):
- Scripts/webkitpy/tool/commands/upload_unittest.py:
- Scripts/webkitpy/tool/servers/data/rebaselineserver/util.js:
(getTracUrl):
(getSortedKeys):
- Scripts/webkitpy/tool/steps/closebugforlanddiff_unittest.py:
(CloseBugForLandDiffTest.test_empty_state):
- Scripts/webkitpy/tool/steps/commit_unittest.py:
(CommitTest._test_check_test_expectations):
- Scripts/webkitpy/tool/steps/preparechangelogforrevert_unittest.py:
(UpdateChangeLogsForRevertTest):
- 6:51 AM Changeset in webkit [223176] by
-
- 18 edits6 moves3 adds6 deletes in trunk/LayoutTests
Rebaseline tests at media/modern-media-controls/media-controller
https://bugs.webkit.org/show_bug.cgi?id=178129
Patch by Antoine Quint <Antoine Quint> on 2017-10-11
Reviewed by Sam Weinig.
Rebaseline a series of tests to work with the current modern-media-controls codebase. For the most part, this is accounting
for metrics changes and the refactoring of the auto-hide controller code.
- media/modern-media-controls/media-controller/media-controller-auto-hide-expected.txt:
- media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-enter-and-mouse-leave-expected.txt:
- media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-enter-and-mouse-leave.html:
- media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-enter-over-controls-bar-expected.txt:
- media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-leave-after-play-expected.txt:
- media/modern-media-controls/media-controller/media-controller-auto-hide-mouse-leave-after-play.html:
- media/modern-media-controls/media-controller/media-controller-auto-hide-pause-expected.txt:
- media/modern-media-controls/media-controller/media-controller-auto-hide-pause.html:
- media/modern-media-controls/media-controller/media-controller-auto-hide-rewind-with-mouse-enter-expected.txt:
- media/modern-media-controls/media-controller/media-controller-auto-hide-rewind-with-mouse-enter.html:
- media/modern-media-controls/media-controller/media-controller-auto-hide.html:
- media/modern-media-controls/media-controller/media-controller-click-on-video-controls-should-not-pause.html:
- media/modern-media-controls/media-controller/media-controller-compact-expected.txt: Removed.
- media/modern-media-controls/media-controller/media-controller-compact.html: Removed.
- media/modern-media-controls/media-controller/media-controller-fullscreen-change-expected.txt:
- media/modern-media-controls/media-controller/media-controller-fullscreen-change.html:
- media/modern-media-controls/media-controller/media-controller-ios-do-not-hide-controls-when-tapping-button-expected.txt:
- media/modern-media-controls/media-controller/media-controller-ios-do-not-hide-controls-when-tapping-button.html:
- media/modern-media-controls/media-controller/media-controller-ios-only-enable-tap-gesture-recognizer-with-fades-when-idle-expected.txt:
- media/modern-media-controls/media-controller/media-controller-ios-only-enable-tap-gesture-recognizer-with-fades-when-idle.html:
- media/modern-media-controls/media-controller/media-controller-scale-factor-audio-expected.txt:
- media/modern-media-controls/media-controller/media-controller-scale-factor-audio.html:
- media/modern-media-controls/media-controller/media-controller-scale-factor-expected.txt:
- media/modern-media-controls/media-controller/media-controller-scale-factor.html:
- media/modern-media-controls/media-controller/media-controller-tight-padding-expected.txt: Removed.
- media/modern-media-controls/media-controller/media-controller-tight-padding.html: Removed.
- platform/ios-simulator/TestExpectations:
- platform/mac-elcapitan/TestExpectations:
- platform/mac/TestExpectations:
- 5:59 AM Changeset in webkit [223175] by
-
- 5 edits2 adds in trunk
Object properties are undefined in super.call() but not in this.call()
https://bugs.webkit.org/show_bug.cgi?id=177230
Reviewed by Saam Barati.
JSTests:
- stress/super-call-function-subclass.js: Added.
(assert):
(A.prototype.t):
(A):
- stress/super-dot-call-and-apply.js: Added.
(assert):
(A):
(A.prototype.call):
(A.prototype.apply):
(B.prototype.testSuper):
(B):
(const.obj.new.B.string_appeared_here.obj.testSuper.C):
(D.prototype.testSuper):
(D):
Source/JavaScriptCore:
Bytecode generation for "super.call(...)" or "super.apply(...)"
shouldn't be considered as CallFunctionCallDotNode or
ApplyFunctionCallDotNode because they should be considered as common
super property access as any other function. According to spec[1],
"super" is not refering to parent constructor.
[1] - https://tc39.github.io/ecma262/#sec-super-keyword-runtime-semantics-evaluation
- parser/ASTBuilder.h:
(JSC::ASTBuilder::makeFunctionCallNode):
- parser/Parser.cpp:
(JSC::Parser<LexerType>::parseMemberExpression):
- parser/SyntaxChecker.h:
(JSC::SyntaxChecker::makeFunctionCallNode):
- 5:42 AM Changeset in webkit [223174] by
-
- 2 edits in trunk/Source/WebKit
Unreviewed, rolling out r223146.
Better to not expose cairo in the WPE API
Reverted changeset:
"[WPE] Header cairo.h is used in GLib API headers but cannot
be found"
https://bugs.webkit.org/show_bug.cgi?id=178100
http://trac.webkit.org/changeset/223146
- 5:30 AM Changeset in webkit [223173] by
-
- 12 edits in trunk/Source
[JSC] Drop Instantiate hook in ES6 module loader
https://bugs.webkit.org/show_bug.cgi?id=178162
Reviewed by Sam Weinig.
Source/JavaScriptCore:
This patch is a part of patch series for module loader refactoring to adopt
integrity="" parameters and introduce new whatwg module import mechanism.
In this patch, we drop instantiate hook in module loader. This hook is originally
introduced because it is defined in whatwg/loader spec. But this hook is not
used in our implementation, and this hook won't be used since (1) whatwg/loader
spec is abandoned, and (2) this type of hooks should be done in Service Workers.
In addition, this patch applies some cleaning up of our module loader JS code
to simplify things. This change paves the way to more efficient loader implementation
with great flexibility to adopt integrity="" parameters.
- builtins/ModuleLoaderPrototype.js:
(requestInstantiate):
(provideFetch):
provide is changed to provideFetch since we only used this function with Fetch stage parameter.
(fulfillInstantiate): Deleted.
(commitInstantiated): Deleted.
(instantiation): Deleted.
They are merged into requestInstantiate code. This is simpler.
(provide): Deleted.
- jsc.cpp:
- runtime/Completion.cpp:
(JSC::loadAndEvaluateModule):
(JSC::loadModule):
- runtime/JSGlobalObject.cpp:
- runtime/JSGlobalObject.h:
- runtime/JSModuleLoader.cpp:
(JSC::JSModuleLoader::provideFetch):
(JSC::JSModuleLoader::provide): Deleted.
Changed to provideFetch.
(JSC::JSModuleLoader::instantiate): Deleted.
Drop this hook.
- runtime/JSModuleLoader.h:
- runtime/ModuleLoaderPrototype.cpp:
(JSC::moduleLoaderPrototypeInstantiate): Deleted.
Drop this hook.
Source/WebCore:
Drop instantiate hooks.
No behavior change.
- bindings/js/JSDOMWindowBase.cpp:
- bindings/js/JSWorkerGlobalScopeBase.cpp:
- 3:24 AM WebKitGTK/2.18.x edited by
- (diff)
- 2:33 AM Changeset in webkit [223172] by
-
- 3 edits in trunk/Source/WebCore
[MSE][GStreamer] Add dump of append pipeline
https://bugs.webkit.org/show_bug.cgi?id=178074
Patch by Alicia Boya García <aboya@igalia.com> on 2017-10-11
Reviewed by Xabier Rodriguez-Calvar.
Enable dump of AppendPipeline.
- platform/graphics/gstreamer/mse/AppendPipeline.cpp:
(WebCore::appendPipelineStateChangeMessageCallback):
(WebCore::AppendPipeline::AppendPipeline):
(WebCore::AppendPipeline::handleStateChangeMessage):
- platform/graphics/gstreamer/mse/AppendPipeline.h:
- 12:59 AM Changeset in webkit [223171] by
-
- 2 edits in trunk/Source/WebInspectorUI
Web Inspector: Avoid "100.00ms" vs "100.0ms" jitter in TimelineRuler labels
https://bugs.webkit.org/show_bug.cgi?id=178143
Reviewed by Brian Burg.
- UserInterface/Base/Utilities.js:
Allow a small slop factor that wouldn't have changed the display value's
significant figures anyways. This addresses cases where 100.0000000000001
were being treated slightly differently from 100.0.
- 12:55 AM Changeset in webkit [223170] by
-
- 4 edits in trunk/Source/WebInspectorUI
Web Inspector: Network Tab - Show initially loaded resources even if network info not logged
https://bugs.webkit.org/show_bug.cgi?id=178098
<rdar://problem/34073529>
Reviewed by Devin Rousso.
- UserInterface/Models/Resource.js:
(WI.Resource.prototype.hasResponse):
Resources loaded by Page.getFrameTree have a response but no status code data.
So include finished resources as having a resource.
- UserInterface/Views/NetworkTableContentView.js:
(WI.NetworkTableContentView):
(WI.NetworkTableContentView.prototype.closed):
(WI.NetworkTableContentView.prototype._populateWithInitialResourcesIfNeeded):
(WI.NetworkTableContentView.prototype._mainFrameDidChange):
Listen for the first main frame change to perform an initial population.
(WI.NetworkTableContentView.prototype._insertResourceAndReloadTable):
This path is not currently taken when table is null, but change the code so
that if it is reached without the table it would behave gracefully.
- UserInterface/Views/ResourceHeadersContentView.js:
(WI.ResourceHeadersContentView.prototype._refreshSummarySection):
On first open none of the resources have a statusCode. Show an emDash.
- 12:54 AM Changeset in webkit [223169] by
-
- 10 edits2 adds in trunk
[iOS] Do not flatten frames when async frame scrolling is enabled
https://bugs.webkit.org/show_bug.cgi?id=173704
Patch by Frederic Wang <fwang@igalia.com> on 2017-09-27
Reviewed by Simon Fraser.
Source/WebCore:
This patch disables frame flattening when async frame scrolling is enabled on iOS, as
otherwise you can not scroll them. Once iframe scrolling is implemented in iOS (bug 149264),
developers and beta testers will be able to check it by enabling "Async Frame Scrolling"
in the "Experimental WebKit Features" menu of Safari iOS.
Test: platform/ios/fast/frames/flattening/iframe-flattening-with-async-frame-scrolling.html
- page/FrameView.cpp:
(WebCore::FrameView::frameFlatteningEnabled): Use effectiveFrameFlattening()
- page/Settings.cpp:
(WebCore::Settings::effectiveFrameFlattening): New function to return frameFlattening() or do
some exceptions on iOS.
- page/Settings.h: Declare effectiveFrameFlattening.
- rendering/RenderFrameSet.cpp:
(WebCore::RenderFrameSet::flattenFrameSet): Use effectiveFrameFlattening()
- rendering/RenderIFrame.cpp:
(WebCore::RenderIFrame::flattenFrame): Ditto.
- rendering/RenderView.cpp:
(WebCore::FrameFlatteningLayoutDisallower::FrameFlatteningLayoutDisallower): Ditto.
Source/WebKit:
This patch disables frame flattening when async frame scrolling is enabled on iOS, as
otherwise you can not scroll them. Once iframe scrolling is implemented in iOS (bug 149264),
developers and beta testers will be able to check it by enabling "Async Frame Scrolling"
in the "Experimental WebKit Features" menu of Safari iOS.
Test: platform/ios/fast/frames/flattening/iframe-flattening-with-async-frame-scrolling.html
- WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::contentsSizeChanged): Use effectiveFrameFlattening() introduced in
Source/WebCore.
LayoutTests:
Add an iOS test to verify that frame flattening is disabled when async frame scrolling is enabled.
- platform/ios/fast/frames/flattening/iframe-flattening-with-async-frame-scrolling-expected.txt: Added.
- platform/ios/fast/frames/flattening/iframe-flattening-with-async-frame-scrolling.html: Added.
- 12:42 AM WebKitGTK/2.16.x edited by
- (diff)
Oct 10, 2017:
- 10:48 PM Changeset in webkit [223168] by
-
- 2 edits in trunk/Source/WebCore
[GStreamer] Fix double seek requested by downloadbuffer GStreamer element in webkibwebsrc
https://bugs.webkit.org/show_bug.cgi?id=178079
Reviewed by Žan Doberšek.
When the downloadbuffer GStreamer element requests two seeks too
close to each other there's some rare race condition where our
source answers that it is not seekable and ends up with
downloadbuffer element to seek beyond the file size, which causes
the server to issue a 416 HTTP error code eventually, causing our
MediaPlayer to stop.
- platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
(webKitWebSrcStop): We only unset he seekable attribute if we are
not seeking.
- 9:12 PM Changeset in webkit [223167] by
-
- 22 edits in trunk
Enable custom pasteboard data in DumpRenderTree and WebKitTestRunner
https://bugs.webkit.org/show_bug.cgi?id=178154
Reviewed by Wenson Hsieh.
Source/WebCore:
Extracted the logic to compute the default enabled-ness of custom pasteboard data as
Settings::defaultCustomPasteboardDataEnabled() to be called by WebKit1 and WebKit2 layers.
- page/Settings.cpp:
(WebCore::Settings::defaultCustomPasteboardDataEnabled): Extracted from customPasteboardDataEnabled.
(WebCore::Settings::customPasteboardDataEnabled): Deleted. Now inlined in the header file.
- page/Settings.h:
(WebCore::Settings::customPasteboardDataEnabled):
- platform/cocoa/PasteboardCocoa.mm:
(WebCore::Pasteboard::read): Fixed a bug that we were adding MIME type to the map before checking that
we could actually read the buffer. We shouldn't skip a type (NSTIFFPboardType and kUTTypeTIFF for now)
if an equivalent type had failed to read.
Source/WebKit:
Plumbed customPasteboardDataEnabled flag to be used in WebKitTestRunner.
- Shared/WebPreferencesDefinitions.h:
- UIProcess/API/C/WKPreferences.cpp:
(WKPreferencesSetCustomPasteboardDataEnabled):
(WKPreferencesGetCustomPasteboardDataEnabled):
- UIProcess/API/C/WKPreferencesRefPrivate.h:
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updatePreferences):
Source/WebKitLegacy/mac:
Enable custom pasteboard data by default.
- WebView/WebPreferenceKeysPrivate.h:
- WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences customPasteboardDataEnabled]): Added.
(-[WebPreferences setCustomPasteboardDataEnabled:]): Added.
- WebView/WebPreferencesPrivate.h:
- WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
Tools:
Fixed the bug that LocalPasteboard would fail to load the promise type if data is set after declaring types
by delaying the call to provideDataForType until when dataForType is called.
Without this fix, fast/events/dropzone-002.html would start failing after enabling custom pasteboard data.
With this fix, fast/events/dropzone-005.html also starts passing.
- DumpRenderTree/mac/DumpRenderTree.mm:
(resetWebPreferencesToConsistentValues):
- DumpRenderTree/mac/DumpRenderTreePasteboard.mm:
(-[LocalPasteboard addTypes:owner:]):
(-[LocalPasteboard dataForType:]):
- WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetPreferencesToConsistentValues):
LayoutTests:
- editing/pasteboard/dataTransfer-setData-getData-expected.txt: Rebaselined. One more test case is passing now.
- fast/events/dropzone-002.html: Fixed the test to accept an image since we no longer drop URLs when dropping
an image avoid leaking local file paths.
- platform/mac/TestExpectations: Enabled dropzone-005.html since it started passing after fixing LocalPasteboard.
- 8:49 PM Changeset in webkit [223166] by
-
- 2 edits in branches/safari-604-branch/LayoutTests
Cherry-pick r222450. rdar://problem/34920294
- 8:49 PM Changeset in webkit [223165] by
-
- 13 edits1 add in branches/safari-604-branch
Cherry-pick r223084. rdar://problem/34857469
- 8:16 PM Changeset in webkit [223164] by
-
- 2 edits in trunk/Source/WebInspectorUI
Web Inspector: Quick Open: source mapped files are not shown as search results
https://bugs.webkit.org/show_bug.cgi?id=178151
<rdar://problem/31561718>
Reviewed by Joseph Pecoraro.
- UserInterface/Views/OpenResourceDialog.js:
(WI.OpenResourceDialog.prototype._addResource):
Also consider matching the query string against SourceMapResources
attached to a resource's source maps.
- 7:57 PM Changeset in webkit [223163] by
-
- 15 edits in trunk
[Payment Request] Validate that all PaymentCurrencyAmounts use the same currency code when using Apple Pay
https://bugs.webkit.org/show_bug.cgi?id=178150
Reviewed by Tim Horton.
Source/WebCore:
Apple Pay requires a single currency code, but the Payment Request API allows the client to
specify a currency code for each PaymentCurrencyAmount.
Instead of having a required currencyCode property on ApplePayRequest and ignoring the
currency property on PaymentCurrencyAmount, validate that all PaymentCurrencyAmounts use the
same currency code and use that as ApplePaySessionPaymentRequest's currencyCode.
Added test cases to http/tests/ssl/applepay/PaymentRequest.https.html.
- Modules/applepay/ApplePayPaymentRequest.h:
- Modules/applepay/ApplePayPaymentRequest.idl:
- Modules/applepay/ApplePayRequestBase.cpp:
(WebCore::convertAndValidate):
- Modules/applepay/ApplePayRequestBase.h:
- Modules/applepay/ApplePayRequestBase.idl:
- Modules/applepay/ApplePaySession.cpp:
(WebCore::convertAndValidate):
- Modules/applepay/paymentrequest/ApplePayPaymentHandler.cpp:
(WebCore::validate):
(WebCore::convertAndValidate):
(WebCore::ApplePayPaymentHandler::show):
- Modules/applepay/paymentrequest/ApplePayRequest.idl:
LayoutTests:
- http/tests/paymentrequest/payment-request-abort-method.https.html:
- http/tests/paymentrequest/payment-request-canmakepayment-method.https.html:
- http/tests/paymentrequest/payment-request-show-method.https.html:
- http/tests/ssl/applepay/PaymentRequest.https-expected.txt:
- http/tests/ssl/applepay/PaymentRequest.https.html:
- 6:01 PM Changeset in webkit [223162] by
-
- 4 edits in trunk
[WPE] Remove the possibility of installing the old WebKit2 C API
https://bugs.webkit.org/show_bug.cgi?id=178125
Reviewed by Michael Catanzaro.
.:
- Source/cmake/OptionsWPE.cmake: Remove definition of the EXPORT_DEPRECATED_WEBKIT2_C_API
build option.
Source/WebKit:
- PlatformWPE.cmake: Remove support for installing the deprecated C API.
- 5:53 PM Changeset in webkit [223161] by
-
- 5 edits in trunk/Source/JavaScriptCore
Prototype structure transition should be a deferred transition
https://bugs.webkit.org/show_bug.cgi?id=177734
Reviewed by Keith Miller.
Absence ObjectPropertyConditions work by verifying both that the Structure
does not have a particular property and that its prototype has
remained constant. However, the prototype transition was firing
the transition watchpoint before setting the object's structure.
This meant that isValid for Absence would never return false because
the prototype changed. Clearly this is wrong. The reason this didn't
break OPCs in general is that we'd also check if we could still watch
the OPC. In this case, we can't still watch it because we're inspecting
a structure with an invalidated transition watchpoint. To fix
this weird quirk of the code, I'm making it so that doing a prototype
transition uses the DeferredStructureTransitionWatchpointFire machinery.
This patch also fixes some dead code that I left in regarding
poly proto in OPC.
- bytecode/PropertyCondition.cpp:
(JSC::PropertyCondition::isStillValidAssumingImpurePropertyWatchpoint const):
- runtime/JSObject.cpp:
(JSC::JSObject::setPrototypeDirect):
- runtime/Structure.cpp:
(JSC::Structure::changePrototypeTransition):
- runtime/Structure.h:
- 5:37 PM Changeset in webkit [223160] by
-
- 16 edits2 adds1 delete in trunk
[Payment Request] Implement PaymentRequest.canMakePayment()
https://bugs.webkit.org/show_bug.cgi?id=178048
Reviewed by Youenn Fablet.
LayoutTests/imported/w3c:
- web-platform-tests/payment-request/payment-request-canmakepayment-method.https-expected.txt: Removed.
Source/WebCore:
Test: http/tests/paymentrequest/payment-request-canmakepayment-method.https.html
- Modules/applepay/paymentrequest/ApplePayPaymentHandler.cpp:
(WebCore::ApplePayPaymentHandler::convertData): Moved
ApplePayRequest-to-ApplePaySessionPaymentRequest conversion from here to show().
(WebCore::ApplePayPaymentHandler::show): Returned an exception if
ApplePaySessionPaymentRequest conversion fails.
(WebCore::shouldDiscloseApplePayCapability): Checked if we are in an ephimeral session or if
Settings::applePayCapabilityDisclosureAllowed() is false.
(WebCore::ApplePayPaymentHandler::canMakePayment): Called
PaymentCoordinator::canMakePayments() or PaymentCoordinator::canMakePaymentsWithActiveCard()
depending on shouldDiscloseApplePayCapability().
- Modules/applepay/paymentrequest/ApplePayPaymentHandler.h:
- Modules/applepay/paymentrequest/ApplePayRequest.h:
- Modules/applepay/paymentrequest/ApplePayRequest.idl: Defined merchantIdentifier.
- Modules/paymentrequest/PaymentHandler.h:
- Modules/paymentrequest/PaymentRequest.cpp:
(WebCore::parse): Moved JSON-parsing to here from show().
(WebCore::PaymentRequest::show): Returned the exception from PaymentHandler::show().
(WebCore::PaymentRequest::canMakePayment): For each payment method, try to create a
PaymentHandler.
For the first valid PaymentHandler, call canMakePayment() and pass a lambda that resolves
the promise.
- Modules/paymentrequest/PaymentRequest.h:
- Modules/paymentrequest/PaymentRequest.idl: Added CallWith=Document annotations to show()
and canMakePayment().
LayoutTests:
- http/tests/paymentrequest/payment-request-canmakepayment-method.https-expected.txt: Added.
- http/tests/paymentrequest/payment-request-canmakepayment-method.https.html: Added.
- http/tests/ssl/applepay/PaymentRequest.https.html:
- platform/ios-wk2/TestExpectations:
- platform/mac-wk2/TestExpectations:
- 5:09 PM Changeset in webkit [223159] by
-
- 2 edits in trunk/Source/JavaScriptCore
Avoid allocating useless landingBlocks in DFGByteCodeParser::handleInlining()
https://bugs.webkit.org/show_bug.cgi?id=177926
Reviewed by Saam Barati.
When doing polyvariant inlining, there used to be a landing block for each callee, each of which was then linked to a continuation block.
With this change, we allocate the continuation block first, and pass it to the inlining routine so that op_ret in the callee link directly to it.
The only subtlety is that when inlining an intrinsic we must do the jump by hand, and also remember to call processSetLocalQueue with nextOffset before it.
- dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::inlineCall):
(JSC::DFG::ByteCodeParser::attemptToInlineCall):
(JSC::DFG::ByteCodeParser::handleInlining):
(JSC::DFG::ByteCodeParser::InlineStackEntry::InlineStackEntry):
(JSC::DFG::ByteCodeParser::parse):
- 5:01 PM Changeset in webkit [223158] by
-
- 10 edits in trunk/Source/WebKit
[WK2] Add API to clear service worker registrations
https://bugs.webkit.org/show_bug.cgi?id=178085
<rdar://problem/34866025>
Reviewed by Ryosuke Niwa.
Add API to clear service worker registrations. Although the request to
clear the registration is passed on to the StorageProcess, it is currently
a no-op on StorageProcess side until we actually persist service worker
registrations on disk.
- Shared/WebsiteData/WebsiteDataType.h:
- StorageProcess/StorageProcess.cpp:
(WebKit::StorageProcess::fetchWebsiteData):
(WebKit::StorageProcess::deleteWebsiteData):
(WebKit::StorageProcess::deleteWebsiteDataForOrigins):
- UIProcess/API/C/WKWebsiteDataStoreRef.cpp:
(WKWebsiteDataStoreRemoveAllServiceWorkerRegistrations):
- UIProcess/API/C/WKWebsiteDataStoreRef.h:
- UIProcess/API/Cocoa/WKWebsiteDataRecord.h:
- UIProcess/API/Cocoa/WKWebsiteDataRecord.mm:
(dataTypesToString):
- UIProcess/API/Cocoa/WKWebsiteDataRecordInternal.h:
(WebKit::toWebsiteDataType):
(WebKit::toWKWebsiteDataTypes):
- UIProcess/API/Cocoa/WKWebsiteDataStore.mm:
(+[WKWebsiteDataStore allWebsiteDataTypes]):
- UIProcess/WebsiteData/WebsiteDataStore.cpp:
(WebKit::WebsiteDataStore::fetchDataAndApply):
(WebKit::WebsiteDataStore::removeData):
- 4:46 PM Changeset in webkit [223157] by
-
- 18 edits2 copies2 adds in branches/safari-604-branch
Cherry-pick r222478. rdar://problem/34771020
- 4:40 PM Changeset in webkit [223156] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed, really fix the build with certain SDKs.
Follow-up to r223154, which fixed the wrong lambda.
- Modules/entriesapi/DOMFileSystem.cpp:
(WebCore::DOMFileSystem::getEntry):
(WebCore::DOMFileSystem::getFile):
- 4:14 PM Changeset in webkit [223155] by
-
- 3 edits in trunk/Source/JavaScriptCore
Fix compilation when MASM_PROBE (and therefore DFG) are disabled
https://bugs.webkit.org/show_bug.cgi?id=178134
Reviewed by Saam Barati.
- bytecode/CodeBlock.cpp:
- bytecode/CodeBlock.h:
Disable some code when building without DFG_JIT.
- 4:09 PM Changeset in webkit [223154] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed, fix build with certain SDKs.
Stop capturing |this| unnecessarily in lambda.
- Modules/entriesapi/DOMFileSystem.cpp:
(WebCore::DOMFileSystem::getEntry):
- 3:59 PM Changeset in webkit [223153] by
-
- 3 edits in trunk/Source/WebCore
Unreviewed, rolling out r223148.
This caused build failures.
Reverted changeset:
"Fix MSVC build with ENCRYPTED_MEDIA enabled"
https://bugs.webkit.org/show_bug.cgi?id=177803
http://trac.webkit.org/changeset/223148
- 3:59 PM Changeset in webkit [223152] by
-
- 2 edits in trunk
[WPE] Expose ENABLE_XSLT option
https://bugs.webkit.org/show_bug.cgi?id=177857
Reviewed by Carlos Alberto Lopez Perez.
- Source/cmake/OptionsWPE.cmake:
- 3:47 PM Changeset in webkit [223151] by
-
- 9 edits in trunk/Source/WebCore
AccessibilityRenderObject should not hold a raw pointer to RenderObject
https://bugs.webkit.org/show_bug.cgi?id=178144
<rdar://problem/34919287>
Reviewed by Chris Fleizach.
m_renderer's lifetime is not directly tied to the AX wrapper object's lifetime.
Covered by existing tests.
- accessibility/AccessibilityListBox.cpp:
(WebCore::AccessibilityListBox::elementAccessibilityHitTest const):
- accessibility/AccessibilityMathMLElement.cpp:
(WebCore::AccessibilityMathMLElement::isMathFenceOperator const):
(WebCore::AccessibilityMathMLElement::isMathSeparatorOperator const):
(WebCore::AccessibilityMathMLElement::mathLineThickness const):
- accessibility/AccessibilityMenuList.cpp:
(WebCore::AccessibilityMenuList::press):
(WebCore::AccessibilityMenuList::isCollapsed const):
- accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::AccessibilityRenderObject):
(WebCore::AccessibilityRenderObject::renderBoxModelObject const):
(WebCore::AccessibilityRenderObject::setRenderer):
(WebCore::AccessibilityRenderObject::previousSibling const):
(WebCore::AccessibilityRenderObject::anchorElement const):
(WebCore::AccessibilityRenderObject::helpText const):
(WebCore::AccessibilityRenderObject::boundingBoxRect const):
(WebCore::AccessibilityRenderObject::supportsPath const):
(WebCore::AccessibilityRenderObject::elementPath const):
(WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored const):
(WebCore::AccessibilityRenderObject::index const):
(WebCore::AccessibilityRenderObject::handleActiveDescendantChanged):
(WebCore::AccessibilityRenderObject::observableObject const):
(WebCore::AccessibilityRenderObject::determineAccessibilityRole):
(WebCore::AccessibilityRenderObject::textChanged):
(WebCore::AccessibilityRenderObject::remoteSVGRootElement const):
(WebCore::AccessibilityRenderObject::roleValueForMSAA const):
(WebCore::AccessibilityRenderObject::getScrollableAreaIfScrollable const):
(WebCore::AccessibilityRenderObject::scrollTo const):
- accessibility/AccessibilityRenderObject.h:
(WebCore::AccessibilityRenderObject::setRenderObject):
- accessibility/AccessibilitySlider.cpp:
(WebCore::AccessibilitySlider::elementAccessibilityHitTest const):
- accessibility/AccessibilityTable.cpp:
(WebCore::AccessibilityTable::addChildren):
- accessibility/AccessibilityTableCell.cpp:
(WebCore::AccessibilityTableCell::computeAccessibilityIsIgnored const):
(WebCore::AccessibilityTableCell::parentTable const):
(WebCore::AccessibilityTableCell::rowIndexRange const):
(WebCore::AccessibilityTableCell::columnIndexRange const):
(WebCore::AccessibilityTableCell::titleUIElement const):
- 3:37 PM Changeset in webkit [223150] by
-
- 2 edits in trunk/Source/WebKit
Unreviewed, rolling out r223130.
https://bugs.webkit.org/show_bug.cgi?id=178147
Breaks the build when EGLNativeWindowType is a pointer
(Requested by aperezdc on #webkit).
Reverted changeset:
"[WPE] Build failure due to invalid cast of
EGLNativeWindowType when targetting 64-bit ARM"
https://bugs.webkit.org/show_bug.cgi?id=178090
http://trac.webkit.org/changeset/223130
- 3:13 PM Changeset in webkit [223149] by
-
- 42 edits in trunk/Source
Replace copyKeysToVector/copyValuesToVector with copyToVector(map.keys())/copyToVector(map.values())
https://bugs.webkit.org/show_bug.cgi?id=178102
Patch by Sam Weinig <sam@webkit.org> on 2017-10-10
Reviewed by Tim Horton.
Source/JavaScriptCore:
- inspector/agents/InspectorDebuggerAgent.cpp:
(Inspector::InspectorDebuggerAgent::clearInspectorBreakpointState):
Source/WebCore:
- Modules/geolocation/Geolocation.cpp:
(WebCore::Geolocation::Watchers::getNotifiersVector const):
- Modules/indexeddb/IDBTransaction.cpp:
(WebCore::IDBTransaction::connectionClosedFromServer):
- Modules/indexeddb/client/IDBConnectionProxy.cpp:
(WebCore::IDBClient::IDBConnectionProxy::connectionToServerLost):
- Modules/indexeddb/server/UniqueIDBDatabase.cpp:
(WebCore::IDBServer::UniqueIDBDatabase::immediateCloseForUserDelete):
- Modules/mediastream/MediaStream.cpp:
(WebCore::MediaStream::getTracks const):
- bindings/js/ScriptController.cpp:
(WebCore::ScriptController::windowProxies):
- css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::item const):
- dom/Document.cpp:
(WebCore::Document::prepareForDestruction):
- dom/DocumentMarkerController.cpp:
(WebCore::DocumentMarkerController::removeMarkers):
- inspector/InspectorWorkerAgent.cpp:
(WebCore::InspectorWorkerAgent::disconnectFromAllWorkerInspectorProxies):
- inspector/NetworkResourcesData.cpp:
- loader/DocumentLoader.cpp:
(WebCore::cancelAll):
(WebCore::setAllDefersLoading):
(WebCore::areAllLoadersPageCacheAcceptable):
- loader/cache/MemoryCache.cpp:
(WebCore::MemoryCache::forEachSessionResource):
- loader/mac/DocumentLoaderMac.cpp:
(WebCore::scheduleAll):
(WebCore::unscheduleAll):
- page/ResourceUsageThread.cpp:
(WebCore::ResourceUsageThread::notifyObservers):
- platform/mediastream/MediaStreamPrivate.cpp:
(WebCore::MediaStreamPrivate::tracks const):
Replace copyKeysToVector / copyValuesToVector with copyToVector(map.keys()) / copyToVector(map.values())
Source/WebDriver:
- SessionHost.cpp:
(WebDriver::SessionHost::inspectorDisconnected):
Source/WebKit:
- NetworkProcess/NetworkConnectionToWebProcess.cpp:
(WebKit::NetworkConnectionToWebProcess::didClose):
- Shared/RemoteLayerTree/RemoteLayerTreeTransaction.mm:
(WebKit::dumpChangedLayers):
- UIProcess/API/glib/WebKitWebContext.cpp:
(webkitWebContextInvalidateCustomProtocolRequests):
- UIProcess/API/gtk/WebKitWebViewBase.cpp:
(webkitWebViewBaseContainerForall):
- UIProcess/Cocoa/WKWebViewContentProviderRegistry.mm:
(-[WKWebViewContentProviderRegistry _mimeTypesWithCustomContentProviders]):
- UIProcess/GenericCallback.h:
(WebKit::invalidateCallbackMap):
- UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::shutDown):
(WebKit::WebProcessProxy::didClose):
(WebKit::WebProcessProxy::didBecomeUnresponsive):
(WebKit::WebProcessProxy::didBecomeResponsive):
(WebKit::WebProcessProxy::willChangeIsResponsive):
(WebKit::WebProcessProxy::didChangeIsResponsive):
(WebKit::WebProcessProxy::disconnectFramesFromPage):
(WebKit::WebProcessProxy::frameCountInPage const):
(WebKit::WebProcessProxy::requestTermination):
- WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
(WebKit::NPRuntimeObjectMap::invalidate):
- WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
(WebKit::NetscapePlugin::stopAllStreams):
- WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::cancelAllStreams):
- WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeContext.mm:
(WebKit::RemoteLayerTreeContext::buildTransaction):
- WebProcess/WebProcess.cpp:
(WebKit::WebProcess::didClose):
Source/WebKitLegacy:
- WebCoreSupport/WebResourceLoadScheduler.cpp:
(WebResourceLoadScheduler::servePendingRequests):
Source/WebKitLegacy/mac:
- History/WebHistory.mm:
(-[WebHistoryPrivate rebuildHistoryByDayIfNeeded:]):
- Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::stopAllStreams):
- WebCoreSupport/WebUserMediaClient.mm:
(WebUserMediaClient::pageDestroyed):
Source/WTF:
- wtf/HashMap.h:
(WTF::copyKeysToVector): Deleted.
(WTF::copyValuesToVector): Deleted.
Remove copyKeysToVector and copyValuesToVector which are no longer used.
- 2:51 PM Changeset in webkit [223148] by
-
- 3 edits in trunk/Source/WebCore
Fix MSVC build with ENCRYPTED_MEDIA enabled
https://bugs.webkit.org/show_bug.cgi?id=177803
Patch by Yoshiaki Jitsukawa <Yoshiaki.Jitsukawa@sony.com> on 2017-10-10
Reviewed by Alex Christensen.
As a workaround for MSVC, a weak pointer of "this" is captured
at the outermost lambda expression.
- Modules/encryptedmedia/MediaKeySession.cpp:
(WebCore::MediaKeySession::generateRequest):
(WebCore::MediaKeySession::load):
(WebCore::MediaKeySession::update):
(WebCore::MediaKeySession::close):
(WebCore::MediaKeySession::remove):
- platform/encryptedmedia/clearkey/CDMClearKey.cpp:
(WebCore::CDMInstanceClearKey::updateLicense):
(WebCore::CDMInstanceClearKey::loadSession):
(WebCore::CDMInstanceClearKey::removeSessionData):
- 2:40 PM Changeset in webkit [223147] by
-
- 4 edits in trunk/Source/WebInspectorUI
Web Inspector: Network Tab - Set column initial widths to try allow waterfall column to expand more by default
https://bugs.webkit.org/show_bug.cgi?id=178142
<rdar://problem/34918233>
Patch by Joseph Pecoraro <Joseph Pecoraro> on 2017-10-10
Reviewed by Brian Burg.
- UserInterface/Views/NetworkTableContentView.js:
(WI.NetworkTableContentView.prototype.initialLayout):
Provide initial widths for many columns where the max could fit
but we'd prefer a smaller than max initial width in wide cases.
- UserInterface/Views/Table.js:
(WI.Table.prototype._resizeColumnsAndFiller):
When auto sizing all columns use the preferred initial widths.
- UserInterface/Views/TableColumn.js:
(WI.TableColumn.prototype.get preferredInitialWidth):
Save the initial width.
- 2:32 PM Changeset in webkit [223146] by
-
- 2 edits in trunk/Source/WebKit
[WPE] Header cairo.h is used in GLib API headers but cannot be found
https://bugs.webkit.org/show_bug.cgi?id=178100
Reviewed by Michael Catanzaro.
- wpe/wpe-webkit.pc.in: Add Cairo to the "Requires" field, so its flags get pulled
in and the "cairo.h", used in the WPE WebKit GLib API headers, can be found.
- 2:29 PM Changeset in webkit [223145] by
-
- 6 edits in trunk
AX: [ATK] ARIA form role should be mapped to ATK_ROLE_LANDMARK; not ATK_ROLE_FORM
https://bugs.webkit.org/show_bug.cgi?id=178137
Reviewed by Chris Fleizach.
Source/WebCore:
Expose the ARIA form role as ATK_ROLE_LANDMARK; continue to expose the HTML form
element as ATK_ROLE_FORM.
No new tests needed due to existing coverage. Update expectations for roles-exposed.html.
- accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
(atkRole):
Tools:
Add handling for ATK_ROLE_LANDMARK resulting from the ARIA form role.
- WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
LayoutTests:
- platform/gtk/accessibility/roles-exposed-expected.txt: Updated expectations.
- 2:29 PM WebKitGTK/2.18.x edited by
- (diff)
- 2:26 PM Changeset in webkit [223144] by
-
- 4 edits4 adds in trunk
Respect audio rate change restrictions in HTMLMediaElement::setVolume.
https://bugs.webkit.org/show_bug.cgi?id=178140
Reviewed by Eric Carlson.
Source/WebCore:
Tests: media/audio-playback-volume-changes-with-restrictions-and-user-gestures.html
media/audio-playback-volume-changes-with-restrictions.html
It's currently possible for a website to start auto-playing media with a zero volume and then
programmatically set the volume to a non-zero value without a user gesture. This code path didn't
have to be considered previously because volume changes are not supported on iOS.
We currently pause media when an audio track comes in after an element has already started playing silently
in mediaPlayerDidAddAudioTrack. This patch does the same when a non-zero volume is set after a media
element already began playing silently and there is an audio rate change restriction.
- html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::setVolume):
LayoutTests:
- media/audio-playback-volume-changes-with-restrictions-and-user-gestures-expected.txt: Added.
- media/audio-playback-volume-changes-with-restrictions-and-user-gestures.html: Added.
- media/audio-playback-volume-changes-with-restrictions-expected.txt: Added.
- media/audio-playback-volume-changes-with-restrictions.html: Added.
- platform/ios/TestExpectations:
- 2:24 PM October 2017 Meeting edited by
- (diff)
- 2:24 PM Changeset in webkit [223143] by
-
- 2 edits in trunk/Source/WebKit
CSS constant properties should not be enabled by default
https://bugs.webkit.org/show_bug.cgi?id=177416
Reviewed by Darin Adler.
- Shared/WebPreferencesDefinitions.h:
- 2:10 PM Changeset in webkit [223142] by
-
- 2 edits in trunk/Source/JavaScriptCore
Unreviewed build fix.
Removed unused lambda capture.
- yarr/YarrPattern.cpp:
(JSC::Yarr::CharacterClassConstructor::appendInverted):
- 2:03 PM Changeset in webkit [223141] by
-
- 5 edits in trunk/Source/WebKit
Random StorageProcess and SWServer cleanup.
https://bugs.webkit.org/show_bug.cgi?id=178141
Reviewed by Andy Estes.
-StorageProcess should own the set of SWServers
-Some renaming and cleanup
- StorageProcess/StorageProcess.cpp:
(WebKit::StorageProcess::createStorageToWebProcessConnection):
(WebKit::StorageProcess::swServerForSession):
- StorageProcess/StorageProcess.h:
(WebKit::StorageProcess::queue):
- StorageProcess/StorageToWebProcessConnection.cpp:
(WebKit::StorageToWebProcessConnection::establishSWServerConnection):
- StorageProcess/StorageToWebProcessConnection.h:
- 1:50 PM Changeset in webkit [223140] by
-
- 13 edits in trunk
Loading should be disabled while constructing the fragment in WebContentReader::readWebArchive
https://bugs.webkit.org/show_bug.cgi?id=178118
Reviewed by Antti Koivisto.
Source/WebCore:
Disable image loading while constructing the document fragment in WebContentReader::readWebArchive
as we do in createFragmentAndAddResources for RTF/RTFD. This refactoring is needed to start using
blob URL in the pasted document fragment for webkit.org/b/124391.
Also modified WebContentReader::readWebArchive to take a reference to SharedBuffer instead of a pointer.
No new tests since existing tests have been updated to cover this behavior change.
- editing/WebContentReader.h:
- editing/cocoa/WebContentReaderCocoa.mm:
(WebCore::WebContentReader::readWebArchive): Use DeferredLoadingScope to disable the loader and images
while constructing the document fragment.
- platform/Pasteboard.h:
- platform/ios/PasteboardIOS.mm:
(WebCore::readPasteboardWebContentDataForType):
- platform/mac/PasteboardMac.mm:
(WebCore::Pasteboard::read):
LayoutTests:
Updated the existing tests to wait for images to load in each step explicitly instead of relying on
them being loaded synchronously or that it's loaded within 100-200ms.
- editing/pasteboard/4641033.html:
- editing/pasteboard/4947130.html:
- editing/pasteboard/4989774.html:
- editing/pasteboard/drag-selected-image-to-contenteditable.html:
- editing/selection/drag-to-contenteditable-iframe.html:
- platform/ios/TestExpectations: Skipped editing/selection/drag-to-contenteditable-iframe.html on iOS
since we don't support testing drag & drop on iOS. Also added [ Skip ] to other entires there.
- 1:36 PM Changeset in webkit [223139] by
-
- 4 edits in trunk/Source/WebCore
Layers should be destroyed by RenderLayerModelObject
https://bugs.webkit.org/show_bug.cgi?id=178139
Reviewed by Simon Fraser.
Clean up some FIXMEs.
- rendering/RenderLayerModelObject.cpp:
(WebCore::RenderLayerModelObject::willBeDestroyed):
(WebCore::RenderLayerModelObject::destroyLayer):
- rendering/RenderLayerModelObject.h:
- rendering/RenderObject.cpp:
(WebCore::RenderObject::willBeDestroyed):
- 12:41 PM Changeset in webkit [223138] by
-
- 4 edits in trunk/Source/WebKit
Unreviewed, rolling out r223136.
Forgot to update GTK API header
Reverted changeset:
"[WPE] Header cairo.h is used in GLib API headers but cannot
be found"
https://bugs.webkit.org/show_bug.cgi?id=178100
http://trac.webkit.org/changeset/223136
- 12:24 PM Changeset in webkit [223137] by
-
- 10 edits in trunk/Source/WebInspectorUI
Web Inspector: Views should explicitly remove event listeners from managers/Frame
https://bugs.webkit.org/show_bug.cgi?id=175951
Patch by Ross Kirsling <Ross Kirsling> on 2017-10-10
Reviewed by Brian Burg.
- UserInterface/Views/ApplicationCacheDetailsSidebarPanel.js:
(WI.ApplicationCacheDetailsSidebarPanel.prototype.closed):
- UserInterface/Views/DOMNodeDetailsSidebarPanel.js:
(WI.DOMNodeDetailsSidebarPanel.prototype.closed):
- UserInterface/Views/DebuggerDashboardView.js:
(WI.DebuggerDashboardView.prototype.closed):
- UserInterface/Views/LogContentView.js:
(WI.LogContentView.prototype.closed):
- UserInterface/Views/NetworkGridContentView.js:
(WI.NetworkGridContentView.prototype.closed):
- UserInterface/Views/ProbeDetailsSidebarPanel.js:
(WI.ProbeDetailsSidebarPanel.prototype.closed):
- UserInterface/Views/QuickConsole.js:
(WI.QuickConsole.prototype.closed):
- UserInterface/Views/ScopeChainDetailsSidebarPanel.js:
(WI.ScopeChainDetailsSidebarPanel.prototype.closed):
- UserInterface/Views/TimelineOverview.js:
(WI.TimelineOverview.prototype.closed):
- 12:09 PM Changeset in webkit [223136] by
-
- 4 edits in trunk/Source/WebKit
[WPE] Header cairo.h is used in GLib API headers but cannot be found
https://bugs.webkit.org/show_bug.cgi?id=178100
Reviewed by Žan Doberšek.
Instead of including <cairo.h>, it is better to forward-declare cairo_surface_t,
which is the one and only Cairo declaration needed by the WPE API header.
- UIProcess/API/glib/WebKitFaviconDatabase.cpp: Add inclusion of <cairo.h>.
- UIProcess/API/glib/WebKitWebView.cpp: Add inclusion of <cairo.h>.
- UIProcess/API/wpe/WebKitFaviconDatabase.h: Add forward declaration of cairo_surface_t.
- 11:42 AM Changeset in webkit [223135] by
-
- 7 edits in trunk
Entries API should recognize path starting with 2 slashes as valid absolute path
https://bugs.webkit.org/show_bug.cgi?id=178135
Reviewed by Ryosuke Niwa.
Source/WebCore:
Entries API should recognize paths starting with 2 slashes as valid absolute paths to match Chrome's behavior.
See https://github.com/WICG/entries-api/commit/990454758005a6039655835503d551015e346d9d
This was causing us to fail some manual web-platform-tests.
No new tests, updated existing tests.
- Modules/entriesapi/DOMFileSystem.cpp:
(WebCore::isValidPathSegment):
(WebCore::isZeroOrMorePathSegmentsSeparatedBySlashes):
(WebCore::isValidRelativeVirtualPath):
(WebCore::isValidVirtualPath):
LayoutTests:
Add layout test coverage.
- editing/pasteboard/entries-api/datatransfer-items-drop-getDirectory-expected.txt:
- editing/pasteboard/entries-api/datatransfer-items-drop-getDirectory.html:
- editing/pasteboard/entries-api/datatransfer-items-drop-getFile-expected.txt:
- editing/pasteboard/entries-api/datatransfer-items-drop-getFile.html:
- 10:58 AM Changeset in webkit [223134] by
-
- 6 edits3 deletes in trunk
Unreviewed, rolling out r223110.
This caused consistent failures and timeouts on multiple
platforms.
Reverted changeset:
"Delete button doesn't fully delete certain emoji"
https://bugs.webkit.org/show_bug.cgi?id=178096
http://trac.webkit.org/changeset/223110
- 10:44 AM Changeset in webkit [223133] by
-
- 2 edits in trunk/Source/WebKit
[WPE] Cannot link against libWPEWebkit due to wrong contents of wpe-webkit.pc
https://bugs.webkit.org/show_bug.cgi?id=178133
Reviewed by Žan Doberšek.
- wpe/wpe-webkit.pc.in: Remove "-lWPE" and replace "Requires.private" with a plain "Requires".
- 10:08 AM WebKitGTK/2.18.x edited by
- (diff)
- 9:08 AM October 2017 Meeting edited by
- Proposed schedule (diff)
- 8:58 AM Changeset in webkit [223132] by
-
- 5 edits in trunk/Tools
run-webkit-tests: upload test results to multiple servers
https://bugs.webkit.org/show_bug.cgi?id=178012
<rdar://problem/34856501>
Reviewed by Lucas Forschler.
Allowing uploading of results to multiple servers makes developing new results
databases much easier, and does not complicate uploading logic.
- Scripts/webkitpy/layout_tests/controllers/manager.py:
(Manager.upload_results): Iterate through the list of results server hosts and
send results to each one.
- Scripts/webkitpy/layout_tests/layout_package/json_layout_results_generator.py:
(JSONLayoutResultsGenerator.init): Accept a list of test results servers.
- Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py:
(JSONResultsGenerator.init): Accept a list of test results servers.
(JSONResultsGenerator.get_json): Pick which server to download from by index.
(JSONResultsGenerator.upload_json_files): Upload the JSON to each results server.
(JSONResultsGenerator._get_archived_json_results): Pick which server to download from.
- Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(parse_args): Allow multiple test-results-servers and results-server-hosts to be
passed to run-webkit-tests.
- 6:02 AM Changeset in webkit [223131] by
-
- 14 edits in trunk
RenderObject::destroy() should only be invoked after renderer has been removed from the tree
https://bugs.webkit.org/show_bug.cgi?id=178075
Reviewed by Zalan Bujtas.
Source/WebCore:
This patch fixes the remaining cases where the renderer is still in the tree while destroy()
is called and adds the assert.
- rendering/RenderBlock.cpp:
(WebCore::RenderBlock::removeLeftoverAnonymousBlock):
(WebCore::RenderBlock::takeChild):
- rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::willBeDestroyed):
- rendering/RenderLayer.cpp:
(WebCore::RenderLayer::~RenderLayer):
Null the parent pointers for m_scrollCorner/m_resizer.
(WebCore::RenderLayer::calculateClipRects const):
- rendering/RenderLayer.h:
- rendering/RenderObject.cpp:
(WebCore::RenderObject::willBeDestroyed):
(WebCore::RenderObject::removeFromParentAndDestroyCleaningUpAnonymousWrappers):
(WebCore::RenderObject::destroy):
Use RELEASE_ASSERT as these are cheap and important checks.
Also turn isBeingDestroyed test into RELEASE_ASSERT.
Remove AX call that no longer does anything.
(WebCore::RenderObject::destroyAndCleanupAnonymousWrappers): Deleted.
- rendering/RenderObject.h:
- rendering/RenderRubyBase.cpp:
(WebCore::RenderRubyBase::moveBlockChildren):
- rendering/RenderTableRow.cpp:
(WebCore::RenderTableRow::collapseAndDestroyAnonymousSiblingRows):
(WebCore::RenderTableRow::destroyAndCollapseAnonymousSiblingRows): Deleted.
Renamed and made this no longer destroy itself. The caller now takes care of that.
Removed an unnecessary lambda.
- rendering/RenderTableRow.h:
- style/RenderTreeUpdater.cpp:
(WebCore::RenderTreeUpdater::tearDownRenderers):
(WebCore::RenderTreeUpdater::tearDownRenderer):
- style/RenderTreeUpdaterListItem.cpp:
(WebCore::RenderTreeUpdater::ListItem::updateMarker):
LayoutTests:
- accessibility/mac/textbox-role-reports-notifications.html:
This passed because spurious AXValueChanged notifications. Force layout to prevent coalescing between mutations.
- 5:47 AM Changeset in webkit [223130] by
-
- 2 edits in trunk/Source/WebKit
[WPE] Build failure due to invalid cast of EGLNativeWindowType when targetting 64-bit ARM
https://bugs.webkit.org/show_bug.cgi?id=178090
Reviewed by Žan Doberšek.
- WebProcess/WebPage/wpe/AcceleratedSurfaceWPE.cpp:
(WebKit::AcceleratedSurfaceWPE::window const): Use static_cast instead of reinterpret_cast,
this way extending values of EGLNativeWindowType to 64 bits is allowed.
- 5:02 AM Changeset in webkit [223129] by
-
- 2 edits in trunk/Source/WebKit
[WPE] GLib API headers WebKitScriptDialog.h and WebKitFileChooserRequest.h are not installed
https://bugs.webkit.org/show_bug.cgi?id=178104
Reviewed by Žan Doberšek.
- PlatformWPE.cmake: Add missing header paths to the WPE_API_INSTALLED_HEADERS variable.
- 4:27 AM Changeset in webkit [223128] by
-
- 2 edits in trunk/Source/WebKit
[WPE][CMake] The “install” target should install all public API headers
https://bugs.webkit.org/show_bug.cgi?id=176475
Reviewed by Žan Doberšek.
Install the WPE port GLib-based API headers. The deprecated C API is still available,
but disabled by default behind the "EXPORT_DEPRECATED_WEBKIT2_C_API" CMake option.
- PlatformWPE.cmake: Always install "wpe-webkit.pc" and the GLib C API for WPE.
- 3:38 AM Changeset in webkit [223127] by
-
- 8 edits in trunk/Source/WebCore
Add isContinuation bit
https://bugs.webkit.org/show_bug.cgi?id=178084
Reviewed by Zalan Bujtas.
Currently continuations are identified indirectly by comparing renderer pointer with the element renderer pointer.
This is bug prone and fails to cover anonymous continuations.
- accessibility/AccessibilityRenderObject.cpp:
(WebCore::firstChildConsideringContinuation):
(WebCore::startOfContinuations):
(WebCore::firstChildIsInlineContinuation):
(WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored const):
Ignore first-letter fragment. This worked before because first-letter renderers
were mistakenly considered inline element continuations (see below).
- rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::setContinuation):
- rendering/RenderElement.cpp:
(WebCore::RenderElement::RenderElement):
- rendering/RenderElement.h:
(WebCore::RenderElement::hasContinuation const):
(WebCore::RenderElement::isContinuation const):
(WebCore::RenderElement::setIsContinuation):
The new bit.
(WebCore::RenderElement::isElementContinuation const):
(WebCore::RenderElement::isInlineElementContinuation const):
- rendering/RenderInline.cpp:
(WebCore::RenderInline::addChildIgnoringContinuation):
(WebCore::RenderInline::cloneAsContinuation const):
(WebCore::RenderInline::splitInlines):
(WebCore::RenderInline::childBecameNonInline):
(WebCore::RenderInline::clone const): Deleted.
- rendering/RenderInline.h:
- rendering/RenderObject.h:
(WebCore::RenderObject::isAnonymousBlock const):
(WebCore::RenderObject::isElementContinuation const): Deleted.
The old continuation test was 'node() && node()->renderer() != this'
This was fragile as nulling the renderer will make it fail.
It was also wrong for first-letter renderers (isElementContinuation was true for them).
(WebCore::RenderObject::isInlineElementContinuation const): Deleted.
Move to RenderElement.
(WebCore::RenderObject::isBlockElementContinuation const): Deleted.
- 1:55 AM Changeset in webkit [223126] by
-
- 5 edits2 adds in trunk
AX: [ATK] STATE_CHECKABLE should be removed from radio buttons in radiogroups with aria-readonly="true"
https://bugs.webkit.org/show_bug.cgi?id=177931
Reviewed by Chris Fleizach.
Source/WebCore:
Add a check in canSetValueAttribute() for readonly radiogroup ancestors of
radio buttons.
Test: accessibility/gtk/aria-readonly-radiogroup.html
- accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::canSetValueAttribute const):
- accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::radioGroupAncestor const):
- accessibility/AccessibilityObject.h:
LayoutTests:
- accessibility/gtk/aria-readonly-radiogroup-expected.txt: Added.
- accessibility/gtk/aria-readonly-radiogroup.html: Added.
- 12:58 AM Changeset in webkit [223125] by
-
- 16 edits2 moves1 add in trunk
The prototype cache should be aware of the Executable it generates a Structure for
https://bugs.webkit.org/show_bug.cgi?id=177907
Reviewed by Filip Pizlo.
JSTests:
- microbenchmarks/dont-confuse-structures-from-different-executable-as-poly-proto.js: Added.
(assert):
(foo.C):
(foo):
(bar.C):
(bar):
(access):
(makeLongChain):
(accessY):
Source/JavaScriptCore:
This patch renames PrototypeMap to StructureCache because
it is no longer a map of the prototypes in the VM. It's
only used to cache Structures during object construction.
The main change of this patch is to guarantee that Structures generated
by the create_this originating from different two different Executables'
bytecode won't hash-cons to the same thing. Previously, we could hash-cons
them depending on the JSObject* prototype pointer. This would cause the last
thing that hash-consed to overwrite the Structure's poly proto watchpoint. This
happened because when we initialize a JSFunction's ObjectAllocationProfile,
we set the resulting Structure's poly proto watchpoint. This could cause a Structure
generating from some Executable e1 to end up with the poly proto watchpoint
for another Executable e2 simply because JSFunctions backed by e1 and e2
shared the same prototype. Then, based on profiling information, we may fire the
wrong Executable's poly proto watchpoint. This patch fixes this bug by
guaranteeing that Structures generating from create_this for different
Executables are unique even if they share the same prototype by adding
the FunctionExecutable* as another field in PrototypeKey.
- JavaScriptCore.xcodeproj/project.pbxproj:
- Sources.txt:
- bytecode/InternalFunctionAllocationProfile.h:
(JSC::InternalFunctionAllocationProfile::createAllocationStructureFromBase):
- bytecode/ObjectAllocationProfile.cpp:
(JSC::ObjectAllocationProfile::initializeProfile):
- dfg/DFGOperations.cpp:
- runtime/CommonSlowPaths.cpp:
(JSC::SLOW_PATH_DECL):
- runtime/InternalFunction.cpp:
(JSC::InternalFunction::createSubclassStructureSlow):
- runtime/IteratorOperations.cpp:
(JSC::createIteratorResultObjectStructure):
- runtime/JSBoundFunction.cpp:
(JSC::getBoundFunctionStructure):
- runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::init):
- runtime/ObjectConstructor.h:
(JSC::constructEmptyObject):
- runtime/PrototypeKey.h:
(JSC::PrototypeKey::PrototypeKey):
(JSC::PrototypeKey::executable const):
(JSC::PrototypeKey::operator== const):
(JSC::PrototypeKey::hash const):
- runtime/PrototypeMap.cpp: Removed.
- runtime/PrototypeMap.h: Removed.
- runtime/StructureCache.cpp: Copied from Source/JavaScriptCore/runtime/PrototypeMap.cpp.
(JSC::StructureCache::createEmptyStructure):
(JSC::StructureCache::emptyStructureForPrototypeFromBaseStructure):
(JSC::StructureCache::emptyObjectStructureForPrototype):
(JSC::PrototypeMap::createEmptyStructure): Deleted.
(JSC::PrototypeMap::emptyStructureForPrototypeFromBaseStructure): Deleted.
(JSC::PrototypeMap::emptyObjectStructureForPrototype): Deleted.
- runtime/StructureCache.h: Copied from Source/JavaScriptCore/runtime/PrototypeMap.h.
(JSC::StructureCache::StructureCache):
(JSC::PrototypeMap::PrototypeMap): Deleted.
- runtime/VM.cpp:
(JSC::VM::VM):
- runtime/VM.h: