Timeline
Mar 3, 2020:
- 10:31 PM Changeset in webkit [257835] by
-
- 38 edits in trunk/Source
Web Inspector: re-add
InspectorFrontendHostsupport for moving the inspected window
https://bugs.webkit.org/show_bug.cgi?id=208555
Reviewed by Timothy Hatcher.
Partially revert r257759, as the design changed enough such that this code is still useful.
Source/WebCore:
Allow the Web Inspector frontend to ask the containing app (via
InspectorFrontendClient)
whether it supports the given docking configuration.
- inspector/InspectorFrontendHost.idl:
- inspector/InspectorFrontendHost.h:
- inspector/InspectorFrontendHost.cpp:
(WebCore::dockSideFromString): Added.
(WebCore::InspectorFrontendHost::supportsDockSide): Added.
(WebCore::InspectorFrontendHost::requestSetDockSide):
(WebCore::InspectorFrontendHost::startWindowDrag): Added.
(WebCore::InspectorFrontendHost::moveWindowBy const): Added.
- inspector/InspectorFrontendClient.h:
- inspector/InspectorFrontendClientLocal.cpp:
- inspector/InspectorFrontendClientLocal.h:
(WebCore::InspectorFrontendClientLocal::moveWindowBy): Added.
- testing/Internals.cpp:
(WebCore::InspectorStubFrontend::supportsDockSide): Added.
Source/WebInspectorUI:
- UserInterface/Base/Main.js:
(WI.loaded):
(WI.updateDockedState):
(WI.resizeDockedFrameMouseDown): Added.
(WI.moveUndockedWindowMouseDown): Added.
(WI.dockedConfigurationSupportsSplitContentBrowser):
(WI._windowFocused):
(WI._windowBlurred):
(WI._updateDockNavigationItems):
(WI._handleDockedResizerMouseDown):
(WI._handleUndockedTitleAreaMouseDown):
(WI._updateTabBarDividers):
(WI.setLayoutDirection):
Don't create tab bar navigation items for the various docking configurations if the platform
doesn't support that particular configuration.
- UserInterface/Views/TabBar.js:
(WI.TabBar):
(WI.TabBar.get horizontalPadding):
(WI.TabBar.prototype._handleMouseDown):
(WI.TabBar.prototype._handleTabContainerMouseDown): Added.
(WI.TabBar.prototype._handleTabContainerClick): Added.
(WI.TabBar.prototype._handleTabContainerMouseLeave): Added.
(WI.TabBar.prototype._handleTabContainerContextMenu): Added.
(WI.TabBar.prototype._handleClick): Deleted.
(WI.TabBar.prototype._handleMouseLeave): Deleted.
(WI.TabBar.prototype._handleContextMenu): Deleted.
- UserInterface/Views/TabBar.css:
(body.docked.bottom .tab-bar > .tabs > .flexible-space):
Dragging on empty space in the tab bar should adjust Web Inspector's bottom docked height.
- UserInterface/Views/TabBarItem.js:
(WI.TabBarItem.get horizontalMargin):
Source/WebKit:
Allow the Web Inspector frontend to ask the containing app (via
InspectorFrontendClient)
whether it supports the given docking configuration.
- WebProcess/Inspector/WebInspectorUI.h:
- WebProcess/Inspector/WebInspectorUI.cpp:
(WebKit::WebInspectorUI::startWindowDrag): Added.
(WebKit::WebInspectorUI::moveWindowBy): Added.
(WebKit::WebInspectorUI::supportsDockSide): Added.
(WebKit::WebInspectorUI::requestSetDockSide):
(WebKit::WebInspectorUI::setDockSide):
- UIProcess/Inspector/WebInspectorProxy.messages.in:
- UIProcess/Inspector/WebInspectorProxy.h:
- UIProcess/Inspector/WebInspectorProxy.cpp:
(WebKit::WebInspectorProxy::startWindowDrag): Added.
(WebKit::WebInspectorProxy::platformStartWindowDrag): Added.
- UIProcess/Inspector/gtk/WebInspectorProxyGtk.cpp:
(WebKit::WebInspectorProxy::platformStartWindowDrag): Added.
- UIProcess/Inspector/mac/WebInspectorProxyMac.mm:
(WebKit::WebInspectorProxy::platformStartWindowDrag): Added.
- UIProcess/Inspector/win/WebInspectorProxyWin.cpp:
(WebKit::WebInspectorProxy::platformStartWindowDrag): Added.
- WebProcess/Inspector/RemoteWebInspectorUI.h:
- WebProcess/Inspector/RemoteWebInspectorUI.cpp:
(WebKit::RemoteWebInspectorUI::startWindowDrag): Added.
(WebKit::RemoteWebInspectorUI::moveWindowBy): Added.
(WebKit::RemoteWebInspectorUI::supportsDockSide): Added.
- UIProcess/Inspector/RemoteWebInspectorProxy.messages.in:
- UIProcess/Inspector/RemoteWebInspectorProxy.h:
- UIProcess/Inspector/RemoteWebInspectorProxy.cpp:
(WebKit::RemoteWebInspectorProxy::startWindowDrag): Added.
(WebKit::RemoteWebInspectorProxy::platformStartWindowDrag): Added.
- UIProcess/Inspector/gtk/RemoteWebInspectorProxyGtk.cpp:
(WebKit::RemoteWebInspectorProxy::platformStartWindowDrag): Added.
- UIProcess/Inspector/mac/RemoteWebInspectorProxyMac.mm:
(WebKit::RemoteWebInspectorProxy::platformStartWindowDrag): Added.
- UIProcess/Inspector/win/RemoteWebInspectorProxyWin.cpp:
(WebKit::RemoteWebInspectorProxy::platformStartWindowDrag): Added.
Source/WebKitLegacy/ios:
Allow the Web Inspector frontend to ask the containing app (via
InspectorFrontendClient)
whether it supports the given docking configuration.
- WebCoreSupport/WebInspectorClientIOS.mm:
(WebInspectorFrontendClient::supportsDockSide): Added.
(WebInspectorFrontendClient::startWindowDrag): Added.
Source/WebKitLegacy/mac:
Allow the Web Inspector frontend to ask the containing app (via
InspectorFrontendClient)
whether it supports the given docking configuration.
- WebCoreSupport/WebInspectorClient.h:
- WebCoreSupport/WebInspectorClient.mm:
(WebInspectorFrontendClient::startWindowDrag): Added.
(WebInspectorFrontendClient::supportsDockSide): Added.
Source/WebKitLegacy/win:
Allow the Web Inspector frontend to ask the containing app (via
InspectorFrontendClient)
whether it supports the given docking configuration.
- WebCoreSupport/WebInspectorClient.h:
- WebCoreSupport/WebInspectorClient.cpp:
(WebInspectorFrontendClient::supportsDockSide): Added.
- 10:03 PM Changeset in webkit [257834] by
-
- 8 edits in trunk
Add SPI _WKResourceLoadInfo.loadedFromCache
https://bugs.webkit.org/show_bug.cgi?id=208554
Reviewed by Wenson Hsieh.
Source/WebKit:
This exposes a boolean value indicating whether the resource was loaded from a cache based on the response source.
This is needed for rdar://problem/57132290
- NetworkProcess/NetworkResourceLoader.cpp:
(WebKit::NetworkResourceLoader::resourceLoadInfo):
- Shared/ResourceLoadInfo.h:
(WebKit::ResourceLoadInfo::encode const):
(WebKit::ResourceLoadInfo::decode):
- UIProcess/API/APIResourceLoadInfo.h:
- UIProcess/API/Cocoa/_WKResourceLoadInfo.h:
- UIProcess/API/Cocoa/_WKResourceLoadInfo.mm:
(-[_WKResourceLoadInfo loadedFromCache]):
(-[_WKResourceLoadInfo initWithCoder:]):
(-[_WKResourceLoadInfo encodeWithCoder:]):
Tools:
- TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadDelegate.mm:
(TEST):
- 9:40 PM Changeset in webkit [257833] by
-
- 2 edits in trunk/Source/WebCore
Web Inspector: set both the page's and the window's appearance when modifying the frontend forced appearance in the case that the frontend is docked
https://bugs.webkit.org/show_bug.cgi?id=208557
Reviewed by Timothy Hatcher.
- inspector/InspectorFrontendHost.cpp:
(WebCore::InspectorFrontendHost::setForcedAppearance):
InspectorFrontendClient::setForcedAppearanceonly has an effect when Web Inspector is
detached/undocked, meaning that changing the Appearance in the Settings Tab when docked has
no effect. In addition to notifying theInspectorFrontendClient, we should also call
Page::setUseDarkAppearanceOverrideso that if Web Inspector is docked, the apperance
changes. The Web Inspector frontend page's apperance would normally change to match the
appearance of the window, but when Web Inspector is docked there is no window.
- 9:33 PM Changeset in webkit [257832] by
-
- 2 edits in branches/safari-609.1.20.4-branch/Source/WebKitLegacy/win
Cherry-pick r257802. rdar://problem/60009752
[Win] API header file has USE macro
https://bugs.webkit.org/show_bug.cgi?id=208534
Reviewed by Brent Fulgham.
USE macros should not be used in API header files.
- WebKitCOMAPI.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@257802 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 9:30 PM Changeset in webkit [257831] by
-
- 8 edits in branches/safari-609.1.20.4-branch/Source
Versioning.
- 9:22 PM Changeset in webkit [257830] by
-
- 17 edits in trunk
Batch observations and completions of text manipulations
https://bugs.webkit.org/show_bug.cgi?id=208406
Reviewed by Wenson Hsieh.
Source/WebCore:
This patch updates TextManipulationController to notify and replace multiple paragraphs at once.
To allow some form of parallelism for the client application to process items while WebContent's main thread
is finding paragraphs, we notify the client every 128 items.
Tests: TestWebKitAPI.TextManipulation.StartTextManipulationSupportsLegacyDelegateCallback: Added.
TestWebKitAPI.TextManipulation.LegacyCompleteTextManipulationReplaceSimpleSingleParagraph: Added.
TestWebKitAPI.TextManipulation.CompleteTextManipulationReplaceMultipleSimpleParagraphsAtOnce: Added.
TestWebKitAPI.TextManipulation.CompleteTextManipulationShouldBatchItemCallback: Added.
TestWebKitAPI.TextManipulation.CompleteTextManipulationFailWhenItemIdentifierIsDuplicated: Added.
TestWebKitAPI.TextManipulation.CompleteTextManipulationCanHandleSubsetOfItemsToFail: Added.
- editing/TextManipulationController.cpp:
(WebCore::TextManipulationController::startObservingParagraphs):
(WebCore::TextManipulationController::scheduleObservartionUpdate):
(WebCore::TextManipulationController::addItem): Added.
(WebCore::TextManipulationController::flushPendingItemsForCallback): Added.
(WebCore::TextManipulationController::completeManipulation): Apply each ManipulationItem changes and return
an array for ManipulationFailure for those that failed.
(WebCore::TextManipulationController::replace):
- editing/TextManipulationController.h:
(WebCore::TextManipulationController::ManipulationItem): Added.
(WebCore::TextManipulationController::ManipulationFailureType): Renamed from ManipulationResult.
(WebCore::TextManipulationController::ManipulationFailure): Added.
(WebCore::TextManipulationController::ManipulationItemData): Renamed from ManipulationItem.
(WebCore::TextManipulationController::ManipulationItem::encode const): Added.
(WebCore::TextManipulationController::ManipulationItem::decode): Added.
(WebCore::TextManipulationController::ManipulationFailure::encode const): Added.
(WebCore::TextManipulationController::ManipulationFailure::decode): Added.
Source/WebKit:
Update WKWebView's SPI for text manipulations to batch observations and replacements of multiple paragraphs
at once instead of observing and replacing one paragraph at a time.
_WKTextManipulationDelegate now has a new callback, didFindTextManipulationItems, which gets an array of
_WKTextManipulationItem instead of a single _WKTextManipulationItem like didFindTextManipulationItem,
and WKWebView's _completeTextManipulationForItems replaces multiple paragraphs at once, and gives an array
of NSError for each _WKTextManipulationItem that failed to replace the respective content.
Tests: TestWebKitAPI.TextManipulation.StartTextManipulationSupportsLegacyDelegateCallback: Added.
TestWebKitAPI.TextManipulation.LegacyCompleteTextManipulationReplaceSimpleSingleParagraph: Added.
TestWebKitAPI.TextManipulation.CompleteTextManipulationReplaceMultipleSimpleParagraphsAtOnce: Added.
TestWebKitAPI.TextManipulation.CompleteTextManipulationShouldBatchItemCallback: Added.
TestWebKitAPI.TextManipulation.CompleteTextManipulationFailWhenItemIdentifierIsDuplicated: Added.
TestWebKitAPI.TextManipulation.CompleteTextManipulationCanHandleSubsetOfItemsToFail: Added.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _startTextManipulationsWithConfiguration:completion:]):
(coreTextManipulationItemIdentifierFromString): Added.
(coreTextManipulationTokenIdentifierFromString): Added.
(-[WKWebView _completeTextManipulation:completion:]): Updated to work with the new TextManipulationController
interface.
(makeFailureSetForAllTextManipulationItems): Added.
(wkTextManipulationErrors): Added.
(-[WKWebView _completeTextManipulationForItems:completion:]): Added. This is the new SPI.
- UIProcess/API/Cocoa/WKWebViewPrivate.h:
- UIProcess/API/Cocoa/_WKTextManipulationDelegate.h:
- UIProcess/API/Cocoa/_WKTextManipulationItem.h:
(_WKTextManipulationItemErrorDomain): Added.
(_WKTextManipulationItemErrorCode): Added.
(_WKTextManipulationItemErrorItemKey): Added.
- UIProcess/API/Cocoa/_WKTextManipulationItem.mm:
- UIProcess/WebPageProxy.cpp:
- UIProcess/WebPageProxy.h:
- UIProcess/WebPageProxy.messages.in:
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::startTextManipulations):
(WebKit::WebPage::completeTextManipulation): Updated per TextManipulationController interface change.
To avoid having to duplicate the code to create a vector of ManipulationFailure, this function's completion
handler has a boolean indicating that all replacements had failed.
- WebProcess/WebPage/WebPage.h:
- WebProcess/WebPage/WebPage.messages.in:
Tools:
Updated the existing tests to use new APIs, and added new tests for batching finding & replacing
multiple paragraphs at once.
- TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
(-[TextManipulationDelegate _webView:didFindTextManipulationItems:]):
(-[TextManipulationDelegate items]):
(-[LegacyTextManipulationDelegate init]):
(-[LegacyTextManipulationDelegate _webView:didFindTextManipulationItem:]):
(TextManipulation.StartTextManipulationSupportsLegacyDelegateCallback): Added.
(TextManipulation.LegacyCompleteTextManipulationReplaceSimpleSingleParagraph): Added.
(TextManipulation.CompleteTextManipulationReplaceMultipleSimpleParagraphsAtOnce): Added.
(TextManipulation.CompleteTextManipulationShouldBatchItemCallback): Added.
(TextManipulation.CompleteTextManipulationFailWhenItemIdentifierIsDuplicated): Added.
(TextManipulation.CompleteTextManipulationCanHandleSubsetOfItemsToFail): Added.
- 9:18 PM Changeset in webkit [257829] by
-
- 5 edits in branches/safari-610.1.6-branch/Source
Cherry-pick r257779. rdar://problem/60019706
Rename USE(GPU_PROCESS) to ENABLE(GPU_PROCESS_FOR_WEBRTC)
https://bugs.webkit.org/show_bug.cgi?id=208505
Reviewed by Eric Carlson.
Source/WebKit:
- Shared/WebPreferencesDefaultValues.h:
Source/WTF:
Rename macro since the name is misleading.
Disable GPU_PROCESS_FOR_WEBRTC for iOS except simulator for now.
- wtf/PlatformEnable.h:
- wtf/PlatformEnableCocoa.h:
- wtf/PlatformUse.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@257779 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 9:13 PM Changeset in webkit [257828] by
-
- 14 edits1 add in trunk
[Cocoa] Mapping from MIME type to UTI type should be done in the UI process
https://bugs.webkit.org/show_bug.cgi?id=208415
Reviewed by Brent Fulgham.
Source/WebCore:
This is currently done in the WebContent process, but since this is using a system service which will be closed,
this mapping should be moved to the UI process. The UI process will create this mapping for a set of mime types,
and send it to the WebContent process.
API test: WebKit.UTIFromMIMEType
- platform/network/mac/UTIUtilities.h:
- platform/network/mac/UTIUtilities.mm:
(WebCore::mapUTIFromMIMEType):
(WebCore::UTIFromMIMETypeCachePolicy::createValueForKey):
(WebCore::cacheUTIFromMimeType):
(WebCore::UTIFromMIMEType):
(WebCore::mimeTypes):
(WebCore::createUTIFromMIMETypeMap):
(WebCore::setUTIFromMIMETypeMap):
- testing/Internals.cpp:
(WebCore::Internals::getUTIFromMIMEType):
- testing/Internals.mm:
(WebCore::Internals::getUTIFromMIMEType):
- testing/Internals.h:
- testing/Internals.idl:
Source/WebKit:
Send the mapping between MIME types and UTI types to the WebContent process as part of the Web
process creation parameters.
- Shared/WebProcessCreationParameters.cpp:
(WebKit::WebProcessCreationParameters::encode const):
(WebKit::WebProcessCreationParameters::decode):
- Shared/WebProcessCreationParameters.h:
- UIProcess/Cocoa/WebProcessPoolCocoa.mm:
(WebKit::WebProcessPool::platformInitializeWebProcess):
- WebProcess/cocoa/WebProcessCocoa.mm:
(WebKit::WebProcess::platformInitializeWebProcess):
Tools:
- TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
- TestWebKitAPI/Tests/WebKit/UTIFromMIMEType.mm: Added.
(TEST):
- 9:00 PM Changeset in webkit [257827] by
-
- 2 edits in branches/safari-610.1.6-branch/Source/WebCore
Cherry-pick r257783. rdar://problem/60024770
Regression (CookieCache) Unable to log into Hulu.com
https://bugs.webkit.org/show_bug.cgi?id=208517
<rdar://problem/59973630>
Reviewed by Geoffrey Garen.
Even though we are listening for notifications for 'www.hulu.com', CFNetwork sends us a notification for host
'secure.hulu.com' when a load to secure.hulu.com sets a cookie for domain '.hulu.com'. Because the host did
not match one if our map of observers, we would ignore the cookie notification and our cookie cache would get
out of sync. To temporarily address the issue (until a better fix is made, likely on CFNetwork side), WebKit
now matches registrable domains instead of hosts.
- platform/network/cocoa/NetworkStorageSessionCocoa.mm: (WebCore::NetworkStorageSession::registerCookieChangeListenersIfNecessary):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@257783 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 9:00 PM Changeset in webkit [257826] by
-
- 2 edits in branches/safari-610.1.6-branch/Source/WebCore
Cherry-pick r257776. rdar://problem/60024732
Regression(r257354) Crash when trying on watch video on apple.com
https://bugs.webkit.org/show_bug.cgi?id=208487
<rdar://problem/59967385>
Reviewed by Eric Carlson.
Use WebCore::Cookie's code to convert to a NSHTTPCookie instead of using toNSHTTPCookie()
which was not quite right, especially after r257354.
- platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm: (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVAssetForURL): (WebCore::toNSHTTPCookie): Deleted.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@257776 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 9:00 PM Changeset in webkit [257825] by
-
- 7 edits1 add in branches/safari-610.1.6-branch
Cherry-pick r257728. rdar://problem/60024647
Delete by val caching does not keep the subscript alive
https://bugs.webkit.org/show_bug.cgi?id=208393
Reviewed by Yusuke Suzuki.
JSTests:
- stress/delete-property-ic-stress.js: Added.
Source/JavaScriptCore:
Before, the provided test case crashed with asan because we did not keep deleteByVal
subscripts alive. This patch changes CacheableIdentifier to make this mistake harder
to make again, by making the constructor calls more explicit when CacheableIdentifier
will not keep an Identifier alive.
- jit/JITOperations.cpp:
- jit/Repatch.cpp: (JSC::tryCachePutByID): (JSC::tryCacheDeleteBy): (JSC::repatchDeleteBy): (JSC::tryCacheInByID): (JSC::tryCacheInstanceOf): (JSC::tryCacheDelBy): Deleted. (JSC::repatchDelBy): Deleted.
- jit/Repatch.h:
- runtime/CacheableIdentifier.h:
- runtime/CacheableIdentifierInlines.h: (JSC::CacheableIdentifier::createFromIdentifierOwnedByCodeBlock): (JSC::CacheableIdentifier::createFromCell):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@257728 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 9:00 PM Changeset in webkit [257824] by
-
- 4 edits in branches/safari-610.1.6-branch
Cherry-pick r257716. rdar://problem/60019586
maps.google.com is not loading properly, screen flickers when zooming
https://bugs.webkit.org/show_bug.cgi?id=208331
<rdar://problem/59790757>
Reviewed by Antoine Quint.
Source/WebCore:
When using ANGLE, we don't need the GL_ANGLE_depth_texture extension.
We were mistakenly checking for it and deciding to not allow
combined depth+stencil framebuffer attachments.
Test: webgl/1.0.3/conformance/renderbuffers/framebuffer-object-attachment.html
(now passes on iOS)
- html/canvas/WebGLRenderingContextBase.cpp: (WebCore::WebGLRenderingContextBase::setupFlags):
LayoutTests:
- platform/ios/TestExpectations: remove failing expectation for: webgl/1.0.3/conformance/renderbuffers/framebuffer-object-attachment.html
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@257716 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 9:00 PM Changeset in webkit [257823] by
-
- 2 edits in branches/safari-610.1.6-branch/Source/WebKitLegacy/win
Cherry-pick r257684. rdar://problem/60019893
Fix the Windows build after r257645.
- WebView.cpp: (WebView::setAcceleratedCompositing):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@257684 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 8:57 PM Changeset in webkit [257822] by
-
- 1 edit in trunk/LayoutTests/ChangeLog
Fix a typo in the previous commit.
- 8:48 PM Changeset in webkit [257821] by
-
- 2 edits in trunk/LayoutTests
REGRESSION(iOS): editing/selection/ios/set-selection-by-tapping-after-changing-focused-element-bounds.html is always timing out
https://bugs.webkit.org/show_bug.cgi?id=208556
Reviewed by Wenson Hsieh.
Wait for the dobule tap delay between the initial tap and the second tap on the editable region
so that the second tap would result in a selection change instead of both taps to be recognized
as a single dobule tap.
- editing/selection/ios/set-selection-by-tapping-after-changing-focused-element-bounds.html:
- 7:49 PM Changeset in webkit [257820] by
-
- 5 edits in trunk/Source/WebCore
Path::m_path should be a RetainPtr<CGMutablePathRef> on platforms that use CoreGraphics
https://bugs.webkit.org/show_bug.cgi?id=208492
Reviewed by Simon Fraser and Said Abou-Hallawa.
Make m_path a RetainPtr<CGMutablePathRef> on platforms that use CoreGraphics. This allows us to remove all the
manual retaining and releasing on m_path that currently resides in PathCG.cpp. See below for more details.
There should be no change in behavior.
- platform/graphics/Path.h:
- platform/graphics/ca/cocoa/PlatformCALayerCocoa.mm:
Add
adoptCFwhen constructing the WebCore::Path from the newly created CGMutablePathRef.
(WebCore::PlatformCALayerCocoa::shapePath const):
- platform/graphics/cg/PathCG.cpp:
(WebCore::Path::Path):
Instead of taking a RetainPtr<CGMutablePathRef> and leaking the pointer, change this to take an rvalue reference
andWTFMoveit directly into m_path.
(WebCore::Path::ensurePlatformPath):
(WebCore::Path::contains const):
(WebCore::Path::transform):
(WebCore::Path::boundingRect const):
(WebCore::Path::fastBoundingRect const):
(WebCore::Path::addPath):
(WebCore::Path::clear):
(WebCore::Path::isEmpty const):
(WebCore::Path::currentPoint const):
(WebCore::Path::apply const):
Change
m_pathtom_path.get()and addadoptCFs, as needed. Remove explicit calls to CFRelease and
CFRetain.
(WebCore::Path::~Path): Deleted.
Just use the default destructor, now that there's no longer a need to explicitly call CFRelease on m_path.
- platform/graphics/cocoa/FontCocoa.mm:
(WebCore::Font::platformPathForGlyph const):
Since the Path constructor now takes
RetainPtr<CGMutablePathRef>&&, use move semantics when creating the new
WebCore::Path from the RetainPtr.
- 6:35 PM Changeset in webkit [257819] by
-
- 3 edits in trunk/Source/WebKit
Refine Swift API for WKWebView JavaScript methods
https://bugs.webkit.org/show_bug.cgi?id=208483
Patch by James Savage <James Savage> on 2020-03-03
Reviewed by Sam Weinig.
Refine these interfaces for Swift and to align with our desired API.
- UIProcess/API/Cocoa/WKContentWorld.h: This doesn't need to be refined
for Swift, we can just rename it here.
- UIProcess/API/Cocoa/WKWebView.h: This does need refinement.
- 6:34 PM Changeset in webkit [257818] by
-
- 13 edits in trunk
Add response to _WKResourceLoadDelegate didCompleteWithError callback
https://bugs.webkit.org/show_bug.cgi?id=208553
Reviewed by Simon Fraser.
Source/WebKit:
New functionality verified by API test.
- NetworkProcess/NetworkResourceLoader.cpp:
(WebKit::NetworkResourceLoader::didFinishLoading):
(WebKit::NetworkResourceLoader::didFailLoading):
- UIProcess/API/APIResourceLoadClient.h:
- UIProcess/API/Cocoa/_WKResourceLoadDelegate.h:
- UIProcess/Cocoa/ResourceLoadDelegate.h:
- UIProcess/Cocoa/ResourceLoadDelegate.mm:
(WebKit::ResourceLoadDelegate::setDelegate):
(WebKit::ResourceLoadDelegate::ResourceLoadClient::didCompleteWithError const):
- UIProcess/Network/NetworkProcessProxy.cpp:
(WebKit::NetworkProcessProxy::resourceLoadDidCompleteWithError):
- UIProcess/Network/NetworkProcessProxy.h:
- UIProcess/Network/NetworkProcessProxy.messages.in:
- UIProcess/WebPageProxy.cpp:
- UIProcess/WebPageProxy.h:
Tools:
- TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadDelegate.mm:
(-[TestResourceLoadDelegate webView:resourceLoad:didCompleteWithError:response:]):
(TEST):
(-[TestResourceLoadDelegate webView:resourceLoad:didCompleteWithError:]): Deleted.
- 6:28 PM Changeset in webkit [257817] by
-
- 2 edits in trunk/Tools
API Test [Mojave+ WK2 Debug ] TestWebKitAPI.WKAttachmentTestsMac.InsertDroppedFilePromisesAsAttachments is a flaky crash.
https://bugs.webkit.org/show_bug.cgi?id=198795
Reviewed by Chris Dumez.
This test appears to no longer be flaky.
Let's re-enable it.
- TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
(TestWebKitAPI::TEST):
- 5:55 PM Changeset in webkit [257816] by
-
- 11 edits in trunk
Requests sent to _WKResourceLoadDelegate should include HTTPBody
https://bugs.webkit.org/show_bug.cgi?id=208550
Reviewed by Tim Hatcher.
Source/WebCore:
Covered by API tests.
- platform/network/FormData.h:
Expose lengthInBytes to be used in a check capping the size of included body data.
This will prevent exteremely large HTTP bodies from being serialized.
Source/WebKit:
- NetworkProcess/NetworkResourceLoader.cpp:
(WebKit::NetworkResourceLoader::startNetworkLoad):
- UIProcess/Cocoa/ResourceLoadDelegate.mm:
(WebKit::ResourceLoadDelegate::ResourceLoadClient::didSendRequest const):
- UIProcess/Network/NetworkProcessProxy.cpp:
(WebKit::NetworkProcessProxy::resourceLoadDidSendRequest):
- UIProcess/Network/NetworkProcessProxy.h:
- UIProcess/Network/NetworkProcessProxy.messages.in:
Tools:
- TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadDelegate.mm:
(TEST):
- TestWebKitAPI/cocoa/HTTPServer.mm:
(TestWebKitAPI::HTTPServer::respondToRequests):
HTTPServer now looks for Content-Length in its request.
If it finds this header, that means that the HTTP body is going to be received in another read, then the response should be sent after receiving that.
- 4:50 PM Changeset in webkit [257815] by
-
- 2 edits in trunk/LayoutTests
[ iOS ] http/tests/navigation/process-swap-on-client-side-redirect-private.html is flaky timing out
https://bugs.webkit.org/show_bug.cgi?id=208547
Unreviewed test gardening
- platform/ios-wk2/TestExpectations:
- 4:30 PM Changeset in webkit [257814] by
-
- 2 edits in trunk/LayoutTests
[ iOS ] fast/hidpi/filters-and-image-buffer-resolution.html is flaky failing
https://bugs.webkit.org/show_bug.cgi?id=208543
Unreviewed test gardening
- platform/ios-wk2/TestExpectations:
- 4:30 PM Changeset in webkit [257813] by
-
- 3 edits in trunk
[Curl] Add TLS debugging feature to log encryption keys
https://bugs.webkit.org/show_bug.cgi?id=208192
<rdar://problem/59900616>
Patch by Fujii Hironori <fujii.hironori@gmail.com> on 2020-03-03
Reviewed by Don Olmstead.
- Source/cmake/OptionsPlayStation.cmake:
- Source/cmake/OptionsWin.cmake:
Changed the default ENABLE_TLS_DEBUG to OFF.
- 4:18 PM Changeset in webkit [257812] by
-
- 2 edits in trunk/Source/JavaScriptCore
Refactor FixedVMPoolExecutableAllocator to not have member functions which are really just helper functions
https://bugs.webkit.org/show_bug.cgi?id=208537
Reviewed by Mark Lam.
There were a few member functions in FixedVMPoolExecutableAllocator that were
essentially helper functions. I've factored them out, and made FixedVMPoolExecutableAllocator
call them directly. This refactoring is needed when I implement the 1GB
executable pool on arm64 since the implementation of that will create split
implementations of something like FixedVMPoolExecutableAllocator.
- jit/ExecutableAllocator.cpp:
(JSC::jitWriteThunkGenerator):
(JSC::genericWriteToJITRegion):
(JSC::initializeSeparatedWXHeaps):
(JSC::initializeJITPageReservation):
(JSC::ExecutableAllocator::isValid const):
(JSC::ExecutableAllocator::underMemoryPressure):
(JSC::ExecutableAllocator::memoryPressureMultiplier):
(JSC::ExecutableAllocator::allocate):
(JSC::ExecutableAllocator::isValidExecutableMemory):
(JSC::ExecutableAllocator::getLock const):
(JSC::ExecutableAllocator::committedByteCount):
(JSC::ExecutableAllocator::dumpProfile):
(JSC::startOfFixedExecutableMemoryPoolImpl):
(JSC::endOfFixedExecutableMemoryPoolImpl):
(JSC::isJITPC):
- 4:06 PM Changeset in webkit [257811] by
-
- 6 edits in trunk
[Internals] Introduce Internals::updateLayoutAndStyleRecursively
https://bugs.webkit.org/show_bug.cgi?id=208536
<rdar://problem/60012372>
Reviewed by Simon Fraser.
Source/WebCore:
It's been a common practice to call document.body.offsetHeight/Width to force style update and layout.
However in certain cases (see Hyatt's optimization on lazy offsetHeight/Width computation in Document::updateLayoutIfDimensionsOutOfDate)
this call can leave the tree partially dirty.
This behavior leads to flakiness, especially when the test checks against Internals::layoutCount.
- testing/Internals.cpp:
(WebCore::Internals::updateLayoutAndStyleRecursively):
- testing/Internals.h:
- testing/Internals.idl:
LayoutTests:
- fast/images/animated-gif-no-layout.html:
- 3:54 PM Changeset in webkit [257810] by
-
- 2 edits in trunk/Source/WebInspectorUI
Web Inspector: the background of the navigation items in the tab bar doesn't match when unfocusing the window
https://bugs.webkit.org/show_bug.cgi?id=208538
Reviewed by Timothy Hatcher.
- UserInterface/Views/TabBar.css:
(body[dir=ltr]:not(.docked) .tab-bar > .tabs > .item:nth-child(n + 3 of :not(.hidden)), body[dir=ltr]:not(.docked) .tab-bar > .tabs:not(.hide-border-start) > .item:nth-child(2 of :not(.hidden)), body[dir=ltr]:not(.docked) .tab-bar > .tabs.dragging-tab > .item.selected, body[dir=rtl]:not(.docked) .tab-bar > .tabs:not(.hide-border-end) > .item:nth-last-child(1 of :not(.hidden))): Added.
(body[dir=ltr]:not(.docked) .tab-bar > .tabs:not(.hide-border-end) > .item:nth-last-child(1 of :not(.hidden)), body[dir=rtl]:not(.docked) .tab-bar > .tabs > .item:nth-child(n + 3 of :not(.hidden)), body[dir=rtl]:not(.docked) .tab-bar > .tabs:not(.hide-border-start) > .item:nth-child(2 of :not(.hidden)), body[dir=rtl]:not(.docked) .tab-bar > .tabs.dragging-tab > .item.selected): Added.
(body[dir=ltr]:not(.docked) .tab-bar > .tabs > .item:not(:first-child), body[dir=ltr]:not(.docked) .tab-bar > .tabs:not(.hide-border-start) > .item:first-child, body[dir=ltr]:not(.docked) .tab-bar > .tabs.dragging-tab > .item.selected, body[dir=rtl]:not(.docked) .tab-bar > .tabs:not(.hide-border-end) > .item:last-child): Deleted.
(body[dir=ltr]:not(.docked) .tab-bar > .tabs:not(.hide-border-end) > .item:last-child, body[dir=rtl]:not(.docked) .tab-bar > .tabs > .item:not(:first-child), body[dir=rtl]:not(.docked) .tab-bar > .tabs:not(.hide-border-start) > .item:first-child, body[dir=rtl]:not(.docked) .tab-bar > .tabs.dragging-tab > .item.selected): Deleted.
Usenth-childandnth-last-childinstead of:first-childand:last-childnow that
there are.flexible-spaceelements alongside tab bar items.
(@media (prefers-color-scheme: dark) .tab-bar):
(@media (prefers-color-scheme: dark) body:not(.docked) .tab-bar): Added.
(@media (prefers-color-scheme: dark) body.docked .tab-bar): Added.
(@media (prefers-color-scheme: dark) body:not(.docked):matches(.window-inactive, .window-docked-inactive) .tab-bar): Added.
(@media (prefers-color-scheme: dark) body:matches(.window-inactive, .window-docked-inactive) .tab-bar): Deleted.
Ensure completely separate styles forbackground-colorandbackground-imagewhen.docked
vs when:not(.docked)so that they don't "bleed" into eachother.
(body:not(.docked):matches(.window-inactive, .window-docked-inactive) .tab-bar):
(body.docked:matches(.window-inactive, .window-docked-inactive) .tab-bar):
(.tab-bar > .navigation-bar > .item.group > .item):
(.tab-bar > .navigation-bar > .item.group > .item:nth-child(1 of :not(.hidden))):
(.tab-bar > .navigation-bar > .item.group > .item:nth-last-child(1 of :not(.hidden))):
(body:not(.docked):matches(.window-inactive, .window-docked-inactive) .tab-bar > .tabs > .item):
(body:not(.docked):matches(.window-inactive, .window-docked-inactive) .tab-bar > .tabs > .item:not(.disabled).selected):
(.tab-bar > .tabs.static-layout > :matches(.flexible-space, .item)):
(.tab-bar > .tabs.animating.inserting-tab > .item.being-inserted):
(body:not(.docked):matches(.window-inactive, .window-docked-inactive) .tab-bar > .tabs.dragging-tab > .item:not(.disabled).selected, body:not(.docked):matches(.window-inactive, .window-docked-inactive) .tab-bar > .tabs.static-layout:not(.animating.inserting-tab):not(.dragging-tab) > .item:nth-last-child(1 of :not(.pinned)), body:not(.docked):matches(.window-inactive, .window-docked-inactive) .tab-bar > .tabs.animating.closing-tab > .item:not(.disabled).selected):
(@media (prefers-color-scheme: dark) body:not(.docked) .tab-bar > .tabs > .item:not(.disabled).selected):
(@media (prefers-color-scheme: dark) body:not(.docked) .tab-bar > .tabs:not(.animating) > .item:not(.selected, .disabled):hover):
(@media (prefers-color-scheme: dark) body:not(.docked):matches(.window-inactive, .window-docked-inactive) .tab-bar > .tabs > .item):
(@media (prefers-color-scheme: dark) body:not(.docked):matches(.window-inactive, .window-docked-inactive) .tab-bar > .tabs > .item:not(.disabled).selected):
Drive-by: remove as many!importantas possible to make future modification simpler.
- 3:47 PM Changeset in webkit [257809] by
-
- 2 edits2 adds in trunk/Source/JavaScriptCore
Introduce JSRemoteInspectorServerStart API for socket-based RWI.
https://bugs.webkit.org/show_bug.cgi?id=208349
Reviewed by Joseph Pecoraro.
- API/JSRemoteInspectorServer.cpp: Added.
(JSRemoteInspectorServerStart):
- API/JSRemoteInspectorServer.h: Added.
- CMakeLists.txt:
- 3:33 PM Changeset in webkit [257808] by
-
- 3 edits in trunk/Source/WebKit
Unreviewed. Fix WinCairo build following r257801.
- UIProcess/Inspector/win/RemoteWebInspectorProxyWin.cpp:
(WebKit::RemoteWebInspectorProxy::platformSetForcedAppearance):
- UIProcess/Inspector/win/WebInspectorProxyWin.cpp:
(WebKit::WebInspectorProxy::platformSetForcedAppearance):
- 3:10 PM Changeset in webkit [257807] by
-
- 1 copy in tags/Safari-610.1.5.2
Tag Safari-610.1.5.2.
- 3:06 PM Changeset in webkit [257806] by
-
- 8 edits in trunk
Expose originalURL and originalHTTPMethod on _WKResourceLoadInfo
https://bugs.webkit.org/show_bug.cgi?id=208522
Reviewed by Brian Weinstein.
Source/WebKit:
Covered by API tests.
- NetworkProcess/NetworkResourceLoader.cpp:
(WebKit::NetworkResourceLoader::resourceLoadInfo):
- Shared/ResourceLoadInfo.h:
(WebKit::ResourceLoadInfo::encode const):
(WebKit::ResourceLoadInfo::decode):
- UIProcess/API/APIResourceLoadInfo.h:
- UIProcess/API/Cocoa/_WKResourceLoadInfo.h:
- UIProcess/API/Cocoa/_WKResourceLoadInfo.mm:
(-[_WKResourceLoadInfo originalURL]):
(-[_WKResourceLoadInfo initWithCoder:]):
(-[_WKResourceLoadInfo encodeWithCoder:]):
Tools:
- TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadDelegate.mm:
(TEST):
- 3:02 PM Changeset in webkit [257805] by
-
- 2 edits in trunk/Source/WebCore
[CG] Change the UTI of the "WebP" image to be "com.google.webp"
https://bugs.webkit.org/show_bug.cgi?id=208038
Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2020-03-03
Reviewed by Simon Fraser.
This is to conform with CGImageSourceGetType().
- platform/graphics/cg/UTIRegistry.cpp:
(WebCore::defaultSupportedImageTypes):
Make sure CG supports the suggested UTI before considering it is actually
supported.
- 2:49 PM Changeset in webkit [257804] by
-
- 8 edits in branches/safari-610.1.5-branch/Source
Versioning.
- 2:20 PM Changeset in webkit [257803] by
-
- 2 edits in trunk/Tools
commit-queue should update working directory and reapply patch just before commiting
https://bugs.webkit.org/show_bug.cgi?id=208521
Reviewed by Jonathan Bedard.
- BuildSlaveSupport/ews-build/factories.py:
- 2:19 PM Changeset in webkit [257802] by
-
- 2 edits in trunk/Source/WebKitLegacy/win
[Win] API header file has USE macro
https://bugs.webkit.org/show_bug.cgi?id=208534
Reviewed by Brent Fulgham.
USE macros should not be used in API header files.
- WebKitCOMAPI.h:
- 2:11 PM Changeset in webkit [257801] by
-
- 29 edits in trunk/Source
Web Inspector: setting the frontend appearance doesn't update the window when undocked
https://bugs.webkit.org/show_bug.cgi?id=208503
Reviewed by Timothy Hatcher.
Notify the UIProcess when setting the forced appearance so platforms that support dark mode
are able to run native code to adjust the appearance of the undocked window.
Source/WebCore:
- inspector/InspectorFrontendHost.cpp:
(WebCore::InspectorFrontendHost::setForcedAppearance):
Call through to theInspectorFrontendClientto change the forced appearance.
- inspector/InspectorFrontendClient.h:
(WebCore::InspectorFrontendHost::Appearance): Added.
Add anenum class Appearanceso that multiple copies of the same string comparison logic
isn't needed.
- testing/Internals.cpp:
(WebCore::InspectorStubFrontend::setForcedAppearance): Added.
Source/WebKit:
- WebProcess/Inspector/WebInspectorUI.h:
- WebProcess/Inspector/WebInspectorUI.cpp:
(WebKit::WebInspectorUI::setForcedAppearance): Added.
- UIProcess/Inspector/WebInspectorProxy.messages.in:
- UIProcess/Inspector/WebInspectorProxy.h:
- UIProcess/Inspector/WebInspectorProxy.cpp:
(WebKit::WebInspectorProxy::setForcedAppearance): Added.
(WebKit::WebInspectorProxy::platformSetForcedAppearance): Added.
- UIProcess/Inspector/gtk/WebInspectorProxyGtk.cpp:
(WebKit::WebInspectorProxy::platformSetForcedAppearance): Added.
- UIProcess/Inspector/mac/WebInspectorProxyMac.mm:
(WebKit::WebInspectorProxy::platformCreateFrontendWindow): Added.
(WebKit::WebInspectorProxy::platformSetForcedAppearance): Added.
(WebKit::WebInspectorProxy::applyForcedAppearance): Added.
- UIProcess/Inspector/win/WebInspectorProxyWin.cpp:
(WebKit::WebInspectorProxy::platformSetForcedAppearance): Added.
- WebProcess/Inspector/RemoteWebInspectorUI.h:
- WebProcess/Inspector/RemoteWebInspectorUI.cpp:
(WebKit::RemoteWebInspectorUI::setForcedAppearance): Added.
- UIProcess/Inspector/RemoteWebInspectorProxy.messages.in:
- UIProcess/Inspector/RemoteWebInspectorProxy.h:
- UIProcess/Inspector/RemoteWebInspectorProxy.cpp:
(WebKit::RemoteWebInspectorProxy::setForcedAppearance): Added.
(WebKit::RemoteWebInspectorProxy::platformSetForcedAppearance): Added.
- UIProcess/Inspector/gtk/RemoteWebInspectorProxyGtk.cpp:
(WebKit::RemoteWebInspectorProxy::platformSetForcedAppearance): Added.
- UIProcess/Inspector/mac/RemoteWebInspectorProxyMac.mm:
(WebKit::RemoteWebInspectorProxy::platformSetForcedAppearance): Added.
- UIProcess/Inspector/win/RemoteWebInspectorProxyWin.cpp:
(WebKit::RemoteWebInspectorProxy::platformSetForcedAppearance): Added.
Source/WebKitLegacy/ios:
- WebCoreSupport/WebInspectorClientIOS.mm:
(WebInspectorFrontendClient::setForcedAppearance): Added.
Source/WebKitLegacy/mac:
- WebCoreSupport/WebInspectorClient.h:
- WebCoreSupport/WebInspectorClient.mm:
(WebInspectorFrontendClient::setForcedAppearance): Added.
Source/WebKitLegacy/win:
- WebCoreSupport/WebInspectorClient.h:
- WebCoreSupport/WebInspectorClient.cpp:
(WebInspectorFrontendClient::setForcedAppearance): Added.
- 1:42 PM Changeset in webkit [257800] by
-
- 2 edits in trunk/Source/WTF
Build Fix
https://bugs.webkit.org/show_bug.cgi?id=208530
Reviewed by Wenson Hsieh.
- wtf/PlatformHave.h:
- 1:24 PM Changeset in webkit [257799] by
-
- 53 edits in trunk
[WebGL2] Implement texImage2D(TexImageSource) for RGBA/RGBA/UNSIGNED_BYTE ImageElements
https://bugs.webkit.org/show_bug.cgi?id=208486
Reviewed by Dean Jackson.
Source/WebCore:
Partial implementation of WebGL 2 texImage2D(TexImageSource).
Covered by webgl/2.0.0/conformance2/textures/svg_image directory of tests, especially for RGBA/RGBA/UNSIGNED_BYTE.
- html/canvas/WebGL2RenderingContext.cpp:
(WebCore::WebGL2RenderingContext::texImage2D): Enable.
- html/canvas/WebGLRenderingContextBase.cpp:
(WebCore::isRGBFormat):
(WebCore::WebGLRenderingContextBase::texImageSource2D): Handle both WebGL and WebGL 2 versions of TexImage2D(TexImageSource).
(WebCore::WebGLRenderingContextBase::texImage2DImpl):
(WebCore::WebGLRenderingContextBase::texSubImage2D):
(WebCore::WebGLRenderingContextBase::texSubImage2DBase): Disable WebGL1-only validation check.
(WebCore::WebGLRenderingContextBase::texImage2D):
- html/canvas/WebGLRenderingContextBase.h:
- platform/graphics/opengl/GraphicsContextGLOpenGL.cpp: Prevent crashing for HALF_FLOAT textures.
LayoutTests:
Partial implementation of WebGL 2 texImage2D(TexImageSource). Update affected results, mostly partial progressions.
- TestExpectations: Unskip svg_image texture tests that test the ImageElement pathway.
- webgl/2.0.0/conformance2/textures/canvas_sub_rectangle/tex-2d-r11f_g11f_b10f-rgb-float-expected.txt:
- webgl/2.0.0/conformance2/textures/canvas_sub_rectangle/tex-2d-r11f_g11f_b10f-rgb-half_float-expected.txt:
- webgl/2.0.0/conformance2/textures/canvas_sub_rectangle/tex-2d-r11f_g11f_b10f-rgb-unsigned_int_10f_11f_11f_rev-expected.txt:
- webgl/2.0.0/conformance2/textures/canvas_sub_rectangle/tex-2d-r16f-red-float-expected.txt:
- webgl/2.0.0/conformance2/textures/canvas_sub_rectangle/tex-2d-r16f-red-half_float-expected.txt:
- webgl/2.0.0/conformance2/textures/canvas_sub_rectangle/tex-2d-r32f-red-float-expected.txt:
- webgl/2.0.0/conformance2/textures/canvas_sub_rectangle/tex-2d-r8-red-unsigned_byte-expected.txt:
- webgl/2.0.0/conformance2/textures/canvas_sub_rectangle/tex-2d-r8ui-red_integer-unsigned_byte-expected.txt:
- webgl/2.0.0/conformance2/textures/canvas_sub_rectangle/tex-2d-rg16f-rg-float-expected.txt:
- webgl/2.0.0/conformance2/textures/canvas_sub_rectangle/tex-2d-rg16f-rg-half_float-expected.txt:
- webgl/2.0.0/conformance2/textures/canvas_sub_rectangle/tex-2d-rg32f-rg-float-expected.txt:
- webgl/2.0.0/conformance2/textures/canvas_sub_rectangle/tex-2d-rg8-rg-unsigned_byte-expected.txt:
- webgl/2.0.0/conformance2/textures/canvas_sub_rectangle/tex-2d-rg8ui-rg_integer-unsigned_byte-expected.txt:
- webgl/2.0.0/conformance2/textures/canvas_sub_rectangle/tex-2d-rgb16f-rgb-float-expected.txt:
- webgl/2.0.0/conformance2/textures/canvas_sub_rectangle/tex-2d-rgb16f-rgb-half_float-expected.txt:
- webgl/2.0.0/conformance2/textures/canvas_sub_rectangle/tex-2d-rgb32f-rgb-float-expected.txt:
- webgl/2.0.0/conformance2/textures/canvas_sub_rectangle/tex-2d-rgb565-rgb-unsigned_byte-expected.txt:
- webgl/2.0.0/conformance2/textures/canvas_sub_rectangle/tex-2d-rgb565-rgb-unsigned_short_5_6_5-expected.txt:
- webgl/2.0.0/conformance2/textures/canvas_sub_rectangle/tex-2d-rgb5_a1-rgba-unsigned_byte-expected.txt:
- webgl/2.0.0/conformance2/textures/canvas_sub_rectangle/tex-2d-rgb5_a1-rgba-unsigned_short_5_5_5_1-expected.txt:
- webgl/2.0.0/conformance2/textures/canvas_sub_rectangle/tex-2d-rgb8-rgb-unsigned_byte-expected.txt:
- webgl/2.0.0/conformance2/textures/canvas_sub_rectangle/tex-2d-rgb8ui-rgb_integer-unsigned_byte-expected.txt:
- webgl/2.0.0/conformance2/textures/canvas_sub_rectangle/tex-2d-rgb9_e5-rgb-float-expected.txt:
- webgl/2.0.0/conformance2/textures/canvas_sub_rectangle/tex-2d-rgb9_e5-rgb-half_float-expected.txt:
- webgl/2.0.0/conformance2/textures/canvas_sub_rectangle/tex-2d-rgba16f-rgba-float-expected.txt:
- webgl/2.0.0/conformance2/textures/canvas_sub_rectangle/tex-2d-rgba16f-rgba-half_float-expected.txt:
- webgl/2.0.0/conformance2/textures/canvas_sub_rectangle/tex-2d-rgba32f-rgba-float-expected.txt:
- webgl/2.0.0/conformance2/textures/canvas_sub_rectangle/tex-2d-rgba4-rgba-unsigned_byte-expected.txt:
- webgl/2.0.0/conformance2/textures/canvas_sub_rectangle/tex-2d-rgba4-rgba-unsigned_short_4_4_4_4-expected.txt:
- webgl/2.0.0/conformance2/textures/canvas_sub_rectangle/tex-2d-rgba8-rgba-unsigned_byte-expected.txt:
- webgl/2.0.0/conformance2/textures/canvas_sub_rectangle/tex-2d-rgba8ui-rgba_integer-unsigned_byte-expected.txt:
- webgl/2.0.0/conformance2/textures/canvas_sub_rectangle/tex-2d-srgb8-rgb-unsigned_byte-expected.txt:
- webgl/2.0.0/conformance2/textures/canvas_sub_rectangle/tex-2d-srgb8_alpha8-rgba-unsigned_byte-expected.txt:
- webgl/2.0.0/conformance2/textures/image_bitmap_from_canvas/tex-2d-r11f_g11f_b10f-rgb-unsigned_int_10f_11f_11f_rev-expected.txt:
- webgl/2.0.0/conformance2/textures/image_bitmap_from_canvas/tex-2d-r16f-red-float-expected.txt:
- webgl/2.0.0/conformance2/textures/image_bitmap_from_canvas/tex-2d-r16f-red-half_float-expected.txt:
- webgl/2.0.0/conformance2/textures/image_bitmap_from_canvas/tex-2d-r32f-red-float-expected.txt:
- webgl/2.0.0/conformance2/textures/image_bitmap_from_canvas/tex-2d-r8-red-unsigned_byte-expected.txt:
- webgl/2.0.0/conformance2/textures/image_bitmap_from_canvas/tex-2d-r8ui-red_integer-unsigned_byte-expected.txt:
- webgl/2.0.0/conformance2/textures/image_bitmap_from_canvas/tex-2d-rg16f-rg-float-expected.txt:
- webgl/2.0.0/conformance2/textures/image_bitmap_from_canvas/tex-2d-rg16f-rg-half_float-expected.txt:
- webgl/2.0.0/conformance2/textures/image_bitmap_from_canvas/tex-2d-rg32f-rg-float-expected.txt:
- webgl/2.0.0/conformance2/textures/image_bitmap_from_canvas/tex-2d-rg8-rg-unsigned_byte-expected.txt:
- webgl/2.0.0/conformance2/textures/image_bitmap_from_canvas/tex-2d-rg8ui-rg_integer-unsigned_byte-expected.txt:
- webgl/2.0.0/conformance2/textures/image_bitmap_from_canvas/tex-2d-rgb8ui-rgb_integer-unsigned_byte-expected.txt:
- webgl/2.0.0/conformance2/textures/image_bitmap_from_canvas/tex-2d-rgba8ui-rgba_integer-unsigned_byte-expected.txt:
- 1:19 PM Changeset in webkit [257798] by
-
- 2 edits in trunk/LayoutTests
[ macOS ] svg/custom/textPath-change-id-pattern.svg is flakey failing
https://bugs.webkit.org/show_bug.cgi?id=208532
Unreviewed test gardening.
- platform/mac-wk1/TestExpectations:
- 1:12 PM Changeset in webkit [257797] by
-
- 2 edits in trunk/Source/WebKit
[iOS] Add entitlement for message filtering
https://bugs.webkit.org/show_bug.cgi?id=208526
<rdar://problem/58885485>
Reviewed by Brent Fulgham.
On iOS, an entitlement is needed to enable message filtering.
- Scripts/process-entitlements.sh:
- 1:08 PM Changeset in webkit [257796] by
-
- 5 edits in trunk/Tools
Add Unittest to commits_for_upload() and fix multiple unittests for several test suites.
https://bugs.webkit.org/show_bug.cgi?id=208485
Reviewed by Jonathan Bedard.
- Scripts/webkitpy/common/checkout/scm/stub_repository.py:
(StubRepository.init): Fixing the constructor to call upon the parent class as we were not doing this before. It also means
that we don't have to recreate the variables that are already created.
- Scripts/webkitpy/common/checkout/scm/stub_repository_unittest.py: High level changed the imports to better reflect what we are using
from each module, rather than making extra imports that we don't need.
(StubRepositoryTest.mock_host_for_stub_repository): Since we are calling both an executive and a filesystem mock for most of the
tests. it makes more sense to create a mock host with the files needed, than it does to instantiate each of these as separate objects
and not part of the host.
(StubRepositoryTest.test_in_working_directory): Changed the filesystem call to the host call.
(StubRepositoryTest.test_native_revision): Changed the filesystem call to the host call.
(StubRepositoryTest.test_native_branch): Changed the filesystem call to the host call.
(StubRepositoryTest.test_svn_revision): Changed the filesystem call to the host call.
(StubRepositoryTest.test_find_checkout_root): Changed the filesystem call to the host call.
(StubRepositoryTest.test_find_checkout_root_failure): Changed the filesystem call to the host call.
(StubRepositoryTest.test_find_parent_path_matching_callback_condition_with_file_system): Changed the filesystem call to the host call.
- Scripts/webkitpy/layout_tests/models/test_run_results_unittest.py:
(SummarizedResultsTest.test_svn_revision_exists): Changed the name to original test to better reflect that it was just looking to see
if we were geting any value at all
(SummarizedResultsTest.test_svn_revision): Added a test to make sure that the revision we are getting is what we expect to get and make
sure we aren't gabking the wrong key:value pair
- Scripts/webkitpy/port/base_unittest.py: Changed from MockSystemHost to MockHost as we want the extras that
come with the MockHosts and MockHost inherits from MockSystemHost.
(PortTest.make_port): Changed the port to call MockHost that will creat the required stub_repository files.
(test_commits_for_upload): Added amissing test for commits_for_upload as this has been an issue when trying to make changes
to the various upload steps.
- 12:24 PM Changeset in webkit [257795] by
-
- 3 edits in trunk/Source/JavaScriptCore
[WinCairo][PlayStation] Add interface to get listening port of RemoteInspectorServer
https://bugs.webkit.org/show_bug.cgi?id=208391
Reviewed by Don Olmstead.
When passing zero as a port argument, system will pick an available port for it.
Without this method, client cannot get which port is listening.
- inspector/remote/socket/RemoteInspectorServer.cpp:
(Inspector::RemoteInspectorServer::start):
(Inspector::RemoteInspectorServer::getPort):
- inspector/remote/socket/RemoteInspectorServer.h:
- 12:08 PM Changeset in webkit [257794] by
-
- 4 edits in trunk/Tools
[ews] Add build step to find list of modified changelogs
https://bugs.webkit.org/show_bug.cgi?id=208514
Reviewed by Jonathan Bedard.
- BuildSlaveSupport/ews-build/factories.py:
- BuildSlaveSupport/ews-build/steps.py:
(FindModifiedChangeLogs): Build step to find modified ChangeLogs.
(FindModifiedChangeLogs.start): Initialize log observer.
(FindModifiedChangeLogs.getResultSummary): Set custom failure message.
(FindModifiedChangeLogs.evaluateCommand):
(FindModifiedChangeLogs.is_path_to_changelog): Check if the file is a ChangeLog.
(FindModifiedChangeLogs._status_regexp): Regex to match files from git output.
(FindModifiedChangeLogs.extract_changelogs): Method to get list of ChangeLogs from git output.
- BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
- 11:52 AM Changeset in webkit [257793] by
-
- 2 edits in trunk/LayoutTests
[ macOS ] legacy-animation-engine/animations/play-state-start-paused.html is flaky failing
https://bugs.webkit.org/show_bug.cgi?id=208527
Unreviewed test gardening.
- platform/mac-wk1/TestExpectations:
- 11:44 AM Changeset in webkit [257792] by
-
- 2 edits in trunk/Tools
[iOS EWS] TestWebKitAPI.WKWebsiteDataStore.RemoveAndFetchData is failing
https://bugs.webkit.org/show_bug.cgi?id=208451
Unreviewed test gardening.
- TestWebKitAPI/Tests/WebKitCocoa/WKWebsiteDatastore.mm: Disable the test for iOS since it is slowing down EWS.
- 11:41 AM Changeset in webkit [257791] by
-
- 1 edit142 deletes in trunk/Source/WebInspectorUI
Removed old raster icons for object types and resources
https://bugs.webkit.org/show_bug.cgi?id=208458
Reviewed by Devin Rousso.
- UserInterface/Images/ApplicationCache.png: Removed.
- UserInterface/Images/ApplicationCache@2x.png: Removed.
- UserInterface/Images/ApplicationCacheManifest.png: Removed.
- UserInterface/Images/ApplicationCacheManifest@2x.png: Removed.
- UserInterface/Images/Assertion.svg: Removed.
- UserInterface/Images/AuditTestCase.svg: Removed.
- UserInterface/Images/AuditTestCaseResult.svg: Removed.
- UserInterface/Images/AuditTestGroup.svg: Removed.
- UserInterface/Images/AuditTestGroupResult.svg: Removed.
- UserInterface/Images/CPUInstrument.svg: Removed.
- UserInterface/Images/CallTrees.svg: Removed.
- UserInterface/Images/ClippingCSS.png: Removed.
- UserInterface/Images/ClippingCSS@2x.png: Removed.
- UserInterface/Images/ClippingCSSLarge.png: Removed.
- UserInterface/Images/ClippingCSSLarge@2x.png: Removed.
- UserInterface/Images/ClippingGeneric.png: Removed.
- UserInterface/Images/ClippingGeneric@2x.png: Removed.
- UserInterface/Images/ClippingGenericLarge.png: Removed.
- UserInterface/Images/ClippingGenericLarge@2x.png: Removed.
- UserInterface/Images/ClippingJS.png: Removed.
- UserInterface/Images/ClippingJS@2x.png: Removed.
- UserInterface/Images/ClippingJSLarge.png: Removed.
- UserInterface/Images/ClippingJSLarge@2x.png: Removed.
- UserInterface/Images/Cookie.png: Removed.
- UserInterface/Images/Cookie@2x.png: Removed.
- UserInterface/Images/DOMBreakpointAttributeModified.svg: Removed.
- UserInterface/Images/DOMBreakpointNodeRemoved.svg: Removed.
- UserInterface/Images/DOMBreakpointSubtreeModified.svg: Removed.
- UserInterface/Images/DOMCharacterData.svg: Removed.
- UserInterface/Images/DOMComment.svg: Removed.
- UserInterface/Images/DOMDocument.svg: Removed.
- UserInterface/Images/DOMDocumentType.svg: Removed.
- UserInterface/Images/DOMElement.svg: Removed.
- UserInterface/Images/DOMNode.svg: Removed.
- UserInterface/Images/DOMTextNode.svg: Removed.
- UserInterface/Images/Database.png: Removed.
- UserInterface/Images/Database@2x.png: Removed.
- UserInterface/Images/DatabaseTable.png: Removed.
- UserInterface/Images/DatabaseTable@2x.png: Removed.
- UserInterface/Images/DebuggerStatement.svg: Removed.
- UserInterface/Images/DocumentCSS.png: Removed.
- UserInterface/Images/DocumentCSS@2x.png: Removed.
- UserInterface/Images/DocumentCSSLarge.png: Removed.
- UserInterface/Images/DocumentCSSLarge@2x.png: Removed.
- UserInterface/Images/DocumentFont.png: Removed.
- UserInterface/Images/DocumentFont@2x.png: Removed.
- UserInterface/Images/DocumentFontLarge.png: Removed.
- UserInterface/Images/DocumentFontLarge@2x.png: Removed.
- UserInterface/Images/DocumentGL.png: Removed.
- UserInterface/Images/DocumentGL@2x.png: Removed.
- UserInterface/Images/DocumentGeneric.png: Removed.
- UserInterface/Images/DocumentGeneric@2x.png: Removed.
- UserInterface/Images/DocumentGenericLarge.png: Removed.
- UserInterface/Images/DocumentGenericLarge@2x.png: Removed.
- UserInterface/Images/DocumentImage.png: Removed.
- UserInterface/Images/DocumentImage@2x.png: Removed.
- UserInterface/Images/DocumentImageLarge.png: Removed.
- UserInterface/Images/DocumentImageLarge@2x.png: Removed.
- UserInterface/Images/DocumentJS.png: Removed.
- UserInterface/Images/DocumentJS@2x.png: Removed.
- UserInterface/Images/DocumentJSLarge.png: Removed.
- UserInterface/Images/DocumentJSLarge@2x.png: Removed.
- UserInterface/Images/DocumentMarkup.png: Removed.
- UserInterface/Images/DocumentMarkup@2x.png: Removed.
- UserInterface/Images/DocumentMarkupLarge.png: Removed.
- UserInterface/Images/DocumentMarkupLarge@2x.png: Removed.
- UserInterface/Images/EventBreakpointAnimationFrame.svg: Removed.
- UserInterface/Images/EventBreakpointInterval.svg: Removed.
- UserInterface/Images/EventBreakpointListener.svg: Removed.
- UserInterface/Images/EventBreakpointTimeout.svg: Removed.
- UserInterface/Images/EventListener.svg: Removed.
- UserInterface/Images/Events.svg: Removed.
- UserInterface/Images/Exception.svg: Removed.
- UserInterface/Images/FolderGeneric.png: Removed.
- UserInterface/Images/FolderGeneric@2x.png: Removed.
- UserInterface/Images/Function.svg: Removed.
- UserInterface/Images/HeapAllocationsInstrument.svg: Removed.
- UserInterface/Images/HeapSnapshot.svg: Removed.
- UserInterface/Images/HeapSnapshotDiff.svg: Removed.
- UserInterface/Images/HeapSnapshotInstances.svg: Removed.
- UserInterface/Images/HeapSnapshotObjectGraph.svg: Removed.
- UserInterface/Images/HeapSnapshotSelected.svg: Removed.
- UserInterface/Images/HeapSnapshotSummary.svg: Removed.
- UserInterface/Images/LayoutInstrument.svg: Removed.
- UserInterface/Images/LocalStorage.png: Removed.
- UserInterface/Images/LocalStorage@2x.png: Removed.
- UserInterface/Images/MediaInstrument.svg: Removed.
- UserInterface/Images/MemoryInstrument.svg: Removed.
- UserInterface/Images/Microtask.svg: Removed.
- UserInterface/Images/Native.svg: Removed.
- UserInterface/Images/NetworkInstrument.svg: Removed.
- UserInterface/Images/Object.svg: Removed.
- UserInterface/Images/PausedBreakpoint.svg: Removed.
- UserInterface/Images/Program.svg: Removed.
- UserInterface/Images/PseudoElement.svg: Removed.
- UserInterface/Images/Range.svg: Removed.
- UserInterface/Images/RangeLarge.svg: Removed.
- UserInterface/Images/Reflection.svg: Removed.
- UserInterface/Images/RenderingFrame.svg: Removed.
- UserInterface/Images/RenderingFramesInstrument.svg: Removed.
- UserInterface/Images/Request.svg: Removed.
- UserInterface/Images/Response.svg: Removed.
- UserInterface/Images/ScriptsInstrument.svg: Removed.
- UserInterface/Images/SessionStorage.png: Removed.
- UserInterface/Images/SessionStorage@2x.png: Removed.
- UserInterface/Images/Source.svg: Removed.
- UserInterface/Images/StyleRuleInheritedElement.svg: Removed.
- UserInterface/Images/TailDeletedFunction.svg: Removed.
- UserInterface/Images/Thread.svg: Removed.
- UserInterface/Images/TimelineRecordAPI.svg: Removed.
- UserInterface/Images/TimelineRecordAnimationFrame.svg: Removed.
- UserInterface/Images/TimelineRecordCSSAnimation.svg: Removed.
- UserInterface/Images/TimelineRecordCSSTransition.svg: Removed.
- UserInterface/Images/TimelineRecordComposite.svg: Removed.
- UserInterface/Images/TimelineRecordConsoleProfile.svg: Removed.
- UserInterface/Images/TimelineRecordEvent.svg: Removed.
- UserInterface/Images/TimelineRecordGarbageCollection.svg: Removed.
- UserInterface/Images/TimelineRecordLayout.svg: Removed.
- UserInterface/Images/TimelineRecordMediaElement.svg: Removed.
- UserInterface/Images/TimelineRecordPaint.svg: Removed.
- UserInterface/Images/TimelineRecordProbeSampled.svg: Removed.
- UserInterface/Images/TimelineRecordScriptEvaluated.svg: Removed.
- UserInterface/Images/TimelineRecordStyle.svg: Removed.
- UserInterface/Images/TimelineRecordTimer.svg: Removed.
- UserInterface/Images/TypeBigInt.svg: Removed.
- UserInterface/Images/TypeBoolean.svg: Removed.
- UserInterface/Images/TypeNull.svg: Removed.
- UserInterface/Images/TypeNumber.svg: Removed.
- UserInterface/Images/TypeObject.svg: Removed.
- UserInterface/Images/TypeRegex.svg: Removed.
- UserInterface/Images/TypeString.svg: Removed.
- UserInterface/Images/TypeSymbol.svg: Removed.
- UserInterface/Images/TypeUndefined.svg: Removed.
- UserInterface/Images/URLBreakpoint.svg: Removed.
- UserInterface/Images/WebSocket.png: Removed.
- UserInterface/Images/WebSocket@2x.png: Removed.
- UserInterface/Images/WebSocketLarge.png: Removed.
- UserInterface/Images/WebSocketLarge@2x.png: Removed.
- UserInterface/Images/WorkerScript.png: Removed.
- UserInterface/Images/WorkerScript@2x.png: Removed.
- UserInterface/Images/WorkerScriptLarge.png: Removed.
- UserInterface/Images/WorkerScriptLarge@2x.png: Removed.
- 11:30 AM Changeset in webkit [257790] by
-
- 2 edits in trunk/LayoutTests
[ macOS ] webgl/2.0.0/conformance/extensions/webgl-draw-buffers.html has been timing out ever since it was introduced.
https://bugs.webkit.org/show_bug.cgi?id=208524
Unreviewed test gardening.
- platform/mac-wk1/TestExpectations:
- 11:17 AM Changeset in webkit [257789] by
-
- 3 edits in trunk/Source/WebCore
Address post-commit feedback after r257732
https://bugs.webkit.org/show_bug.cgi?id=208265
Reviewed by Darin Adler.
Remove the private initializeOrCopyPlatformPathIfNeeded() helper,
and move its logic into ensurePlatformPath().
- platform/graphics/Path.h:
- platform/graphics/cg/PathCG.cpp:
(WebCore::Path::ensurePlatformPath):
(WebCore::Path::initializeOrCopyPlatformPathIfNeeded): Deleted.
- 11:16 AM Changeset in webkit [257788] by
-
- 2 edits in trunk/LayoutTests
[ iOS wk2 ] http/tests/security/cookies/third-party-cookie-blocking-redirect.html is flaky timing out.
https://bugs.webkit.org/show_bug.cgi?id=208525
Unreviewed test gardening.
- platform/ios-wk2/TestExpectations:
- 11:10 AM Changeset in webkit [257787] by
-
- 4 edits in branches/safari-610.1.6-branch
Cherry-pick r257694. rdar://problem/59957329
Unreviewed, rolling out r257618.
This allegedly causes Safari to crash when closing a window
(see rdar://problem/59922725).
Reverted changeset:
"UIProcess crash after using _prepareForMoveToWindow, then
deallocating the WKWebView before moving to the window"
https://bugs.webkit.org/show_bug.cgi?id=208365
https://trac.webkit.org/changeset/257618
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@257694 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 11:06 AM Changeset in webkit [257786] by
-
- 1 copy in branches/safari-610.1.6-branch
New branch.
- 10:21 AM Changeset in webkit [257785] by
-
- 29 edits in trunk
Adopt HTTP Alternative Services Storage
https://bugs.webkit.org/show_bug.cgi?id=208387
Patch by Jiten Mehta <jmehta@apple.com> on 2020-03-03
Reviewed by Alex Christensen.
Source/WebCore/PAL:
- pal/spi/cf/CFNetworkSPI.h:
Source/WebKit:
Covered by a new API test which verifies that data is written to the correct directory.
- NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::fetchWebsiteData):
(WebKit::NetworkProcess::deleteWebsiteData):
(WebKit::NetworkProcess::deleteWebsiteDataForOrigins):
(WebKit::NetworkProcess::deleteWebsiteDataForRegistrableDomains):
- NetworkProcess/NetworkProcess.h:
- NetworkProcess/cocoa/NetworkProcessCocoa.mm:
(WebKit::NetworkProcess::getHostNamesWithAlternativeServices):
(WebKit::NetworkProcess::deleteAlternativeServicesForHostNames):
(WebKit::NetworkProcess::clearAlternativeServices):
- Shared/WebsiteData/WebsiteData.cpp:
(WebKit::WebsiteData::ownerProcess):
- Shared/WebsiteData/WebsiteDataType.h:
- UIProcess/API/Cocoa/WKWebsiteDataRecord.mm:
(dataTypesToString):
- UIProcess/API/Cocoa/WKWebsiteDataRecordInternal.h:
(WebKit::toWebsiteDataType):
(WebKit::toWKWebsiteDataTypes):
- UIProcess/API/Cocoa/WKWebsiteDataRecordPrivate.h:
- UIProcess/API/Cocoa/WKWebsiteDataStore.mm:
(+[WKWebsiteDataStore _allWebsiteDataTypesIncludingPrivate]):
- UIProcess/WebsiteData/WebsiteDataRecord.cpp:
(WebKit::WebsiteDataRecord::addAlternativeServicesHostname):
- UIProcess/WebsiteData/WebsiteDataRecord.h:
Source/WTF:
- wtf/PlatformHave.h:
Tools:
- TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
(checkUntilEntryFound):
(TEST):
- 10:17 AM Changeset in webkit [257784] by
-
- 9 edits1 add in trunk
[JSC] @hasOwnLengthProperty returns wrong value if "length" is attempted to be modified
https://bugs.webkit.org/show_bug.cgi?id=208497
<rdar://problem/59913544>
Reviewed by Mark Lam.
JSTests:
- stress/function-length-update.js: Added.
(shouldBe):
(userFunction):
(userFunction2):
Source/JavaScriptCore:
When "length" of JSFunction is attempted to be modified, we put a flag. And @hasOwnLengthProperty
does not correctly use this flag to return a value for the fast path. This affects on "length"
property of bound functions. For example,
function userFunction(a) { }
userFunction.length = 20; This field is read-only. So, it is not changed.
userFunction.bind().length; Should be 1, but it returns 0.
- We rename m_hasModifiedLength to m_hasModifiedLengthForNonHostFunction and m_hasModifiedName to m_hasModifiedNameForNonHostFunction since we are not tracking these states for host-functions which can eagerly initialize them.
- We rename areNameAndLengthOriginal to canAssumeNameAndLengthAreOriginal to allow it to return "false" for host functions. If it returns true, we go to the fast path.
- Correctly use canAssumeNameAndLengthAreOriginal information in @hasOwnLengthProperty.
- runtime/FunctionRareData.cpp:
(JSC::FunctionRareData::FunctionRareData):
- runtime/FunctionRareData.h:
- runtime/JSFunction.cpp:
(JSC::JSFunction::put):
(JSC::JSFunction::deleteProperty):
(JSC::JSFunction::defineOwnProperty):
- runtime/JSFunction.h:
- runtime/JSFunctionInlines.h:
(JSC::JSFunction::canAssumeNameAndLengthAreOriginal):
(JSC::JSFunction::areNameAndLengthOriginal): Deleted.
- runtime/JSGlobalObject.cpp:
(JSC::hasOwnLengthProperty):
- tools/JSDollarVM.cpp:
(JSC::functionHasOwnLengthProperty):
- 10:11 AM Changeset in webkit [257783] by
-
- 2 edits in trunk/Source/WebCore
Regression (CookieCache) Unable to log into Hulu.com
https://bugs.webkit.org/show_bug.cgi?id=208517
<rdar://problem/59973630>
Reviewed by Geoffrey Garen.
Even though we are listening for notifications for 'www.hulu.com', CFNetwork sends us a notification for host
'secure.hulu.com' when a load to secure.hulu.com sets a cookie for domain '.hulu.com'. Because the host did
not match one if our map of observers, we would ignore the cookie notification and our cookie cache would get
out of sync. To temporarily address the issue (until a better fix is made, likely on CFNetwork side), WebKit
now matches registrable domains instead of hosts.
- platform/network/cocoa/NetworkStorageSessionCocoa.mm:
(WebCore::NetworkStorageSession::registerCookieChangeListenersIfNecessary):
- 9:49 AM Changeset in webkit [257782] by
-
- 2 edits in trunk/LayoutTests
[ Catalina ] webanimations/accelerated-animation-slot-invalidation.html is flaky failing.
https://bugs.webkit.org/show_bug.cgi?id=208519
Unreviewed test gardening.
- platform/mac/TestExpectations:
- 9:25 AM Changeset in webkit [257781] by
-
- 2 edits in trunk/LayoutTests
[ Mac wk1 Debug ] legacy-animation-engine/animations/animation-direction-reverse.html is flaky failing.
https://bugs.webkit.org/show_bug.cgi?id=208518
Unreviewed test gardening.
- platform/mac-wk1/TestExpectations:
- 9:08 AM Changeset in webkit [257780] by
-
- 23 edits3 adds in trunk
Check for navigation to app-bound domain during script evaluation
https://bugs.webkit.org/show_bug.cgi?id=208319
<rdar://problem/57569321>
Reviewed by Brent Fulgham.
Source/WebCore:
- bindings/js/ScriptController.cpp:
(WebCore::ScriptController::executeScriptInWorld):
- loader/FrameLoaderClient.h:
- page/Frame.cpp:
(WebCore::Frame::injectUserScriptImmediately):
Source/WebKit:
Much of this patch is passing around a new parameter,
m_hasNavigatedAwayFromAppBoundDomain, to the Web Content Process to
indicate conditions for script evaluation.
- Shared/LoadParameters.cpp:
(WebKit::LoadParameters::encode const):
(WebKit::LoadParameters::decode):
- Shared/LoadParameters.h:
- Shared/PolicyDecision.h:
(WebKit::PolicyDecision::encode const):
(WebKit::PolicyDecision::decode):
- UIProcess/API/Cocoa/WKPreferences.mm:
(-[WKPreferences _inAppBrowserPrivacyEnabled]):
(-[WKPreferences _setInAppBrowserPrivacyEnabled:]):
- UIProcess/API/Cocoa/WKPreferencesPrivate.h:
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _setIsNavigatingToAppBoundDomain:completionHandler:]):
- UIProcess/API/Cocoa/WKWebViewPrivate.h:
- UIProcess/ProvisionalPageProxy.cpp:
(WebKit::ProvisionalPageProxy::loadData):
(WebKit::ProvisionalPageProxy::loadRequest):
(WebKit::ProvisionalPageProxy::decidePolicyForNavigationActionSync):
- UIProcess/ProvisionalPageProxy.h:
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::loadRequest):
(WebKit::WebPageProxy::loadRequestWithNavigationShared):
(WebKit::WebPageProxy::loadData):
(WebKit::WebPageProxy::loadDataWithNavigationShared):
(WebKit::WebPageProxy::setIsNavigatingToAppBoundDomain):
(WebKit::WebPageProxy::setIsNavigatingToAppBoundDomainTesting):
(WebKit::WebPageProxy::receivedPolicyDecision):
(WebKit::WebPageProxy::continueNavigationInNewProcess):
(WebKit::WebPageProxy::decidePolicyForNavigationAction):
(WebKit::WebPageProxy::decidePolicyForNavigationActionSyncShared):
- UIProcess/WebPageProxy.h:
(WebKit::WebPageProxy::hasNavigatedAwayFromAppBoundDomain const):
- WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse):
(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
(WebKit::WebFrameLoaderClient::hasNavigatedAwayFromAppBoundDomain):
- WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::loadRequest):
(WebKit::WebPage::loadDataImpl):
(WebKit::WebPage::loadData):
(WebKit::WebPage::loadAlternateHTML):
(WebKit::WebPage::didReceivePolicyDecision):
(WebKit::WebPage::runJavaScript):
(WebKit::WebPage::setIsNavigatingToAppBoundDomainTesting):
A new call to manually set isNavigatingToAppBoundDomain to mimic
test cases in which a webView switches between app-bound and
non-app-bound domains.
(WebKit::WebPage::setIsNavigatingToAppBoundDomain): Deleted.
Moved to header file because its setting a private variable.
- WebProcess/WebPage/WebPage.h:
(WebKit::WebPage::setIsNavigatingToAppBoundDomain):
(WebKit::WebPage::hasNavigatedAwayFromAppBoundDomain const):
(WebKit::WebPage::setHasNavigatedAwayFromAppBoundDomain):
- WebProcess/WebPage/WebPage.messages.in:
Tools:
- TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
- TestWebKitAPI/Tests/WebKitCocoa/InAppBrowserPrivacy.mm: Added.
(-[TestInAppBrowserScriptMessageHandler userContentController:didReceiveScriptMessage:]):
(TEST):
- TestWebKitAPI/Tests/WebKitCocoa/in-app-browser-privacy-test-user-agent-script.html: Added.
- TestWebKitAPI/Tests/WebKitCocoa/in-app-browser-privacy-test-user-script.html: Added.
- 8:44 AM Changeset in webkit [257779] by
-
- 6 edits in trunk/Source
Rename USE(GPU_PROCESS) to ENABLE(GPU_PROCESS_FOR_WEBRTC)
https://bugs.webkit.org/show_bug.cgi?id=208505
Reviewed by Eric Carlson.
Source/WebKit:
- Shared/WebPreferencesDefaultValues.h:
Source/WTF:
Rename macro since the name is misleading.
Disable GPU_PROCESS_FOR_WEBRTC for iOS except simulator for now.
- wtf/PlatformEnable.h:
- wtf/PlatformEnableCocoa.h:
- wtf/PlatformUse.h:
- 7:28 AM Changeset in webkit [257778] by
-
- 2 edits in trunk/Source/WebCore
[GTK][WPE] Fix current time and duration formatting in media controls
https://bugs.webkit.org/show_bug.cgi?id=208442
Reviewed by Xabier Rodriguez-Calvar.
We are always using mm:ss or hh:mm:ss for current time and duration. We should use different amount of digits
depending on the duration (m:ss, mm:ss, h:mm:ss or hh:mm:ss).
- Modules/mediacontrols/mediaControlsAdwaita.js:
(Controller.prototype.updateDuration): Set the amount of digits for current duration.
(Controller.prototype.prependZeroIfNeeded): Helper to prepend 0 for values less than 10.
(Controller.prototype.formatTime): Format the time depending on the number of digits required.
- 7:18 AM Changeset in webkit [257777] by
-
- 14 edits1 delete in trunk
Unreviewed, rolling out r257754.
https://bugs.webkit.org/show_bug.cgi?id=208513
Introduced API test failure (Requested by perarne on #webkit).
Reverted changeset:
"[Cocoa] Mapping from MIME type to UTI type should be done in
the UI process"
https://bugs.webkit.org/show_bug.cgi?id=208415
https://trac.webkit.org/changeset/257754
- 6:07 AM Changeset in webkit [257776] by
-
- 2 edits in trunk/Source/WebCore
Regression(r257354) Crash when trying on watch video on apple.com
https://bugs.webkit.org/show_bug.cgi?id=208487
<rdar://problem/59967385>
Reviewed by Eric Carlson.
Use WebCore::Cookie's code to convert to a NSHTTPCookie instead of using toNSHTTPCookie()
which was not quite right, especially after r257354.
- platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::createAVAssetForURL):
(WebCore::toNSHTTPCookie): Deleted.
- 6:05 AM Changeset in webkit [257775] by
-
- 2 edits in trunk/Source/WebCore
[GTK] Use -webkit-system-font instead of -webkit-small-control in media controls
https://bugs.webkit.org/show_bug.cgi?id=208509
Reviewed by Xabier Rodriguez-Calvar.
For consistency with the system font.
- Modules/mediacontrols/mediaControlsAdwaita.css:
(audio::-webkit-media-controls-current-time-display,):
(video::-webkit-media-controls-closed-captions-container):
- 5:33 AM Changeset in webkit [257774] by
-
- 2 edits in trunk/LayoutTests
Unreviewed GTK gardening. Rebaseline media/video-controls-no-scripting.html after r257705
- platform/gtk/media/video-controls-no-scripting-expected.txt:
- 5:19 AM Changeset in webkit [257773] by
-
- 2 edits1 delete in trunk/LayoutTests
Unreviewed gardeing. Update expectations of media/video-controls-toggling.html after r257771
I forgot to update the expected file after the changes in media/video-controls-toggling.html.
- media/video-controls-toggling-expected.txt:
- platform/gtk/media/video-controls-toggling-expected.txt: Removed.
- 5:16 AM Changeset in webkit [257772] by
-
- 2 edits in trunk/Tools
REGRESSION(r257726): [GTK] LayoutTests crashing after r257726
https://bugs.webkit.org/show_bug.cgi?id=208506
Reviewed by Carlos Garcia Campos.
- WebKitTestRunner/TestController.cpp:
(WTR::TestController::platformAdjustContext): Remove unnecessary code.
- 5:13 AM Changeset in webkit [257771] by
-
- 2 edits in trunk/LayoutTests
Test media/video-controls-toggling.html is failing for GTK since r257299
https://bugs.webkit.org/show_bug.cgi?id=208507
Reviewed by Xabier Rodriguez-Calvar.
This has started to fail for GTK since we switched to use adwaita media controls, but I think this was passing
by coincidence. The test itself is wrong and that's probably the reason why it fails in the other platforms
too. The test expects that the changes that happen after removing the controls attribute from video element are
sync, but they aren't because a mutation observer is used by media controls script. Then, it assumes that panel
display property is set to none after controls attribute is removed, but we are actually removing the media
controls tree from the DOM in that case so the panel is null at that point. This worked in GTK before because
all those checks that were supposed to happen after removing the controls were done before the
handleControlsChange() was called.
- media/video-controls-toggling.html: Check that panel is null after controls attribute is removed from video
element in the next run loop iteration.
- 1:26 AM Changeset in webkit [257770] by
-
- 6 edits in releases/WebKitGTK/webkit-2.28
Merge r257466 - [JSC][MIPS] Adding support to Checkpoints
https://bugs.webkit.org/show_bug.cgi?id=208196
Reviewed by Yusuke Suzuki.
JSTests:
- microbenchmarks/memcpy-typed-loop.js:
Source/JavaScriptCore:
This patch is adding changes to properly support OSR to
checkpoints on MIPS. It required fixes on JIT probe and some
adjustment on Offlineasm to correct generate$gpload when executing
checkpoint_osr_exit_from_inlined_call_trampoline.
- assembler/MacroAssemblerMIPS.cpp:
Probe trampoline needs to allocate 16 bytes for 4 arguments to
properly follow C calling conventions. This space is used by callee
when the JSC is compiled with-O0flags
(Check "DEFAULT C CALLING CONVENTION (O32)" section on
https://www.mips.com/downloads/mips32-instruction-set-quick-reference-v1-01).
- llint/LowLevelInterpreter.asm:
As we need to do on ARMv7, 64-bits arguments needs to be passed in
register pairs$a1:$a0or$a3:$a2(little-endian mode). Since$a0
contaisCallFrame*, we need to passEncodedJSValueon$a3:$a2
pair.
- offlineasm/mips.rb:
Following the same reason for return locations on OSR to LLInt, we
need to adjust$gpusing$rainstead of$t9on
checkpoint_osr_exit_from_inlined_call_trampoline, given it is only
reachable throughretoperations. For detailed explanation, check
ChangeLog of https://trac.webkit.org/changeset/252713.
- 1:21 AM Changeset in webkit [257769] by
-
- 2 edits in trunk/Source/WebCore
[GTK][WPE] Fix JavaScript exception when removing media controls
https://bugs.webkit.org/show_bug.cgi?id=208444
Reviewed by Xabier Rodriguez-Calvar.
- Modules/mediacontrols/mediaControlsAdwaita.js:
(Controller.prototype.hideCaptionMenu): Return early if there's no caption menu to hide.
- 1:20 AM Changeset in webkit [257768] by
-
- 2 edits in trunk/Source/WebCore
REGRESSION(r257299): [GTK] media controls current time label is disabled for live streams
https://bugs.webkit.org/show_bug.cgi?id=208443
Reviewed by Xabier Rodriguez-Calvar.
Remove the no-duration class from currentTime element when we know it's a live stream.
- Modules/mediacontrols/mediaControlsAdwaita.js:
(Controller.prototype.updateTime):
Mar 2, 2020:
- 11:36 PM Changeset in webkit [257767] by
-
- 10 edits in trunk/Source
https://bugs.webkit.org/show_bug.cgi?id=208447
Make FrameLoadRequest ctor take move parameter
Patch by Rob Buis <rbuis@igalia.com> on 2020-03-02
Reviewed by Simon Fraser.
Source/WebCore:
Make FrameLoadRequest ctor use move semantics for the
ResourceRequest parameter to avoid copies.
- inspector/InspectorFrontendClientLocal.cpp:
(WebCore::InspectorFrontendClientLocal::openInNewTab):
- inspector/agents/InspectorPageAgent.cpp:
(WebCore::InspectorPageAgent::navigate):
- loader/FrameLoadRequest.cpp:
(WebCore::FrameLoadRequest::FrameLoadRequest):
- loader/FrameLoadRequest.h:
(WebCore::FrameLoadRequest::FrameLoadRequest):
- loader/NavigationScheduler.cpp:
(WebCore::NavigationScheduler::scheduleLocationChange):
- page/ContextMenuController.cpp:
(WebCore::ContextMenuController::contextMenuItemSelected):
- page/DOMWindow.cpp:
(WebCore::DOMWindow::createWindow):
Source/WebKit:
Adapt to API change.
- WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchCreatePage):
- 11:29 PM Changeset in webkit [257766] by
-
- 5 edits in trunk/Source
Reduce size of PerformanceResourceTiming
https://bugs.webkit.org/show_bug.cgi?id=208466
Reviewed by Ryosuke Niwa.
Reduce size of PerformanceResourceTiming when not storing non-timing data.
To achieve this, I moved the timing data to a
NetworkLoadMetricsWithoutNonTimingData base class, out of NetworkLoadMetrics.
PerformanceResourceTiming's m_networkLoadMetrics data member is now of type
NetworkLoadMetricsWithoutNonTimingData.
- page/PerformanceResourceTiming.cpp:
(WebCore::PerformanceResourceTiming::PerformanceResourceTiming):
- page/PerformanceResourceTiming.h:
- platform/network/NetworkLoadMetrics.h:
(WebCore::NetworkLoadMetricsWithoutNonTimingData::isComplete const):
(WebCore::NetworkLoadMetricsWithoutNonTimingData::markComplete):
(WebCore::NetworkLoadMetrics::NetworkLoadMetrics):
(WebCore::NetworkLoadMetrics::reset): Deleted.
(WebCore::NetworkLoadMetrics::clearNonTimingData): Deleted.
(WebCore::NetworkLoadMetrics::isComplete const): Deleted.
(WebCore::NetworkLoadMetrics::markComplete): Deleted.
- 10:41 PM Changeset in webkit [257765] by
-
- 2 edits in trunk/Source/WebInspectorUI
Web Inspector: visual artifacts in the corner of selected tabs when docked in dark mode
https://bugs.webkit.org/show_bug.cgi?id=208498
Reviewed by Timothy Hatcher.
- UserInterface/Views/TabBar.css:
(@media (prefers-color-scheme: dark) body:not(.docked) .tab-bar > .tabs > .item:not(.disabled).selected): Added.
(@media (prefers-color-scheme: dark) body.docked .tab-bar > .tabs > .item:not(.disabled).selected): Added.
(@media (prefers-color-scheme: dark) body.docked:matches(.window-inactive, .window-docked-inactive) .tab-bar > .tabs > .item:not(.disabled).selected): Added.
(@media (prefers-color-scheme: dark) .tab-bar > .tabs > .item:not(.disabled).selected): Deleted.
Thebackground-colorset bybody.docked .tab-bar > .tabs > .item:not(.disabled).selected
in light mode was also being applied in dark mode. When docked, don't usebackground-image
and instead exclusively usebackground-colorso nothing is still applied.
- 10:05 PM Changeset in webkit [257764] by
-
- 5 edits4 adds31 deletes in trunk/LayoutTests
[LayoutTests] Transition animations/cross-fade-* tests to non-pixel-tests
https://bugs.webkit.org/show_bug.cgi?id=208495
<rdar://problem/59979337>
Reviewed by Simon Fraser.
These tests are designed to be a dumpAsText() tests (their render tree outputs are flaky).
- animations/cross-fade-border-image-source-expected.txt: Added.
- animations/cross-fade-border-image-source.html:
- animations/cross-fade-list-style-image-expected.txt: Added.
- animations/cross-fade-list-style-image.html:
- animations/cross-fade-webkit-mask-box-image-expected.txt: Added.
- animations/cross-fade-webkit-mask-box-image.html:
- animations/cross-fade-webkit-mask-image-expected.txt: Added.
- animations/cross-fade-webkit-mask-image.html:
- platform/gtk/animations/cross-fade-border-image-source-expected.png: Removed.
- platform/gtk/animations/cross-fade-border-image-source-expected.txt: Removed.
- platform/gtk/animations/cross-fade-list-style-image-expected.png: Removed.
- platform/gtk/animations/cross-fade-list-style-image-expected.txt: Removed.
- platform/gtk/animations/cross-fade-webkit-mask-box-image-expected.png: Removed.
- platform/gtk/animations/cross-fade-webkit-mask-box-image-expected.txt: Removed.
- platform/gtk/animations/cross-fade-webkit-mask-image-expected.png: Removed.
- platform/gtk/animations/cross-fade-webkit-mask-image-expected.txt: Removed.
- platform/ios/animations/cross-fade-border-image-source-expected.txt: Removed.
- platform/ios/animations/cross-fade-list-style-image-expected.txt: Removed.
- platform/ios/animations/cross-fade-webkit-mask-box-image-expected.txt: Removed.
- platform/ios/animations/cross-fade-webkit-mask-image-expected.txt: Removed.
- platform/mac/animations/cross-fade-border-image-source-expected.png: Removed.
- platform/mac/animations/cross-fade-border-image-source-expected.txt: Removed.
- platform/mac/animations/cross-fade-list-style-image-expected.png: Removed.
- platform/mac/animations/cross-fade-list-style-image-expected.txt: Removed.
- platform/mac/animations/cross-fade-webkit-mask-box-image-expected.png: Removed.
- platform/mac/animations/cross-fade-webkit-mask-box-image-expected.txt: Removed.
- platform/mac/animations/cross-fade-webkit-mask-image-expected.png: Removed.
- platform/mac/animations/cross-fade-webkit-mask-image-expected.txt: Removed.
- platform/win/animations/cross-fade-border-image-source-expected.txt: Removed.
- platform/win/animations/cross-fade-list-style-image-expected.txt: Removed.
- platform/win/animations/cross-fade-webkit-mask-box-image-expected.txt: Removed.
- platform/wincairo/animations/cross-fade-border-image-source-expected.txt: Removed.
- platform/wincairo/animations/cross-fade-list-style-image-expected.txt: Removed.
- platform/wincairo/animations/cross-fade-webkit-mask-box-image-expected.txt: Removed.
- platform/wincairo/animations/cross-fade-webkit-mask-image-expected.txt: Removed.
- platform/wpe/animations/cross-fade-border-image-source-expected.txt: Removed.
- platform/wpe/animations/cross-fade-list-style-image-expected.txt: Removed.
- platform/wpe/animations/cross-fade-webkit-mask-box-image-expected.txt: Removed.
- platform/wpe/animations/cross-fade-webkit-mask-image-expected.txt: Removed.
- 9:18 PM Changeset in webkit [257763] by
-
- 7 edits in trunk
Add performance probes for HTML parsing
https://bugs.webkit.org/show_bug.cgi?id=208271
Reviewed by Daniel Bates.
This adds probes that show which lines of HTML are have been parsed.
Source/WebCore:
- html/parser/HTMLDocumentParser.cpp:
(WebCore::HTMLDocumentParser::pumpTokenizer):
- html/parser/HTMLDocumentParser.h:
Source/WTF:
- wtf/SystemTracing.h:
Tools:
- Tracing/SystemTracePoints.plist:
- 9:14 PM Changeset in webkit [257762] by
-
- 9 edits1 move1 add in trunk/Source
[WTF] Add signpost API
https://bugs.webkit.org/show_bug.cgi?id=208395
Reviewed by Alex Christensen.
We want to start using os_signpost instead of kdebug_trace when emitting performance events,
because it is usually cheaper (doesn't require a system call unless the log buffer is full)
and allows for richer tracepoints (allows for logging strings as well as integers).
To facilitate this, this moves the os_signpost wrappers in NetworkDataTaskCocoa to
WTF. Since signposts can contain sensitive strings (like URLs), currently we only enable
them on Apple-internal devices when an environment variable is set.
Source/WebCore/PAL:
- PAL.xcodeproj/project.pbxproj:
- pal/PlatformMac.cmake:
- spi/darwin/OSVariantSPI.h: Renamed to wtf/spi/darwin/OSVariantSPI.h.
Source/WebKit:
- NetworkProcess/cocoa/NetworkDataTaskCocoa.mm:
(WebKit::NetworkDataTaskCocoa::NetworkDataTaskCocoa):
(WebKit::NetworkDataTaskCocoa::didSendData):
(WebKit::NetworkDataTaskCocoa::didReceiveChallenge):
(WebKit::NetworkDataTaskCocoa::didCompleteWithError):
(WebKit::NetworkDataTaskCocoa::didReceiveData):
(WebKit::NetworkDataTaskCocoa::didReceiveResponse):
(WebKit::NetworkDataTaskCocoa::willPerformHTTPRedirection):
(WebKit::NetworkDataTaskCocoa::cancel):
(WebKit::NetworkDataTaskCocoa::resume):
(signpostLogHandle): Deleted.
(signpostsEnabled): Deleted.
Source/WTF:
- WTF.xcodeproj/project.pbxproj:
- wtf/PlatformMac.cmake:
- wtf/SystemTracing.h:
- wtf/cocoa/SystemTracingCocoa.cpp: Added.
(WTFSignpostsEnabled):
(WTFSignpostLogHandle):
- wtf/spi/darwin/OSVariantSPI.h: Renamed from Source/WebCore/PAL/pal/spi/cocoa/OSVariantSPI.h.
- 8:57 PM Changeset in webkit [257761] by
-
- 2 edits in trunk/Source/WebCore
REGRESSION (257739) [ Mac wk2 Release ] multiple tests crashing in WebCore::postUserInfoForChanges
https://bugs.webkit.org/show_bug.cgi?id=208488
<rdar://problem/59975669>
Reviewed by Chris Fleizach.
Ensure that we have a root web area before de-referencing it.
- accessibility/mac/AXObjectCacheMac.mm:
(WebCore::AXObjectCache::postTextReplacementPlatformNotification):
(WebCore::AXObjectCache::postTextReplacementPlatformNotificationForTextControl):
- 8:07 PM Changeset in webkit [257760] by
-
- 13 edits in trunk/Source/WebCore
Fix for LayoutTests/accessibility/mac/value-change/value-change-user-info-contenteditable.html in IsolatedTree mode.
https://bugs.webkit.org/show_bug.cgi?id=208462
Reviewed by Chris Fleizach.
Covered by LayoutTests/accessibility/mac/value-change/value-change-user-info-contenteditable.html.
- Updates the IsolatedTree on the TextStateChange notification.
- Renamed isAccessibilityScrollView to isAccessibilityScrollViewInstance
and used isScrollView instead everywhere it's appropriate. This makes
code like AXObjectCache::rootWebArea work for both AXObjects and IsolatedObjects.
- Moved several utility functions from WebAccessibilityObjectWrapperMac.mm
to AXObjectCacheMac.mm where they belong, so that they can be used by
AXObjectCache implementation in addition to by the wrapper.
- accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::postTextStateChangeNotification):
(WebCore::AXObjectCache::rootWebArea):
- accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::isOnScreen const):
(WebCore::AccessibilityObject::scrollToGlobalPoint const):
- accessibility/AccessibilityObject.h:
- accessibility/AccessibilityObjectInterface.h:
- accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::getScrollableAreaIfScrollable const):
- accessibility/AccessibilityScrollView.h:
- accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
(-[WebAccessibilityObjectWrapper accessibilityContainer]):
- accessibility/isolatedtree/AXIsolatedObject.cpp:
(WebCore::AXIsolatedObject::isAccessibilityScrollViewInstance const):
(WebCore::AXIsolatedObject::isAccessibilityScrollView const): Renamed.
- accessibility/isolatedtree/AXIsolatedObject.h:
- accessibility/mac/AXObjectCacheMac.mm:
(WebCore::AXObjectCache::postTextStateChangePlatformNotification): Uses
TextMarker utilities instead of calling into the wrapper. This fixes
the crash caused by the wrapper updating the backingObject that in turn
may change the wrapper.
(WebCore::AXTextMarkerRange): Moved from WebAccessibilityObjectWrapperMac.mm.
(WebCore::textMarkerRangeFromMarkers): Moved from WebAccessibilityObjectWrapperMac.mm.
(WebCore::textMarkerForVisiblePosition): Moved from WebAccessibilityObjectWrapperMac.mm.
(WebCore::textMarkerRangeFromVisiblePositions): Moved from WebAccessibilityObjectWrapperMac.mm.
- accessibility/mac/WebAccessibilityObjectWrapperMac.h:
- accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
(AXTextMarkerRange): Moved.
(textMarkerForVisiblePosition): Moved.
(textMarkerRangeFromMarkers): Moved.
(textMarkerRangeFromVisiblePositions): Moved.
- 7:22 PM Changeset in webkit [257759] by
-
- 74 edits1 add23 deletes in trunk/Source
Web Inspector: Items in the toolbar take up to much vertical space
https://bugs.webkit.org/show_bug.cgi?id=204627
<rdar://problem/59091905>
Reviewed by Timothy Hatcher.
Source/WebCore:
Now that there is no toolbar area, there is nothing obstructing the ability for the window
to be moved around when dragging via the title bar area. As such, we can remove the unused
InspectorFrontendHostAPIs.
- inspector/InspectorFrontendHost.idl:
- inspector/InspectorFrontendHost.h:
- inspector/InspectorFrontendHost.cpp:
(WebCore::InspectorFrontendHost::startWindowDrag): Deleted.
(WebCore::InspectorFrontendHost::moveWindowBy const): Deleted.
- inspector/InspectorFrontendClient.h:
- inspector/InspectorFrontendClientLocal.h:
- inspector/InspectorFrontendClientLocal.cpp:
(WebCore::InspectorFrontendClientLocal::moveWindowBy): Deleted.
Source/WebInspectorUI:
Merge the toolbar are and tab bar to waste less vertical space.
Existing toolbar buttons have been moved to a space before the tab bar, and are only shown
when needed (e.g. only show the reload button when remotely inspecting).
If there are any console warnings/errors, an icon for each type of message is shown between
the left buttons and the tabs, and each button's opacity is animated whenever a new message
is added.
Whenever the debugger pauses, change the tab bar icon of the Sources Tab to an image that
includes paused iconography to help convey the debugger's state no matter which tab is
currently selected, just like the debugger dashboard.
The dashboard network information has been moved to the Network Tab (described below).
When undocked, the tab bar and all the content below it are pushed down by 22px to make room
for the system close/minimize/maximize buttons and the window title.
- UserInterface/Base/Main.js:
(WI.loaded):
(WI._handleSettingsKeyboardShortcut):
(WI._tryToRestorePendingTabs):
(WI.isNewTabWithTypeAllowed):
(WI._openDefaultTab): Deleted.
(WI.showNewTabTab): Deleted.
- UserInterface/Views/Main.css:
(#undocked-title-area): Added.
(body.docked #undocked-title-area): Added.
(body.window-inactive #undocked-title-area): Added.
(#main):
(@keyframes tab-bar-console-item-pulse): Added.
(.tab-bar > .navigation-bar :matches(.console-warnings, .console-errors):not(.disabled).pulsing): Added.
(@media (prefers-color-scheme: dark) #undocked-title-area): Added.
(@media (prefers-color-scheme: dark) body.window-inactive #undocked-title-area): Added.
(body.docked.bottom): Deleted.
(body.docked.bottom #toolbar): Deleted.
(body.docked.bottom #toolbar .item:not(.flexible-space)): Deleted.
- UserInterface/Views/TabBar.js:
(WI.TabBar):
(WI.TabBar.get horizontalPadding): Added.
(WI.TabBar.prototype.addNavigationItemBefore): Added.
(WI.TabBar.prototype.addNavigationItemAfter): Added.
(WI.TabBar.prototype.insertTabBarItem):
(WI.TabBar.prototype.insertTabBarItem.animateTabs):
(WI.TabBar.prototype.insertTabBarItem.removeStyles):
(WI.TabBar.prototype.removeTabBarItem):
(WI.TabBar.prototype.removeTabBarItem.animateTabs):
(WI.TabBar.prototype.removeTabBarItem.removeStyles):
(WI.TabBar.prototype.set selectedTabBarItem):
(WI.TabBar.prototype.get tabCount): Added.
(WI.TabBar.prototype.layout):
(WI.TabBar.prototype.layout.measureItemWidth):
(WI.TabBar.prototype.layout.recalculateItemWidths):
(WI.TabBar.prototype.didLayoutSubtree): Added.
(WI.TabBar.prototype._recordTabBarItemSizesAndPositions):
(WI.TabBar.prototype._recordTabBarItemSizesAndPositions.add): Added.
(WI.TabBar.prototype._applyTabBarItemSizesAndPositions):
(WI.TabBar.prototype._finishExpandingTabsAfterClose):
(WI.TabBar.prototype._finishExpandingTabsAfterClose.animateTabs):
(WI.TabBar.prototype._finishExpandingTabsAfterClose.removeStyles):
(WI.TabBar.prototype._handleClick):
(WI.TabBar.prototype._handleMouseMoved):
(WI.TabBar.prototype._handleMouseMoved.inlineStyleValue): Added.
(WI.TabBar.prototype._handleMouseUp):
(WI.TabBar.prototype._handleMouseLeave):
(WI.TabBar.prototype._handleContextMenu):
(WI.TabBar.prototype.get saveableTabCount): Deleted.
(WI.TabBar.layout.forceItemHidden): Deleted.
- UserInterface/Views/TabBar.css:
(.tab-bar):
(body:not(.docked) .tab-bar): Added.
(body.docked .tab-bar): Added.
(body:matches(.window-inactive, .window-docked-inactive) .tab-bar): Added.
(.tab-bar > .border): Added.
(.tab-bar > .border.top): Added.
(.tab-bar > .border.bottom): Added.
(body.docked.bottom .tab-bar > .border.top): Added.
(body:matches(.window-inactive, .window-docked-inactive) .tab-bar > .border): Added.
(.tab-bar > .navigation-bar): Added.
(.tab-bar > .navigation-bar > .item.group > .item): Added.
(.tab-bar > .navigation-bar > .item.group > .item:nth-child(1 of :not(.hidden))): Added.
(.tab-bar > .navigation-bar > .item.group > .item:nth-last-child(1 of :not(.hidden))): Added.
(.tab-bar > .navigation-bar .item.divider): Added.
(body:matches(.window-inactive, .window-docked-inactive) .tab-bar > .navigation-bar > .item.divider): Added.
(.tab-bar > .tabs): Added.
(body.docked .tab-bar .tabs): Added.
(.tab-bar > .tabs > .item): Added.
(body:not(.docked) .tab-bar > .tabs > .item): Added.
(body:not(.docked) .tab-bar > .tabs > .item:not(.pinned)): Added.
(body.docked .tab-bar > .tabs > .item): Added.
(.tab-bar > .tabs.calculate-width > .item): Added.
(body[dir=ltr]:not(.docked) .tab-bar > .tabs > .item:not(:first-child), body[dir=ltr]:not(.docked) .tab-bar > .tabs:not(.hide-border-start) > .item:first-child, body[dir=ltr]:not(.docked) .tab-bar > .tabs.dragging-tab > .item.selected, body[dir=rtl]:not(.docked) .tab-bar > .tabs:not(.hide-border-end) > .item:last-child): Added.
(body[dir=ltr]:not(.docked) .tab-bar > .tabs:not(.hide-border-end) > .item:last-child, body[dir=rtl]:not(.docked) .tab-bar > .tabs > .item:not(:first-child), body[dir=rtl]:not(.docked) .tab-bar > .tabs:not(.hide-border-start) > .item:first-child, body[dir=rtl]:not(.docked) .tab-bar > .tabs.dragging-tab > .item.selected): Added.
(.tab-bar > .tabs > .item.pinned): Added.
(body.docked .tab-bar > .tabs > .item.pinned): Added.
(body:not(.docked) .tab-bar > .tabs > .item:not(.disabled).selected): Added.
(body.docked .tab-bar > .tabs > .item:not(.disabled).selected): Added.
(body:not(.docked) .tab-bar > .tabs:not(.animating) > .item:not(.selected, .disabled):hover): Added.
(body.docked .tab-bar > .tabs:not(.animating) > .item:not(.selected, .disabled):hover): Added.
(body[dir=ltr]:not(.docked) .tab-bar > .tabs:not(.animating) > .item:not(.selected, .disabled):hover, body[dir=ltr]:not(.docked) .tab-bar > .tabs:not(.animating) > .item:not(.selected, .disabled):hover + .item, body[dir=rtl]:not(.docked) .tab-bar > .tabs:not(.animating) > .item:last-child:not(.selected, .disabled):hover): Added.
(body[dir=ltr]:not(.docked) .tab-bar > .tabs:not(.animating) > .item:last-child:not(.selected, .disabled):hover, body[dir=rtl]:not(.docked) .tab-bar > .tabs:not(.animating) > .item:not(.selected, .disabled):hover, body[dir=rtl]:not(.docked) .tab-bar > .tabs:not(.animating) > .item:not(.selected, .disabled):hover + .item): Added.
(body:not(.docked):matches(.window-inactive, .window-docked-inactive) .tab-bar > .tabs > .item): Added.
(body:not(.docked):matches(.window-inactive, .window-docked-inactive) .tab-bar > .tabs > .item:not(.disabled).selected): Added.
(body.docked:matches(.window-inactive, .window-docked-inactive) .tab-bar > .tabs > .item:not(.disabled).selected): Added.
(.tab-bar > .tabs > .item > .flex-space): Added.
(.tab-bar > .tabs > .item > .icon): Added.
(.tab-bar > .tabs > .item.pinned > .icon): Added.
(.tab-bar > .tabs > .item:not(.selected):hover > .icon): Added.
(.tab-bar > .tabs > .item:not(.disabled).selected > .icon): Added.
(.tab-bar > .tabs > .item.disabled > .icon): Added.
(body:matches(.window-inactive, .window-docked-inactive) .tab-bar > .tabs > .item > .icon): Added.
(body:matches(.window-inactive, .window-docked-inactive) .tab-bar > .tabs > .item:not(.disabled).selected > .icon): Added.
(.tab-bar > .tabs > .item > .title): Added.
(body:matches(.window-inactive, .window-docked-inactive) .tab-bar > .tabs > .item > .title): Added.
(.tab-bar > .tabs > .item > .title > .content): Added.
(.tab-bar > .tabs:not(.animating) > .item:not(.selected):hover > .title): Added.
(.tab-bar > .tabs > .item:not(.disabled).selected > .title): Added.
(body:matches(.window-inactive, .window-docked-inactive) .tab-bar > .tabs > .item:not(.disabled).selected > .title): Added.
(.tab-bar > .tabs.static-layout): Added.
(.tab-bar > .tabs.static-layout > :matches(.flexible-space, .item)): Added.
(.tab-bar > .tabs.animating.closing-tab > .item): Added.
(.tab-bar > .tabs.animating:matches(.expanding-tabs, .inserting-tab) > .item): Added.
(.tab-bar > .tabs.animating.inserting-tab > .item.being-inserted): Added.
(body:not(.docked) .tab-bar > .tabs.dragging-tab > .item:not(.disabled).selected, body:not(.docked) .tab-bar > .tabs.static-layout:not(.animating.inserting-tab):not(.dragging-tab) > .item:nth-last-child(1 of :not(.pinned)), body:not(.docked) .tab-bar > .tabs.animating.closing-tab > .item:not(.disabled).selected): Added.
(body:not(.docked):matches(.window-inactive, .window-docked-inactive) .tab-bar > .tabs.dragging-tab > .item:not(.disabled).selected, body:not(.docked):matches(.window-inactive, .window-docked-inactive) .tab-bar > .tabs.static-layout:not(.animating.inserting-tab):not(.dragging-tab) > .item:nth-last-child(1 of :not(.pinned)), body:not(.docked):matches(.window-inactive, .window-docked-inactive) .tab-bar > .tabs.animating.closing-tab > .item:not(.disabled).selected): Added.
(.tab-bar > .tabs.dragging-tab > .item:not(.disabled).selected): Added.
(@media (prefers-color-scheme: dark) .tab-bar): Added.
(@media (prefers-color-scheme: dark) body.docked.bottom .tab-bar > .border.top): Added.
(@media (prefers-color-scheme: dark) body:not(.docked) .tab-bar > .tabs > .item): Added.
(@media (prefers-color-scheme: dark) .tab-bar > .tabs > .item:not(.disabled).selected): Added.
(@media (prefers-color-scheme: dark) body:not(.docked) .tab-bar > .tabs:not(.animating) > .item:not(.selected, .disabled):hover): Added.
(@media (prefers-color-scheme: dark) body.docked .tab-bar > .tabs:not(.animating) > .item:not(.selected, .disabled):hover): Added.
(@media (prefers-color-scheme: dark) .tab-bar > .tabs > .item > .icon): Added.
(@media (prefers-color-scheme: dark) body:not(.docked) .tab-bar > .tabs:not(.animating) > .item:not(.selected, .disabled):hover > .icon): Added.
(@media (prefers-color-scheme: dark) body:matches(.window-inactive, .window-docked-inactive) .tab-bar): Added.
(@media (prefers-color-scheme: dark) body:not(.docked):matches(.window-inactive, .window-docked-inactive) .tab-bar > .tabs > .item): Added.
(@media (prefers-color-scheme: dark) body:not(.docked):matches(.window-inactive, .window-docked-inactive) .tab-bar > .tabs > .item:not(.disabled).selected): Added.
(body.window-inactive .tab-bar): Deleted.
(.tab-bar > .top-border): Deleted.
(body.window-inactive .tab-bar > .top-border): Deleted.
(.tab-bar > .item): Deleted.
(.tab-bar.calculate-width > .item): Deleted.
(body[dir=ltr] .tab-bar > :nth-child(n + 2 of .item),): Deleted.
(body[dir=rtl] .tab-bar > :nth-child(n + 2 of .item),): Deleted.
(.tab-bar > .item.pinned): Deleted.
(.tab-bar > .item.pinned.tab-picker): Deleted.
(.tab-bar > .item:not(.disabled).selected): Deleted.
(.tab-bar:not(.animating) > .item:not(.selected, .disabled):hover): Deleted.
(body[dir=ltr] .tab-bar:not(.animating) > .item:not(.selected, .disabled):hover,): Deleted.
(body[dir=rtl] .tab-bar:not(.animating) > .item:not(.selected, .disabled):hover,): Deleted.
(body.window-inactive .tab-bar > .item): Deleted.
(body[dir=ltr].window-inactive .tab-bar > .item): Deleted.
(body[dir=rtl].window-inactive .tab-bar > .item): Deleted.
(body.window-inactive .tab-bar > .item.selected): Deleted.
(.tab-bar > .item > .close): Deleted.
(body:not(.window-inactive) .tab-bar > .item:hover > .close): Deleted.
(body:not(.window-inactive) .tab-bar.single-tab > .item.default-tab:hover > .close): Deleted.
(.tab-bar.single-tab > .item.default-tab > .close): Deleted.
(.tab-bar > .item > .close:hover): Deleted.
(.tab-bar > .item > .close:active): Deleted.
(.tab-bar > .item > .flex-space): Deleted.
(.tab-bar > .item.ephemeral > .flex-space:last-child): Deleted.
(.tab-bar > .item > .icon): Deleted.
(.tab-bar > .item.pinned > .icon): Deleted.
(.tab-bar > .item.selected > .icon): Deleted.
(.tab-bar > .item.disabled > .icon): Deleted.
(@media not (prefers-color-scheme: dark) .tab-bar:not(.animating) > .item:not(.selected, .disabled):hover > .icon): Deleted.
(.tab-bar > .item > .title): Deleted.
(.tab-bar:not(.collapsed) > .item > .title): Deleted.
(.tab-bar > .item > .title > .content): Deleted.
(.tab-bar:not(.animating) > .item:not(.selected):hover > .title): Deleted.
(.tab-bar > .item.selected > .title): Deleted.
(.tab-bar.collapsed > .item): Deleted.
(.tab-bar.collapsed > .item:not(.pinned) > .icon): Deleted.
(.tab-bar.collapsed > .item > .flex-space): Deleted.
(.tab-bar.collapsed > .item > .close): Deleted.
(.tab-bar.collapsed > .item:hover > .close): Deleted.
(.tab-bar.collapsed > .item.ephemeral:hover > .icon): Deleted.
(.tab-bar.collapsed > .item.ephemeral:hover > .title): Deleted.
(.tab-bar.static-layout): Deleted.
(.tab-bar.static-layout > .item): Deleted.
(.tab-bar.animating.closing-tab > .item): Deleted.
(.tab-bar.animating:matches(.expanding-tabs, .inserting-tab) > .item): Deleted.
(.tab-bar.animating.inserting-tab > .item.being-inserted): Deleted.
(.tab-bar.dragging-tab > .item.selected,): Deleted.
(body.window-inactive .tab-bar.dragging-tab > .item.selected,): Deleted.
(.tab-bar.dragging-tab > .item.selected): Deleted.
(@media (prefers-color-scheme: dark) .tab-bar > .item): Deleted.
(@media (prefers-color-scheme: dark) .tab-bar > .item > .title): Deleted.
(@media (prefers-color-scheme: dark) .tab-bar > .item:not(.disabled).selected): Deleted.
(@media (prefers-color-scheme: dark) .tab-bar:not(.animating) > .item:not(.selected):hover): Deleted.
(@media (prefers-color-scheme: dark) .tab-bar > .item > .close,): Deleted.
(@media (prefers-color-scheme: dark) body.window-inactive .tab-bar): Deleted.
(@media (prefers-color-scheme: dark) body.window-inactive .tab-bar > .item): Deleted.
(@media (prefers-color-scheme: dark) body.window-inactive .tab-bar > .item.selected): Deleted.
(@media (prefers-color-scheme: dark) body.window-inactive .tab-bar > .item > .title): Deleted.
- UserInterface/Views/NetworkTableContentView.js:
(WI.NetworkTableContentView):
(WI.NetworkTableContentView.prototype.reset):
(WI.NetworkTableContentView.prototype.tablePopulateCell):
(WI.NetworkTableContentView.prototype._changeCollection):
(WI.NetworkTableContentView.prototype.initialLayout):
(WI.NetworkTableContentView.prototype.processHAR):
(WI.NetworkTableContentView.prototype._processPendingEntries):
(WI.NetworkTableContentView.prototype._updateEntryForResource):
(WI.NetworkTableContentView.prototype._mainResourceDidChange):
(WI.NetworkTableContentView.prototype._handleResourceSizeDidChange): Added.
(WI.NetworkTableContentView.prototype._resourceTransferSizeDidChange):
(WI.NetworkTableContentView.prototype._handleResourceAdded):
(WI.NetworkTableContentView.prototype._handleFrameWasAdded):
(WI.NetworkTableContentView.prototype._entryForResource):
(WI.NetworkTableContentView.prototype._updateStatistics): Added.
(WI.NetworkTableContentView.prototype._updateStatistic): Added.
(WI.NetworkTableContentView.prototype._startUpdatingLoadTimeStatistic): Added.
(WI.NetworkTableContentView.prototype._stopUpdatingLoadTimeStatistic): Added.
(WI.NetworkTableContentView.prototype._updateLoadTimeStatistic): Added.
- UserInterface/Views/NetworkTableContentView.css:
(.content-view.network .network-table): Added.
(.network-table > .statistics): Added.
(.network-table > .statistics > .statistic): Added.
(.network-table > .statistics > .statistic[hidden]): Added.
(.network-table > .statistics > .statistic > .icon): Added.
(.network-table > .statistics > .statistic > .text): Added.
Add a fixed row below the network table that contains statistics information based on the
current shown collection (e.g. live data vs HAR):
- number of domains
- number of resources
- total resource size
- total transfer size
- number of redirects
- time to load
NOTE: elided renaming CSS changes.
- UserInterface/Views/TabBrowser.js:
(WI.TabBrowser.prototype.addTabForContentView):
(WI.TabBrowser.prototype.closeTabForContentView):
(WI.TabBrowser.prototype._tabBarItemSelected):
(WI.TabBrowser.prototype._tabBarItemRemoved):
- UserInterface/Views/TabContentView.js:
(WI.TabContentView.shouldPinTab): Added.
- UserInterface/Views/AuditTabContentView.js:
(WI.AuditTabContentView):
(WI.AuditTabContentView.tabInfo):
- UserInterface/Views/CanvasTabContentView.js:
(WI.CanvasTabContentView):
(WI.CanvasTabContentView.tabInfo):
- UserInterface/Views/ConsoleTabContentView.js:
(WI.ConsoleTabContentView):
(WI.ConsoleTabContentView.tabInfo):
- UserInterface/Views/ContentBrowserTabContentView.js:
(WI.ContentBrowserTabContentView):
- UserInterface/Views/ElementsTabContentView.js:
(WI.ElementsTabContentView):
(WI.ElementsTabContentView.tabInfo):
- UserInterface/Views/LayersTabContentView.js:
(WI.LayersTabContentView):
(WI.LayersTabContentView.tabInfo):
- UserInterface/Views/NetworkTabContentView.js:
(WI.NetworkTabContentView):
(WI.NetworkTabContentView.tabInfo):
- UserInterface/Views/SearchTabContentView.js:
(WI.SearchTabContentView):
(WI.SearchTabContentView.tabInfo):
(WI.SearchTabContentView.shouldPinTab): Added.
(WI.SearchTabContentView.shouldSaveTab): Added.
- UserInterface/Views/SettingsTabContentView.js:
(WI.SettingsTabContentView):
(WI.SettingsTabContentView.tabInfo):
(WI.SettingsTabContentView.shouldPinTab): Added.
(WI.SettingsTabContentView.prototype._createExperimentalSettingsView):
- UserInterface/Views/SourcesTabContentView.js:
(WI.SourcesTabContentView):
(WI.SourcesTabContentView.tabInfo):
(WI.SourcesTabContentView.prototype._handleDebuggerPaused): Added.
(WI.SourcesTabContentView.prototype._handleDebuggerResumed): Added.
- UserInterface/Views/StorageTabContentView.js:
(WI.StorageTabContentView):
(WI.StorageTabContentView.tabInfo):
- UserInterface/Views/TimelineTabContentView.js:
(WI.TimelineTabContentView):
(WI.TimelineTabContentView.tabInfo):
- UserInterface/Views/TabBarItem.js:
(WI.TabBarItem):
(WI.TabBarItem.get horizontalMargin): Added.
(WI.TabBarItem.prototype.get element):
(WI.TabBarItem.prototype.get representedObject):
(WI.TabBarItem.prototype.set disabled):
(WI.TabBarItem.prototype.get hidden): Added.
(WI.TabBarItem.prototype.set hidden): Added.
(WI.TabBarItem.prototype.set representedObject): Deleted.
(WI.TabBarItem.prototype.get isDefaultTab): Deleted.
(WI.TabBarItem.prototype.set isDefaultTab): Deleted.
- UserInterface/Views/GeneralTabBarItem.js:
(WI.GeneralTabBarItem.fromTabContentView): Added.
(WI.GeneralTabBarItem): Deleted.
(WI.GeneralTabBarItem.fromTabInfo): Deleted.
(WI.GeneralTabBarItem.prototype.get isEphemeral): Deleted.
(WI.GeneralTabBarItem.prototype._handleContextMenuEvent): Deleted.
- UserInterface/Views/PinnedTabBarItem.js:
(WI.PinnedTabBarItem):
(WI.PinnedTabBarItem.fromTabContentView): Added.
(WI.PinnedTabBarItem.titleDidChange):
(WI.PinnedTabBarItem.fromTabInfo): Deleted.
(WI.PinnedTabBarItem.prototype.titleDidChange): Deleted.
(WI.PinnedTabBarItem.prototype._handleContextMenuEvent): Deleted.
Simplify how tab bar items are created.
- UserInterface/Views/NavigationBar.js:
(WI.NavigationBar.prototype.get sizesToFit):
(WI.NavigationBar.prototype.addNavigationItem):
(WI.NavigationBar.prototype.insertNavigationItem):
- UserInterface/Views/SizesToFitNavigationBar.js: Removed.
- UserInterface/Views/Sidebar.js:
(WI.Sidebar):
- UserInterface/Views/GraphicsOverviewContentView.js:
(WI.GraphicsOverviewContentView.prototype.initialLayout):
Support markingsizesToFitduring construction, instead of having to make a subclass.
- UserInterface/Views/ButtonNavigationItem.js:
(WI.ButtonNavigationItem):
(WI.ButtonNavigationItem.prototype.get imageType): Added.
(WI.ButtonNavigationItem.prototype.set imageType): Added.
(WI.ButtonNavigationItem.prototype._update):
- UserInterface/Views/ButtonNavigationItem.css:
(.tab-bar > .navigation-bar .item.button.image-and-text > span): Added.
(.navigation-bar .item.button > img): Added.
(.navigation-bar .item.button.disabled > img): Added.
(body:matches(.window-inactive, .window-docked-inactive) .navigation-bar .item.button > img): Added.
(body:matches(.window-inactive, .window-docked-inactive) .navigation-bar .item.button.disabled > img): Added.
(@media (prefers-color-scheme: dark) .navigation-bar .item.button.disabled > img): Added.
AllowWI.ButtonNavigationItemto use an<img>instead of an<svg>for it's image. This
is to work around a compositing bug <https://webkit.org/b/207022>.
- UserInterface/Views/GroupNavigationItem.js:
(WI.GroupNavigationItem.prototype.get hidden): Added.
(WI.GroupNavigationItem.prototype.set hidden): Added.
(WI.GroupNavigationItem.prototype.get additionalClassNames): Added.
Add a special case where this item is consideredhiddenif all sub-items are alsohidden.
- UserInterface/Views/Variables.css:
(:root):
(body:matches(.window-inactive, .window-docked-inactive)): Added.
(body:matches(.window-inactive, .window-docked-inactive) *): Added.
(body:not(.docked)): Added.
(@media (prefers-color-scheme: dark) :root):
(@media (prefers-color-scheme: dark) body:matches(.window-inactive, .window-docked-inactive)): Added.
(@media (prefers-color-scheme: dark) body:matches(.window-inactive, .window-docked-inactive) *): Added.
(body.window-inactive): Deleted.
(body.window-inactive *): Deleted.
(@media (prefers-color-scheme: dark) body.window-inactive): Deleted.
(@media (prefers-color-scheme: dark) body.window-inactive *): Deleted.
Replace--toolbar-heightwith--undocked-title-area-height, which is set when docked.
Define--tab-bar-heightin terms of--navigation-bar-heightso they share the same value.
- UserInterface/Views/DividerNavigationItem.css:
(.navigation-bar .item.divider):
(@media (prefers-color-scheme: dark)):
Simplify the CSS in order to better support being used in the tab bar.
- UserInterface/Views/FlexibleSpaceNavigationItem.css:
(.navigation-bar .item.flexible-space):
(.navigation-bar .item.flexible-space.align-start > .item):
(.navigation-bar .item.flexible-space.align-end > .item):
(:matches(.navigation-bar, .toolbar) .item.flexible-space): Deleted.
(:matches(.navigation-bar, .toolbar) .item.flexible-space.align-start > .item): Deleted.
(:matches(.navigation-bar, .toolbar) .item.flexible-space.align-end > .item): Deleted.
Remove toolbar styles.
- UserInterface/Controllers/ConsoleManager.js:
(WI.ConsoleManager):
(WI.ConsoleManager.prototype.get warningCount): Added.
(WI.ConsoleManager.prototype.get errorCount): Added.
(WI.ConsoleManager.prototype.messageWasAdded):
(WI.ConsoleManager.prototype.messagesCleared):
(WI.ConsoleManager.prototype.messageRepeatCountUpdated):
(WI.ConsoleManager.prototype._incrementMessageLevelCount): Added.
(WI.ConsoleManager.prototype._delayedMessagesCleared):
Keep track of the count of warnings and errors so that they can be used to determine when to
show Console button navigation items in the tab bar.
- UserInterface/Views/DOMTreeContentView.css:
(body:not(.window-inactive, .window-docked-inactive) .content-view.dom-tree .tree-outline.dom:focus li:matches(.selected, .hovered) .status-image.breakpoint): Added.
(body:not(.window-inactive, .window-docked-inactive) .content-view.dom-tree .tree-outline.dom:focus li:matches(.selected, .hovered) .status-image.breakpoint.subtree): Added.
(body:not(.window-inactive) .content-view.dom-tree .tree-outline.dom:focus li:matches(.selected, .hovered) .status-image.breakpoint): Deleted.
(body:not(.window-inactive) .content-view.dom-tree .tree-outline.dom:focus li:matches(.selected, .hovered) .status-image.breakpoint.subtree): Deleted.
- UserInterface/Views/RenderingFrameTimelineOverviewGraph.css:
(body:matches(.window-inactive, .window-docked-inactive) .timeline-overview-graph.rendering-frame > .frame-marker): Added.
(body.window-inactive .timeline-overview-graph.rendering-frame > .frame-marker): Deleted.
- UserInterface/Views/TimelineOverview.css:
(.timeline-overview > .tree-outline.timelines .item.selected + .item, body:matches(.window-inactive, .window-docked-inactive) .timeline-overview > .tree-outline.timelines .item.selected + .item): Added.
(@media (prefers-color-scheme: dark) .timeline-overview > .tree-outline.timelines .item.selected + .item, body:matches(.window-inactive, .window-docked-inactive) .timeline-overview > .tree-outline.timelines .item.selected + .item): Added.
(.timeline-overview > .tree-outline.timelines .item.selected + .item, body.window-inactive .timeline-overview > .tree-outline.timelines .item.selected + .item): Deleted.
(@media (prefers-color-scheme: dark) .timeline-overview > .tree-outline.timelines .item.selected + .item, body.window-inactive .timeline-overview > .tree-outline.timelines .item.selected + .item): Deleted.
- UserInterface/Views/TimelineRecordFrame.css:
(body:matches(.window-inactive, .window-docked-inactive) .timeline-record-frame.selected): Added.
(body.window-inactive .timeline-record-frame.selected): Deleted.
- UserInterface/Views/TimelineRuler.css:
(body:matches(.window-inactive, .window-docked-inactive) .timeline-ruler > .header > .divider): Added.
(body.window-inactive .timeline-ruler > .header > .divider): Deleted.
Add selectors for.window-docked-inactiveeverywhere that.window-inactiveexists.
- UserInterface/Base/Setting.js:
Remove new tab bar experimental setting.
- UserInterface/Debug/Bootstrap.js:
(WI.runBootstrapOperations):
(WI.runBootstrapOperations.applyDumpMessagesState):
(WI.runBootstrapOperations.updateDebugUI):
- UserInterface/Main.html:
- Localizations/en.lproj/localizedStrings.js:
- UserInterface/Views/ActivateButtonToolbarItem.js: Removed.
- UserInterface/Views/ButtonToolbarItem.js: Removed.
- UserInterface/Views/ButtonToolbarItem.css: Removed.
- UserInterface/Views/ControlToolbarItem.js: Removed.
- UserInterface/Views/ControlToolbarItem.css: Removed.
- UserInterface/Views/Toolbar.js: Removed.
- UserInterface/Views/Toolbar.css: Removed.
Remove toolbar related code now that it has been merged into the tab bar.
- UserInterface/Models/DebuggerDashboard.js: Removed.
- UserInterface/Models/DefaultDashboard.js: Removed.
- UserInterface/Views/DashboardContainerView.js: Removed.
- UserInterface/Views/DashboardContainerView.css: Removed.
- UserInterface/Views/DashboardView.js: Removed.
- UserInterface/Views/DebuggerDashboardView.js: Removed.
- UserInterface/Views/DebuggerDashboardView.css: Removed.
- UserInterface/Views/DefaultDashboardView.js: Removed.
- UserInterface/Views/DefaultDashboardView.css: Removed.
Remove dashboard related code now that it has been merged into the tab bar.
- UserInterface/Views/LegacyTabBar.js: Removed.
- UserInterface/Views/NewTabContentView.js: Removed.
- UserInterface/Views/NewTabContentView.css: Removed.
- UserInterface/Images/NewTab.svg: Removed.
- UserInterface/Images/NewTabPlus.svg: Removed.
- UserInterface/Images/SearchResults.svg: Removed.
Remove the lebacy tab bar in favor of the new tab bar.
Source/WebKit:
Now that there is no toolbar area, there is nothing obstructing the ability for the window
to be moved around when dragging via the title bar area. As such, we can remove the unused
InspectorFrontendHostAPIs.
- WebProcess/Inspector/WebInspectorUI.h:
- WebProcess/Inspector/WebInspectorUI.cpp:
(WebKit::WebInspectorUI::startWindowDrag): Deleted.
(WebKit::WebInspectorUI::moveWindowBy): Deleted.
- UIProcess/Inspector/WebInspectorProxy.messages.in:
- UIProcess/Inspector/WebInspectorProxy.h:
- UIProcess/Inspector/WebInspectorProxy.cpp:
(WebKit::WebInspectorProxy::startWindowDrag): Deleted.
(WebKit::WebInspectorProxy::platformStartWindowDrag): Deleted.
- UIProcess/Inspector/gtk/WebInspectorProxyGtk.cpp:
(WebKit::WebInspectorProxy::platformStartWindowDrag): Deleted.
- UIProcess/Inspector/mac/WebInspectorProxyMac.mm:
(WebKit::WebInspectorProxy::platformStartWindowDrag): Deleted.
- UIProcess/Inspector/win/WebInspectorProxyWin.cpp:
(WebKit::WebInspectorProxy::platformStartWindowDrag): Deleted.
- UIProcess/Inspector/wpe/WebInspectorProxyWPE.cpp:
(WebKit::WebInspectorProxy::platformStartWindowDrag): Deleted.
- WebProcess/Inspector/RemoteWebInspectorUI.h:
- WebProcess/Inspector/RemoteWebInspectorUI.cpp:
(WebKit::RemoteWebInspectorUI::startWindowDrag): Deleted.
(WebKit::RemoteWebInspectorUI::moveWindowBy): Deleted.
- UIProcess/Inspector/RemoteWebInspectorProxy.messages.in:
- UIProcess/Inspector/RemoteWebInspectorProxy.cpp:
- UIProcess/Inspector/RemoteWebInspectorProxy.h:
(WebKit::RemoteWebInspectorProxy::startWindowDrag): Deleted.
(WebKit::RemoteWebInspectorProxy::platformStartWindowDrag): Deleted.
- UIProcess/Inspector/gtk/RemoteWebInspectorProxyGtk.cpp:
(WebKit::RemoteWebInspectorProxy::platformStartWindowDrag): Deleted.
- UIProcess/Inspector/mac/RemoteWebInspectorProxyMac.mm:
(WebKit::RemoteWebInspectorProxy::platformStartWindowDrag): Deleted.
- UIProcess/Inspector/win/RemoteWebInspectorProxyWin.cpp:
(WebKit::RemoteWebInspectorProxy::platformStartWindowDrag): Deleted.
Source/WebKitLegacy/ios:
Now that there is no toolbar area, there is nothing obstructing the ability for the window
to be moved around when dragging via the title bar area. As such, we can remove the unused
InspectorFrontendHostAPIs.
- WebCoreSupport/WebInspectorClientIOS.mm:
(WebInspectorFrontendClient::startWindowDrag): Deleted.
Source/WebKitLegacy/mac:
Now that there is no toolbar area, there is nothing obstructing the ability for the window
to be moved around when dragging via the title bar area. As such, we can remove the unused
InspectorFrontendHostAPIs.
- WebCoreSupport/WebInspectorClient.h:
- WebCoreSupport/WebInspectorClient.mm:
(WebInspectorFrontendClient::startWindowDrag): Deleted.
- 7:11 PM Changeset in webkit [257758] by
-
- 15 edits in trunk/Source/WebKit
Add flag to indicate that ITP state was explicitly set
https://bugs.webkit.org/show_bug.cgi?id=208461
<rdar://problem/59960829>
Reviewed by John Wilander.
Now that ITP is supported in Ephemeral sessions, we would like to move to a process-wide
concept of ITP being on or off, rather than controlling this at a website data level.
This patch takes the first step by adding a flag to the WebKit::NetworkSessionCreationParameters
structure that tracks whether the state of ITP (On or Off) was explicitly set by
SPI (primarily during testing).
This patch also ensures that we can communicate with TCC for the purpose of checking if
ITP is on or off.
- NetworkProcess/NetworkSessionCreationParameters.cpp:
(WebKit::NetworkSessionCreationParameters::encode const):
(WebKit::NetworkSessionCreationParameters::decode):
- NetworkProcess/NetworkSessionCreationParameters.h:
- NetworkProcess/cocoa/NetworkSessionCocoa.mm:
(WebKit::NetworkSessionCocoa::NetworkSessionCocoa):
- NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in:
- Resources/SandboxProfiles/ios/com.apple.WebKit.Networking.sb:
- Scripts/process-entitlements.sh:
- UIProcess/API/C/WKWebsiteDataStoreRef.cpp:
(WKWebsiteDataStoreSetResourceLoadStatisticsEnabled):
- UIProcess/API/Cocoa/WKWebsiteDataStore.mm:
(-[WKWebsiteDataStore _setResourceLoadStatisticsEnabled:]):
- UIProcess/Cocoa/VersionChecks.h:
- UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::WebProcessPool):
(WebKit::WebProcessPool::ensureNetworkProcess):
(WebKit::WebProcessPool::createNewWebProcess):
- UIProcess/WebProcessPool.h:
- UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm:
(WebKit::WebsiteDataStore::parameters):
- UIProcess/WebsiteData/WebsiteDataStore.cpp:
(WebKit::WebsiteDataStore::setIsRunningResourceLoadStatisticsTest):
- UIProcess/WebsiteData/WebsiteDataStore.h:
(WebKit::WebsiteDataStore::itpStateWasExplicitlySet const):
(WebKit::WebsiteDataStore::useExplicitITPState):
- 7:03 PM Changeset in webkit [257757] by
-
- 13 edits in trunk/Source/WebInspectorUI
Updated breakpoint and search type icons
https://bugs.webkit.org/show_bug.cgi?id=208453
Reviewed by Devin Rousso.
- UserInterface/Images/ApplicationCacheManifest.svg:
- UserInterface/Images/ClippingIcons.svg:
- UserInterface/Images/DocumentIcons.svg:
- UserInterface/Images/FolderGeneric.svg:
- UserInterface/Images/InstrumentIcons.svg:
- UserInterface/Images/NavigationItemNetworkOverride.svg:
- UserInterface/Images/Origin.svg:
- UserInterface/Images/TableIcons.svg:
- UserInterface/Images/TypeIcons.svg:
- UserInterface/Views/BreakpointTreeElement.css:
(.breakpoint-debugger-statement-icon .icon):
(.breakpoint-generic-line-icon .icon):
(@media (prefers-color-scheme: dark) .breakpoint-debugger-statement-icon .icon):
(@media (prefers-color-scheme: dark) .breakpoint-generic-line-icon .icon):
- UserInterface/Views/EventBreakpointTreeElement.css:
(.breakpoint.event.breakpoint-for-animation-frame:not(.breakpoint-paused-icon) .icon):
(.breakpoint.event.breakpoint-for-interval:not(.breakpoint-paused-icon) .icon):
(.breakpoint.event.breakpoint-for-listener:not(.breakpoint-paused-icon) .icon):
(.breakpoint.event.breakpoint-for-timeout:not(.breakpoint-paused-icon) .icon):
(@media(prefers-color-scheme: dark) .breakpoint.event.breakpoint-for-animation-frame:not(.breakpoint-paused-icon) .icon):
(@media(prefers-color-scheme: dark) .breakpoint.event.breakpoint-for-interval:not(.breakpoint-paused-icon) .icon):
(@media(prefers-color-scheme: dark) .breakpoint.event.breakpoint-for-listener:not(.breakpoint-paused-icon) .icon):
(@media(prefers-color-scheme: dark) .breakpoint.event.breakpoint-for-timeout:not(.breakpoint-paused-icon) .icon):
- UserInterface/Views/FolderIcon.css:
(.tree-outline .folder-icon.selected:focus .icon):
(.tree-outline .origin-icon.selected:focus .icon):
(.tree-outline:focus .folder-icon.selected .icon): Deleted.
(.tree-outline:focus .origin-icon.selected .icon): Deleted.
- UserInterface/Views/RecordingActionTreeElement.css:
(.item.recording-action > .icon):
(@media (prefers-color-scheme: dark) .item.recording-action > .icon):
- 6:59 PM Changeset in webkit [257756] by
-
- 4 edits in trunk/Source/WebCore
Remove the required
LockHolderwhen callingWebAnimation::instances()
https://bugs.webkit.org/show_bug.cgi?id=208493
Reviewed by Simon Fraser.
Since
WebAnimations are not accessible fromWorkers (e.g. main thread only), there's no
reason to require that a lock be held in order to accessWebAnimation::instances().
- animation/WebAnimation.h:
- animation/WebAnimation.cpp:
(WebCore::WebAnimation::WebAnimation):
(WebCore::WebAnimation::~WebAnimation):
(WebCore::WebAnimation::instancesMutex): Deleted.
- inspector/agents/InspectorAnimationAgent.cpp:
(WebCore::InspectorAnimationAgent::enable):
- 6:49 PM Changeset in webkit [257755] by
-
- 60 edits in trunk
Add new Mac target numbers
https://bugs.webkit.org/show_bug.cgi?id=208398
Reviewed by Alexey Proskuryakov.
Source/bmalloc:
- Configurations/Base.xcconfig:
- Configurations/DebugRelease.xcconfig:
Source/JavaScriptCore:
- Configurations/Base.xcconfig:
- Configurations/DebugRelease.xcconfig:
- Configurations/Version.xcconfig:
- Configurations/WebKitTargetConditionals.xcconfig:
Source/ThirdParty/ANGLE:
- Configurations/Base.xcconfig:
- Configurations/DebugRelease.xcconfig:
- Configurations/Version.xcconfig:
- Configurations/WebKitTargetConditionals.xcconfig:
Source/ThirdParty/libwebrtc:
- Configurations/Base.xcconfig:
- Configurations/DebugRelease.xcconfig:
- Configurations/Version.xcconfig:
- Configurations/WebKitTargetConditionals.xcconfig:
Source/WebCore:
No new tests: adding target numbers doesn't necessitate any new testing.
- Configurations/Base.xcconfig:
- Configurations/DebugRelease.xcconfig:
- Configurations/Version.xcconfig:
- Configurations/WebKitTargetConditionals.xcconfig:
Source/WebKit:
- Configurations/Base.xcconfig:
- Configurations/DebugRelease.xcconfig:
- Configurations/Version.xcconfig:
- Configurations/WebKitTargetConditionals.xcconfig:
Source/WebKitLegacy/mac:
- Configurations/Base.xcconfig:
- Configurations/DebugRelease.xcconfig:
- Configurations/Version.xcconfig:
- Configurations/WebKitTargetConditionals.xcconfig:
Source/WTF:
- Configurations/Base.xcconfig:
- Configurations/DebugRelease.xcconfig:
- 6:37 PM Changeset in webkit [257754] by
-
- 14 edits1 add in trunk
[Cocoa] Mapping from MIME type to UTI type should be done in the UI process
https://bugs.webkit.org/show_bug.cgi?id=208415
Reviewed by Brent Fulgham.
Source/WebCore:
This is currently done in the WebContent process, but since this is using a system service which will be closed,
this mapping should be moved to the UI process. The UI process will create this mapping for a set of mime types,
and send it to the WebContent process.
API test: WebKit.UTIFromMIMEType
- platform/network/mac/UTIUtilities.h:
- platform/network/mac/UTIUtilities.mm:
(WebCore::mapUTIFromMIMEType):
(WebCore::UTIFromMIMETypeCachePolicy::createValueForKey):
(WebCore::cacheUTIFromMimeType):
(WebCore::UTIFromMIMEType):
(WebCore::mimeTypes):
(WebCore::createUTIFromMIMETypeMap):
(WebCore::setUTIFromMIMETypeMap):
- testing/Internals.cpp:
(WebCore::Internals::getUTIFromMIMEType):
- testing/Internals.mm:
(WebCore::Internals::getUTIFromMIMEType):
- testing/Internals.h:
- testing/Internals.idl:
Source/WebKit:
Send the mapping between MIME types and UTI types to the WebContent process as part of the Web
process creation parameters.
- Shared/WebProcessCreationParameters.cpp:
(WebKit::WebProcessCreationParameters::encode const):
(WebKit::WebProcessCreationParameters::decode):
- Shared/WebProcessCreationParameters.h:
- UIProcess/Cocoa/WebProcessPoolCocoa.mm:
(WebKit::WebProcessPool::platformInitializeWebProcess):
- WebProcess/cocoa/WebProcessCocoa.mm:
(WebKit::WebProcess::platformInitializeWebProcess):
Tools:
- TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
- TestWebKitAPI/Tests/WebKit/UTIFromMIMEType.mm: Added.
(TEST):
- 6:33 PM Changeset in webkit [257753] by
-
- 2 edits in trunk/Source/WebInspectorUI
Update the resource override button icon
https://bugs.webkit.org/show_bug.cgi?id=208459
Reviewed by Devin Rousso.
- UserInterface/Images/NavigationItemNetworkOverride.svg:
- 6:19 PM Changeset in webkit [257752] by
-
- 2 edits in trunk/Source/WebCore
Frame::layerTreeAsText should make sure that all the frames are clean and up-to-date
https://bugs.webkit.org/show_bug.cgi?id=208484
<rdar://problem/59972433>
Reviewed by Simon Fraser.
window.internals.layerTreeAsText() is designed to dump the layer structure of the current page content.
It calls updateLayout() on the mainframe's document to make sure we collect the layer information on a clear tree.
However Document::updateLayout is scoped to the current document's frame (the mainframe in this case) and
leaves all the other frames dirty.
- page/Frame.cpp:
(WebCore::Frame::layerTreeAsText const):
- 5:49 PM Changeset in webkit [257751] by
-
- 2 edits in trunk/LayoutTests
[ iOS wk2 ] http/tests/workers/service/postmessage-after-sw-process-crash.https.html is flaky failing, timing out and crashing.
https://bugs.webkit.org/show_bug.cgi?id=208491
Unreviewed test gardening.
- platform/ios-wk2/TestExpectations:
- 5:01 PM Changeset in webkit [257750] by
-
- 2 edits in trunk/Source/WebKit
Unreviewed sandbox compile fix.
- Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:
- 4:59 PM Changeset in webkit [257749] by
-
- 6 edits in trunk/Source
Annotate editable elements with hit test order
https://bugs.webkit.org/show_bug.cgi?id=208463
<rdar://problem/59962843>
Reviewed by Wenson Hsieh.
Source/WebCore:
Until <rdar://problem/59737118> is fixed, annotate editable elements with their hit test order
towards fixing <rdar://problem/59602885>.
- dom/ElementContext.h:
(WebCore::ElementContext::encode const):
(WebCore::ElementContext::decode):
Encode and decode the optional hit test order.
Source/WebKit:
Until <rdar://problem/59737118> is fixed, annotate editable elements with their hit test
order towards fixing <rdar://problem/59602885>. Only element contexts created as a result
of calling WebPage::textInputContextsInRect() have a meaningful hit test order.
Note that the hit test order of an element can only be meaningfully compared to the hit test
order of other elements returned in the same invocation of WebPage::textInputContextsInRect().
That is, the hit test order is not render tree-unique. So, the same element returned by two
different invocations of WebPage::textInputContextsInRect() cannot be compared to any other
element outside of the list it was returned in even if its order is the same in both lists.
- UIProcess/API/Cocoa/_WKTextInputContext.mm:
(-[_WKTextInputContext _hitTestOrder]): Added. If the context does not have a hit test order
(e.g. returned form WebPage::contextForElement()) then I chose to return 0 – treat it as the
frontmost element.
- UIProcess/API/Cocoa/_WKTextInputContextInternal.h:
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::textInputContextsInRect): Assign each element's hit test order. Following
r257722 the elements are already ordered by hit test order (frontmost to backmost). So, we can
simply assign monotonically increasing numbers.
(WebKit::WebPage::contextForElement const): Pass WTF::nullopt for the hit test order as I do
not have a need to support hit test order for individual elements.
- 4:57 PM Changeset in webkit [257748] by
-
- 4 edits in trunk/Source/WebCore
Unreviewed restabilization of non-unified build.
- css/parser/CSSSelectorParser.cpp:
- css/parser/CSSSelectorParser.h:
- layout/blockformatting/PrecomputedBlockMarginCollapse.cpp:
- 4:39 PM Changeset in webkit [257747] by
-
- 8 edits in trunk/Source
Implement canvas remote rendering
https://bugs.webkit.org/show_bug.cgi?id=204955
Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2020-03-02
Reviewed by Jon Lee.
Source/WebCore:
Prepare ConcreteImageBuffer to be created without immediate backend.
RemoteImageBuffer, which is a superclass of ConcreteImageBuffer, will be
created initially without a backend. It will be created when its twin
RemoteImageBufferProxy in the GPUProcess shares its backend.
- platform/graphics/ConcreteImageBuffer.h:
(WebCore::ConcreteImageBuffer::ensureBackendCreated const):
(WebCore::ConcreteImageBuffer::ensureBackend const): Deleted.
Source/WebKit:
- WebProcess/GPU/graphics/RemoteImageBuffer.h:
- WebProcess/GPU/graphics/RemoteImageBufferMessageHandler.cpp:
(WebKit::RemoteImageBufferMessageHandler::waitForCreateImageBufferBackend):
(WebKit::RemoteImageBufferMessageHandler::waitForCommitImageBufferFlushContext):
Synchronize the RemoteImageBuffer backend such that the context and the
DrawingContext are flushed to the backend in the GPUProcess only when
its pixels are needed in the WebProcess.
- WebProcess/GPU/graphics/RemoteImageBufferMessageHandler.h:
(WebKit::RemoteImageBufferMessageHandler::isPendingFlush const):
Tells whether the pixels of the backend is ready to use or a flushing is
being committed.
- WebProcess/GPU/graphics/RemoteRenderingBackend.cpp:
(WebKit::RemoteRenderingBackend::waitForCreateImageBufferBackend):
(WebKit::RemoteRenderingBackend::waitForCommitImageBufferFlushContext):
- WebProcess/GPU/graphics/RemoteRenderingBackend.h:
They block execution till certain RemoteRenderingBackendProxy messages
are received.
- 4:16 PM Changeset in webkit [257746] by
-
- 2 edits in trunk/Source/WebCore
ScriptController::executeIfJavaScriptURL() uses wrong JSGlobalObject.
https://bugs.webkit.org/show_bug.cgi?id=208290
<rdar://problem/59839476>
Reviewed by Chris Dumez.
The call to executeScriptIgnoringException() may have changed the current global
object of the window. We should be using the original global object that produced
the result string.
Also added a missing exception check needed after a potential rope resolution.
- bindings/js/ScriptController.cpp:
(WebCore::ScriptController::executeIfJavaScriptURL):
- 3:58 PM Changeset in webkit [257745] by
-
- 14 edits1 delete in trunk
Unreviewed, rolling out r257725.
This commit caused 10 API tests to fail
Reverted changeset:
"[Cocoa] Mapping from MIME type to UTI type should be done in
the UI process"
https://bugs.webkit.org/show_bug.cgi?id=208415
https://trac.webkit.org/changeset/257725
- 3:56 PM Changeset in webkit [257744] by
-
- 1 copy in tags/Safari-610.1.5.1
Tag Safari-610.1.5.1.
- 3:53 PM Changeset in webkit [257743] by
-
- 18 edits in trunk
Don't skip tests unnecessarily on arm64
https://bugs.webkit.org/show_bug.cgi?id=208470
<rdar://problem/59968869>
Reviewed by Tadeu Zagallo.
JSTests:
- microbenchmarks/bit-test-constant.js:
- microbenchmarks/bit-test-nonconstant.js:
- microbenchmarks/memcpy-typed-loop-large.js:
- microbenchmarks/memcpy-typed-loop-small.js:
- microbenchmarks/mul-immediate-sub.js:
- stress/dont-range-based-iterate-vector-that-is-mutated.js:
- stress/dont-reserve-huge-capacity-lexer.js:
- stress/new-largeish-contiguous-array-with-size.js:
- stress/sampling-profiler-richards.js:
- typeProfiler/deltablue-for-of.js:
- typeProfiler/getter-richards.js:
- wasm/regress/llint-callee-saves-with-fast-memory.js:
Tools:
- Scripts/run-jsc-stress-tests:
LayoutTests:
- js/script-tests/array-from.js:
- js/script-tests/function-apply-many-args.js:
- 3:42 PM Changeset in webkit [257742] by
-
- 8 edits in branches/safari-610.1.5-branch/Source
Versioning.
- 2:56 PM Changeset in webkit [257741] by
-
- 2 edits in trunk/LayoutTests
[ Mac wk2 ] is css3/shapes/shape-outside/shape-image/shape-image-025.html flaky failing.
https://bugs.webkit.org/show_bug.cgi?id=208476
Unreviewed test gardening.
- platform/mac-wk2/TestExpectations:
- 2:50 PM Changeset in webkit [257740] by
-
- 5 edits in trunk/Source
Add date/time style to macCatalyst
https://bugs.webkit.org/show_bug.cgi?id=208456
Reviewed by Wenson Hsieh.
Source/WebKit:
Add style flag for date/time pickers on macCatalyst.
- Platform/spi/ios/UIKitSPI.h:
- UIProcess/ios/forms/WKFormInputControl.mm:
(-[WKDateTimePicker datePickerStyle]):
(-[WKDateTimePicker initWithView:datePickerMode:]):
Source/WTF:
- wtf/PlatformHave.h:
- 2:50 PM Changeset in webkit [257739] by
-
- 20 edits in trunk
Fix for LayoutTests/accessibility/mac/search-text/search-text.html in IsolatedTree mode.
https://bugs.webkit.org/show_bug.cgi?id=208434
Reviewed by Chris Fleizach.
Source/WebCore:
Covered by LayoutTests/accessibility/mac/search-text/search-text.html
- Updates IsolatedTree for AXSelectedTextChanged notifications.
- Exposes webAreaObject through the AXCoreObject interface.
- AXIsolatedObject implementation for hasApplePDFAnnotationAttribute,
webAreaObject and stringForRange.
- accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::postTextStateChangeNotification):
(WebCore::AXObjectCache::updateIsolatedTree):
(WebCore::AXObjectCache::rootWebArea):
- accessibility/AXObjectCache.h:
- accessibility/AccessibilityObject.h:
- accessibility/AccessibilityObjectInterface.h:
- accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::isLoaded const):
(WebCore::AccessibilityRenderObject::accessKey const):
- accessibility/AccessibilityScrollView.h:
- accessibility/ios/AXObjectCacheIOS.mm:
(WebCore::AXObjectCache::postTextStateChangePlatformNotification):
(WebCore::AXObjectCache::postTextReplacementPlatformNotification):
(WebCore::AXObjectCache::postTextReplacementPlatformNotificationForTextControl):
- accessibility/isolatedtree/AXIsolatedObject.cpp:
(WebCore::AXIsolatedObject::initializeAttributeData):
(WebCore::AXIsolatedObject::stringForRange const):
(WebCore::AXIsolatedObject::hasApplePDFAnnotationAttribute const): Deleted.
- accessibility/isolatedtree/AXIsolatedObject.h:
- accessibility/isolatedtree/AXIsolatedTree.cpp:
(WebCore::AXIsolatedTree::removeNode):
(WebCore::AXIsolatedTree::applyPendingChanges):
- accessibility/mac/AXObjectCacheMac.mm:
(WebCore::AXObjectCache::postTextStateChangePlatformNotification):
(WebCore::addTextMarkerFor):
(WebCore::textReplacementChangeDictionary):
(WebCore::postUserInfoForChanges):
(WebCore::AXObjectCache::postTextReplacementPlatformNotification):
(WebCore::AXObjectCache::postTextReplacementPlatformNotificationForTextControl):
- accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
(-[WebAccessibilityObjectWrapper textMarkerRangeFromVisiblePositions:endPosition:]):
(-[WebAccessibilityObjectWrapper associatedPluginParent]):
(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):
(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
Tools:
- WebKitTestRunner/InjectedBundle/AccessibilityController.cpp:
(WTR::AccessibilityController::AccessibilityController): Initializes m_useAXThread.
(WTR::AccessibilityController::rootElement): No need to set m_useAXThread here since it is initialize in the constructor.
- WebKitTestRunner/InjectedBundle/mac/AccessibilityControllerMac.mm:
(WTR::AccessibilityController::accessibleElementById): Same as above.
LayoutTests:
- accessibility/mac/aria-expanded-notifications.html:
With this change, we now get the FocusChanged notification when the
script sets focus to a tree item.
- 2:26 PM Changeset in webkit [257738] by
-
- 2 edits in trunk/LayoutTests
[ Mac wk2 ] tiled-drawing/scrolling/fast-scroll-div-latched-mainframe-with-handler.html is flaky failing.
https://bugs.webkit.org/show_bug.cgi?id=208471
Unreviewed test gardening.
- platform/mac-wk2/TestExpectations:
- 2:03 PM Changeset in webkit [257737] by
-
- 1 copy in tags/Safari-609.1.20.111.8
Tag Safari-609.1.20.111.8.
- 2:02 PM Changeset in webkit [257736] by
-
- 2 edits in trunk/LayoutTests
[ macOS wk2 ] webgpu/whlsl/textures-sample-level.html is flaky failing and crashing
https://bugs.webkit.org/show_bug.cgi?id=207078
Unreviewed test gardening.
Corrected the expectations, so that they reflect the image failure issue and crashing.
- platform/mac-wk2/TestExpectations:
- 2:02 PM Changeset in webkit [257735] by
-
- 1 copy in tags/Safari-609.1.20.0.9
Tag Safari-609.1.20.0.9.
- 1:55 PM Changeset in webkit [257734] by
-
- 8 edits in branches/safari-609.1.20.111-branch/Source
Versioning.
- 1:55 PM Changeset in webkit [257733] by
-
- 8 edits in branches/safari-609.1.20.0-branch/Source
Versioning.
- 1:25 PM Changeset in webkit [257732] by
-
- 3 edits in trunk/Source/WebCore
Make Path::Path(const Path&) and Path::operator=(const Path&) cheap
https://bugs.webkit.org/show_bug.cgi?id=208265
<rdar://problem/59922452>
Reviewed by Darin Adler.
Make WebCore::Path's copy constructor and copy assignment operator cheaper. See below for more details; there
should be no observable change in behavior. This gives us approximately 6% back on the canvas lines subtest on
MotionMark, when the GPU process is used to render canvases (tested against macOS 10.15.3, on a 10-core iMac).
- platform/graphics/Path.h:
- platform/graphics/cg/PathCG.cpp:
(WebCore::Path::~Path):
(WebCore::Path::ensurePlatformPath):
(WebCore::Path::Path):
Update move constructors to set m_copyPathBeforeMutation to false on the given (moved) path.
(WebCore::Path::swap):
(WebCore::Path::initializeOrCopyPlatformPathIfNeeded):
Whenever we need to ensure the platform CGPath (i.e. prior to appending to it), check the new flag to see
whether it's necessary to apply the subsequent mutation on a copy of m_path, rather than m_path itself. The
exception to this is when m_path only has a retain count of 1, which implies that all other copies of this path
have been mutated (and have copied their platform CGPath as a result); this means it's safe to apply changes to
m_path, since this path is now the sole owner of the CGPath.
(WebCore::Path::operator=):
The copy constructor and copy assignment operators currently call CGPathCreateMutableCopy on the given path's
platform CGPath; this is to ensure that if either path is mutated in the future, the mutation won't also affect
the other copy of the WebCore::Path.
However, this call to CGPathCreateMutableCopy isn't needed in the case where a path is copied, but neither of
the paths are mutated. To avoid this extra copy, we can instead introduce a dirty bit (m_copyPathBeforeMutation)
that is set when a path is copied (either via the constructor, or through assignment) and proceed to simply copy
the path pointer to the new path. Only if either path is mutated do we then call CGPathCreateMutableCopy.
(WebCore::Path::transform):
(WebCore::Path::closeSubpath):
(WebCore::Path::addArc):
(WebCore::Path::addPath):
(WebCore::Path::clear):
- 1:21 PM Changeset in webkit [257731] by
-
- 3 edits in trunk/LayoutTests
[ iOS wk2 Debug and Mac Debug ] imported/w3c/IndexedDB-private-browsing/idbobjectstore_createIndex6-event_order.html is flaky failing.
https://bugs.webkit.org/show_bug.cgi?id=208467
Unreviewed test gardening.
- platform/ios-wk2/TestExpectations:
- platform/mac/TestExpectations:
- 1:12 PM Changeset in webkit [257730] by
-
- 22 edits4 copies5 adds in trunk/Source
Implement the remote ImageBuffer
https://bugs.webkit.org/show_bug.cgi?id=207221
Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2020-03-02
Reviewed by Jon Lee.
Source/WebCore:
- WebCore.xcodeproj/project.pbxproj:
- platform/graphics/ConcreteImageBuffer.h:
(WebCore::ConcreteImageBuffer::create):
ConcreteImageBuffer::create returns the derived class which it creates.
- platform/graphics/displaylists/DisplayList.h:
This using statement gives compilation error when referencing DisplayList
from WebKit.
- platform/graphics/displaylists/DisplayListDrawingContext.h:
RemoteImageBuffer inherits DisplayList::ImageBuffer so these methods
need to be exported.
- platform/graphics/displaylists/DisplayListImageBuffer.h:
(WebCore::DisplayList::ImageBuffer::ImageBuffer):
Make it possible for RemoteImageBuffer to be created with no backend. It
will be created later when RemoteImageBufferProxy shares its backend with
RemoteImageBuffer.
Source/WebKit:
RemoteImageBuffer and RemoteImageBufferProxy represent a single remote
ImageBuffer. The back end should be created by RemoteImageBufferProxy in
GPUProcess and shared with the RemoteImageBuffer in the WebProcess.
Flushing the DrawingContext will be done in GPUProcess. But creating the
native image out of the back end will be in GPUProcess.
RemoteRenderingBackend and RemoteRenderingBackendProxy are central points
for receiving and sending all the messages of the RemoteImageBuffer and
RemoteImageBufferProxy.
- GPUProcess/graphics/PlatformRemoteImageBufferProxy.h: Added.
Defines the platform types of RemoteImageBufferProxy.
- GPUProcess/graphics/RemoteImageBufferMessageHandlerProxy.cpp: Added.
(WebKit::RemoteImageBufferMessageHandlerProxy::RemoteImageBufferMessageHandlerProxy):
(WebKit::RemoteImageBufferMessageHandlerProxy::createBackend):
(WebKit::RemoteImageBufferMessageHandlerProxy::commitFlushContext):
- GPUProcess/graphics/RemoteImageBufferMessageHandlerProxy.h: Added.
Manages sending and receiving the messages of RemoteImageBufferProxy
- GPUProcess/graphics/RemoteImageBufferProxy.h: Added.
(WebKit::RemoteImageBufferProxy::create):
(WebKit::RemoteImageBufferProxy::RemoteImageBufferProxy):
It is responsible for creating a shared back end and replaying back drawing
commands.
- GPUProcess/graphics/RemoteRenderingBackendProxy.cpp:
(WebKit::RemoteRenderingBackendProxy::createImageBuffer):
(WebKit::RemoteRenderingBackendProxy::releaseImageBuffer):
(WebKit::RemoteRenderingBackendProxy::flushImageBufferDrawingContext):
- GPUProcess/graphics/RemoteRenderingBackendProxy.h:
(WebKit::RemoteRenderingBackendProxy::renderingBackendIdentifier const):
- GPUProcess/graphics/RemoteRenderingBackendProxy.messages.in:
Handle or dispatch messages received from RemoteRenderingBackend.
- Scripts/webkit/messages.py:
- Sources.txt:
- WebKit.xcodeproj/project.pbxproj:
- WebProcess/GPU/graphics/ImageBufferFlushIdentifier.h: Added.
- WebProcess/GPU/graphics/ImageBufferShareableBitmapBackend.cpp:
(WebKit::ImageBufferShareableBitmapBackend::create):
- WebProcess/GPU/graphics/ImageBufferShareableBitmapBackend.h:
Although hostWindow isn't used, this is what ConcreteImageBuffer::create
expects from the creator of the backend.
- WebProcess/GPU/graphics/PlatformRemoteImageBuffer.h: Added.
Defines the platform types of RemoteImageBuffer.
- WebProcess/GPU/graphics/RemoteImageBuffer.h: Added.
(WebKit::RemoteImageBuffer::create):
(WebKit::RemoteImageBuffer::RemoteImageBuffer):
It is responsible for creating RemoteImageBufferProxy and performing the
drawing commands in the GPUProcess.
- WebProcess/GPU/graphics/RemoteImageBufferMessageHandler.cpp: Added.
(WebKit::RemoteImageBufferMessageHandler::RemoteImageBufferMessageHandler):
(WebKit::RemoteImageBufferMessageHandler::~RemoteImageBufferMessageHandler):
(WebKit::RemoteImageBufferMessageHandler::flushDrawingContext):
(WebKit::RemoteImageBufferMessageHandler::commitFlushContext):
- WebProcess/GPU/graphics/RemoteImageBufferMessageHandler.h: Added.
(WebKit::RemoteImageBufferMessageHandler::imageBufferIdentifier const):
Manages sending and receiving the messages of RemoteImageBuffer.
- WebProcess/GPU/graphics/RemoteRenderingBackend.cpp:
(WebKit::RemoteRenderingBackend::createImageBuffer):
(WebKit::RemoteRenderingBackend::releaseImageBuffer):
(WebKit::RemoteRenderingBackend::createImageBufferBackend):
(WebKit::RemoteRenderingBackend::commitImageBufferFlushContext):
- WebProcess/GPU/graphics/RemoteRenderingBackend.h:
(WebKit::RemoteRenderingBackend::renderingBackendIdentifier const):
- WebProcess/GPU/graphics/RemoteRenderingBackend.messages.in:
Handle or dispatch messages received from RemoteRenderingBackendProxy.
- WebProcess/GPU/graphics/cocoa/ImageBufferShareableIOSurfaceBackend.cpp:
(WebKit::ImageBufferShareableIOSurfaceBackend::create):
- WebProcess/GPU/graphics/cocoa/ImageBufferShareableIOSurfaceBackend.h:
Although hostWindow isn't used, this is what ConcreteImageBuffer::create
expects from the creator of the backend.
- 1:07 PM Changeset in webkit [257729] by
-
- 6 edits19 adds in trunk
Fix behavior of pings regarding Origin header
https://bugs.webkit.org/show_bug.cgi?id=207102
Patch by Rob Buis <rbuis@igalia.com> on 2020-03-02
Reviewed by Youenn Fablet.
LayoutTests/imported/w3c:
Import relevant tests.
- web-platform-tests/html/semantics/links/downloading-resources/header-origin-expected.txt: Added.
- web-platform-tests/html/semantics/links/downloading-resources/header-origin-no-referrer-expected.txt: Added.
- web-platform-tests/html/semantics/links/downloading-resources/header-origin-no-referrer-when-downgrade-expected.txt: Added.
- web-platform-tests/html/semantics/links/downloading-resources/header-origin-no-referrer-when-downgrade.html: Added.
- web-platform-tests/html/semantics/links/downloading-resources/header-origin-no-referrer.html: Added.
- web-platform-tests/html/semantics/links/downloading-resources/header-origin-origin-expected.txt: Added.
- web-platform-tests/html/semantics/links/downloading-resources/header-origin-origin-when-cross-origin-expected.txt: Added.
- web-platform-tests/html/semantics/links/downloading-resources/header-origin-origin-when-cross-origin.html: Added.
- web-platform-tests/html/semantics/links/downloading-resources/header-origin-origin.html: Added.
- web-platform-tests/html/semantics/links/downloading-resources/header-origin-same-origin-expected.txt: Added.
- web-platform-tests/html/semantics/links/downloading-resources/header-origin-same-origin.html: Added.
- web-platform-tests/html/semantics/links/downloading-resources/header-origin-strict-origin-expected.txt: Added.
- web-platform-tests/html/semantics/links/downloading-resources/header-origin-strict-origin-when-cross-origin-expected.txt: Added.
- web-platform-tests/html/semantics/links/downloading-resources/header-origin-strict-origin-when-cross-origin.html: Added.
- web-platform-tests/html/semantics/links/downloading-resources/header-origin-strict-origin.html: Added.
- web-platform-tests/html/semantics/links/downloading-resources/header-origin-unsafe-url-expected.txt: Added.
- web-platform-tests/html/semantics/links/downloading-resources/header-origin-unsafe-url.html: Added.
- web-platform-tests/html/semantics/links/downloading-resources/header-origin.html: Added.
- web-platform-tests/html/semantics/links/downloading-resources/header-origin.js: Added.
(testOriginHeader):
(pollResult.return.new.Promise.):
(pollResult.return.new.Promise):
- web-platform-tests/html/semantics/links/downloading-resources/w3c-import.log:
Source/WebCore:
Fix behavior of pings regarding Origin header by using the
"append a request Origin header" algorithm [1]. This patch
also sets the origin before calling addExtraFieldsToSubresourceRequest
since the latter forces the origin to "null".
Tests: imported/w3c/web-platform-tests/html/semantics/links/downloading-resources/header-origin-no-referrer-when-downgrade.html
imported/w3c/web-platform-tests/html/semantics/links/downloading-resources/header-origin-no-referrer.html
imported/w3c/web-platform-tests/html/semantics/links/downloading-resources/header-origin-origin-when-cross-origin.html
imported/w3c/web-platform-tests/html/semantics/links/downloading-resources/header-origin-origin.html
imported/w3c/web-platform-tests/html/semantics/links/downloading-resources/header-origin-same-origin.html
imported/w3c/web-platform-tests/html/semantics/links/downloading-resources/header-origin-strict-origin-when-cross-origin.html
imported/w3c/web-platform-tests/html/semantics/links/downloading-resources/header-origin-strict-origin.html
imported/w3c/web-platform-tests/html/semantics/links/downloading-resources/header-origin-unsafe-url.html
imported/w3c/web-platform-tests/html/semantics/links/downloading-resources/header-origin.html
[1] https://fetch.spec.whatwg.org/#append-a-request-origin-header
- loader/PingLoader.cpp:
(WebCore::PingLoader::sendPing):
- page/SecurityPolicy.cpp:
(WebCore::SecurityPolicy::generateOriginHeader):
- page/SecurityPolicy.h:
- 12:58 PM Changeset in webkit [257728] by
-
- 7 edits1 add in trunk
Delete by val caching does not keep the subscript alive
https://bugs.webkit.org/show_bug.cgi?id=208393
Reviewed by Yusuke Suzuki.
JSTests:
- stress/delete-property-ic-stress.js: Added.
Source/JavaScriptCore:
Before, the provided test case crashed with asan because we did not keep deleteByVal
subscripts alive. This patch changes CacheableIdentifier to make this mistake harder
to make again, by making the constructor calls more explicit when CacheableIdentifier
will not keep an Identifier alive.
- jit/JITOperations.cpp:
- jit/Repatch.cpp:
(JSC::tryCachePutByID):
(JSC::tryCacheDeleteBy):
(JSC::repatchDeleteBy):
(JSC::tryCacheInByID):
(JSC::tryCacheInstanceOf):
(JSC::tryCacheDelBy): Deleted.
(JSC::repatchDelBy): Deleted.
- jit/Repatch.h:
- runtime/CacheableIdentifier.h:
- runtime/CacheableIdentifierInlines.h:
(JSC::CacheableIdentifier::createFromIdentifierOwnedByCodeBlock):
(JSC::CacheableIdentifier::createFromCell):
- 12:45 PM Changeset in webkit [257727] by
-
- 7 edits in trunk/Source/WebCore
Reduce size of PerformanceEntry
https://bugs.webkit.org/show_bug.cgi?id=208452
Reviewed by Devin Rousso.
Reduce size of PerformanceEntry by leveraging the fact that it is polymorphic.
- page/PerformanceEntry.cpp:
(WebCore::PerformanceEntry::PerformanceEntry):
- page/PerformanceEntry.h:
(WebCore::PerformanceEntry::name const):
(WebCore::PerformanceEntry::isResource const):
(WebCore::PerformanceEntry::isMark const):
(WebCore::PerformanceEntry::isMeasure const):
(WebCore::PerformanceEntry::entryType const): Deleted.
(WebCore::PerformanceEntry::type const): Deleted.
- page/PerformanceMark.h:
- page/PerformanceMeasure.h:
- page/PerformanceResourceTiming.cpp:
(WebCore::PerformanceResourceTiming::PerformanceResourceTiming):
(WebCore::PerformanceResourceTiming::nextHopProtocol const):
- page/PerformanceResourceTiming.h:
- 12:24 PM Changeset in webkit [257726] by
-
- 34 edits14 adds in trunk
ResourceLoadStatistics: Enable cookie blocking and the Storage Access API in ephemeral sessions
https://bugs.webkit.org/show_bug.cgi?id=208399
<rdar://problem/24731650>
Reviewed by Brent Fulgham.
Source/WebCore:
Tests: http/tests/resourceLoadStatistics/third-party-cookie-blocking-ephemeral-database.html
http/tests/resourceLoadStatistics/third-party-cookie-blocking-ephemeral.html
http/tests/storageAccess/deny-due-to-no-interaction-under-general-third-party-cookie-blocking-ephemeral.html
http/tests/storageAccess/has-storage-access-under-general-third-party-cookie-blocking-with-cookie-ephemeral.html
http/tests/storageAccess/has-storage-access-under-general-third-party-cookie-blocking-without-cookie-ephemeral.html
http/tests/storageAccess/request-and-grant-access-cross-origin-non-sandboxed-iframe-ephemeral.html
http/tests/storageAccess/request-storage-access-cross-origin-sandboxed-iframe-without-user-gesture-ephemeral.html
- loader/ResourceLoadStatistics.h:
Adds a boolean enum IsEphemeral which is used to capture ephemeral state
across various classes.
Source/WebKit:
This patch enables resource load statistics, or ITP, in ephemeral sessions.
Since full third-party cookie blocking is stateless, it can now be enabled in
ephemeral sessions. User interaction as a gate for calling the Storage Access
API can be captured in an ephemeral fashion as well to allow authenticated
embeds.
No actual statistics are captured which means that the constructor for
WebKit::WebResourceLoadStatisticsStore skips setting up the memory store,
the persistent store, and the database store.
The functionality that is supported is instead carried out in a set of
private "*Ephemeral()" functions, for instance hasStorageAccessEphemeral().
The public functions check ephemeral status and route accordingly.
A release assertion in WebResourceLoadStatisticsStore::postTask()
guarantees that we never make use of the statistics layer in ephemeral
sessions.
Early returns for ephemeral sessions has been removed in several places.
WebKit::WebResourceLoadObserver now accepts being instantiated in an
ephemeral session but is told whether it is and skips all statistics
collection except user interaction which is needed to gate the
Storage Access API. A release assertion in
WebResourceLoadObserver::ensureResourceStatisticsForRegistrableDomain()
makes sure that we never start collecting statistics in ephemeral mode.
A selection of test cases have been added with an ephemeral setting and
a new test function isResourceLoadStatisticsEphemeral() has been added
so that layout tests can make sure that an ephemeral setup is running.
This last bit is important since test cases will likely still pass if a
regression were to make the test session persistent.
- NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp:
(WebKit::WebResourceLoadStatisticsStore::setNotifyPagesWhenDataRecordsWereScanned):
(WebKit::WebResourceLoadStatisticsStore::setIsRunningTest):
(WebKit::WebResourceLoadStatisticsStore::WebResourceLoadStatisticsStore):
(WebKit::WebResourceLoadStatisticsStore::postTask):
(WebKit::WebResourceLoadStatisticsStore::setResourceLoadStatisticsDebugMode):
(WebKit::WebResourceLoadStatisticsStore::setPrevalentResourceForDebugMode):
(WebKit::WebResourceLoadStatisticsStore::hasStorageAccess):
(WebKit::WebResourceLoadStatisticsStore::hasStorageAccessEphemeral):
(WebKit::WebResourceLoadStatisticsStore::requestStorageAccess):
(WebKit::WebResourceLoadStatisticsStore::requestStorageAccessEphemeral):
(WebKit::WebResourceLoadStatisticsStore::requestStorageAccessUnderOpenerEphemeral):
(WebKit::WebResourceLoadStatisticsStore::grantStorageAccessEphemeral):
(WebKit::WebResourceLoadStatisticsStore::setThirdPartyCookieBlockingMode):
(WebKit::WebResourceLoadStatisticsStore::setFirstPartyWebsiteDataRemovalMode):
(WebKit::WebResourceLoadStatisticsStore::applicationWillTerminate):
(WebKit::WebResourceLoadStatisticsStore::logUserInteraction):
(WebKit::WebResourceLoadStatisticsStore::logUserInteractionEphemeral):
(WebKit::WebResourceLoadStatisticsStore::clearUserInteraction):
(WebKit::WebResourceLoadStatisticsStore::clearUserInteractionEphemeral):
(WebKit::WebResourceLoadStatisticsStore::hasHadUserInteraction):
(WebKit::WebResourceLoadStatisticsStore::hasHadUserInteractionEphemeral):
(WebKit::WebResourceLoadStatisticsStore::isPrevalentResource):
(WebKit::WebResourceLoadStatisticsStore::scheduleClearInMemoryAndPersistent):
(WebKit::WebResourceLoadStatisticsStore::clearInMemoryEphemeral):
(WebKit::WebResourceLoadStatisticsStore::resetParametersToDefaultValues):
(WebKit::WebResourceLoadStatisticsStore::suspend):
Added a comment on why this function is not applicable to ephemeral sessions.
(WebKit::WebResourceLoadStatisticsStore::resume):
Added a comment on why this function is not applicable to ephemeral sessions.
- NetworkProcess/Classifier/WebResourceLoadStatisticsStore.h:
- NetworkProcess/NetworkConnectionToWebProcess.cpp:
(WebKit::NetworkConnectionToWebProcess::resourceLoadStatisticsUpdated):
- NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::isResourceLoadStatisticsEphemeral const):
(WebKit::NetworkProcess::prepareToSuspend):
Skipped call to suspend ITP if it's running in ephemeral mode.
(WebKit::void NetworkProcess::resume):
Skipped call to resume ITP if it's running in ephemeral mode.
- NetworkProcess/NetworkProcess.h:
- NetworkProcess/NetworkProcess.messages.in:
- NetworkProcess/NetworkSession.cpp:
(WebKit::NetworkSession::setResourceLoadStatisticsEnabled):
(WebKit::NetworkSession::recreateResourceLoadStatisticStore):
- UIProcess/API/C/WKWebsiteDataStoreRef.cpp:
(WKWebsiteDataStoreIsStatisticsEphemeral):
- UIProcess/API/C/WKWebsiteDataStoreRef.h:
- UIProcess/Network/NetworkProcessProxy.cpp:
(WebKit::NetworkProcessProxy::isResourceLoadStatisticsEphemeral):
(WebKit::NetworkProcessProxy::addSession):
- UIProcess/Network/NetworkProcessProxy.h:
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::decidePolicyForNavigationAction):
- UIProcess/WebsiteData/WebsiteDataStore.cpp:
(WebKit::WebsiteDataStore::setResourceLoadStatisticsEnabled):
(WebKit::WebsiteDataStore::isResourceLoadStatisticsEphemeral const):
- UIProcess/WebsiteData/WebsiteDataStore.h:
- WebProcess/WebCoreSupport/WebResourceLoadObserver.cpp:
(WebKit::WebResourceLoadObserver::WebResourceLoadObserver):
(WebKit::WebResourceLoadObserver::ensureResourceStatisticsForRegistrableDomain):
(WebKit::WebResourceLoadObserver::logFontLoad):
(WebKit::WebResourceLoadObserver::logCanvasRead):
(WebKit::WebResourceLoadObserver::logCanvasWriteOrMeasure):
(WebKit::WebResourceLoadObserver::logNavigatorAPIAccessed):
(WebKit::WebResourceLoadObserver::logScreenAPIAccessed):
(WebKit::WebResourceLoadObserver::logSubresourceLoading):
(WebKit::WebResourceLoadObserver::logWebSocketLoading):
(WebKit::WebResourceLoadObserver::logUserInteractionWithReducedTimeResolution):
(WebKit::WebResourceLoadObserver::logSubresourceLoadingForTesting):
- WebProcess/WebCoreSupport/WebResourceLoadObserver.h:
- WebProcess/WebProcess.cpp:
(WebKit::WebProcess::setWebsiteDataStoreParameters):
(WebKit::WebProcess::setResourceLoadStatisticsEnabled):
Tools:
The majority of the changes in WTR::TestController is (partially) fixing a bug
where the TestRunner would statically use the default website datastore instead
of the website data store configure for the page. This worked for persistent
storage testing but not for ephemeral sessions which is what this patch is all
about. The previous TestController::websiteDataStore() is now called
TestController::defaultWebsiteDataStore() and the new
TestController::websiteDataStore() returns the configured website data store.
Most of the use of the default website data store should probably change but
that's not really for this patch to deal with. I did however move all of
resource load statistics' use to the new TestController::websiteDataStore().
A new TestRunner function was added: isStatisticsEphemeral()
It allows test cases to query the ephemeral status of resource load statistics.
One problem that is mitigated in this patch but not fully fixed is that for
Cocoa platforms, the TestRunner sets up two ephemeral sessions, once in
TestController::generatePageConfiguration() via C API
WKPageConfigurationSetWebsiteDataStore(), and then again in
TestControllerCocoa's initializeWebViewConfiguration() via Cocoa API
[copiedConfiguration setWebsiteDataStore:ephemeralWebsiteDataStore].
I tried removing the latter since one session for all platforms should be
Enough but got broken behavior as a result. So now both are still there
and both enable resource load statistics.
- WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
- WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::isStatisticsEphemeral):
- WebKitTestRunner/InjectedBundle/TestRunner.h:
- WebKitTestRunner/TestController.cpp:
(WTR::TestController::defaultWebsiteDataStore):
(WTR::TestController::websiteDataStore):
(WTR::TestController::generatePageConfiguration):
(WTR::TestController::resetPreferencesToConsistentValues):
(WTR::TestController::resetStateToConsistentValues):
(WTR::TestController::didReceiveSynchronousMessageFromInjectedBundle):
(WTR::TestController::decidePolicyForNavigationAction):
(WTR::TestController::platformAdjustContext):
(WTR::TestController::clearServiceWorkerRegistrations):
(WTR::TestController::clearDOMCache):
(WTR::TestController::clearDOMCaches):
(WTR::TestController::clearIndexedDatabases):
(WTR::TestController::clearLocalStorage):
(WTR::TestController::hasDOMCache):
(WTR::TestController::domCacheSize):
(WTR::TestController::setStatisticsEnabled):
(WTR::TestController::isStatisticsEphemeral):
(WTR::TestController::setStatisticsDebugMode):
(WTR::TestController::setStatisticsPrevalentResourceForDebugMode):
(WTR::TestController::setStatisticsLastSeen):
(WTR::TestController::setStatisticsMergeStatistic):
(WTR::TestController::setStatisticsPrevalentResource):
(WTR::TestController::setStatisticsVeryPrevalentResource):
(WTR::TestController::dumpResourceLoadStatistics):
(WTR::TestController::isStatisticsPrevalentResource):
(WTR::TestController::isStatisticsVeryPrevalentResource):
(WTR::TestController::isStatisticsRegisteredAsSubresourceUnder):
(WTR::TestController::isStatisticsRegisteredAsSubFrameUnder):
(WTR::TestController::isStatisticsRegisteredAsRedirectingTo):
(WTR::TestController::setStatisticsHasHadUserInteraction):
(WTR::TestController::isStatisticsHasHadUserInteraction):
(WTR::TestController::isStatisticsOnlyInDatabaseOnce):
(WTR::TestController::setStatisticsGrandfathered):
(WTR::TestController::isStatisticsGrandfathered):
(WTR::TestController::setUseITPDatabase):
(WTR::TestController::setStatisticsSubframeUnderTopFrameOrigin):
(WTR::TestController::setStatisticsSubresourceUnderTopFrameOrigin):
(WTR::TestController::setStatisticsSubresourceUniqueRedirectTo):
(WTR::TestController::setStatisticsSubresourceUniqueRedirectFrom):
(WTR::TestController::setStatisticsTopFrameUniqueRedirectTo):
(WTR::TestController::setStatisticsTopFrameUniqueRedirectFrom):
(WTR::TestController::setStatisticsCrossSiteLoadWithLinkDecoration):
(WTR::TestController::setStatisticsTimeToLiveUserInteraction):
(WTR::TestController::statisticsProcessStatisticsAndDataRecords):
(WTR::TestController::statisticsUpdateCookieBlocking):
(WTR::TestController::statisticsSubmitTelemetry):
(WTR::TestController::setStatisticsNotifyPagesWhenDataRecordsWereScanned):
(WTR::TestController::setStatisticsIsRunningTest):
(WTR::TestController::setStatisticsShouldClassifyResourcesBeforeDataRecordsRemoval):
(WTR::TestController::setStatisticsNotifyPagesWhenTelemetryWasCaptured):
(WTR::TestController::setStatisticsMinimumTimeBetweenDataRecordsRemoval):
(WTR::TestController::setStatisticsGrandfatheringTime):
(WTR::TestController::setStatisticsMaxStatisticsEntries):
(WTR::TestController::setStatisticsPruneEntriesDownTo):
(WTR::TestController::statisticsClearInMemoryAndPersistentStore):
(WTR::TestController::statisticsClearInMemoryAndPersistentStoreModifiedSinceHours):
(WTR::TestController::statisticsClearThroughWebsiteDataRemoval):
(WTR::TestController::statisticsDeleteCookiesForHost):
(WTR::TestController::isStatisticsHasLocalStorage):
(WTR::TestController::setStatisticsCacheMaxAgeCap):
(WTR::TestController::hasStatisticsIsolatedSession):
(WTR::TestController::setStatisticsShouldDowngradeReferrer):
(WTR::TestController::setStatisticsShouldBlockThirdPartyCookies):
(WTR::TestController::setStatisticsFirstPartyWebsiteDataRemovalMode):
(WTR::TestController::statisticsResetToConsistentState):
(WTR::TestController::clearAdClickAttributionsThroughWebsiteDataRemoval):
- WebKitTestRunner/TestController.h:
- WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::invoke):
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
- WebKitTestRunner/cocoa/TestControllerCocoa.mm:
(WTR::initializeWebViewConfiguration):
(WTR::TestController::platformCreateWebView):
LayoutTests:
- http/tests/adClickAttribution/store-disabled-in-ephemeral-session.html:
Just moved the <!-- webkit-test-runner [ useFlexibleViewport=true useEphemeralSession=true ] -->
header up to the top.
- http/tests/resourceLoadStatistics/third-party-cookie-blocking-ephemeral-database-expected.txt: Added.
- http/tests/resourceLoadStatistics/third-party-cookie-blocking-ephemeral-database.html: Added.
- http/tests/resourceLoadStatistics/third-party-cookie-blocking-ephemeral-expected.txt: Added.
- http/tests/resourceLoadStatistics/third-party-cookie-blocking-ephemeral.html: Added.
- http/tests/storageAccess/deny-due-to-no-interaction-under-general-third-party-cookie-blocking-ephemeral-expected.txt: Added.
- http/tests/storageAccess/deny-due-to-no-interaction-under-general-third-party-cookie-blocking-ephemeral.html: Added.
- http/tests/storageAccess/has-storage-access-true-if-third-party-has-cookies-ephemeral-database.html:
- http/tests/storageAccess/has-storage-access-true-if-third-party-has-cookies-ephemeral.html:
Added explicit disabling of resource load statistics. However, something enables it again. See
Comment under TestExpectation files below.
- http/tests/storageAccess/has-storage-access-under-general-third-party-cookie-blocking-with-cookie-ephemeral-expected.txt: Added.
- http/tests/storageAccess/has-storage-access-under-general-third-party-cookie-blocking-with-cookie-ephemeral.html: Added.
- http/tests/storageAccess/has-storage-access-under-general-third-party-cookie-blocking-without-cookie-ephemeral-expected.txt: Added.
- http/tests/storageAccess/has-storage-access-under-general-third-party-cookie-blocking-without-cookie-ephemeral.html: Added.
- http/tests/storageAccess/request-and-grant-access-cross-origin-non-sandboxed-iframe-ephemeral-expected.txt: Added.
- http/tests/storageAccess/request-and-grant-access-cross-origin-non-sandboxed-iframe-ephemeral.html: Added.
- http/tests/storageAccess/request-storage-access-cross-origin-sandboxed-iframe-without-user-gesture-ephemeral-expected.txt: Added.
- http/tests/storageAccess/request-storage-access-cross-origin-sandboxed-iframe-without-user-gesture-ephemeral.html: Added.
- platform/ios/TestExpectations:
- platform/mac-wk2/TestExpectations:
These two test cases are now being skipped because resource load statistics are on in ephemeral sessions:
http/tests/storageAccess/has-storage-access-true-if-third-party-has-cookies-ephemeral.html
http/tests/storageAccess/has-storage-access-true-if-third-party-has-cookies-ephemeral-database.html
https://bugs.webkit.org/show_bug.cgi?id=208400 tracks the work to figure out how this can be tested
since some bug in the TestRunner is re-enabling resource load statistics as soon as you turn it off
in ephemeral sessions.
- 12:21 PM Changeset in webkit [257725] by
-
- 14 edits1 add in trunk
[Cocoa] Mapping from MIME type to UTI type should be done in the UI process
https://bugs.webkit.org/show_bug.cgi?id=208415
Reviewed by Brent Fulgham.
Source/WebCore:
This is currently done in the WebContent process, but since this is using a system service which will be closed,
this mapping should be moved to the UI process. The UI process will create this mapping for a set of mime types,
and send it to the WebContent process.
API test: WebKit.UTIFromMIMEType
- platform/network/mac/UTIUtilities.h:
- platform/network/mac/UTIUtilities.mm:
(WebCore::mapUTIFromMIMEType):
(WebCore::UTIFromMIMETypeCachePolicy::createValueForKey):
(WebCore::cacheUTIFromMimeType):
(WebCore::UTIFromMIMEType):
(WebCore::mimeTypes):
(WebCore::createUTIFromMIMETypeMap):
(WebCore::setUTIFromMIMETypeMap):
- testing/Internals.cpp:
(WebCore::Internals::getUTIFromMIMEType):
- testing/Internals.mm:
(WebCore::Internals::getUTIFromMIMEType):
- testing/Internals.h:
- testing/Internals.idl:
Source/WebKit:
Send the mapping between MIME types and UTI types to the WebContent process as part of the Web
process creation parameters.
- Shared/WebProcessCreationParameters.cpp:
(WebKit::WebProcessCreationParameters::encode const):
(WebKit::WebProcessCreationParameters::decode):
- Shared/WebProcessCreationParameters.h:
- UIProcess/Cocoa/WebProcessPoolCocoa.mm:
(WebKit::WebProcessPool::platformInitializeWebProcess):
- WebProcess/cocoa/WebProcessCocoa.mm:
(WebKit::WebProcess::platformInitializeWebProcess):
Tools:
- TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
- TestWebKitAPI/Tests/WebKit/UTIFromMIMEType.mm: Added.
(TEST):
- 12:07 PM Changeset in webkit [257724] by
-
- 2 edits in trunk/Source/WebKit
[GPUP] Plumb through more MediaPlayer methods
https://bugs.webkit.org/show_bug.cgi?id=208423
<rdar://problem/59924386>
Unreviewed, remove an invalid ASSERT that causes some tests to crash.
- WebProcess/GPU/media/MediaPlayerPrivateRemote.cpp:
(WebKit::MediaPlayerPrivateRemote::load):
- 11:57 AM Changeset in webkit [257723] by
-
- 5 edits in trunk
[iOS] Deny mach lookup access to distributed notifications in the WebContent process
https://bugs.webkit.org/show_bug.cgi?id=208455
Reviewed by Brent Fulgham.
Source/WebKit:
On iOS, deny mach lookup access to the service "com.apple.distributed_notifications@1v3" in the WebContent process.
Test: fast/sandbox/ios/sandbox-mach-lookup.html
- Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:
LayoutTests:
- fast/sandbox/ios/sandbox-mach-lookup-expected.txt:
- fast/sandbox/ios/sandbox-mach-lookup.html:
- 11:54 AM Changeset in webkit [257722] by
-
- 8 edits in trunk
Page::editableElementsInRect() should find nested editable elements and return found elements in paint order
https://bugs.webkit.org/show_bug.cgi?id=208352
<rdar://problem/59867815>
Reviewed by Wenson Hsieh.
Source/WebCore:
Use the existing rect-based hit testing machinery to collect all the editable elements on
the page that a person can hit. This makes it possible to find nested editable elements
(e.g. an <input> inside a <div contenteditable="true">), ignore elements with CSS "pointer-events: none",
and return elements in paint order (closest to farthest to a person's face). The latter
makes it possible for a caller to know what element is frontmost, especially when two
editable elements overlap.
- page/Page.cpp:
(WebCore::Page::editableElementsInRect const): Implement in terms of hit testing machinery.
- rendering/HitTestLocation.cpp:
(WebCore::HitTestLocation::HitTestLocation):
- rendering/HitTestLocation.h:
- rendering/HitTestResult.cpp:
(WebCore::HitTestResult::HitTestResult):
- rendering/HitTestResult.h:
Added convenience constructors that take a LayoutRect.
Tools:
Update test results to reflect the new behavior. To do this I also need to fix up the test code
to actually scroll the web content. This also means we now execute the same code on both Mac and
iOS to do the scrolling: window.scrollTo(0, 5000). Also fixed up sub-test "Inputs scrolled outside
the requested rect; should not be included." to use a 10000px height <div> so that you can scroll
to a y position of 5000. Otherwise, it's impossible to do because the page height is < 5000px.
- TestWebKitAPI/Tests/WebKitCocoa/RequestTextInputContext.mm:
(TEST):
- 11:46 AM Changeset in webkit [257721] by
-
- 4 edits in trunk/Source
Fix JSC 32bit alignment increase gcc warning
https://bugs.webkit.org/show_bug.cgi?id=208445
Patch by Paulo Matos <Paulo Matos> on 2020-03-02
Reviewed by Yusuke Suzuki.
Use reinterpret_cast_ptr<>() instead of reinterpret_cast<>() to
avoid GCC warning about increase in alignment requirement for cast
target type.
Source/JavaScriptCore:
- dfg/DFGOSRExit.cpp:
(JSC::DFG::OSRExit::compileExit):
Source/WTF:
- wtf/HashTable.h:
(WTF::HashTable::tableSize const):
(WTF::HashTable::setTableSize const):
(WTF::HashTable::tableSizeMask const):
(WTF::HashTable::setTableSizeMask):
(WTF::HashTable::keyCount const):
(WTF::HashTable::setKeyCount const):
(WTF::HashTable::deletedCount const):
(WTF::HashTable::setDeletedCount const):
(WTF::KeyTraits>::allocateTable):
(WTF::KeyTraits>::deallocateTable):
- 11:10 AM Changeset in webkit [257720] by
-
- 3 edits2 adds in trunk
ASSERT(m_column != unsetColumnIndex) in RenderTable::cellBefore
https://bugs.webkit.org/show_bug.cgi?id=208397
Patch by Doug Kelly <Doug Kelly> on 2020-03-02
Reviewed by Zalan Bujtas.
Source/WebCore:
When inserting a cell into a table row which is not visible, this can lead to attempting to compute the repaint
rects during tree building. Instead, mark the layer as dirty using dirtyVisibleContentStatus(), and the visibility
will be recomputed at a later time.
Test: fast/table/insert-cell-invisible-parent.html
- rendering/RenderElement.cpp:
(WebCore::RenderElement::insertedIntoTree):
LayoutTests:
- fast/table/insert-cell-invisible-parent-expected.txt: Added.
- fast/table/insert-cell-invisible-parent.html: Added.
- 10:53 AM Changeset in webkit [257719] by
-
- 2 edits in trunk/Source/JavaScriptCore
Unreviewed, fix wrong assertion
https://bugs.webkit.org/show_bug.cgi?id=208404
<rdar://problem/59956592>
- runtime/CachedTypes.cpp:
(JSC::CachedUniquedStringImplBase::decode const):
- 10:24 AM WebKitGTK edited by
- (diff)
- 10:00 AM Changeset in webkit [257718] by
-
- 5 edits in trunk/Source/WebCore
[BFC][MarginCollapsing] Sometimes precomputed margin values are just plain wrong.
https://bugs.webkit.org/show_bug.cgi?id=208448
<rdar://problem/59950390>
Reviewed by Antti Koivisto.
Consider the following content:
<div style="float: left"></div>
<div style="height: 100px">
<div style="float: left"></div>
<div>
<span style="white-space: pre"> </span>
</div>
<div style="margin-bottom: 320px;"></div>
</div>
</div>
In order to compute the position of the second float we need be able to intersect it with all
the other floats in the same floating context. The float positioning starts with the box's static vertical position
which is the position the box would be taking if it wasn't floating positioned.
This vertical position needs to be in the same coordinate system as all the other floats to be able to intersect properly.
The coordinate system is the formatting root's content box.
When the second float box is being positioned, we don't yet have final margins for its ancestors, so the box's vertical
position at this point is only computed relative to its containing block.
In most cases we could just walk the ancestor chain all the way to the formatting root and pre-compute the margin before values.
However in some not-so-rare cases, the ancestor margin before value depends on some content after the float box and to be able
to figure out the exact margin values, we actually need to lay out the rest of the content.
In the example above, the second float's final position depends on whether the <span> has white-space: pre or not (whether the parent
div produces empty content or not).
This patch computes margin before values only for the ancestors ignoring margin collapsing (and margin after values).
- layout/MarginTypes.h:
(WebCore::Layout::PrecomputedMarginBefore::usedValue const):
- layout/blockformatting/BlockFormattingContext.cpp:
(WebCore::Layout::BlockFormattingContext::precomputeVerticalPositionForBoxAndAncestors):
(WebCore::Layout::BlockFormattingContext::computeHeightAndMargin):
(WebCore::Layout::BlockFormattingContext::setPrecomputedMarginBefore): Deleted.
(WebCore::Layout::BlockFormattingContext::hasPrecomputedMarginBefore const): Deleted.
- layout/blockformatting/BlockFormattingContext.h:
- layout/blockformatting/PrecomputedBlockMarginCollapse.cpp:
(WebCore::Layout::BlockFormattingContext::MarginCollapse::precomputedPositiveNegativeValues const):
(WebCore::Layout::BlockFormattingContext::MarginCollapse::precomputedPositiveNegativeMarginBefore const):
(WebCore::Layout::BlockFormattingContext::MarginCollapse::precomputedMarginBefore):
- 9:44 AM Changeset in webkit [257717] by
-
- 2 edits in trunk/LayoutTests
[ Mac ] webanimations/accelerated-animation-renderer-change.html is flaky failing.
https://bugs.webkit.org/show_bug.cgi?id=208450
Unreviewed test gardening.
- platform/mac/TestExpectations:
- 9:37 AM Changeset in webkit [257716] by
-
- 4 edits in trunk
maps.google.com is not loading properly, screen flickers when zooming
https://bugs.webkit.org/show_bug.cgi?id=208331
<rdar://problem/59790757>
Reviewed by Antoine Quint.
Source/WebCore:
When using ANGLE, we don't need the GL_ANGLE_depth_texture extension.
We were mistakenly checking for it and deciding to not allow
combined depth+stencil framebuffer attachments.
Test: webgl/1.0.3/conformance/renderbuffers/framebuffer-object-attachment.html
(now passes on iOS)
- html/canvas/WebGLRenderingContextBase.cpp:
(WebCore::WebGLRenderingContextBase::setupFlags):
LayoutTests:
- platform/ios/TestExpectations: remove failing expectation for:
webgl/1.0.3/conformance/renderbuffers/framebuffer-object-attachment.html
- 9:24 AM WebKitGTK/2.28.x edited by
- (diff)
- 8:47 AM Changeset in webkit [257715] by
-
- 2 edits in trunk/LayoutTests
[ Mac wk1 Debug ] mathml/presentation/attributes-accent-accentunder-dynamic.html is flaky failing.
https://bugs.webkit.org/show_bug.cgi?id=208449
Unreviewed test gardening.
- platform/mac-wk1/TestExpectations:
- 8:25 AM Changeset in webkit [257714] by
-
- 2 edits in trunk/Source/WebCore
Add quirk to disable to back/forward cache on docs.google.com
https://bugs.webkit.org/show_bug.cgi?id=208381
<rdar://problem/59893415>
Reviewed by Ryosuke Niwa.
Google Docs used to bypass the back/forward cache by serving "Cache-Control: no-store"
over HTTPS. We started caching such content in r250437 but the Google Docs content
unfortunately is not currently compatible because it puts an overlay over the page and
starts an animation when navigating away and fails to remove those when coming back from
the back/forward cache (e.g. in 'pageshow' event handler).
- page/Quirks.cpp:
(WebCore::Quirks::shouldBypassBackForwardCache const):
- 8:13 AM Changeset in webkit [257713] by
-
- 14 edits1 delete in trunk
Unreviewed, rolling out r257687.
This commit caused debug tests to crash for macOS & iOS
Reverted changeset:
"[Cocoa] Mapping from MIME type to UTI type should be done in
the UI process"
https://bugs.webkit.org/show_bug.cgi?id=208415
https://trac.webkit.org/changeset/257687
- 7:57 AM Changeset in webkit [257712] by
-
- 2 edits in trunk/Source/WebCore
[GStreamer] Get rid of custom GCD implementation
https://bugs.webkit.org/show_bug.cgi?id=208446
Reviewed by Xabier Rodriguez-Calvar.
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::naturalSize const):
(WebCore::greatestCommonDivisor): Deleted.
- 7:54 AM Changeset in webkit [257711] by
-
- 25 edits in trunk
[GPUP] Plumb through more MediaPlayer methods
https://bugs.webkit.org/show_bug.cgi?id=208423
<rdar://problem/59924386>
Reviewed by Youenn Fablet.
Source/WebCore:
No new tests, unskipped ~1200 existing media tests.
- html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::mediaPlayerPause): Deleted.
(WebCore::HTMLMediaElement::mediaPlayerPlay): Deleted.
- html/HTMLMediaElement.h:
- platform/graphics/MediaPlayer.h:
(WebCore::MediaPlayerClient::mediaPlayerContentsScale const):
(WebCore::MediaPlayerClient::mediaPlayerPause): Deleted.
(WebCore::MediaPlayerClient::mediaPlayerPlay): Deleted.
Source/WebKit:
- GPUProcess/media/RemoteMediaPlayerManagerProxy.cpp:
(WebKit::RemoteMediaPlayerManagerProxy::updateVideoFullscreenInlineImage): Deleted.
(WebKit::RemoteMediaPlayerManagerProxy::setVideoFullscreenFrame): Deleted.
(WebKit::RemoteMediaPlayerManagerProxy::setVideoFullscreenGravity): Deleted.
(WebKit::RemoteMediaPlayerManagerProxy::setVideoFullscreenMode): Deleted.
(WebKit::RemoteMediaPlayerManagerProxy::setVolume): Deleted.
(WebKit::RemoteMediaPlayerManagerProxy::setBufferingPolicy): Deleted.
(WebKit::RemoteMediaPlayerManagerProxy::videoFullscreenStandbyChanged): Deleted.
(WebKit::RemoteMediaPlayerManagerProxy::accessLog): Deleted.
(WebKit::RemoteMediaPlayerManagerProxy::errorLog): Deleted.
- GPUProcess/media/RemoteMediaPlayerManagerProxy.h:
- GPUProcess/media/RemoteMediaPlayerManagerProxy.messages.in:
- GPUProcess/media/RemoteMediaPlayerProxy.cpp:
(WebKit::RemoteMediaPlayerProxy::mediaPlayerPause): Deleted.
(WebKit::RemoteMediaPlayerProxy::mediaPlayerPlay): Deleted.
- GPUProcess/media/RemoteMediaPlayerProxy.h:
LayoutTests:
- gpu-process/TestExpectations: Unskip ~1200 media tests.
- 7:41 AM Changeset in webkit [257710] by
-
- 4 edits in trunk/Source
Enable capture in GPUProcess by default for recent platforms only
https://bugs.webkit.org/show_bug.cgi?id=208437
Reviewed by Eric Carlson.
Source/WebKit:
No change of behavior.
- Shared/WebPreferencesDefaultValues.h:
Source/WTF:
- wtf/PlatformUse.h:
Introduce USE(GPU_PROCESS)
- 7:34 AM Changeset in webkit [257709] by
-
- 13 edits in trunk/Source
LocalSampleBufferDisplayLayer is not computing the correct bounds/position in GPUProcess
https://bugs.webkit.org/show_bug.cgi?id=208370
Reviewed by Eric Carlson.
Source/WebCore:
When in GPUProcess, we need to update the bounds of the remote LocalSampleBufferDisplayLayer.
In case of samples with rotation, the computation was wrong.
Move the rotation logic from MediaPLayerPrivateMediaStreamAVFObjC to LocalSampleBufferDisplayLayer.
This allows in WebKit2 to send the rotation information with the bounds information.
Remove the bounds getter since it is no longer used.
Covered by manual tests.
- platform/graphics/avfoundation/SampleBufferDisplayLayer.h:
- platform/graphics/avfoundation/objc/LocalSampleBufferDisplayLayer.h:
- platform/graphics/avfoundation/objc/LocalSampleBufferDisplayLayer.mm:
(WebCore::LocalSampleBufferDisplayLayer::updateBoundsAndPosition):
(WebCore::LocalSampleBufferDisplayLayer::updateRootLayerBoundsAndPosition):
(WebCore::LocalSampleBufferDisplayLayer::enqueueSample):
- platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm:
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::updateDisplayLayer):
- platform/mediastream/mac/AVVideoCaptureSource.mm:
(WebCore::AVVideoCaptureSource::captureOutputDidOutputSampleBufferFromConnection):
Source/WebKit:
Remove the bounds getter logic.
Make use of new LocalSampleBufferDisplayLayer routine to properly update the layer bounds.
- GPUProcess/webrtc/RemoteSampleBufferDisplayLayer.cpp:
(WebKit::RemoteSampleBufferDisplayLayer::updateBoundsAndPosition):
- GPUProcess/webrtc/RemoteSampleBufferDisplayLayer.h:
- GPUProcess/webrtc/RemoteSampleBufferDisplayLayer.messages.in:
- GPUProcess/webrtc/RemoteSampleBufferDisplayLayerManager.cpp:
(WebKit::RemoteSampleBufferDisplayLayerManager::createLayer):
- GPUProcess/webrtc/RemoteSampleBufferDisplayLayerManager.messages.in:
- WebProcess/GPU/webrtc/SampleBufferDisplayLayer.cpp:
(WebKit::SampleBufferDisplayLayer::SampleBufferDisplayLayer):
(WebKit::SampleBufferDisplayLayer::updateBoundsAndPosition):
- WebProcess/GPU/webrtc/SampleBufferDisplayLayer.h:
- 7:04 AM Changeset in webkit [257708] by
-
- 3 edits in trunk/Source/WebKit
Enable audio MediaStreamTrack rendering in GPUProcess if audio capture happens in GPUProcess
https://bugs.webkit.org/show_bug.cgi?id=208435
Reviewed by Eric Carlson.
Instead of enabling audio track rendering in GPUProcess based on media flag,
use the audio capture flag.
This makes sure things work properly on iOS, where an audio session might interrupt other sessions.
- WebProcess/GPU/media/RemoteMediaPlayerManager.cpp:
(WebKit::RemoteMediaPlayerManager::updatePreferences):
- WebProcess/cocoa/UserMediaCaptureManager.cpp:
(WebKit::UserMediaCaptureManager::setupCaptureProcesses):
- 3:36 AM Changeset in webkit [257707] by
-
- 46 edits58 adds in trunk
Add referrerpolicy attribute support for anchors
https://bugs.webkit.org/show_bug.cgi?id=208424
Patch by Rob Buis <rbuis@igalia.com> on 2020-03-02
Reviewed by Darin Adler.
LayoutTests/imported/w3c:
Update improved test results.
- web-platform-tests/html/dom/idlharness.https-expected.txt:
- web-platform-tests/html/dom/reflection-text-expected.txt:
Source/WebCore:
This patch adds 'referrerpolicy' attribute support for anchor elements.
If set, the value is restricted to the ReferrerPolicy enum, and
if valid it is used for the script fetch.
If not set or invalid, the current behavior is kept.
Tests: http/tests/referrer-policy-anchor/no-referrer-when-downgrade/cross-origin-http-http.html
http/tests/referrer-policy-anchor/no-referrer-when-downgrade/cross-origin-http.https.html
http/tests/referrer-policy-anchor/no-referrer-when-downgrade/same-origin.html
http/tests/referrer-policy-anchor/no-referrer/cross-origin-http-http.html
http/tests/referrer-policy-anchor/no-referrer/cross-origin-http.https.html
http/tests/referrer-policy-anchor/no-referrer/same-origin.html
http/tests/referrer-policy-anchor/origin-when-cross-origin/cross-origin-http-http.html
http/tests/referrer-policy-anchor/origin-when-cross-origin/cross-origin-http.https.html
http/tests/referrer-policy-anchor/origin-when-cross-origin/same-origin.html
http/tests/referrer-policy-anchor/origin/cross-origin-http-http.html
http/tests/referrer-policy-anchor/origin/cross-origin-http.https.html
http/tests/referrer-policy-anchor/origin/same-origin.html
http/tests/referrer-policy-anchor/same-origin/cross-origin-http-http.html
http/tests/referrer-policy-anchor/same-origin/cross-origin-http.https.html
http/tests/referrer-policy-anchor/same-origin/same-origin.html
http/tests/referrer-policy-anchor/strict-origin-when-cross-origin/cross-origin-http-http.html
http/tests/referrer-policy-anchor/strict-origin-when-cross-origin/cross-origin-http.https.html
http/tests/referrer-policy-anchor/strict-origin-when-cross-origin/same-origin.html
http/tests/referrer-policy-anchor/strict-origin/cross-origin-http-http.html
http/tests/referrer-policy-anchor/strict-origin/cross-origin-http.https.html
http/tests/referrer-policy-anchor/strict-origin/same-origin.html
http/tests/referrer-policy-anchor/unsafe-url/cross-origin-http-http.html
http/tests/referrer-policy-anchor/unsafe-url/cross-origin-http.https.html
http/tests/referrer-policy-anchor/unsafe-url/same-origin.html
- html/HTMLAnchorElement.cpp:
(WebCore::HTMLAnchorElement::handleClick):
(WebCore::HTMLAnchorElement::setReferrerPolicyForBindings):
(WebCore::HTMLAnchorElement::referrerPolicyForBindings const):
(WebCore::HTMLAnchorElement::referrerPolicy const):
- html/HTMLAnchorElement.h:
- html/HTMLAnchorElement.idl:
- html/HTMLLinkElement.cpp:
(WebCore::HTMLLinkElement::handleClick):
- inspector/InspectorFrontendClientLocal.cpp:
(WebCore::InspectorFrontendClientLocal::openInNewTab):
- inspector/agents/InspectorPageAgent.cpp:
(WebCore::InspectorPageAgent::navigate):
- loader/FrameLoadRequest.cpp:
(WebCore::FrameLoadRequest::FrameLoadRequest):
- loader/FrameLoadRequest.h:
(WebCore::FrameLoadRequest::FrameLoadRequest):
(WebCore::FrameLoadRequest::referrerPolicy const):
(WebCore::FrameLoadRequest::shouldSendReferrer const): Deleted.
- loader/FrameLoader.cpp:
(WebCore::FrameLoader::urlSelected):
(WebCore::FrameLoader::loadURLIntoChildFrame):
(WebCore::FrameLoader::loadFrameRequest):
- loader/FrameLoader.h:
- loader/FrameLoaderTypes.h:
- loader/NavigationScheduler.cpp:
(WebCore::NavigationScheduler::scheduleLocationChange):
- mathml/MathMLElement.cpp:
(WebCore::MathMLElement::defaultEventHandler):
- page/ContextMenuController.cpp:
(WebCore::openNewWindow):
(WebCore::ContextMenuController::contextMenuItemSelected):
- page/DOMWindow.cpp:
(WebCore::DOMWindow::createWindow):
- svg/SVGAElement.cpp:
(WebCore::SVGAElement::defaultEventHandler):
Source/WebKit:
Adjust to FrameLoadRequest API change.
- WebProcess/Inspector/WebInspector.cpp:
(WebKit::WebInspector::openInNewTab):
- WebProcess/Plugins/PDF/PDFPlugin.mm:
(WebKit::PDFPlugin::clickedLink):
- WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::loadURL):
- WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
(WebKit::WebContextMenuClient::searchWithGoogle):
- WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchCreatePage):
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::navigateToPDFLinkWithSimulatedClick):
Source/WebKitLegacy/ios:
Adjust to FrameLoadRequest API change.
- WebView/WebPDFViewPlaceholder.mm:
(-[WebPDFViewPlaceholder simulateClickOnLinkToURL:]):
Source/WebKitLegacy/mac:
Adjust to FrameLoadRequest API change.
- WebView/WebPDFView.mm:
(-[WebPDFView PDFViewWillClickOnLink:withURL:]):
Source/WebKitLegacy/win:
Adjust to FrameLoadRequest API change.
- Plugins/PluginView.cpp:
(WebCore::PluginView::start):
(WebCore::PluginView::getURLNotify):
(WebCore::PluginView::getURL):
(WebCore::PluginView::handlePost):
- WebCoreSupport/WebContextMenuClient.cpp:
(WebContextMenuClient::searchWithGoogle):
LayoutTests:
Add tests for anchors with various referrerpolicy attribute values and
update improved test results.
- http/tests/referrer-policy-anchor/no-referrer-when-downgrade/cross-origin-http-http-expected.txt: Added.
- http/tests/referrer-policy-anchor/no-referrer-when-downgrade/cross-origin-http-http.html: Added.
- http/tests/referrer-policy-anchor/no-referrer-when-downgrade/cross-origin-http.https-expected.txt: Added.
- http/tests/referrer-policy-anchor/no-referrer-when-downgrade/cross-origin-http.https.html: Added.
- http/tests/referrer-policy-anchor/no-referrer-when-downgrade/same-origin-expected.txt: Added.
- http/tests/referrer-policy-anchor/no-referrer-when-downgrade/same-origin.html: Added.
- http/tests/referrer-policy-anchor/no-referrer/cross-origin-http-http-expected.txt: Added.
- http/tests/referrer-policy-anchor/no-referrer/cross-origin-http-http.html: Added.
- http/tests/referrer-policy-anchor/no-referrer/cross-origin-http.https-expected.txt: Added.
- http/tests/referrer-policy-anchor/no-referrer/cross-origin-http.https.html: Added.
- http/tests/referrer-policy-anchor/no-referrer/same-origin-expected.txt: Added.
- http/tests/referrer-policy-anchor/no-referrer/same-origin.html: Added.
- http/tests/referrer-policy-anchor/origin-when-cross-origin/cross-origin-http-http-expected.txt: Added.
- http/tests/referrer-policy-anchor/origin-when-cross-origin/cross-origin-http-http.html: Added.
- http/tests/referrer-policy-anchor/origin-when-cross-origin/cross-origin-http.https-expected.txt: Added.
- http/tests/referrer-policy-anchor/origin-when-cross-origin/cross-origin-http.https.html: Added.
- http/tests/referrer-policy-anchor/origin-when-cross-origin/same-origin-expected.txt: Added.
- http/tests/referrer-policy-anchor/origin-when-cross-origin/same-origin.html: Added.
- http/tests/referrer-policy-anchor/origin/cross-origin-http-http-expected.txt: Added.
- http/tests/referrer-policy-anchor/origin/cross-origin-http-http.html: Added.
- http/tests/referrer-policy-anchor/origin/cross-origin-http.https-expected.txt: Added.
- http/tests/referrer-policy-anchor/origin/cross-origin-http.https.html: Added.
- http/tests/referrer-policy-anchor/origin/same-origin-expected.txt: Added.
- http/tests/referrer-policy-anchor/origin/same-origin.html: Added.
- http/tests/referrer-policy-anchor/same-origin/cross-origin-http-http-expected.txt: Added.
- http/tests/referrer-policy-anchor/same-origin/cross-origin-http-http.html: Added.
- http/tests/referrer-policy-anchor/same-origin/cross-origin-http.https-expected.txt: Added.
- http/tests/referrer-policy-anchor/same-origin/cross-origin-http.https.html: Added.
- http/tests/referrer-policy-anchor/same-origin/same-origin-expected.txt: Added.
- http/tests/referrer-policy-anchor/same-origin/same-origin.html: Added.
- http/tests/referrer-policy-anchor/strict-origin-when-cross-origin/cross-origin-http-http-expected.txt: Added.
- http/tests/referrer-policy-anchor/strict-origin-when-cross-origin/cross-origin-http-http.html: Added.
- http/tests/referrer-policy-anchor/strict-origin-when-cross-origin/cross-origin-http.https-expected.txt: Added.
- http/tests/referrer-policy-anchor/strict-origin-when-cross-origin/cross-origin-http.https.html: Added.
- http/tests/referrer-policy-anchor/strict-origin-when-cross-origin/same-origin-expected.txt: Added.
- http/tests/referrer-policy-anchor/strict-origin-when-cross-origin/same-origin.html: Added.
- http/tests/referrer-policy-anchor/strict-origin/cross-origin-http-http-expected.txt: Added.
- http/tests/referrer-policy-anchor/strict-origin/cross-origin-http-http.html: Added.
- http/tests/referrer-policy-anchor/strict-origin/cross-origin-http.https-expected.txt: Added.
- http/tests/referrer-policy-anchor/strict-origin/cross-origin-http.https.html: Added.
- http/tests/referrer-policy-anchor/strict-origin/same-origin-expected.txt: Added.
- http/tests/referrer-policy-anchor/strict-origin/same-origin.html: Added.
- http/tests/referrer-policy-anchor/unsafe-url/cross-origin-http-http-expected.txt: Added.
- http/tests/referrer-policy-anchor/unsafe-url/cross-origin-http-http.html: Added.
- http/tests/referrer-policy-anchor/unsafe-url/cross-origin-http.https-expected.txt: Added.
- http/tests/referrer-policy-anchor/unsafe-url/cross-origin-http.https.html: Added.
- http/tests/referrer-policy-anchor/unsafe-url/same-origin-expected.txt: Added.
- http/tests/referrer-policy-anchor/unsafe-url/same-origin.html: Added.
- http/tests/referrer-policy/resources/check-referrer.php: Added.
- js/dom/dom-static-property-for-in-iteration-expected.txt:
- platform/gtk/imported/w3c/web-platform-tests/html/dom/idlharness.https-expected.txt:
- platform/gtk/js/dom/dom-static-property-for-in-iteration-expected.txt:
- platform/ios-wk2/imported/w3c/web-platform-tests/html/dom/idlharness.https-expected.txt:
- platform/ios-wk2/js/dom/dom-static-property-for-in-iteration-expected.txt:
- platform/mac-wk1/imported/w3c/web-platform-tests/html/dom/idlharness.https-expected.txt:
- platform/mac-wk2/imported/w3c/web-platform-tests/html/dom/idlharness.https-expected.txt:
- platform/mac-wk2/js/dom/dom-static-property-for-in-iteration-expected.txt:
- platform/win/TestExpectations:
- platform/wpe/imported/w3c/web-platform-tests/html/dom/idlharness.https-expected.txt:
- platform/wpe/js/dom/dom-static-property-for-in-iteration-expected.txt:
- 2:52 AM Changeset in webkit [257706] by
-
- 2 edits in trunk/LayoutTests
ASSERTION FAILED: Completion handler should always be called on inspector/dom-debugger/attribute-modified-style.html
https://bugs.webkit.org/show_bug.cgi?id=208167
<rdar://problem/59747016>
Unreviewed.
- platform/mac-wk2/TestExpectations:
Removed flaky expectation.
- 2:27 AM Changeset in webkit [257705] by
-
- 6 edits in trunk/Source/WebCore
[GTK][WPE] Stop using mediaControlsBase.js
https://bugs.webkit.org/show_bug.cgi?id=208374
Reviewed by Xabier Rodriguez-Calvar.
Move the required base functionality to mediaControlsAdwaita.js and use that single file.
- Modules/mediacontrols/mediaControlsAdwaita.js:
(createControls):
(Controller):
(Controller.prototype.listenFor):
(Controller.prototype.stopListeningFor):
(Controller.prototype.addVideoListeners):
(Controller.prototype.removeVideoListeners):
(Controller.prototype.handleEvent):
(Controller.prototype.createBase):
(Controller.prototype.isAudio):
(Controller.prototype.isFullScreen):
(Controller.prototype.shouldHaveControls):
(Controller.prototype.updateBase):
(Controller.prototype.createControls):
(Controller.prototype.configureControls):
(Controller.prototype.disconnectControls):
(Controller.prototype.reconnectControls):
(Controller.prototype.showControls):
(Controller.prototype.hideControls):
(Controller.prototype.resetHideControlsTimer):
(Controller.prototype.clearHideControlsTimer):
(Controller.prototype.controlsAreAlwaysVisible):
(Controller.prototype.controlsAreHidden):
(Controller.prototype.addControls):
(Controller.prototype.removeControls):
(Controller.prototype.updateControls):
(Controller.prototype.setIsLive):
(Controller.prototype.updateDuration):
(Controller.prototype.formatTime):
(Controller.prototype.setPlaying):
(Controller.prototype.updatePlaying):
(Controller.prototype.updateCaptionButton):
(Controller.prototype.updateCaptionContainer):
(Controller.prototype.updateFullscreenButton):
(Controller.prototype.updateVolume):
(Controller.prototype.updateHasVideo):
(Controller.prototype.handleReadyStateChange):
(Controller.prototype.handleTimeUpdate):
(Controller.prototype.handleDurationChange):
(Controller.prototype.handlePlay):
(Controller.prototype.handlePause):
(Controller.prototype.handleVolumeChange):
(Controller.prototype.handleFullscreenChange):
(Controller.prototype.handleTextTrackChange):
(Controller.prototype.handleTextTrackAdd):
(Controller.prototype.handleTextTrackRemove):
(Controller.prototype.handleControlsChange):
(Controller.prototype.handleWrapperMouseMove):
(Controller.prototype.handleWrapperMouseOut):
(Controller.prototype.handleWrapperMouseUp):
(Controller.prototype.handlePanelMouseDown):
(Controller.prototype.handlePanelTransitionEnd):
(Controller.prototype.handlePanelClick):
(Controller.prototype.canPlay):
(Controller.prototype.handlePlayButtonClicked):
(Controller.prototype.handleTimelineChange):
(Controller.prototype.handleTimelineMouseUp):
(Controller.prototype.handleMuteButtonClicked):
(Controller.prototype.handleMuteButtonMouseOver):
(Controller.prototype.handleVolumeBoxMouseOut):
(Controller.prototype.handleVolumeSliderInput):
(Controller.prototype.handleFullscreenButtonClicked):
(Controller.prototype.buildCaptionMenu):
(Controller.prototype.captionItemSelected):
(Controller.prototype.focusSiblingCaptionItem):
(Controller.prototype.handleCaptionItemKeyUp):
(Controller.prototype.showCaptionMenu):
(Controller.prototype.captionMenuTransitionEnd):
(Controller.prototype.captionMenuContainsNode):
(Controller.prototype.handleCaptionButtonClicked):
(Controller.prototype.handleCaptionButtonMouseOver):
(Controller.prototype.handleCaptionButtonMouseOut):
(Controller.prototype.handleCaptionMenuMouseOut):
(ControllerAdwaita): Deleted.
(contains): Deleted.
(ControllerAdwaita.prototype.createControls): Deleted.
(ControllerAdwaita.prototype.configureInlineControls): Deleted.
(ControllerAdwaita.prototype.shouldHaveControls): Deleted.
(ControllerAdwaita.prototype.reconnectControls): Deleted.
(ControllerAdwaita.prototype.setStatusHidden): Deleted.
(ControllerAdwaita.prototype.updateTime): Deleted.
(ControllerAdwaita.prototype.handleTimeUpdate): Deleted.
(ControllerAdwaita.prototype.updateHasAudio): Deleted.
(ControllerAdwaita.prototype.handleMuteButtonMouseOver): Deleted.
(ControllerAdwaita.prototype.handleVolumeBoxMouseOut): Deleted.
(ControllerAdwaita.prototype.removeControls): Deleted.
(ControllerAdwaita.prototype.addControls): Deleted.
(ControllerAdwaita.prototype.updateFullscreenButton): Deleted.
(ControllerAdwaita.prototype.updateReadyState): Deleted.
(ControllerAdwaita.prototype.updateDuration): Deleted.
(ControllerAdwaita.prototype.setIsLive): Deleted.
(ControllerAdwaita.prototype.updatePlaying): Deleted.
(ControllerAdwaita.prototype.updateProgress): Deleted.
(ControllerAdwaita.prototype.handleCaptionButtonClicked): Deleted.
(ControllerAdwaita.prototype.buildCaptionMenu): Deleted.
(ControllerAdwaita.prototype.destroyCaptionMenu): Deleted.
(ControllerAdwaita.prototype.showCaptionMenu): Deleted.
(ControllerAdwaita.prototype.hideCaptionMenu): Deleted.
(ControllerAdwaita.prototype.captionMenuTransitionEnd): Deleted.
(ControllerAdwaita.prototype.handleCaptionButtonMouseOver): Deleted.
(ControllerAdwaita.prototype.handleCaptionButtonShowMenu): Deleted.
(ControllerAdwaita.prototype.handleCaptionButtonMouseOut): Deleted.
(ControllerAdwaita.prototype.handleCaptionMouseOut): Deleted.
- Modules/mediacontrols/mediaControlsBase.js:
(Controller.prototype.createControls):
- PlatformGTK.cmake:
- PlatformWPE.cmake:
- rendering/RenderThemeAdwaita.cpp:
(WebCore::RenderThemeAdwaita::mediaControlsScript):
- 12:41 AM WebKitGTK/2.28.x edited by
- (diff)
- 12:41 AM Changeset in webkit [257704] by
-
- 2 edits in releases/WebKitGTK/webkit-2.28/Source/JavaScriptCore
Merge r257695 - undefined reference to `JSC::ExecutableBase::hasJITCodeForCall() const'
https://bugs.webkit.org/show_bug.cgi?id=207890
Reviewed by Yusuke Suzuki.
Encountered on arm-buildroot-linux-gnueabihf with GCC 9.2.0.
- runtime/NativeExecutable.cpp: Inclusion of
ExecutableBaseInlines.h resolves the issue for me.
- 12:36 AM Changeset in webkit [257703] by
-
- 2 edits in releases/WebKitGTK/webkit-2.28/Source/WebCore
Merge r256706 - [GStreamer] Build failure with Clang/libc++ due to missing WallTime→float for std::isnan()
https://bugs.webkit.org/show_bug.cgi?id=207757
Unreviewed build fix.
No new tests needed.
- platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
(CachedResourceStreamingClient::dataReceived): Add std:: namespace to overloaded
std::isnan() function call to ensure that the overloaded version for WTF::WallTime
is used.
- 12:36 AM WebKitGTK/2.28.x edited by
- (diff)
- 12:36 AM Changeset in webkit [257702] by
-
- 3 edits in releases/WebKitGTK/webkit-2.28/Source/WebKit
Merge r257700 - [GTK] Fix the build when Wayland target is disabled
https://bugs.webkit.org/show_bug.cgi?id=208407
Patch by Ting-Wei Lan <Ting-Wei Lan> on 2020-03-01
Reviewed by Darin Adler.
Values in the enum WebCore::PlatformDisplay::Type are only defined when
their corresponding platform targets are enabled, so we need #if checks
around uses of them.
- UIProcess/API/glib/WebKitProtocolHandler.cpp:
(WebKit::WebKitProtocolHandler::handleGPU):
- UIProcess/API/glib/WebKitUIClient.cpp:
(UIClient::windowConfigureEventCallback):