Timeline



Oct 20, 2018:

2:07 PM Changeset in webkit [237312] by dbates@webkit.org
  • 3 edits in trunk/LayoutTests

Unskip test fast/writing-mode/english-rl-text-with-spelling-marker.html in iOS WebKit2

Following r235149 we mark spelling errors in iOS WebKit2.

6:15 AM Changeset in webkit [237311] by commit-queue@webkit.org
  • 6 edits
    2 adds in trunk

MediaRecorder should fire a stop event when all tracks are ended
https://bugs.webkit.org/show_bug.cgi?id=190642

Patch by YUHAN WU <yuhan_wu@apple.com> on 2018-10-20
Reviewed by Youenn Fablet.

LayoutTests/imported/w3c:

  • web-platform-tests/mediacapture-record/MediaRecorder-stop-expected.txt: Added.
  • web-platform-tests/mediacapture-record/MediaRecorder-stop.html: Added.

Source/WebCore:

This patch only implements to fire the stop event when all tracks are ended.
We will need to fire a dataavailable event when all tracks are ended.

Test: imported/w3c/web-platform-tests/mediacapture-record/MediaRecorder-stop.html

  • Modules/mediarecorder/MediaRecorder.cpp:

(WebCore::MediaRecorder::MediaRecorder):
(WebCore::MediaRecorder::~MediaRecorder):
(WebCore::MediaRecorder::trackEnded):

  • Modules/mediarecorder/MediaRecorder.h:
  • Modules/mediarecorder/MediaRecorder.idl:
  • WebCore.xcodeproj/project.pbxproj:
  • dom/EventNames.h:
12:00 AM Changeset in webkit [237310] by mitz@apple.com
  • 2 edits
    4 deletes in trunk/Tools

[macOS] MiniBrowser has an unused injected bundle
https://bugs.webkit.org/show_bug.cgi?id=190770

Reviewed by Tim Horton.

  • MiniBrowser/Configurations/MiniBrowserBundle.xcconfig: Removed.
  • MiniBrowser/MiniBrowser.xcodeproj/project.pbxproj: Removed the MiniBrowserBundle target, the Copy Bundle build phase in the MiniBrowser target, and references to removed files.
  • MiniBrowser/MiniBrowserWebProcessPlugIn.h: Removed.
  • MiniBrowser/MiniBrowserWebProcessPlugIn.m: Removed.
  • MiniBrowser/mac/Bundle: Removed.

Oct 19, 2018:

7:57 PM Changeset in webkit [237309] by Brent Fulgham
  • 2 edits in trunk/Source/WebKit

Allow WebContent process to check some file system features
https://bugs.webkit.org/show_bug.cgi?id=190768
<rdar://problem/45377609>

Reviewed by Alexey Proskuryakov.

This patch unblocks some IOKit properties that are needed by lower level frameworks to make decisions
about how to efficiently use the file system.

  • WebProcess/com.apple.WebProcess.sb.in:
5:03 PM Changeset in webkit [237308] by stephan.szabo@sony.com
  • 5 edits
    2 adds in trunk/Source

[WinCairo] Search terms are not saved for <input type="search">
https://bugs.webkit.org/show_bug.cgi?id=188174

Reviewed by Fujii Hironori.

Source/WebCore:

No new tests, should be covered by existing tests of search
inputs.

Add support for saving the search terms for <input
type="search"> to a SQLite database, replacing the
CF-based implementation for Windows and adding support
for non-legacy WebKit.

  • PlatformWin.cmake:
  • platform/win/SearchPopupMenuDB.cpp: Added.

(WebCore::SearchPopupMenuDB::singleton):
(WebCore::SearchPopupMenuDB::SearchPopupMenuDB):
(WebCore::SearchPopupMenuDB::~SearchPopupMenuDB):
(WebCore::SearchPopupMenuDB::saveRecentSearches):
(WebCore::SearchPopupMenuDB::loadRecentSearches):
(WebCore::SearchPopupMenuDB::checkDatabaseValidity): Use
quick_check pragma to test database status.
(WebCore::SearchPopupMenuDB::deleteAllDatabaseFiles):
(WebCore::SearchPopupMenuDB::openDatabase):
(WebCore::SearchPopupMenuDB::closeDatabase):
(WebCore::SearchPopupMenuDB::verifySchemaVersion): Check
schema version and update for schema changes.
(WebCore::SearchPopupMenuDB::checkSQLiteReturnCode): Check
for error codes that indicate database errors and remove and
recreate the database.
(WebCore::SearchPopupMenuDB::executeSimpleSql):
(WebCore::SearchPopupMenuDB::createPreparedStatement):

  • platform/win/SearchPopupMenuDB.h: Added.
  • platform/win/SearchPopupMenuWin.cpp:

(WebCore::SearchPopupMenuWin::enabled): Always enable support
for search term popup
(WebCore::SearchPopupMenuWin::saveRecentSearches): Switch from
CF implementation to SQLite database implementation
(WebCore::SearchPopupMenuWin::loadRecentSearches): Switch from
CF implementation to SQLite database implementation
(WebCore::autosaveKey): Deleted.

Source/WebKit:

Add support for saving the search terms for <input
type="search"> to a SQLite database, replacing the
CF-based implementation for Windows and adding support
for non-legacy WebKit.

  • UIProcess/win/WebPageProxyWin.cpp:

(WebKit::WebPageProxy::saveRecentSearches): Use SQLite database
implementation in WebCore::SearchPopupMenuDB to save search
terms
(WebKit::WebPageProxy::loadRecentSearches): Use SQLite database
implementation in WebCore::SearchPopupMenuDB to load search
terms

4:15 PM Changeset in webkit [237307] by achristensen@apple.com
  • 8 edits in trunk/Source/WebKit

WebDataListSuggestionsDropdown should use a WeakPtr
https://bugs.webkit.org/show_bug.cgi?id=190763
<rdar://problem/45417449>

Reviewed by Tim Horton.

Nothing suspicious here. It's just good practice to not keep raw pointers that aren't reset when the object they point to are destroyed.

  • UIProcess/WebDataListSuggestionsDropdown.cpp:

(WebKit::WebDataListSuggestionsDropdown::WebDataListSuggestionsDropdown):
(WebKit::WebDataListSuggestionsDropdown::close):

  • UIProcess/WebDataListSuggestionsDropdown.h:

(WebKit::WebDataListSuggestionsDropdown::Client::~Client): Deleted.

  • UIProcess/WebPageProxy.h:
  • UIProcess/ios/WebDataListSuggestionsDropdownIOS.h:
  • UIProcess/ios/WebDataListSuggestionsDropdownIOS.mm:

(WebKit::WebDataListSuggestionsDropdownIOS::create):
(WebKit::WebDataListSuggestionsDropdownIOS::WebDataListSuggestionsDropdownIOS):
(WebKit::WebDataListSuggestionsDropdownIOS::close):
(WebKit::WebDataListSuggestionsDropdownIOS::didSelectOption):

  • UIProcess/mac/WebDataListSuggestionsDropdownMac.h:
  • UIProcess/mac/WebDataListSuggestionsDropdownMac.mm:

(WebKit::WebDataListSuggestionsDropdownMac::create):
(WebKit::WebDataListSuggestionsDropdownMac::WebDataListSuggestionsDropdownMac):
(WebKit::WebDataListSuggestionsDropdownMac::didSelectOption):
(WebKit::WebDataListSuggestionsDropdownMac::selectOption):

3:19 PM Changeset in webkit [237306] by Justin Fan
  • 16 edits
    8 adds in trunk

[WebGPU] Add stubs for WebGPUSwapChain and WebGPURenderingContext
https://bugs.webkit.org/show_bug.cgi?id=190742

Reviewed by Dean Jackson.

Source/WebCore:

Test: updated webgpu-enabled.html to check for WebGPURenderingContext.

Implement support for creating a "webgpu" context from an HTML canvas.

  • CMakeLists.txt:
  • DerivedSources.make:
  • Modules/webgpu/WebGPURenderingContext.cpp: Added.

(WebCore::WebGPURenderingContext::create):
(WebCore::WebGPURenderingContext::WebGPURenderingContext):

  • Modules/webgpu/WebGPURenderingContext.h: Added.
  • Modules/webgpu/WebGPURenderingContext.idl: Added.
  • Modules/webgpu/WebGPUSwapChain.cpp: Added.

(WebCore::WebGPUSwapChain::configure):
(WebCore::WebGPUSwapChain::present):
(WebCore::WebGPUSwapChain::reshape):
(WebCore::WebGPUSwapChain::markLayerComposited):

  • Modules/webgpu/WebGPUSwapChain.h: Added.

(WebCore::WebGPUSwapChain::WebGPUSwapChain):

  • Modules/webgpu/WebGPUSwapChain.idl: Added.
  • Modules/webgpu/WebGPUSwapChainDescriptor.h: Added.
  • Modules/webgpu/WebGPUSwapChainDescriptor.idl: Added.
  • Sources.txt:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/WebCoreBuiltinNames.h:
  • dom/Document.cpp:

(WebCore::Document::getCSSCanvasContext):

  • dom/Document.h:
  • dom/Document.idl:
  • html/HTMLCanvasElement.cpp:

(WebCore::HTMLCanvasElement::getContext):
(WebCore::HTMLCanvasElement::isWebGPUType):
(WebCore::HTMLCanvasElement::createContextWebGPU):
(WebCore::HTMLCanvasElement::getContextWebGPU):

  • html/HTMLCanvasElement.h:
  • html/HTMLCanvasElement.idl:
  • html/canvas/CanvasRenderingContext.h:

(WebCore::CanvasRenderingContext::isWebGPU const):

LayoutTests:

Updated basic webgpu feature detection test to check for WebGPURenderingContext.

  • webgpu/webgpu-enabled-expected.txt:
  • webgpu/webgpu-enabled.html:
3:00 PM Changeset in webkit [237305] by wenson_hsieh@apple.com
  • 18 edits in trunk

[iOS] [Datalist] Can't pick datalist suggestions in a stock WKWebView
https://bugs.webkit.org/show_bug.cgi?id=190621
<rdar://problem/45310649>

Reviewed by Tim Horton.

Source/WebKit:

Fixes the bug by refactoring datalist suggestion information on iOS; currently, we override text suggestions on
_WKFormInputSession. This only works for a few internal clients (including Safari) that set a _WKInputDelegate
and also implement either -_webView:willStartInputSession: or -_webView:didStartInputSession:, which is
necessary in order to ensure that WebKit creates and maintains a form input session.

The two pieces of information that datalist code needs to vend to WKContentView are a list of UITextSuggestions
and a custom input view, which are both currently properties of _WKFormInputSession. This patch lifts these out
of the input session and makes them properties of WKContentView, which are used in
WebDataListSuggestionsDropdownIOS.

Test: fast/forms/datalist/datalist-textinput-suggestions-order.html

  • UIProcess/ios/WKContentViewInteraction.h:
  • UIProcess/ios/WKContentViewInteraction.mm:

Add new properties to WKContentView: an input view for datalist suggestions, and a list of text suggestions.

(-[WKFormInputSession setSuggestions:]):
(-[WKContentView setupInteraction]):
(-[WKContentView cleanupInteraction]):
(-[WKContentView _endEditing]):

Pull out common logic when resigning first responder or tabbing to the next or previous text field into a new
helper. This helper notifies _inputPeripheral, _formInputSession, and _dataListTextSuggestionsInputView
when editing has ended; the input peripheral and suggestions input view use this chance to send the value of the
form control to the web process.

(-[WKContentView resignFirstResponderForWebView]):
(-[WKContentView inputView]):

If a custom input view is not set but we have an input view for a datalist's text suggestions, use the datalist
input view.

(-[WKContentView accessoryTab:]):
(-[WKContentView _stopAssistingNode]):

Clear datalist state on WKContentView.

(-[WKContentView dataListTextSuggestionsInputView]):
(-[WKContentView dataListTextSuggestions]):
(-[WKContentView setDataListTextSuggestionsInputView:]):
(-[WKContentView setDataListTextSuggestions:]):
(-[WKContentView updateTextSuggestionsForInputDelegate]):

Pull out logic for setting suggestions on UIKit's inputDelegate (i.e. UIKeyboardImpl). We now first consult
internally-vended text suggestions from _WKFormInputSession; if an internal client has not overridden our text
suggestions, then we simply use suggestions from the current datalist (if present).

  • UIProcess/ios/WebDataListSuggestionsDropdownIOS.mm:

(-[WKDataListSuggestionsPicker updateWithInformation:]):
(-[WKDataListSuggestionsPicker showSuggestionsDropdown:activationType:]):
(-[WKDataListSuggestionsPicker invalidate]):
(-[WKDataListSuggestionsPopover updateWithInformation:]):
(-[WKDataListSuggestionsPopover showSuggestionsDropdown:activationType:]):
(-[WKDataListSuggestionsPopover didSelectOptionAtIndex:]):

Change all the places that currently manipulate WKContentView's form input session to directly set text
suggestions and the text suggestion input view on the content view instead.

Tools:

Add a UIScriptController hook to resign first responder on WKWebView. See LayoutTests/ChangeLog for more detail.

  • DumpRenderTree/ios/UIScriptControllerIOS.mm:

(WTR::UIScriptController::resignFirstResponder):

  • DumpRenderTree/mac/UIScriptControllerMac.mm:

(WTR::UIScriptController::resignFirstResponder):

  • TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
  • TestRunnerShared/UIScriptContext/UIScriptController.cpp:

(WTR::UIScriptController::resignFirstResponder):

  • TestRunnerShared/UIScriptContext/UIScriptController.h:
  • WebKitTestRunner/UIScriptControllerCocoa.mm:

(WTR::UIScriptController::resignFirstResponder):

  • WebKitTestRunner/ios/PlatformWebViewIOS.mm:

(WTR::PlatformWebView::makeWebViewFirstResponder):

Implement this method stub on iOS, to ensure that TestController::resetStateToConsistentValues restores first
responder on the WKWebView when running iOS layout tests.

  • WebKitTestRunner/ios/TestControllerIOS.mm:

(WTR::TestController::platformResetStateToConsistentValues):

After resigning first responder to dismiss any on-screen keyboard, ensure that we restore first responder.

LayoutTests:

Refactor an existing layout test to run on both iOS and macOS. On both platforms, it checks that the top
suggestion respects option element order in the document, as well as the current contents of the text field.
On macOS, we use arrow keys and hit return to select a suggestion; on iOS, we tap the suggestions button and
simulate hitting the done button on the input view to dismiss the keyboard.

  • fast/forms/datalist/datalist-textinput-suggestions-order-expected.txt:
  • fast/forms/datalist/datalist-textinput-suggestions-order.html:
  • platform/ios/TestExpectations:

Enable this test on iOS.

  • resources/ui-helper.js:

(window.UIHelper.resignFirstResponder):
(window.UIHelper):

2:37 PM Changeset in webkit [237304] by wilander@apple.com
  • 28 edits
    2 moves in trunk

Only cap lifetime of persistent cookies created client-side through document.cookie when resource load statistics is enabled
https://bugs.webkit.org/show_bug.cgi?id=190687
<rdar://problem/45349024>

Reviewed by Alex Christensen.

Source/WebCore:

Test: http/tests/resourceLoadStatistics/capped-lifetime-for-cookie-set-in-js.html

NetworkStorageSession::setCookiesFromDOM() now consults the new
m_shouldCapLifetimeForClientSideCookies member variable before
capping the lifetime of cookies.

  • loader/ResourceLoadStatistics.cpp:

(WebCore::ResourceLoadStatistics::toString const):
(WebCore::ResourceLoadStatistics::merge):

Removal of the isMarkedForCookieBlocking member.

  • loader/ResourceLoadStatistics.h:

Removal of the isMarkedForCookieBlocking member.

  • platform/network/NetworkStorageSession.h:
  • platform/network/cf/NetworkStorageSessionCFNet.cpp:

(WebCore::NetworkStorageSession::setShouldCapLifetimeForClientSideCookies):
(WebCore::NetworkStorageSession::setPrevalentDomainsToBlockCookiesFor):

No longer takes the boolean clearFirst parameter and now always clears first.

  • platform/network/cocoa/NetworkStorageSessionCocoa.mm:

(WebCore::filterCookies):
(WebCore::NetworkStorageSession::setCookiesFromDOM const):

Source/WebKit:

This patch adds the following:

  • The WebProcessPool now tells the WebsiteDataStore when a network process has

been created.

  • The WebsiteDataStore in turn tells the WebResourceLoadStatisticsStore when

a network process has been created.

  • The WebResourceLoadStatisticsStore makes sure to update the network processes

with its cookie policy when it's notified that a network process has been
created.

In addition, this patch changes the following:

  • The ResourceLoadStatisticsMemoryStore no longer keeps track of which domains

it has told the network process to block cookies for. The reason is that
we cannot assume that there is only one network process so we should
always send complete blocking data.

  • The ResourceLoadStatisticsMemoryStore's functions for communicating cookie

blocking state to the network process no longer take and forward the
"clear first" parameter. This is because complete data is sent every time
and thus the network process' set is always cleared on an update.

  • Removes WebsiteDataStore::networkProcessDidCrash() and

WebResourceLoadStatisticsStore::scheduleCookieBlockingStateReset() since
the call site---WebProcessPool::ensureNetworkProcess()---now calls
WebsiteDataStore::didCreateNetworkProcess() after a network process
crash and the state sync for cookie blocking is triggered.

  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::updatePrevalentDomainsToBlockCookiesFor):
(WebKit::NetworkProcess::setShouldCapLifetimeForClientSideCookies):

  • NetworkProcess/NetworkProcess.h:
  • NetworkProcess/NetworkProcess.messages.in:
  • UIProcess/Network/NetworkProcessProxy.cpp:

(WebKit::NetworkProcessProxy::updatePrevalentDomainsToBlockCookiesFor):
(WebKit::NetworkProcessProxy::setShouldCapLifetimeForClientSideCookies):
(WebKit::NetworkProcessProxy::didSetShouldCapLifetimeForClientSideCookies):

  • UIProcess/Network/NetworkProcessProxy.h:
  • UIProcess/Network/NetworkProcessProxy.messages.in:
  • UIProcess/ResourceLoadStatisticsMemoryStore.cpp:

(WebKit::ResourceLoadStatisticsMemoryStore::clear):
(WebKit::ResourceLoadStatisticsMemoryStore::updateCookieBlocking):
(WebKit::ResourceLoadStatisticsMemoryStore::updateCookieBlockingForDomains):
(WebKit::ResourceLoadStatisticsMemoryStore::clearBlockingStateForDomains):
(WebKit::ResourceLoadStatisticsMemoryStore::resetCookieBlockingState): Deleted.

  • UIProcess/ResourceLoadStatisticsMemoryStore.h:
  • UIProcess/WebProcessPool.cpp:

(WebKit::WebProcessPool::ensureNetworkProcess):

  • UIProcess/WebResourceLoadStatisticsStore.cpp:

(WebKit::WebResourceLoadStatisticsStore::didCreateNetworkProcess):
(WebKit::WebResourceLoadStatisticsStore::scheduleCookieBlockingUpdateForDomains):
(WebKit::WebResourceLoadStatisticsStore::scheduleClearInMemoryAndPersistent):
(WebKit::WebResourceLoadStatisticsStore::callUpdatePrevalentDomainsToBlockCookiesForHandler):
(WebKit::WebResourceLoadStatisticsStore::scheduleCookieBlockingStateReset): Deleted.

  • UIProcess/WebResourceLoadStatisticsStore.h:
  • UIProcess/WebsiteData/WebsiteDataStore.cpp:

(WebKit::WebsiteDataStore::updatePrevalentDomainsToBlockCookiesFor):
(WebKit::WebsiteDataStore::setShouldCapLifetimeForClientSideCookies):
(WebKit::WebsiteDataStore::didCreateNetworkProcess):
(WebKit::WebsiteDataStore::networkProcessDidCrash): Deleted.

  • UIProcess/WebsiteData/WebsiteDataStore.h:

LayoutTests:

The test case now makes use of internals.setResourceLoadStatisticsEnabled()
and was thus moved to http/tests/resourceLoadStatistics/.

Removed skip of previous test location.

  • http/tests/resourceLoadStatistics/capped-lifetime-for-cookie-set-in-js-expected.txt: Renamed from LayoutTests/http/tests/cookies/capped-lifetime-for-cookie-set-in-js-expected.txt.
  • http/tests/resourceLoadStatistics/capped-lifetime-for-cookie-set-in-js.html: Renamed from LayoutTests/http/tests/cookies/capped-lifetime-for-cookie-set-in-js.html.
  • http/tests/webAPIStatistics/canvas-read-and-write-data-collection-expected.txt:

Removed line containing "isMarkedForCookieBlocking: No."

  • http/tests/webAPIStatistics/font-load-data-collection-expected.txt:

Removed line containing "isMarkedForCookieBlocking: No."

  • http/tests/webAPIStatistics/navigator-functions-accessed-data-collection-expected.txt:

Removed line containing "isMarkedForCookieBlocking: No."

  • http/tests/webAPIStatistics/screen-functions-accessed-data-collection-expected.txt:

Removed line containing "isMarkedForCookieBlocking: No."

  • platform/ios/TestExpectations:

Removed pass of previous test location. The whole http/tests/resourceLoadStatistics/ is marked pass for relevant platforms.

  • platform/mac-wk2/TestExpectations:

Removed pass of previous test location. The whole http/tests/resourceLoadStatistics/ is marked pass for relevant platforms.

2:29 PM Changeset in webkit [237303] by achristensen@apple.com
  • 2 edits in trunk/Source/WebKit

Rebase python tests.

  • Scripts/webkit/messages_unittest.py:
2:17 PM Changeset in webkit [237302] by achristensen@apple.com
  • 4 edits in trunk/Source/WebKit

Rebase python tests.

  • Scripts/Makefile:
  • Scripts/webkit/MessageReceiver-expected.cpp:
  • Scripts/webkit/Messages-expected.h:
2:17 PM Changeset in webkit [237301] by dino@apple.com
  • 2 edits in trunk/Tools

ASSERTION FAILED: !frame().animation().hasAnimations() in WebCore::FrameView::didDestroyRenderTree()
https://bugs.webkit.org/show_bug.cgi?id=186946
<rdar://problem/41724248>

Reviewed by Antoine Quint.

If the incoming test has different enableWebAnimationsCSSIntegration options,
then we need to create a new WebView.

  • DumpRenderTree/TestOptions.cpp:

(TestOptions::webViewIsCompatibleWithOptions const):

2:12 PM Changeset in webkit [237300] by achristensen@apple.com
  • 27 edits in trunk/Source/WebKit

Mark LegacySync IPC messages
https://bugs.webkit.org/show_bug.cgi?id=190759

Reviewed by Tim Horton.

  • NetworkProcess/NetworkConnectionToWebProcess.messages.in:
  • NetworkProcess/NetworkProcess.messages.in:
  • NetworkProcess/ServiceWorker/WebSWServerConnection.messages.in:
  • Platform/IPC/HandleMessage.h:

(IPC::handleMessageLegacySync):

  • PluginProcess/PluginControllerProxy.messages.in:
  • Scripts/webkit/messages.py:
  • Shared/Plugins/NPObjectMessageReceiver.messages.in:
  • UIProcess/ApplePay/WebPaymentCoordinatorProxy.messages.in:
  • UIProcess/Cocoa/UserMediaCaptureManagerProxy.messages.in:
  • UIProcess/Plugins/PluginProcessProxy.messages.in:
  • UIProcess/WebFullScreenManagerProxy.messages.in:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/WebPasteboardProxy.messages.in:
  • UIProcess/WebProcessPool.messages.in:
  • UIProcess/WebProcessProxy.messages.in:
  • UIProcess/WebStorage/StorageManager.messages.in:
  • UIProcess/mac/SecItemShimProxy.messages.in:
  • WebProcess/Plugins/PluginProcessConnection.messages.in:
  • WebProcess/Plugins/PluginProxy.messages.in:
  • WebProcess/WebPage/WebPage.messages.in:
  • WebProcess/WebProcess.messages.in:
1:38 PM Changeset in webkit [237299] by commit-queue@webkit.org
  • 27 edits
    2 deletes in trunk

Unreviewed, rolling out r237254.
https://bugs.webkit.org/show_bug.cgi?id=190760

"It regresses JetStream 2 by 5% on some iOS devices"
(Requested by saamyjoon on #webkit).

Reverted changeset:

"[JSC] JSC should have "parseFunction" to optimize Function
constructor"
https://bugs.webkit.org/show_bug.cgi?id=190340
https://trac.webkit.org/changeset/237254

1:18 PM Changeset in webkit [237298] by achristensen@apple.com
  • 5 edits
    1 add in trunk/Source/WebKit

Update and add python tests after r237294
https://bugs.webkit.org/show_bug.cgi?id=190746

  • Scripts/Makefile: Added to help updating expectations.
  • Scripts/webkit/LegacyMessageReceiver-expected.cpp:
  • Scripts/webkit/MessageReceiverSuperclass-expected.cpp:

(Messages::WebPage::TestAsyncMessage::callReply):
(Messages::WebPage::TestAsyncMessage::cancelReply):
(Messages::WebPage::TestAsyncMessage::send):
(WebKit::WebPage::didReceiveMessage):

  • Scripts/webkit/MessagesSuperclass-expected.h:

(Messages::WebPage::TestAsyncMessage::receiverName):
(Messages::WebPage::TestAsyncMessage::name):
(Messages::WebPage::TestAsyncMessage::asyncMessageReplyName):
(Messages::WebPage::TestAsyncMessage::TestAsyncMessage):
(Messages::WebPage::TestAsyncMessage::arguments const):

  • Scripts/webkit/test-superclass-messages.in:

Adding the extra newline made python tests fail.
I also added more tests for the new functionality introduced in r237924.

1:03 PM Changeset in webkit [237297] by sbarati@apple.com
  • 3 edits
    1 add in trunk

vmCall should check if we exit before emitting an OSR exit due to exceptions
https://bugs.webkit.org/show_bug.cgi?id=190740
<rdar://problem/45220139>

Reviewed by Mark Lam.

JSTests:

  • stress/dont-emit-osr-exits-for-every-call-ftl.js: Added.

(foo):

Source/JavaScriptCore:

The bug we were seeing is the MovHint removal phase would
eliminate a superfluous MovHint. This left a certain range
of nodes in a state where they would not be able to reconstruct
values for an OSR exit. This is OK, since this phase proved those
nodes don't exit. However, some of these nodes may use the vmCall
construct in FTLLower. vmCall used to unconditionally emit an
exception check after each call. However, if such a call happens
in the range of nodes where we can't exit, we would end up generating
an invalid exit (and running with validateFTLOSRExitLiveness flag
would find this issue).

This patch makes vmCall check to see if the node can exit before
emitting an exception check. A node not being able to exit implies
that it can't exit for exceptions, therefore, by definition, it can't
throw an exception.

  • ftl/FTLLowerDFGToB3.cpp:

(JSC::FTL::DFG::LowerDFGToB3::vmCall):

12:31 PM Changeset in webkit [237296] by Caio Lima
  • 5 edits
    4 adds in trunk

[ESNext][BigInt] Implement support for ""
https://bugs.webkit.org/show_bug.cgi?id=186235

Reviewed by Yusuke Suzuki.

JSTests:

  • stress/big-int-bitwise-xor-general.js: Added.
  • stress/big-int-bitwise-xor-to-primitive-precedence.js: Added.
  • stress/big-int-bitwise-xor-type-error.js: Added.
  • stress/big-int-bitwise-xor-wrapped-value.js: Added.

Source/JavaScriptCore:

This patch is introducing support for BigInt into bitwise xor
operation. We are including only support into LLInt and Baseline.

  • runtime/CommonSlowPaths.cpp:

(JSC::SLOW_PATH_DECL):

  • runtime/JSBigInt.cpp:

(JSC::JSBigInt::bitwiseXor):
(JSC::JSBigInt::absoluteXor):

  • runtime/JSBigInt.h:
11:01 AM Changeset in webkit [237295] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: Remove unused member variable of DebuggerSidebarPanel
https://bugs.webkit.org/show_bug.cgi?id=190743

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2018-10-19
Reviewed by Devin Rousso.

  • UserInterface/Views/DebuggerSidebarPanel.js:

(WI.DebuggerSidebarPanel):

10:40 AM Changeset in webkit [237294] by achristensen@apple.com
  • 18 edits in trunk/Source/WebKit

Introduce CompletionHandler-based Async IPC messages with replies
https://bugs.webkit.org/show_bug.cgi?id=190746

Reviewed by Tim Horton.

Before this patch, to make an asynchronous IPC message with a reply you had to find two objects that
can talk to each other, make two new message types, send a generated identifier, keep track of that
identifier, make a HashMap somewhere to store the object waiting for the response, and hook it all up.
What a mess. No wonder people take shortcuts and make strange design decisions.

Now, you can just use a CompletionHandler and mark the reply as Async in *.messages.in.
I've adopted this with a message whose behavior is covered by the storage/indexeddb/modern/blob-cursor.html
layout test and many others. I intent to refine and further adopt this incrementally.

  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::getSandboxExtensionsForBlobFiles):
(WebKit::NetworkProcess::didGetSandboxExtensionsForBlobFiles): Deleted.

  • NetworkProcess/NetworkProcess.h:
  • NetworkProcess/NetworkProcess.messages.in:

This is representative of how code will be simplified with greater adoption.

  • NetworkProcess/NetworkResourceLoadParameters.cpp:

(WebKit::NetworkResourceLoadParameters::decode):
Modernize HandleArray decoding.

  • Platform/IPC/Connection.cpp:

(IPC::Connection::dispatchMessage):
(IPC::nextAsyncReplyHandlerID):
(IPC::asyncReplyHandlerMap):
Handle async replies when looking at incoming messages from the sending process.

  • Platform/IPC/Connection.h:

(IPC::Connection::sendWithAsyncReply):
Send a message with an async reply and prepare the reply receiver.

  • Platform/IPC/Encoder.h:

Make the uint64_t encoder public so we can use it when encoding the listenerID.

  • Platform/IPC/HandleMessage.h:

(IPC::handleMessageAsync):
Handle an asynchronous message with a reply from the receiving process.
This is similar to how DelayedReply messages are handled, but the listenerID is automatically captured and sent back.

  • Scripts/webkit/messages.py:

Generate code for async message replies.

  • Shared/Databases/IndexedDB/WebIDBResult.cpp:

(WebKit::WebIDBResult::decode):

  • Shared/SandboxExtension.h:

(WebKit::SandboxExtension::HandleArray::at):
(WebKit::SandboxExtension::HandleArray::decode):

  • Shared/WebProcessCreationParameters.cpp:

(WebKit::WebProcessCreationParameters::decode):

  • Shared/mac/SandboxExtensionMac.mm:

(WebKit::SandboxExtension::HandleArray::decode):
Modernize the decoding of HandleArray to work with generated decoding.

  • UIProcess/Network/NetworkProcessProxy.cpp:

(WebKit::NetworkProcessProxy::getSandboxExtensionsForBlobFiles):

  • UIProcess/Network/NetworkProcessProxy.h:
  • UIProcess/Network/NetworkProcessProxy.messages.in:

This is also representative of how code will be simplified with greater adoption.

  • WebProcess/MediaStream/MediaDeviceSandboxExtensions.cpp:

(WebKit::MediaDeviceSandboxExtensions::decode):
Modernize HandleArray decoding.

10:28 AM Changeset in webkit [237293] by Alan Bujtas
  • 6 edits in trunk/Source/WebCore

[LFC][IFC] RenderReplaced renderer should create InlineBox
https://bugs.webkit.org/show_bug.cgi?id=190720

Reviewed by Antti Koivisto.

  • layout/layouttree/LayoutTreeBuilder.cpp:

(WebCore::Layout::TreeBuilder::createSubTree):

10:25 AM Changeset in webkit [237292] by cturner@igalia.com
  • 5 edits
    35 adds in trunk

[EME] Fix crash during tracing in gst_qtdemux_request_protection_context
https://bugs.webkit.org/show_bug.cgi?id=190738

Reviewed by Xabier Rodriguez-Calvar.

LayoutTests/imported/w3c:

Add new passing baselines for some ClearKey tests, now that the
GStreamer crash fix allows us the generate them.

  • web-platform-tests/encrypted-media/clearkey-mp4-playback-destroy-persistent-license.https-expected.txt: Added.
  • web-platform-tests/encrypted-media/clearkey-mp4-playback-persistent-license.https-expected.txt: Added.
  • web-platform-tests/encrypted-media/clearkey-mp4-playback-retrieve-destroy-persistent-license.https-expected.txt: Added.
  • web-platform-tests/encrypted-media/clearkey-mp4-playback-retrieve-persistent-license.https-expected.txt: Added.
  • web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-clear-encrypted.https-expected.txt: Added.
  • web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-encrypted-clear-sources.https-expected.txt: Added.
  • web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-multikey.https-expected.txt: Added.
  • web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-multisession.https-expected.txt: Added.
  • web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-setMediaKeys-after-update.https-expected.txt: Added.
  • web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-setMediaKeys-immediately.https-expected.txt: Added.
  • web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-setMediaKeys-onencrypted.https-expected.txt: Added.
  • web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-two-videos.https-expected.txt: Added.
  • web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-waitingforkey.https-expected.txt: Added.
  • web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary.https-expected.txt: Added.
  • web-platform-tests/encrypted-media/clearkey-mp4-setmediakeys-again-after-playback.https-expected.txt: Added.
  • web-platform-tests/encrypted-media/clearkey-mp4-setmediakeys-again-after-resetting-src.https-expected.txt: Added.
  • web-platform-tests/encrypted-media/clearkey-mp4-setmediakeys-multiple-times-with-different-mediakeys.https-expected.txt: Added.

Tools:

Add a GStreamer patch to avoid crashing when the run-time logging
level is TRACE. There was a missing null check which caused many
tests to crash.

  • gstreamer/patches/gst-plugins-good-0013-Avoid-warning-when-reporting-about-decryptors.patch: Added.

LayoutTests:

Add failing test expectations for the GTK port. These tests are
not mirrored in the top-level TestExpectations file, since there
are no passing baselines for these tests there. The testing
infrastructure will report them as unexpected passing when they
are marked as [ Failure ] there, since their output matches the
failing output in this directory, and if you don't have an
expected test, then they fail as [ Missing ], and putting failing
baselines in the top-level cross-platform directory also seem
wrong...

The following two tests produce a dumpRenderTree output for
unknown reasons, and so they have been marked as Missing for now.

platform/gtk/imported/w3c/web-platform-tests/encrypted-media/resources/clearkey-retrieve-destroy-persistent-license.html
platform/gtk/imported/w3c/web-platform-tests/encrypted-media/resources/clearkey-retrieve-persistent-license.html

  • platform/gtk/TestExpectations: Update expectations.
  • platform/gtk/imported/w3c/web-platform-tests/encrypted-media/clearKey-encrypted-webm-event-mse-actual.txt: Added.
  • platform/gtk/imported/w3c/web-platform-tests/encrypted-media/clearkey-mp4-playback-persistent-license-events.https-expected.txt: Added.
  • platform/gtk/imported/w3c/web-platform-tests/encrypted-media/clearkey-mp4-playback-persistent-usage-record-events.https-expected.txt: Added.
  • platform/gtk/imported/w3c/web-platform-tests/encrypted-media/clearkey-mp4-playback-persistent-usage-record.https-expected.txt: Added.
  • platform/gtk/imported/w3c/web-platform-tests/encrypted-media/clearkey-mp4-playback-retrieve-persistent-usage-record.https-expected.txt: Added.
  • platform/gtk/imported/w3c/web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-encrypted-clear.https-expected.txt: Added.
  • platform/gtk/imported/w3c/web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-events.https-expected.txt: Added.
  • platform/gtk/imported/w3c/web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-multikey-sequential-readyState.https-expected.txt: Added.
  • platform/gtk/imported/w3c/web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-multikey-sequential.https-expected.txt: Added.
  • platform/gtk/imported/w3c/web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-setMediaKeys-after-src.https-expected.txt: Added.
  • platform/gtk/imported/w3c/web-platform-tests/encrypted-media/clearkey-mp4-requestmediakeysystemaccess.https-expected.txt: Added.
  • platform/gtk/imported/w3c/web-platform-tests/encrypted-media/clearkey-mp4-reset-src-after-setmediakeys.https-expected.txt: Added.
  • platform/gtk/imported/w3c/web-platform-tests/encrypted-media/clearkey-mp4-syntax-mediakeys.https-expected.txt: Added.
  • platform/gtk/imported/w3c/web-platform-tests/encrypted-media/clearkey-mp4-unique-origin.https-expected.txt: Added.
  • platform/gtk/imported/w3c/web-platform-tests/encrypted-media/clearkey-mp4-update-disallowed-input.https-expected.txt: Added.
  • platform/gtk/imported/w3c/web-platform-tests/encrypted-media/clearkey-mp4-waiting-for-a-key.https-expected.txt: Added.
10:00 AM Changeset in webkit [237291] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

[LFC][IFC] Inline replaced width should default to 300px only if width is auto.
https://bugs.webkit.org/show_bug.cgi?id=190722

Reviewed by Antti Koivisto.

See #5

5. Otherwise, if 'width' has a computed value of 'auto', but none of the conditions above are met, then the used value of 'width' becomes 300px.

  • layout/FormattingContextGeometry.cpp:

(WebCore::Layout::FormattingContext::Geometry::inlineReplacedWidthAndMargin):

9:58 AM Changeset in webkit [237290] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

[LFC][IFC] Add inline runs to showLayoutTree
https://bugs.webkit.org/show_bug.cgi?id=190718

Reviewed by Antti Koivisto.

  • layout/layouttree/LayoutTreeBuilder.cpp:

(WebCore::Layout::outputInlineRuns):
(WebCore::Layout::outputLayoutBox):
(WebCore::Layout::outputLayoutTree):

9:51 AM Changeset in webkit [237289] by Alan Bujtas
  • 5 edits
    2 copies
    1 add
    1 delete in trunk/Source/WebCore

[LFC][IFC] Remove the previous version of inline content handling.
https://bugs.webkit.org/show_bug.cgi?id=190716

Reviewed by Antti Koivisto.

  • Sources.txt:
  • WebCore.xcodeproj/project.pbxproj:
  • layout/Verification.cpp:

(WebCore::Layout::areEssentiallyEqual):
(WebCore::Layout::outputMismatchingSimpleLineInformationIfNeeded):
(WebCore::Layout::outputMismatchingComplexLineInformationIfNeeded):

  • layout/inlineformatting/InlineFormattingState.h:

(WebCore::Layout::InlineFormattingState::inlineContent):
(WebCore::Layout::InlineFormattingState::addLayoutRuns): Deleted.
(WebCore::Layout::InlineFormattingState::layoutRuns const): Deleted.

  • layout/inlineformatting/text/TextUtil.cpp: Renamed from Source/WebCore/layout/inlineformatting/textlayout/TextUtil.cpp.

(WebCore::Layout::TextUtil::TextUtil):
(WebCore::Layout::TextUtil::width const):
(WebCore::Layout::TextUtil::hyphenPositionBefore const):
(WebCore::Layout::TextUtil::textWidth const):
(WebCore::Layout::TextUtil::fixedPitchWidth const):

  • layout/inlineformatting/text/TextUtil.h: Renamed from Source/WebCore/layout/inlineformatting/textlayout/TextUtil.h.
  • layout/inlineformatting/textlayout/Runs.h: Removed.
  • layout/inlineformatting/textlayout/TextContentProvider.cpp: Removed.
  • layout/inlineformatting/textlayout/TextContentProvider.h: Removed.
  • layout/inlineformatting/textlayout/simple/SimpleLineBreaker.cpp: Removed.
  • layout/inlineformatting/textlayout/simple/SimpleLineBreaker.h: Removed.
  • layout/inlineformatting/textlayout/simple/SimpleTextRunGenerator.cpp: Removed.
  • layout/inlineformatting/textlayout/simple/SimpleTextRunGenerator.h: Removed.
9:41 AM Changeset in webkit [237288] by Alan Bujtas
  • 9 edits
    2 adds in trunk/Source/WebCore

[LFC][IFC] Add generic inline content handling.
https://bugs.webkit.org/show_bug.cgi?id=190713

Reviewed by Antti Koivisto.

layoutInlineContent turns InlineLineBreaker::Run objects into final inline runs by
resolving heading/trailing whitespace, aligment, expansion opportunities etc.
These inline runs are input to the display tree construction.

  • Sources.txt:
  • WebCore.xcodeproj/project.pbxproj:
  • layout/displaytree/DisplayBox.h:
  • layout/inlineformatting/InlineFormattingContext.cpp:

(WebCore::Layout::InlineFormattingContext::layout const):
(WebCore::Layout::trimLeadingRun):
(WebCore::Layout::InlineFormattingContext::layoutInlineContent const):
(WebCore::Layout::InlineFormattingContext::computeWidthAndHeight const):

  • layout/inlineformatting/InlineFormattingContext.h:

(WebCore::Layout::InlineFormattingContext::Line::hasContent const):
(WebCore::Layout::InlineFormattingContext::Line::contentLogicalLeft const):
(WebCore::Layout::InlineFormattingContext::Line::availableWidth const):

  • layout/inlineformatting/InlineFormattingState.h:

(WebCore::Layout::InlineFormattingState::inlineRuns):
(WebCore::Layout::InlineFormattingState::appendInlineRun):

  • layout/inlineformatting/InlineLineBreaker.cpp:

(WebCore::Layout::InlineLineBreaker::nextRun):
(WebCore::Layout::InlineLineBreaker::nextLayoutRun): Deleted.

  • layout/inlineformatting/InlineLineBreaker.h:
  • layout/inlineformatting/InlineRun.h: Added.

(WebCore::Layout::InlineRun::logicalLeft const):
(WebCore::Layout::InlineRun::logicalRight const):
(WebCore::Layout::InlineRun::width const):
(WebCore::Layout::InlineRun::setWidth):
(WebCore::Layout::InlineRun::setLogicalRight):
(WebCore::Layout::InlineRun::TextContext::position const):
(WebCore::Layout::InlineRun::TextContext::length const):
(WebCore::Layout::InlineRun::TextContext::setLength):
(WebCore::Layout::InlineRun::textContext):
(WebCore::Layout::InlineRun::inlineItem const):
(WebCore::Layout::InlineRun::InlineRun):
(WebCore::Layout::InlineRun::TextContext::TextContext):

  • layout/inlineformatting/Line.cpp: Added.

(WebCore::Layout::InlineFormattingContext::Line::Line):
(WebCore::Layout::InlineFormattingContext::Line::setConstraints):
(WebCore::Layout::isNonCollapsedText):
(WebCore::Layout::isTrimmableContent):
(WebCore::Layout::InlineFormattingContext::Line::appendContent):
(WebCore::Layout::InlineFormattingContext::Line::close):

9:31 AM Changeset in webkit [237287] by Alan Bujtas
  • 5 edits
    4 adds in trunk/Source/WebCore

[LFC][IFC] Add generic inline line breaker
https://bugs.webkit.org/show_bug.cgi?id=190698

Reviewed by Antti Koivisto.

InlineLineBreaker takes the inline runs and applies the appropriate line breaking rules on them.
InlineRunProvider::Run objects ->

<foobar><image box><hello>< ><world>

InlineLineBreaker::Run ->

<foobar><image box><hello world>

InlineLineBreaker::Run also contains information whether the run is at the beginning or at the end of the line.

  • Sources.txt:
  • WebCore.xcodeproj/project.pbxproj:
  • layout/LayoutContext.h:

(WebCore::Layout::LayoutContext::hasDisplayBox const):

  • layout/inlineformatting/InlineLineBreaker.cpp: Added.

(WebCore::Layout::InlineLineBreaker::InlineLineBreaker):
(WebCore::Layout::InlineLineBreaker::nextLayoutRun):
(WebCore::Layout::InlineLineBreaker::isAtContentEnd const):
(WebCore::Layout::InlineLineBreaker::lineBreakingBehavior):
(WebCore::Layout::InlineLineBreaker::runWidth const):
(WebCore::Layout::InlineLineBreaker::splitRun):
(WebCore::Layout::InlineLineBreaker::adjustSplitPositionWithHyphenation const):

  • layout/inlineformatting/InlineLineBreaker.h: Added.
  • layout/inlineformatting/textlayout/TextUtil.cpp: Added.

(WebCore::Layout::TextUtil::TextUtil):
(WebCore::Layout::TextUtil::width const):
(WebCore::Layout::TextUtil::hyphenPositionBefore const):
(WebCore::Layout::TextUtil::textWidth const):
(WebCore::Layout::TextUtil::fixedPitchWidth const):

  • layout/inlineformatting/textlayout/TextUtil.h: Added.
  • layout/layouttree/LayoutBox.cpp:
8:52 AM Changeset in webkit [237286] by Alan Bujtas
  • 8 edits
    2 copies
    3 adds in trunk/Source/WebCore

[LFC][IFC] Add generic inline run generator.
https://bugs.webkit.org/show_bug.cgi?id=190696

Reviewed by Antti Koivisto.

InlineRunProvider turns the following inline content ->

<span>foo<span>bar</span></span>
<img src="broken.jpg"><span>hello world</span>

into a set of runs ->

<foobar><image box><hello>< ><world>

Note that a text run can overlap multiple inline elements. InlineRunProvider::Run only stores a reference to
the first inline element (continuous content can be accessed by iterating through the InlineContent ListHashSet).
These runs are the input to the line breaking algoritm.

  • Sources.txt:
  • WebCore.xcodeproj/project.pbxproj:
  • layout/inlineformatting/InlineFormattingContext.cpp:

(WebCore::Layout::InlineFormattingContext::layout const):

  • layout/inlineformatting/InlineFormattingState.h:

(WebCore::Layout::InlineFormattingState::inlineContent):

  • layout/inlineformatting/InlineItem.h: Added.

(WebCore::Layout::InlineItem::layoutBox const):
(WebCore::Layout::InlineItem::style const):
(WebCore::Layout::InlineItemHashFunctions::hash):
(WebCore::Layout::InlineItemHashFunctions::equal):
(WebCore::Layout::InlineItemHashTranslator::hash):
(WebCore::Layout::InlineItemHashTranslator::equal):
(WebCore::Layout::InlineItem::InlineItem):
(WebCore::Layout::InlineItem::type const):
(WebCore::Layout::InlineItem::textContent const):

  • layout/inlineformatting/InlineRunProvider.cpp: Added.

(WebCore::Layout::InlineRunProvider::InlineRunProvider):
(WebCore::Layout::InlineRunProvider::append):
(WebCore::Layout::InlineRunProvider::insertBefore):
(WebCore::Layout::InlineRunProvider::remove):
(WebCore::Layout::isWhitespace):
(WebCore::Layout::isSoftLineBreak):
(WebCore::Layout::InlineRunProvider::isContinousContent):
(WebCore::Layout::InlineRunProvider::processInlineTextItem):
(WebCore::Layout::InlineRunProvider::moveToNextNonWhitespacePosition):
(WebCore::Layout::InlineRunProvider::moveToNextBreakablePosition):

  • layout/inlineformatting/InlineRunProvider.h: Added.

(WebCore::Layout::InlineRunProvider::Run::type const):
(WebCore::Layout::InlineRunProvider::Run::isText const):
(WebCore::Layout::InlineRunProvider::Run::isWhitespace const):
(WebCore::Layout::InlineRunProvider::Run::isNonWhitespace const):
(WebCore::Layout::InlineRunProvider::Run::isLineBreak const):
(WebCore::Layout::InlineRunProvider::Run::isBox const):
(WebCore::Layout::InlineRunProvider::Run::isFloat const):
(WebCore::Layout::InlineRunProvider::Run::TextContext::start const):
(WebCore::Layout::InlineRunProvider::Run::TextContext::length const):
(WebCore::Layout::InlineRunProvider::Run::TextContext::isCollapsed const):
(WebCore::Layout::InlineRunProvider::Run::TextContext::setStart):
(WebCore::Layout::InlineRunProvider::Run::TextContext::setLength):
(WebCore::Layout::InlineRunProvider::Run::textContext const):
(WebCore::Layout::InlineRunProvider::Run::style const):
(WebCore::Layout::InlineRunProvider::Run::inlineItem const):
(WebCore::Layout::InlineRunProvider::runs const):
(WebCore::Layout::InlineRunProvider::Run::createBoxRun):
(WebCore::Layout::InlineRunProvider::Run::createFloatRun):
(WebCore::Layout::InlineRunProvider::Run::createSoftLineBreakRun):
(WebCore::Layout::InlineRunProvider::Run::createHardLineBreakRun):
(WebCore::Layout::InlineRunProvider::Run::createWhitespaceRun):
(WebCore::Layout::InlineRunProvider::Run::createNonWhitespaceRun):
(WebCore::Layout::InlineRunProvider::Run::Run):
(WebCore::Layout::InlineRunProvider::Run::TextContext::TextContext):

  • layout/layouttree/LayoutBox.h:

(WebCore::Layout::Box::isLineBreakBox const):

  • layout/layouttree/LayoutInlineBox.cpp:

(WebCore::Layout::InlineBox::InlineBox):

  • layout/layouttree/LayoutInlineBox.h:

(WebCore::Layout::InlineBox::hasTextContent const):
(WebCore::Layout::InlineBox::textContent const):

  • layout/layouttree/LayoutLineBreakBox.cpp: Copied from Source/WebCore/layout/layouttree/LayoutInlineBox.cpp.

(WebCore::Layout::LineBreakBox::LineBreakBox):

  • layout/layouttree/LayoutLineBreakBox.h: Copied from Source/WebCore/layout/layouttree/LayoutInlineBox.cpp.
6:55 AM Changeset in webkit [237285] by Caio Lima
  • 21 edits
    3 adds in trunk

[BigInt] Add ValueSub into DFG
https://bugs.webkit.org/show_bug.cgi?id=186176

Reviewed by Yusuke Suzuki.

JSTests:

  • stress/big-int-subtraction-jit.js:
  • stress/value-sub-big-int-prediction-propagation.js: Added.
  • stress/value-sub-big-int-untyped.js: Added.
  • stress/value-sub-spec-none-case.js: Added.

Source/JavaScriptCore:

We are introducing in this patch a new node called ValueSub. This node
is necessary due to introduction of BigInt, making subtraction
operations result in non-Number values in some cases. In such case, ValueSub is
responsible to handle Untyped and BigInt operations.
In addition, we are also creating a speculative path when both
operands are BigInt. According to a simple BigInt subtraction microbenchmark,
this represents a speedup of ~1.2x faster.

big-int-simple-sub 14.6427+-0.5652 11.9559+-0.6485 definitely 1.2247x faster

  • dfg/DFGAbstractInterpreterInlines.h:

(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGClobberize.h:

(JSC::DFG::clobberize):

  • dfg/DFGDoesGC.cpp:

(JSC::DFG::doesGC):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):

  • dfg/DFGGraph.h:

(JSC::DFG::Graph::addSpeculationMode):

  • dfg/DFGNodeType.h:
  • dfg/DFGOperations.cpp:
  • dfg/DFGOperations.h:
  • dfg/DFGPredictionPropagationPhase.cpp:
  • dfg/DFGSafeToExecute.h:

(JSC::DFG::safeToExecute):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileValueSub):
(JSC::DFG::SpeculativeJIT::compileArithSub):

  • dfg/DFGSpeculativeJIT.h:
  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGValidate.cpp:
  • ftl/FTLCapabilities.cpp:

(JSC::FTL::canCompile):

  • ftl/FTLLowerDFGToB3.cpp:

(JSC::FTL::DFG::LowerDFGToB3::compileNode):
(JSC::FTL::DFG::LowerDFGToB3::compileValueAdd):
(JSC::FTL::DFG::LowerDFGToB3::compileValueSub):

6:47 AM Changeset in webkit [237284] by ajuma@chromium.org
  • 8 edits in trunk

[IntersectionObserver] Handle zero-area intersections
https://bugs.webkit.org/show_bug.cgi?id=189624

Reviewed by Simon Fraser.

LayoutTests/imported/w3c:

Rebaseline expectations for tests that now pass.

  • web-platform-tests/intersection-observer/edge-inclusive-intersection-expected.txt:
  • web-platform-tests/intersection-observer/isIntersecting-change-events-expected.txt:
  • web-platform-tests/intersection-observer/same-document-zero-size-target-expected.txt:
  • web-platform-tests/intersection-observer/text-target-expected.txt:
  • web-platform-tests/intersection-observer/zero-area-element-visible-expected.txt:

Source/WebCore:

Use edge-inclusive intersection when applying clips and intersecting with the
root, so that two rects that touch each other are considered intersecting even
if the area of their intersection is 0.

Covered by rebased tests in imported/w3c/web-platform-tests/intersection-observer.

  • dom/Document.cpp:

(WebCore::computeIntersectionState):
(WebCore::Document::updateIntersectionObservations):
(WebCore::computeIntersectionRects): Deleted.

6:39 AM Changeset in webkit [237283] by Chris Dumez
  • 3 edits in trunk/Source/WebKit

[PSON] WebPageProxy::didCompletePageTransition() may interact with a SuspendedPageProxy from a previous navigation
https://bugs.webkit.org/show_bug.cgi?id=190717

Reviewed by Antti Koivisto.

WebPageProxy::didCompletePageTransition() may interact with a SuspendedPageProxy from a previous navigation. We need
to reset m_lastSuspendedPage whenever the page starts a new navigation as m_lastSuspendedPage is only updated when
we process-swap otherwise.

Also rename the data member to m_pageSuspendedDueToCurrentNavigation for clarity.

In a follow-up, I will see if I can get rid of this data member entirely or maybe move it to the Navigation
object.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::suspendCurrentPageIfPossible):
(WebKit::WebPageProxy::receivedNavigationPolicyDecision):
(WebKit::WebPageProxy::didCompletePageTransition):
(WebKit::WebPageProxy::enterAcceleratedCompositingMode):

2:40 AM WebKitGTK/2.22.x edited by tpopela@redhat.com
(diff)

Oct 18, 2018:

11:43 PM Changeset in webkit [237282] by Fujii Hironori
  • 3 edits in trunk

[Win][Clang] Do not give -Wall to clang-cl because it is treated as -Weverything
https://bugs.webkit.org/show_bug.cgi?id=190514

Reviewed by Michael Catanzaro.

clang-cl maps /Wall and -Wall to -Weverything which reports tons
of compilation warnings. Do not give -Wall option to clang-cl.

Clang processes -Wall and -Wextra options differently than GCC.
Clang processes all warning options in left-to-right order, while
GCC processes -Wall and -Wextra options first. In order to get the
same effect in both compilers, -Wall and -Wextra should be
speficied before all -Wno-* options.

  • Source/cmake/WebKitCompilerFlags.cmake: Put -Wall and -Wextra

options before all -Wno-* options.

  • Source/cmake/OptionsMSVC.cmake: Prepend /W4 option, instead of

just replacing /W3 option.

10:22 PM Changeset in webkit [237281] by eric.carlson@apple.com
  • 26 edits
    2 adds in trunk/Source

[MediaStream] Allow ports to optionally do screen capture in the UI process
https://bugs.webkit.org/show_bug.cgi?id=190728
<rdar://problem/45376824>

Reviewed by Jer Noble and Tim Horton.

Source/WebCore:

No new tests, covered by existing tests.

  • Sources.txt: Add RemoteVideoSample.cpp.
  • WebCore.xcodeproj/project.pbxproj: Ditto.
  • platform/MediaSample.h:

(WebCore::MediaSample::videoPixelFormat const):

  • platform/graphics/RemoteVideoSample.cpp: Added.

(WebCore::RemoteVideoSample::~RemoteVideoSample):
(WebCore::RemoteVideoSample::create):
(WebCore::RemoteVideoSample::RemoteVideoSample):
(WebCore::RemoteVideoSample::surface):

  • platform/graphics/RemoteVideoSample.h: Added.

(WebCore::RemoteVideoSample::time const):
(WebCore::RemoteVideoSample::videoFormat const):
(WebCore::RemoteVideoSample::size const):
(WebCore::RemoteVideoSample::encode const):
(WebCore::RemoteVideoSample::decode):

  • platform/graphics/avfoundation/objc/MediaSampleAVFObjC.h:
  • platform/graphics/cv/ImageTransferSessionVT.h:
  • platform/mediastream/RealtimeMediaSource.cpp:

(WebCore::RealtimeMediaSource::remoteVideoSampleAvailable): Call observers.

  • platform/mediastream/RealtimeMediaSource.h:
  • platform/mediastream/RealtimeVideoSource.cpp:

(WebCore::RealtimeVideoSource::dispatchMediaSampleToObservers): Dispatch remote samples without
resizing, resize local samples if necessary.

  • platform/mediastream/RealtimeVideoSource.h:
  • platform/mediastream/mac/AVVideoCaptureSource.mm:

(WebCore::AVVideoCaptureSource::captureOutputDidOutputSampleBufferFromConnection): Don't resize
samples, it will be done in the base class if necessary.

  • platform/mediastream/mac/DisplayCaptureSourceCocoa.cpp:

(WebCore::DisplayCaptureSourceCocoa::emitFrame): Don't resize samples when running in the UI
process, it will be done in the web process.

  • platform/mediastream/mac/RealtimeOutgoingVideoSourceCocoa.cpp: Remove unneeded include.

Source/WebKit:

  • Shared/WebProcessCreationParameters.cpp:

(WebKit::WebProcessCreationParameters::encode const): Encode shouldCaptureDisplayInUIProcess.
(WebKit::WebProcessCreationParameters::decode): Decode shouldCaptureDisplayInUIProcess.

  • Shared/WebProcessCreationParameters.h:
  • UIProcess/API/APIProcessPoolConfiguration.cpp:

(API::ProcessPoolConfiguration::copy): Copy shouldCaptureDisplayInUIProcess.

  • UIProcess/API/APIProcessPoolConfiguration.h:
  • UIProcess/Cocoa/UserMediaCaptureManagerProxy.cpp:

(WebKit::UserMediaCaptureManagerProxy::SourceProxy::remoteVideoSampleAvailable):
(WebKit::UserMediaCaptureManagerProxy::createMediaSourceForCaptureDeviceWithConstraints): Remove
RealtimeMediaSource::Type parameter, CaptureDevice has the same information. Deal with display
capture "devices".

  • UIProcess/Cocoa/UserMediaCaptureManagerProxy.h:
  • UIProcess/Cocoa/UserMediaCaptureManagerProxy.messages.in:
  • UIProcess/WebProcessPool.cpp:

(WebKit::WebProcessPool::initializeNewWebProcess): Copy shouldCaptureDisplayInUIProcess.

  • WebProcess/cocoa/UserMediaCaptureManager.cpp:

(WebKit::UserMediaCaptureManager::Source::Source): Only allocate a ring buffer for Audio sources.
(WebKit::UserMediaCaptureManager::Source::~Source): Same for deallocate.
(WebKit::UserMediaCaptureManager::Source::storage): m_ringBuffer is a pointer.
(WebKit::UserMediaCaptureManager::Source::setStorage): Ditto.
(WebKit::UserMediaCaptureManager::Source::setRingBufferFrameBounds): Ditto.
(WebKit::UserMediaCaptureManager::Source::audioSamplesAvailable): Ditto.
(WebKit::UserMediaCaptureManager::Source::remoteVideoSampleAvailable): Create a
PixelBuffer-backed media sample and call videoSampleAvailable.
(WebKit::UserMediaCaptureManager::~UserMediaCaptureManager): Clear the audio and display capture
factory overrides.
(WebKit::UserMediaCaptureManager::initialize): Set the audio and display capture factory overrides.
(WebKit::UserMediaCaptureManager::createCaptureSource):
(WebKit::UserMediaCaptureManager::remoteVideoSampleAvailable):

  • WebProcess/cocoa/UserMediaCaptureManager.h:
  • WebProcess/cocoa/UserMediaCaptureManager.messages.in:
9:39 PM Changeset in webkit [237280] by commit-queue@webkit.org
  • 7 edits in trunk

[CG] Adopt CG SPI for non-even cornered rounded rects
https://bugs.webkit.org/show_bug.cgi?id=190155

Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2018-10-18
Reviewed by Simon Fraser.

Source/WebCore:

Instead of creating bezier curves for the non-even corners of the rounded
rects, we should use the optimized SPI provided by CG.

  • platform/graphics/cg/PathCG.cpp:

(WebCore::Path::platformAddPathForRoundedRect):

Source/WebCore/PAL:

  • pal/spi/cg/CoreGraphicsSPI.h:

LayoutTests:

This test fails on iOS simulator because of just one pixel difference.
I think it happens because of anti aliasing the color at the border of
the black shadow. Since this test is testing the radius attribute of the
CSS box-shadow and this should not be affected by whether the shadow has
non-even rounded corners or not, I am going to change it to have even
rounded corners.

  • fast/box-shadow/box-shadow-with-zero-radius-expected.html:
  • fast/box-shadow/box-shadow-with-zero-radius.html:
8:54 PM Changeset in webkit [237279] by Justin Fan
  • 6 edits
    1 add in trunk/LayoutTests

Add test expectations for webgpu-enabled.html
https://bugs.webkit.org/show_bug.cgi?id=190739

Unreviewed test gardening.

Added forgotten expectations for webgpu-enabled, and updated some expectations
to match the WebGPU -> WebMetal naming and new WebGPU tests.

  • platform/ios/TestExpectations:
  • platform/mac-wk1/TestExpectations:
  • platform/win/TestExpectations:
  • platform/wincairo/TestExpectations:
  • platform/wpe/TestExpectations:
  • webgpu/webgpu-enabled-expected.txt: Added.
7:48 PM Changeset in webkit [237278] by aboya@igalia.com
  • 4 edits in trunk

[Media] Use nanoseconds as MaximumTimeScale
https://bugs.webkit.org/show_bug.cgi?id=190631

Source/WTF:

1e9 is a much more useful timescale than the previous one 231-1.
Unlike 2
31-1, which is a prime number, nanosecond scale is pretty
common among some formats like WebM and frameworks like GStreamer
where base 10 timescale is common... and it's those big timescales the
ones that are usually scaled up to MaximumTimeScale.

Reviewed by Jer Noble.

  • wtf/MediaTime.cpp:

Tools:

Rebased MediaTime tests covering timescales over the maximum.

Reviewed by Jer Noble.

  • TestWebKitAPI/Tests/WTF/MediaTime.cpp:

(TestWebKitAPI::TEST):

5:55 PM Changeset in webkit [237277] by ap@apple.com
  • 2 edits in trunk/Source/WTF

Remove PLATFORM(IOS) for now
https://bugs.webkit.org/show_bug.cgi?id=190737

Reviewed by Tim Horton.

  • wtf/Platform.h:
4:59 PM Changeset in webkit [237276] by commit-queue@webkit.org
  • 14 edits
    1 copy
    1 add in trunk

Add new image type for CSS painting API
https://bugs.webkit.org/show_bug.cgi?id=190697

Patch by Justin Michaud <justin_michaud@apple.com> on 2018-10-18
Reviewed by Dean Jackson.

Source/WebCore:

Add a new image type for the CSS painting API, and hook it up so it can be drawn.
For now, it uses a WebGL rendering context from OfflineCanvas because that was
easy to hook up. The spec actually calls for a RenderingContext2D, which can be
handled in another patch.

  • Sources.txt:
  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSImageGeneratorValue.cpp:

(WebCore::CSSImageGeneratorValue::image):
(WebCore::CSSImageGeneratorValue::isFixedSize const):
(WebCore::CSSImageGeneratorValue::fixedSize):
(WebCore::CSSImageGeneratorValue::isPending const):
(WebCore::CSSImageGeneratorValue::knownToBeOpaque const):
(WebCore::CSSImageGeneratorValue::loadSubimages):

  • css/CSSPaintCallback.h:
  • css/CSSPaintCallback.idl:
  • css/CSSPaintImageValue.cpp:

(WebCore::CSSPaintImageValue::image):

  • css/CSSPaintImageValue.h:
  • platform/graphics/CustomPaintImage.cpp: Added.

(WebCore::CustomPaintImage::CustomPaintImage):
(WebCore::CustomPaintImage::doCustomPaint):
(WebCore::CustomPaintImage::draw):
(WebCore::CustomPaintImage::drawPattern):

  • platform/graphics/CustomPaintImage.h: Copied from Source/WebCore/css/CSSPaintCallback.h.
  • platform/graphics/Image.h:

(WebCore::Image::isCustomPaintImage const):

  • platform/graphics/ImageBuffer.h:
  • platform/graphics/cairo/CairoOperations.cpp:

LayoutTests:

  • fast/css-custom-paint/basic-expected.txt:
  • fast/css-custom-paint/basic.html:
4:44 PM Changeset in webkit [237275] by Truitt Savell
  • 26 edits
    2 deletes in trunk/Source

Unreviewed, rolling out r237272.

Broke on device iOS builds and Windows builds

Reverted changeset:

"[MediaStream] Allow ports to optionally do screen capture in
the UI process"
https://bugs.webkit.org/show_bug.cgi?id=190728
https://trac.webkit.org/changeset/237272

4:02 PM Changeset in webkit [237274] by jer.noble@apple.com
  • 6 edits
    2 adds in trunk

[MSE] timestampOffset can introduce floating-point rounding errors to incoming samples
https://bugs.webkit.org/show_bug.cgi?id=190590
<rdar://problem/45275626>

Reviewed by Eric Carlson.

Source/WebCore:

Test: media/media-source/media-source-timestampoffset-rounding-error.html

SourceBuffer.timestampOffset is a double property, which, when added to a MediaTime will
result in a double-backed MediaTime as PTS & DTS. This can introduce rounding errors when
these samples are appended as overlapping existing samples. Rather than converting a MediaTime
to double-backed when adding the timestampOffset, convert the offset to a multiple of the
sample's timeBase.

  • Modules/mediasource/SourceBuffer.cpp:

(WebCore::SourceBuffer::setTimestampOffset):
(WebCore::SourceBuffer::sourceBufferPrivateDidReceiveSample):

LayoutTests:

  • media/media-source/media-source-sequence-timestamps-expected.txt:
  • media/media-source/media-source-timestampoffset-rounding-error-expected.txt: Added.
  • media/media-source/media-source-timestampoffset-rounding-error.html: Added.
  • media/media-source/mock-media-source.js:

(makeASample):

4:01 PM Changeset in webkit [237273] by jer.noble@apple.com
  • 5 edits in trunk

Enable WKPreferences._lowPowerVideoAudioBufferSizeEnabled by default
https://bugs.webkit.org/show_bug.cgi?id=190315
Source/WebKit:

Reviewed by Eric Carlson.

This preference is disabled for WebKitLegacy because it can interact poorly with clients' own use of audio.
It can be enabled for WebKit since it will only affect the WebProcess and not the client process.

  • Shared/WebPreferences.yaml:

LayoutTests:

<rdar://problem/45047807>

Reviewed by Eric Carlson.

  • media/audio-controls-timeline-in-media-document-expected.txt:
  • media/audio-controls-timeline-in-media-document.html:
3:52 PM Changeset in webkit [237272] by eric.carlson@apple.com
  • 26 edits
    2 adds in trunk/Source

[MediaStream] Allow ports to optionally do screen capture in the UI process
https://bugs.webkit.org/show_bug.cgi?id=190728
<rdar://problem/45376824>

Reviewed by Jer Noble and Tim Horton.

Source/WebCore:

No new tests, covered by existing tests.

  • Sources.txt: Add RemoteVideoSample.cpp.
  • WebCore.xcodeproj/project.pbxproj: Ditto.
  • platform/MediaSample.h:

(WebCore::MediaSample::videoPixelFormat const):

  • platform/graphics/RemoteVideoSample.cpp: Added.

(WebCore::RemoteVideoSample::~RemoteVideoSample):
(WebCore::RemoteVideoSample::create):
(WebCore::RemoteVideoSample::RemoteVideoSample):
(WebCore::RemoteVideoSample::surface):

  • platform/graphics/RemoteVideoSample.h: Added.

(WebCore::RemoteVideoSample::time const):
(WebCore::RemoteVideoSample::videoFormat const):
(WebCore::RemoteVideoSample::size const):
(WebCore::RemoteVideoSample::encode const):
(WebCore::RemoteVideoSample::decode):

  • platform/graphics/avfoundation/objc/MediaSampleAVFObjC.h:
  • platform/graphics/cv/ImageTransferSessionVT.h:
  • platform/mediastream/RealtimeMediaSource.cpp:

(WebCore::RealtimeMediaSource::remoteVideoSampleAvailable): Call observers.

  • platform/mediastream/RealtimeMediaSource.h:
  • platform/mediastream/RealtimeVideoSource.cpp:

(WebCore::RealtimeVideoSource::dispatchMediaSampleToObservers): Dispatch remote samples without
resizing, resize local samples if necessary.

  • platform/mediastream/RealtimeVideoSource.h:
  • platform/mediastream/mac/AVVideoCaptureSource.mm:

(WebCore::AVVideoCaptureSource::captureOutputDidOutputSampleBufferFromConnection): Don't resize
samples, it will be done in the base class if necessary.

  • platform/mediastream/mac/DisplayCaptureSourceCocoa.cpp:

(WebCore::DisplayCaptureSourceCocoa::emitFrame): Don't resize samples when running in the UI
process, it will be done in the web process.

  • platform/mediastream/mac/RealtimeOutgoingVideoSourceCocoa.cpp: Remove unneeded include.

Source/WebKit:

  • Shared/WebProcessCreationParameters.cpp:

(WebKit::WebProcessCreationParameters::encode const): Encode shouldCaptureDisplayInUIProcess.
(WebKit::WebProcessCreationParameters::decode): Decode shouldCaptureDisplayInUIProcess.

  • Shared/WebProcessCreationParameters.h:
  • UIProcess/API/APIProcessPoolConfiguration.cpp:

(API::ProcessPoolConfiguration::copy): Copy shouldCaptureDisplayInUIProcess.

  • UIProcess/API/APIProcessPoolConfiguration.h:
  • UIProcess/Cocoa/UserMediaCaptureManagerProxy.cpp:

(WebKit::UserMediaCaptureManagerProxy::SourceProxy::remoteVideoSampleAvailable):
(WebKit::UserMediaCaptureManagerProxy::createMediaSourceForCaptureDeviceWithConstraints): Remove
RealtimeMediaSource::Type parameter, CaptureDevice has the same information. Deal with display
capture "devices".

  • UIProcess/Cocoa/UserMediaCaptureManagerProxy.h:
  • UIProcess/Cocoa/UserMediaCaptureManagerProxy.messages.in:
  • UIProcess/WebProcessPool.cpp:

(WebKit::WebProcessPool::initializeNewWebProcess): Copy shouldCaptureDisplayInUIProcess.

  • WebProcess/cocoa/UserMediaCaptureManager.cpp:

(WebKit::UserMediaCaptureManager::Source::Source): Only allocate a ring buffer for Audio sources.
(WebKit::UserMediaCaptureManager::Source::~Source): Same for deallocate.
(WebKit::UserMediaCaptureManager::Source::storage): m_ringBuffer is a pointer.
(WebKit::UserMediaCaptureManager::Source::setStorage): Ditto.
(WebKit::UserMediaCaptureManager::Source::setRingBufferFrameBounds): Ditto.
(WebKit::UserMediaCaptureManager::Source::audioSamplesAvailable): Ditto.
(WebKit::UserMediaCaptureManager::Source::remoteVideoSampleAvailable): Create a
PixelBuffer-backed media sample and call videoSampleAvailable.
(WebKit::UserMediaCaptureManager::~UserMediaCaptureManager): Clear the audio and display capture
factory overrides.
(WebKit::UserMediaCaptureManager::initialize): Set the audio and display capture factory overrides.
(WebKit::UserMediaCaptureManager::createCaptureSource):
(WebKit::UserMediaCaptureManager::remoteVideoSampleAvailable):

  • WebProcess/cocoa/UserMediaCaptureManager.h:
  • WebProcess/cocoa/UserMediaCaptureManager.messages.in:
3:48 PM Changeset in webkit [237271] by jer.noble@apple.com
  • 5 edits
    2 adds in trunk

Safari is not able to adapt between H264 streams with EditList and without EditList
https://bugs.webkit.org/show_bug.cgi?id=190638
<rdar://problem/45342208>

Reviewed by Eric Carlson.

Source/WebCore:

Test: media/media-source/media-source-append-overlapping-dts.html

The MSE frame replacement algorithm does not take decode timestamps into account; this can
lead to situations where the replacement algorithm may leave in place frames where the
presentationTimestamp is less than the replacement frame, but whose decodeTimestamp is
after the replacement frame. When re-enqueuing these frames, they may cause a decode error
if they break the group-of-pictures sequence of the replaced range.

  • Modules/mediasource/SampleMap.cpp:

(WebCore::DecodeOrderSampleMap::findSamplesBetweenDecodeKeys):

  • Modules/mediasource/SampleMap.h:
  • Modules/mediasource/SourceBuffer.cpp:

(WebCore::SourceBuffer::sourceBufferPrivateDidReceiveSample):

LayoutTests:

  • media/media-source/media-source-append-overlapping-dts-expected.txt: Added.
  • media/media-source/media-source-append-overlapping-dts.html: Added.
3:32 PM Changeset in webkit [237270] by pvollan@apple.com
  • 5 edits in trunk

[WebVTT] Region parameter and value should be separated by ':'
https://bugs.webkit.org/show_bug.cgi?id=190735

Reviewed by Eric Carlson.

Source/WebCore:

This is specified in https://w3c.github.io/webvtt/#region-settings.

No new tests. Modified existing tests.

  • html/track/VTTRegion.cpp:

(WebCore::VTTRegion::setRegionSettings):

LayoutTests:

  • media/track/captions-webvtt/captions-regions.vtt:
  • media/track/captions-webvtt/header-regions.vtt:
3:14 PM Changeset in webkit [237269] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

clean-webkit pulls in many unnecessary dependencies in webkitpy
https://bugs.webkit.org/show_bug.cgi?id=190732

Patch by Dean Johnson <dean_johnson@apple.com> on 2018-10-18
Reviewed by Alexey Proskuryakov.

  • Scripts/webkitpy/common/host.py:

(Host.init): Split out 'bugs', 'bugzilla', and 'web' to only be created when used.
(Host):
(Host.bugs):
(Host.bugzilla):
(Host.web):

2:44 PM Changeset in webkit [237268] by jer.noble@apple.com
  • 18 edits
    3 copies in trunk

Add support for MediaKeyEncryptionScheme
https://bugs.webkit.org/show_bug.cgi?id=190173

Reviewed by Eric Carlson.

Source/WebCore:

Added sub-tests to: media/encrypted-media/mock-navigator-requestMediaKeySystemAccess.html

Add support for the MediaKeyEncryptionScheme extension to EME, as detailed here:
<https://github.com/WICG/encrypted-media-encryption-scheme/blob/master/explainer.md>

As the strings "cenc" and "cbcs" are explicitly lower-case, add support to the bindings generator to keep
those strings as lower-case when converting from IDL.

  • CMakeLists.txt:
  • DerivedSources.make:
  • Modules/encryptedmedia/MediaKeyEncryptionScheme.h:
  • Modules/encryptedmedia/MediaKeyEncryptionScheme.idl:
  • Modules/encryptedmedia/MediaKeySystemMediaCapability.h:
  • Modules/encryptedmedia/MediaKeySystemMediaCapability.idl:
  • Sources.txt:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/scripts/CodeGenerator.pm:

(WK_ucfirst):

  • platform/encryptedmedia/CDMEncryptionScheme.h: Copied from Source/WebCore/testing/MockCDMFactory.idl.
  • platform/encryptedmedia/CDMMediaCapability.h:
  • platform/graphics/avfoundation/CDMFairPlayStreaming.cpp:

(WebCore::CDMPrivateFairPlayStreaming::supportsConfiguration const):

  • platform/graphics/avfoundation/objc/CDMInstanceFairPlayStreamingAVFObjC.h:
  • platform/graphics/avfoundation/objc/CDMInstanceFairPlayStreamingAVFObjC.mm:

(WebCore::CDMInstanceFairPlayStreamingAVFObjC::supportsMediaCapability):
(WebCore::CDMInstanceFairPlayStreamingAVFObjC::initializeWithConfiguration):

  • testing/MockCDMFactory.cpp:

(WebCore::m_supportedEncryptionSchemes):
(WebCore::MockCDM::supportsConfiguration const):

  • testing/MockCDMFactory.h:

(WebCore::MockCDMFactory::supportedEncryptionSchemes const):
(WebCore::MockCDMFactory::setSupportedEncryptionSchemes):

  • testing/MockCDMFactory.idl:

LayoutTests:

  • media/encrypted-media/mock-navigator-requestMediaKeySystemAccess-expected.txt:
  • media/encrypted-media/mock-navigator-requestMediaKeySystemAccess.html:
2:41 PM Changeset in webkit [237267] by Chris Dumez
  • 13 edits in trunk

[PSON] SuspendedPages do not report meaningful domains in Activity Monitor
https://bugs.webkit.org/show_bug.cgi?id=190721
<rdar://problem/45059699>

Reviewed by Alex Christensen.

Source/WebKit:

SuspendedPages do not report meaningful domains in Activity Monitor, which makes
debugging harder.

  • WebProcess/cocoa/WebProcessCocoa.mm:

(WebKit::origin):
(WebKit::WebProcess::updateActivePages):

Tools:

Add API test coverage.

  • TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2:38 PM Changeset in webkit [237266] by ap@apple.com
  • 1224 edits in trunk

Switch from PLATFORM(IOS) to PLATFORM(IOS_FAMILY)
https://bugs.webkit.org/show_bug.cgi?id=190729

Reviewed by Tim Horton.

Source/JavaScriptCore:

  • API/JSBase.cpp:
  • API/JSWrapperMap.mm:
  • assembler/ARM64Assembler.h:

(JSC::ARM64Assembler::cacheFlush):

  • assembler/ARMv7Assembler.h:

(JSC::ARMv7Assembler::cacheFlush):

  • assembler/AssemblerCommon.h:

(JSC::isIOS):

  • heap/FullGCActivityCallback.cpp:

(JSC::FullGCActivityCallback::doCollection):

  • heap/Heap.cpp:

(JSC::Heap::overCriticalMemoryThreshold):
(JSC::Heap::updateAllocationLimits):
(JSC::Heap::collectIfNecessaryOrDefer):

  • heap/Heap.h:
  • inspector/remote/cocoa/RemoteConnectionToTargetCocoa.mm:

(Inspector::RemoteConnectionToTarget::dispatchAsyncOnTarget):

  • jit/ExecutableAllocator.cpp:

(JSC::allowJIT):

  • jit/ExecutableAllocator.h:
  • jit/RegisterSet.cpp:

(JSC::RegisterSet::reservedHardwareRegisters):
(JSC::RegisterSet::calleeSaveRegisters):

  • jit/ThunkGenerators.cpp:
  • jsc.cpp:

(main):

  • runtime/MathCommon.cpp:
  • runtime/Options.cpp:

(JSC::overrideDefaults):
(JSC::recomputeDependentOptions):

  • runtime/Options.h:

Source/WebCore:

  • DerivedSources.make:
  • Modules/applepay/cocoa/PaymentContactCocoa.mm:

(WebCore::subLocality):
(WebCore::setSubLocality):
(WebCore::subAdministrativeArea):
(WebCore::setSubAdministrativeArea):

  • Modules/encryptedmedia/legacy/LegacyCDMPrivateMediaPlayer.cpp:
  • Modules/geolocation/Geolocation.cpp:

(WebCore::isRequestFromIBooks):

  • Modules/geolocation/GeolocationPosition.h:
  • Modules/geolocation/NavigatorGeolocation.cpp:
  • Modules/geolocation/NavigatorGeolocation.h:
  • Modules/geolocation/ios/GeolocationPositionIOS.mm:
  • Modules/mediasession/WebMediaSessionManager.cpp:
  • Modules/mediasession/WebMediaSessionManager.h:
  • Modules/mediastream/MediaDevicesRequest.cpp:

(WebCore::MediaDevicesRequest::filterDeviceList):

  • Modules/plugins/QuickTimePluginReplacement.mm:

(WebCore::JSQuickTimePluginReplacement::timedMetaData const):
(WebCore::JSQuickTimePluginReplacement::accessLog const):
(WebCore::JSQuickTimePluginReplacement::errorLog const):

  • Modules/speech/SpeechSynthesis.cpp:

(WebCore::SpeechSynthesis::SpeechSynthesis):
(WebCore::SpeechSynthesis::speak):

  • Modules/speech/SpeechSynthesis.h:
  • Modules/webaudio/AudioContext.cpp:
  • Modules/webaudio/AudioScheduledSourceNode.cpp:
  • Modules/webdatabase/Database.cpp:

(WebCore::Database::performOpenAndVerify):

  • Modules/webdatabase/DatabaseContext.h:
  • Modules/webdatabase/DatabaseManagerClient.h:
  • Modules/webdatabase/DatabaseTracker.cpp:

(WebCore::DatabaseTracker::deleteDatabaseFile):

  • Modules/webdatabase/DatabaseTracker.h:
  • WebCorePrefix.h:
  • accessibility/AXObjectCache.cpp:

(WebCore::createFromRenderer):

  • accessibility/AccessibilityMediaObject.cpp:
  • accessibility/AccessibilityMediaObject.h:
  • accessibility/AccessibilityMenuList.cpp:

(WebCore::AccessibilityMenuList::press):
(WebCore::AccessibilityMenuList::isCollapsed const):

  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::isAccessibilityObjectSearchMatchAtIndex):
(WebCore::AccessibilityObject::press):
(WebCore::AccessibilityObject::actionVerb const):

  • accessibility/AccessibilityObject.h:
  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::stringValue const):
(WebCore::AccessibilityRenderObject::determineAccessibilityRole):
(WebCore::AccessibilityRenderObject::actionVerb const):

  • accessibility/AccessibilityTableColumn.cpp:

(WebCore::AccessibilityTableColumn::computeAccessibilityIsIgnored const):

  • accessibility/AccessibilityTableHeaderContainer.cpp:

(WebCore::AccessibilityTableHeaderContainer::computeAccessibilityIsIgnored const):

  • accessibility/ios/AXObjectCacheIOS.mm:
  • accessibility/ios/AccessibilityObjectIOS.mm:
  • accessibility/ios/WebAccessibilityObjectWrapperIOS.h:
  • accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
  • bindings/js/CommonVM.cpp:

(WebCore::commonVMSlow):

  • bindings/js/JSCallbackData.h:

(WebCore::JSCallbackData::~JSCallbackData):

  • bindings/js/JSDOMWindowBase.cpp:

(WebCore::JSDOMWindowBase::shouldInterruptScriptBeforeTimeout):

  • bindings/js/ScriptController.cpp:

(WebCore::ScriptController::initializeThreading):

  • bridge/objc/objc_class.mm:

(JSC::Bindings::ObjcClass::fieldNamed const):

  • crypto/CommonCryptoUtilities.h:
  • crypto/mac/CryptoKeyRSAMac.cpp:
  • crypto/mac/SerializedCryptoKeyWrapMac.mm:

(WebCore::masterKeyAccountNameForCurrentApplication):
(WebCore::createAndStoreMasterKey):

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::ComputedStyleExtractor::valueForPropertyinStyle):

  • css/CSSProperties.json:
  • css/CSSStyleDeclaration.cpp:
  • css/CSSValueKeywords.in:
  • css/MediaQueryEvaluator.cpp:

(WebCore::prefersReducedMotionEvaluate):

  • css/StyleBuilderConverter.h:
  • css/html.css:

(video):
(input, textarea, keygen, select, button):
(#if defined(WTF_PLATFORM_IOS_FAMILY) && WTF_PLATFORM_IOS_FAMILY):
(#if defined(ENABLE_INPUT_TYPE_DATE) && ENABLE_INPUT_TYPE_DATE):
(#endif):
(#if defined(ENABLE_DATALIST_ELEMENT) && ENABLE_DATALIST_ELEMENT):
(textarea):
(input:matches([type="radio"], [type="checkbox"])):
(input:matches([type="button"], [type="submit"], [type="reset"]), input[type="file"]::-webkit-file-upload-button, button):
(input[type="range"]::-webkit-slider-thumb, input[type="range"]::-webkit-media-slider-thumb):
(#if !(defined(WTF_PLATFORM_IOS_FAMILY) && WTF_PLATFORM_IOS_FAMILY)):
(input[type="checkbox"]):
(#endif defined(ENABLE_INPUT_TYPE_COLOR) && ENABLE_INPUT_TYPE_COLOR):
(#if defined(WTF_PLATFORM_IOS) && WTF_PLATFORM_IOS): Deleted.
(#if !(defined(WTF_PLATFORM_IOS) && WTF_PLATFORM_IOS)): Deleted.

  • css/parser/CSSParserContext.cpp:

(WebCore::CSSParserContext::CSSParserContext):

  • css/parser/CSSParserFastPaths.cpp:

(WebCore::CSSParserFastPaths::isValidKeywordPropertyAndValue):
(WebCore::CSSParserFastPaths::isKeywordPropertyID):

  • css/parser/CSSPropertyParser.cpp:

(WebCore::cssPropertyID):
(WebCore::CSSPropertyParser::parseSingleValue):

  • css/parser/CSSPropertyParser.h:
  • css/svg.css:

(#if defined(WTF_PLATFORM_IOS_FAMILY) && WTF_PLATFORM_IOS_FAMILY):
(#if defined(WTF_PLATFORM_IOS) && WTF_PLATFORM_IOS): Deleted.

  • dom/DeviceMotionController.cpp:
  • dom/DeviceMotionController.h:
  • dom/DeviceOrientationController.cpp:

(WebCore::DeviceOrientationController::DeviceOrientationController):

  • dom/DeviceOrientationController.h:
  • dom/DeviceOrientationData.cpp:
  • dom/DeviceOrientationData.h:
  • dom/DeviceOrientationEvent.cpp:
  • dom/DeviceOrientationEvent.h:
  • dom/DeviceOrientationEvent.idl:
  • dom/Document.cpp:

(WebCore::Document::~Document):
(WebCore::Document::suspendDeviceMotionAndOrientationUpdates):
(WebCore::Document::resumeDeviceMotionAndOrientationUpdates):
(WebCore::Document::platformSuspendOrStopActiveDOMObjects):

  • dom/Document.h:
  • dom/DocumentMarker.h:

(WebCore::DocumentMarker::allMarkers):

  • dom/DocumentMarkerController.cpp:

(WebCore::shouldInsertAsSeparateMarker):
(WebCore::DocumentMarkerController::shiftMarkers):

  • dom/DocumentMarkerController.h:
  • dom/Element.cpp:

(WebCore::Element::focus):

  • dom/Node.cpp:

(WebCore::Node::~Node):
(WebCore::Node::willBeDeletedFrom):
(WebCore::Node::moveNodeToNewDocument):
(WebCore::tryAddEventListener):
(WebCore::tryRemoveEventListener):
(WebCore::Node::defaultEventHandler):
(WebCore::Node::willRespondToMouseMoveEvents):
(WebCore::Node::willRespondToMouseClickEvents):

  • dom/Range.cpp:
  • dom/Range.h:
  • dom/TreeScope.cpp:

(WebCore::absolutePointIfNotClipped):

  • dom/ViewportArguments.cpp:

(WebCore::setViewportFeature):

  • dom/ViewportArguments.h:
  • editing/CompositeEditCommand.cpp:

(WebCore::EditCommandComposition::unapply):
(WebCore::CompositeEditCommand::replaceTextInNodePreservingMarkers):
(WebCore::CompositeEditCommand::moveParagraphs):

  • editing/Editor.cpp:

(WebCore::TemporarySelectionChange::TemporarySelectionChange):
(WebCore::TemporarySelectionChange::~TemporarySelectionChange):
(WebCore::Editor::handleTextEvent):
(WebCore::Editor::Editor):
(WebCore::Editor::clear):
(WebCore::Editor::insertTextWithoutSendingTextEvent):
(WebCore::Editor::setBaseWritingDirection):
(WebCore::Editor::setComposition):
(WebCore::Editor::showSpellingGuessPanel):
(WebCore::Editor::markMisspellingsAfterTypingToWord):
(WebCore::Editor::markMisspellingsOrBadGrammar):
(WebCore::Editor::changeBackToReplacedString):
(WebCore::Editor::updateMarkersForWordsAffectedByEditing):
(WebCore::Editor::revealSelectionAfterEditingOperation):
(WebCore::Editor::setIgnoreSelectionChanges):
(WebCore::Editor::changeSelectionAfterCommand):
(WebCore::Editor::shouldChangeSelection const):
(WebCore::Editor::respondToChangedSelection):
(WebCore::Editor::editorUIUpdateTimerFired):
(WebCore::Editor::resolveTextCheckingTypeMask):

  • editing/Editor.h:
  • editing/FontAttributes.h:
  • editing/FrameSelection.cpp:

(WebCore::FrameSelection::FrameSelection):
(WebCore::FrameSelection::updateDataDetectorsForSelection):
(WebCore::FrameSelection::setSelectedRange):
(WebCore::FrameSelection::updateAppearance):
(WebCore::FrameSelection::shouldDeleteSelection const):
(WebCore::FrameSelection::revealSelection):
(WebCore::FrameSelection::setSelectionFromNone):
(WebCore::FrameSelection::shouldChangeSelection const):

  • editing/FrameSelection.h:
  • editing/InsertIntoTextNodeCommand.cpp:
  • editing/InsertIntoTextNodeCommand.h:
  • editing/TypingCommand.cpp:

(WebCore::TypingCommand::markMisspellingsAfterTyping):
(WebCore::TypingCommand::deleteKeyPressed):
(WebCore::TypingCommand::forwardDeleteKeyPressed):

  • editing/TypingCommand.h:
  • editing/cocoa/DataDetection.h:
  • editing/cocoa/DataDetection.mm:
  • editing/cocoa/FontAttributesCocoa.mm:
  • editing/cocoa/FontShadowCocoa.mm:

(WebCore::FontShadow::createShadow const):

  • editing/cocoa/HTMLConverter.h:
  • editing/cocoa/HTMLConverter.mm:

(_fontForNameAndSize):
(_shadowForShadowStyle):
(HTMLConverter::computedAttributesForElement):
(HTMLConverter::_addAttachmentForElement):
(HTMLConverter::_processMetaElementWithName):
(HTMLConverter::_processElement):

  • editing/cocoa/WebContentReaderCocoa.mm:

(WebCore::attributesForAttributedStringConversion):
(WebCore::WebContentReader::readURL):

  • editing/ios/DictationCommandIOS.cpp:
  • editing/ios/DictationCommandIOS.h:
  • editing/ios/EditorIOS.mm:
  • editing/mac/FrameSelectionMac.mm:

(WebCore::FrameSelection::notifyAccessibilityForSelectionChange):

  • fileapi/FileCocoa.mm:
  • history/CachedFrame.cpp:

(WebCore::CachedFrameBase::restore):
(WebCore::CachedFrame::CachedFrame):

  • history/CachedPage.cpp:

(WebCore::CachedPage::restore):

  • history/HistoryItem.cpp:

(WebCore::HistoryItem::HistoryItem):

  • history/HistoryItem.h:
  • history/PageCache.cpp:

(WebCore::canCachePage):

  • html/BaseDateAndTimeInputType.cpp:
  • html/BaseDateAndTimeInputType.h:
  • html/ColorInputType.cpp:

(WebCore::ColorInputType::isKeyboardFocusable const):

  • html/HTMLAppletElement.cpp:

(WebCore::HTMLAppletElement::updateWidget):

  • html/HTMLAttachmentElement.h:
  • html/HTMLCanvasElement.cpp:

(WebCore::maxActivePixelMemory):

  • html/HTMLElement.cpp:

(WebCore::HTMLElement::collectStyleForPresentationAttribute):

  • html/HTMLIFrameElement.h:
  • html/HTMLImageElement.cpp:
  • html/HTMLImageElement.h:
  • html/HTMLInputElement.cpp:
  • html/HTMLInputElement.h:
  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::finishInitialization):
(WebCore::HTMLMediaElement::registerWithDocument):
(WebCore::HTMLMediaElement::unregisterWithDocument):
(WebCore::HTMLMediaElement::setVolume):
(WebCore::HTMLMediaElement::nextScanRate):
(WebCore::HTMLMediaElement::sourceWasAdded):
(WebCore::HTMLMediaElement::mediaEngineWasUpdated):
(WebCore::HTMLMediaElement::updateVolume):
(WebCore::HTMLMediaElement::userCancelledLoad):
(WebCore::HTMLMediaElement::mediaSessionTitle const):
(WebCore::HTMLMediaElement::purgeBufferedDataIfPossible):

  • html/HTMLMediaElement.h:
  • html/HTMLMetaElement.cpp:

(WebCore::HTMLMetaElement::process):

  • html/HTMLObjectElement.cpp:
  • html/HTMLPlugInElement.h:
  • html/HTMLSelectElement.cpp:

(WebCore::HTMLSelectElement::usesMenuList const):
(WebCore::HTMLSelectElement::createElementRenderer):
(WebCore::HTMLSelectElement::childShouldCreateRenderer const):
(WebCore::HTMLSelectElement::willRespondToMouseClickEvents):
(WebCore::HTMLSelectElement::updateListBoxSelection):
(WebCore::HTMLSelectElement::scrollToSelection):
(WebCore::HTMLSelectElement::setOptionsChangedOnRenderer):
(WebCore::HTMLSelectElement::menuListDefaultEventHandler):
(WebCore::HTMLSelectElement::defaultEventHandler):

  • html/HTMLTextAreaElement.cpp:

(WebCore::HTMLTextAreaElement::createInnerTextStyle):

  • html/HTMLTextFormControlElement.cpp:

(WebCore::HTMLTextFormControlElement::select):
(WebCore::HTMLTextFormControlElement::adjustInnerTextStyle const):

  • html/HTMLTextFormControlElement.h:
  • html/HTMLVideoElement.cpp:

(WebCore::HTMLVideoElement::parseAttribute):
(WebCore::HTMLVideoElement::supportsFullscreen const):

  • html/HTMLVideoElement.h:
  • html/ImageDocument.cpp:

(WebCore::ImageDocument::ImageDocument):
(WebCore::ImageDocument::createDocumentStructure):
(WebCore::ImageDocument::imageUpdated):

  • html/ImageDocument.h:
  • html/InputType.cpp:
  • html/InputType.h:
  • html/MediaDocument.cpp:

(WebCore::MediaDocumentParser::createDocumentStructure):

  • html/MediaElementSession.cpp:

(WebCore::MediaElementSession::clientDataBufferingTimerFired):
(WebCore::MediaElementSession::showPlaybackTargetPicker):
(WebCore::MediaElementSession::wirelessVideoPlaybackDisabled const):
(WebCore::MediaElementSession::setHasPlaybackTargetAvailabilityListeners):
(WebCore::MediaElementSession::isPlayingToWirelessPlaybackTarget const):
(WebCore::MediaElementSession::requiresFullscreenForVideoPlayback const):

  • html/MediaElementSession.h:
  • html/PluginDocument.cpp:

(WebCore::PluginDocumentParser::createDocumentStructure):

  • html/RangeInputType.cpp:

(WebCore::RangeInputType::handleTouchEvent):

  • html/RangeInputType.h:
  • html/SearchInputType.cpp:

(WebCore::SearchInputType::addSearchResult):

  • html/TextFieldInputType.cpp:

(WebCore::TextFieldInputType::isKeyboardFocusable const):
(WebCore::TextFieldInputType::handleFocusEvent):
(WebCore::TextFieldInputType::handleBlurEvent):
(WebCore::TextFieldInputType::didSetValueByUserEdit):
(WebCore::TextFieldInputType::listAttributeTargetChanged):

  • html/parser/HTMLParserScheduler.h:

(WebCore::HTMLParserScheduler::shouldYieldBeforeToken):

  • html/parser/HTMLTreeBuilder.cpp:

(WebCore::HTMLTreeBuilder::processCharacterBufferForInBody):

  • html/parser/HTMLTreeBuilder.h:
  • html/shadow/MediaControlElements.cpp:
  • html/shadow/MediaControlElements.h:
  • html/shadow/MediaControls.h:
  • html/shadow/SliderThumbElement.cpp:

(WebCore::SliderThumbElement::dragFrom):

  • html/shadow/SliderThumbElement.h:
  • html/shadow/TextControlInnerElements.cpp:

(WebCore::SearchFieldResultsButtonElement::defaultEventHandler):
(WebCore::SearchFieldCancelButtonElement::SearchFieldCancelButtonElement):

  • html/shadow/TextControlInnerElements.h:
  • inspector/InspectorController.cpp:

(WebCore::InspectorController::setIndicating):

  • inspector/InspectorFrontendHost.cpp:

(WebCore::InspectorFrontendHost::platform):

  • inspector/PageScriptDebugServer.cpp:

(WebCore::PageScriptDebugServer::runEventLoopWhilePaused):

  • inspector/agents/InspectorTimelineAgent.cpp:

(WebCore::currentRunLoop):

  • loader/DocumentLoader.cpp:
  • loader/DocumentLoader.h:
  • loader/DocumentThreadableLoader.cpp:

(WebCore::DocumentThreadableLoader::makeCrossOriginAccessRequest):

  • loader/DocumentWriter.cpp:

(WebCore::DocumentWriter::createDocument):

  • loader/EmptyClients.cpp:
  • loader/EmptyClients.h:
  • loader/EmptyFrameLoaderClient.h:
  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::checkCompleted):
(WebCore::FrameLoader::willLoadMediaElementURL):
(WebCore::FrameLoader::stopForUserCancel):
(WebCore::FrameLoader::commitProvisionalLoad):
(WebCore::FrameLoader::didFirstLayout):
(WebCore::createWindow):

  • loader/FrameLoader.h:
  • loader/FrameLoaderClient.h:
  • loader/HistoryController.cpp:

(WebCore::HistoryController::saveScrollPositionAndViewStateToItem):
(WebCore::HistoryController::restoreScrollPositionAndViewState):

  • loader/ResourceLoader.cpp:

(WebCore::ResourceLoader::init):
(WebCore::ResourceLoader::willSendRequestInternal):

  • loader/ResourceLoader.h:
  • loader/SubframeLoader.cpp:

(WebCore::SubframeLoader::loadPlugin):

  • loader/SubresourceLoader.cpp:

(WebCore::SubresourceLoader::create):
(WebCore::SubresourceLoader::willCancel):
(WebCore::SubresourceLoader::notifyDone):
(WebCore::SubresourceLoader::releaseResources):

  • loader/SubresourceLoader.h:
  • loader/cache/CachedImage.cpp:
  • page/CaptionUserPreferencesMediaAF.cpp:

(WebCore::userCaptionPreferencesChangedNotificationCallback):

  • page/Chrome.cpp:

(WebCore::Chrome::createColorChooser):
(WebCore::Chrome::dispatchViewportPropertiesDidChange const):
(WebCore::Chrome::didReceiveDocType):

  • page/Chrome.h:
  • page/ChromeClient.h:
  • page/DOMTimer.cpp:

(WebCore::DOMTimer::install):
(WebCore::DOMTimer::fired):

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::outerHeight const):
(WebCore::DOMWindow::outerWidth const):
(WebCore::DOMWindow::clearTimeout):
(WebCore::DOMWindow::addEventListener):
(WebCore::DOMWindow::resetAllGeolocationPermission):
(WebCore::DOMWindow::removeEventListener):
(WebCore::DOMWindow::removeAllEventListeners):

  • page/DOMWindow.h:
  • page/DeprecatedGlobalSettings.cpp:

(WebCore::DeprecatedGlobalSettings::globalConstRedeclarationShouldThrow):

  • page/DeprecatedGlobalSettings.h:
  • page/DragController.cpp:
  • page/EditorClient.h:
  • page/EventHandler.cpp:

(WebCore::EventHandler::handleMousePressEventSingleClick):
(WebCore::EventHandler::handleMouseReleaseEvent):
(WebCore::EventHandler::startPanScrolling):
(WebCore::EventHandler::handleMouseMoveEvent):

  • page/EventHandler.h:
  • page/Frame.cpp:

(WebCore::Frame::Frame):
(WebCore::Frame::willDetachPage):

  • page/Frame.h:
  • page/FrameView.cpp:

(WebCore::FrameView::FrameView):
(WebCore::FrameView::clear):
(WebCore::FrameView::effectiveFrameFlattening const):
(WebCore::FrameView::flushCompositingStateForThisFrame):
(WebCore::FrameView::scrollPositionRespectingCustomFixedPosition const):
(WebCore::FrameView::viewportConstrainedVisibleContentRect const):
(WebCore::FrameView::updateContentsSize):
(WebCore::FrameView::computeScrollability const):
(WebCore::FrameView::adjustTiledBackingCoverage):
(WebCore::FrameView::calculateExtendedBackgroundMode const):
(WebCore::FrameView::performPostLayoutTasks):
(WebCore::FrameView::sizeForResizeEvent const):
(WebCore::FrameView::sendResizeEventIfNeeded):

  • page/FrameView.h:
  • page/FrameViewLayoutContext.cpp:

(WebCore::FrameViewLayoutContext::layout):

  • page/MemoryRelease.cpp:

(WebCore::releaseCriticalMemory):
(WebCore::releaseMemory):

  • page/Navigator.cpp:
  • page/Navigator.h:
  • page/NavigatorBase.cpp:
  • page/Page.cpp:

(WebCore::Page::setIsVisibleInternal):
(WebCore::Page::showPlaybackTargetPicker):

  • page/Page.h:
  • page/PerformanceMonitor.cpp:

(WebCore::PerformanceMonitor::measurePostLoadMemoryUsage):

  • page/ResourceUsageOverlay.cpp:

(WebCore::ResourceUsageOverlay::initialize):

  • page/SecurityOrigin.cpp:

(WebCore::SecurityOrigin::canDisplay const):

  • page/SettingsBase.cpp:
  • page/SettingsBase.h:
  • page/SettingsDefaultValues.h:

(WebCore::editingBehaviorTypeForPlatform):

  • page/TextIndicator.cpp:

(WebCore::TextIndicator::createWithRange):
(WebCore::initializeIndicator):

  • page/ViewportConfiguration.cpp:

(WebCore::ViewportConfiguration::textDocumentParameters):

  • page/cocoa/MemoryReleaseCocoa.mm:

(WebCore::platformReleaseMemory):
(WebCore::jettisonExpensiveObjectsOnTopLevelNavigation):

  • page/cocoa/ResourceUsageOverlayCocoa.mm:

(WebCore::showText):

  • page/cocoa/ResourceUsageThreadCocoa.mm:

(WebCore::vmPageSize):

  • page/cocoa/SettingsBaseCocoa.mm:
  • page/ios/EventHandlerIOS.mm:
  • page/ios/FrameIOS.mm:
  • page/mac/ChromeMac.mm:
  • page/mac/PageMac.mm:

(WebCore::Page::platformInitialize):

  • page/mac/WebCoreFrameView.h:
  • page/scrolling/AsyncScrollingCoordinator.cpp:

(WebCore::AsyncScrollingCoordinator::reconcileScrollingState):

  • page/scrolling/ScrollingTree.h:
  • page/scrolling/ScrollingTreeScrollingNode.h:
  • page/scrolling/ScrollingTreeScrollingNodeDelegate.cpp:
  • page/scrolling/ScrollingTreeScrollingNodeDelegate.h:
  • page/scrolling/ios/ScrollingCoordinatorIOS.h:
  • page/scrolling/ios/ScrollingCoordinatorIOS.mm:
  • page/scrolling/ios/ScrollingTreeFrameScrollingNodeIOS.h:
  • page/scrolling/ios/ScrollingTreeFrameScrollingNodeIOS.mm:
  • page/scrolling/ios/ScrollingTreeIOS.cpp:
  • page/scrolling/ios/ScrollingTreeIOS.h:
  • platform/ContentFilterUnblockHandler.h:
  • platform/Cursor.cpp:
  • platform/Cursor.h:
  • platform/DragImage.cpp:
  • platform/DragImage.h:
  • platform/FileChooser.cpp:
  • platform/FileChooser.h:
  • platform/HostWindow.h:
  • platform/LocalizedStrings.cpp:
  • platform/LocalizedStrings.h:
  • platform/LowPowerModeNotifier.cpp:
  • platform/LowPowerModeNotifier.h:
  • platform/MIMETypeRegistry.cpp:

(WebCore::initializeSupportedImageMIMETypes):
(WebCore::initializeSupportedNonImageMimeTypes):
(WebCore::initializeUnsupportedTextMIMETypes):

  • platform/Pasteboard.h:
  • platform/PasteboardStrategy.h:
  • platform/PlatformKeyboardEvent.h:
  • platform/PlatformPasteboard.h:
  • platform/PlatformScreen.h:
  • platform/RemoteCommandListener.cpp:
  • platform/RuntimeApplicationChecks.h:
  • platform/ScrollAnimator.cpp:
  • platform/ScrollView.cpp:

(WebCore::ScrollView::contentsScrollPosition const):
(WebCore::ScrollView::setContentsScrollPosition):
(WebCore::ScrollView::visibleContentRectInternal const):

  • platform/ScrollView.h:
  • platform/ScrollableArea.cpp:
  • platform/ScrollableArea.h:
  • platform/Scrollbar.cpp:
  • platform/Scrollbar.h:
  • platform/ThreadTimers.cpp:
  • platform/Timer.cpp:

(WebCore::shouldSuppressThreadSafetyCheck):

  • platform/Timer.h:

(WebCore::TimerBase::isActive const):

  • platform/ValidationBubble.h:
  • platform/Widget.h:
  • platform/audio/AudioHardwareListener.cpp:

(WebCore::AudioHardwareListener::AudioHardwareListener):

  • platform/audio/PlatformMediaSession.h:
  • platform/audio/PlatformMediaSessionManager.h:
  • platform/audio/ios/AudioDestinationIOS.cpp:
  • platform/audio/ios/AudioDestinationIOS.h:
  • platform/audio/ios/AudioFileReaderIOS.cpp:
  • platform/audio/ios/AudioFileReaderIOS.h:
  • platform/audio/ios/AudioSessionIOS.mm:

(WebCore::AudioSession::setCategory):
(WebCore::AudioSession::routingContextUID const):

  • platform/audio/ios/MediaSessionManagerIOS.h:
  • platform/audio/ios/MediaSessionManagerIOS.mm:
  • platform/cf/MainThreadSharedTimerCF.cpp:

(WebCore::setupPowerObserver):
(WebCore::MainThreadSharedTimer::setFireInterval):

  • platform/cf/URLCF.cpp:
  • platform/cocoa/ContentFilterUnblockHandlerCocoa.mm:

(WebCore::ContentFilterUnblockHandler::wrapWithDecisionHandler):
(WebCore::ContentFilterUnblockHandler::needsUIProcess const):
(WebCore::ContentFilterUnblockHandler::encode const):
(WebCore::ContentFilterUnblockHandler::decode):
(WebCore::ContentFilterUnblockHandler::canHandleRequest const):
(WebCore::dispatchToMainThread):
(WebCore::ContentFilterUnblockHandler::requestUnblockAsync const):

  • platform/cocoa/DataDetectorsCoreSoftLink.h:
  • platform/cocoa/DataDetectorsCoreSoftLink.mm:
  • platform/cocoa/KeyEventCocoa.mm:
  • platform/cocoa/LocalizedStringsCocoa.mm:

(WebCore::localizedNSString):

  • platform/cocoa/NetworkExtensionContentFilter.mm:

(WebCore::NetworkExtensionContentFilter::initialize):

  • platform/cocoa/ParentalControlsContentFilter.mm:

(WebCore::ParentalControlsContentFilter::unblockHandler const):

  • platform/cocoa/PasteboardCocoa.mm:

(WebCore::Pasteboard::fileContentState):

  • platform/cocoa/PlatformView.h:
  • platform/cocoa/PlaybackSessionInterface.h:
  • platform/cocoa/PlaybackSessionModel.h:
  • platform/cocoa/PlaybackSessionModelMediaElement.h:
  • platform/cocoa/PlaybackSessionModelMediaElement.mm:
  • platform/cocoa/RuntimeApplicationChecksCocoa.mm:
  • platform/cocoa/SystemVersion.mm:

(WebCore::createSystemMarketingVersion):

  • platform/cocoa/VideoFullscreenChangeObserver.h:
  • platform/cocoa/VideoFullscreenModel.h:
  • platform/cocoa/VideoFullscreenModelVideoElement.h:
  • platform/cocoa/VideoFullscreenModelVideoElement.mm:
  • platform/gamepad/cocoa/GameControllerGamepad.h:
  • platform/gamepad/cocoa/GameControllerGamepad.mm:
  • platform/gamepad/cocoa/GameControllerGamepadProvider.h:
  • platform/gamepad/cocoa/GameControllerGamepadProvider.mm:
  • platform/graphics/BitmapImage.h:
  • platform/graphics/Color.h:
  • platform/graphics/ComplexTextController.cpp:
  • platform/graphics/DisplayRefreshMonitor.cpp:

(WebCore::DisplayRefreshMonitor::createDefaultDisplayRefreshMonitor):

  • platform/graphics/FloatSize.h:
  • platform/graphics/Font.cpp:

(WebCore::Font::Font):
(WebCore::createAndFillGlyphPage):

  • platform/graphics/Font.h:
  • platform/graphics/FontCache.cpp:

(WebCore::FontCache::getCachedFontPlatformData):
(WebCore::FontCache::fontForPlatformData):
(WebCore::FontCache::purgeInactiveFontData):
(WebCore::FontCache::inactiveFontCount):

  • platform/graphics/FontCascade.cpp:

(WebCore::FontCascade::FontCascade):

  • platform/graphics/FontCascadeFonts.h:
  • platform/graphics/FontDescription.h:
  • platform/graphics/FontPlatformData.h:

(WebCore::FontPlatformData::isEmoji const):

  • platform/graphics/GraphicsContext.cpp:

(WebCore::GraphicsContext::drawImage):

  • platform/graphics/GraphicsContext3D.h:
  • platform/graphics/GraphicsLayer.h:
  • platform/graphics/Icon.h:
  • platform/graphics/Image.cpp:

(WebCore::Image::drawTiled):
(WebCore::Image::computeIntrinsicDimensions):

  • platform/graphics/Image.h:
  • platform/graphics/IntPoint.h:
  • platform/graphics/IntRect.h:
  • platform/graphics/IntSize.h:
  • platform/graphics/MediaPlayer.cpp:

(WebCore::MediaPlayer::isAvailable):
(WebCore::MediaPlayer::volumeChanged):

  • platform/graphics/MediaPlayer.h:
  • platform/graphics/MediaPlayerPrivate.h:
  • platform/graphics/NamedImageGeneratedImage.cpp:

(WebCore::NamedImageGeneratedImage::draw):

  • platform/graphics/StringTruncator.cpp:

(WebCore::centerTruncateToBuffer):
(WebCore::rightTruncateToBuffer):
(WebCore::rightClipToWordBuffer):

  • platform/graphics/TextTrackRepresentation.cpp:
  • platform/graphics/avfoundation/InbandMetadataTextTrackPrivateAVF.cpp:
  • platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp:
  • platform/graphics/avfoundation/InbandTextTrackPrivateAVF.h:
  • platform/graphics/avfoundation/MediaPlaybackTargetMac.mm:
  • platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:

(WebCore::MediaPlayerPrivateAVFoundation::supportsFullscreen const):
(WebCore::MediaPlayerPrivateAVFoundation::rateChanged):

  • platform/graphics/avfoundation/WebMediaSessionManagerMac.cpp:
  • platform/graphics/avfoundation/WebMediaSessionManagerMac.h:
  • platform/graphics/avfoundation/cf/InbandTextTrackPrivateLegacyAVCF.cpp:
  • platform/graphics/avfoundation/cf/InbandTextTrackPrivateLegacyAVCF.h:
  • platform/graphics/avfoundation/objc/CDMInstanceFairPlayStreamingAVFObjC.mm:

(WebCore::CDMInstanceFairPlayStreamingAVFObjC::supportsPersistentKeys):

  • platform/graphics/avfoundation/objc/InbandTextTrackPrivateLegacyAVFObjC.h:
  • platform/graphics/avfoundation/objc/InbandTextTrackPrivateLegacyAVFObjC.mm:
  • platform/graphics/avfoundation/objc/MediaPlaybackTargetPickerMac.h:
  • platform/graphics/avfoundation/objc/MediaPlaybackTargetPickerMac.mm:
  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:

(WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayerLayer):
(WebCore::MediaPlayerPrivateAVFoundationObjC::createAVAssetForURL):
(WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayer):
(WebCore::MediaPlayerPrivateAVFoundationObjC::setVideoFullscreenMode):
(WebCore::MediaPlayerPrivateAVFoundationObjC::setVolume):
(WebCore::MediaPlayerPrivateAVFoundationObjC::seekableTimeRangesLastModifiedTime const):
(WebCore::MediaPlayerPrivateAVFoundationObjC::liveUpdateInterval const):
(WebCore::MediaPlayerPrivateAVFoundationObjC::maximumDurationToCacheMediaTime const):
(WebCore::MediaPlayerPrivateAVFoundationObjC::didPassCORSAccessCheck const):
(WebCore::MediaPlayerPrivateAVFoundationObjC::wouldTaintOrigin const):
(WebCore::MediaPlayerPrivateAVFoundationObjC::isCurrentPlaybackTargetWireless const):
(WebCore::MediaPlayerPrivateAVFoundationObjC::wirelessPlaybackTargetType const):
(WebCore::MediaPlayerPrivateAVFoundationObjC::wirelessPlaybackTargetName const):
(WebCore::MediaPlayerPrivateAVFoundationObjC::updateDisableExternalPlayback):
(WebCore::MediaPlayerPrivateAVFoundationObjC::setShouldDisableSleep):

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm:

(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::supportsPictureInPicture const):

  • platform/graphics/avfoundation/objc/OutOfBandTextTrackPrivateAVF.h:
  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::GraphicsLayerCA::flushCompositingState):
(WebCore::GraphicsLayerCA::computeVisibleAndCoverageRect const):
(WebCore::GraphicsLayerCA::createTransformAnimationsFromKeyframes):

  • platform/graphics/ca/GraphicsLayerCA.h:
  • platform/graphics/ca/PlatformCALayer.h:
  • platform/graphics/ca/TileController.cpp:

(WebCore::TileController::~TileController):
(WebCore::TileController::adjustTileCoverageRect const):

  • platform/graphics/ca/TileController.h:
  • platform/graphics/ca/TileGrid.cpp:

(WebCore::TileGrid::startedNewCohort):
(WebCore::TileGrid::platformCALayerPaintContents):

  • platform/graphics/ca/TileGrid.h:
  • platform/graphics/ca/cocoa/LayerFlushSchedulerMac.cpp:

(WebCore::currentRunLoop):

  • platform/graphics/ca/cocoa/PlatformCALayerCocoa.mm:

(-[WebAnimationDelegate animationDidStart:]):
(-[WebAnimationDelegate animationDidStop:finished:]):
(WebCore::PlatformCALayerCocoa::setContentsScale):
(WebCore::layerContentsFormat):
(WebCore::PlatformCALayer::drawLayerContents):
(WebCore::PlatformCALayerCocoa::backingStoreBytesPerPixel const):

  • platform/graphics/cg/GradientCG.cpp:

(WebCore::Gradient::paint):

  • platform/graphics/cg/GraphicsContextCG.cpp:

(WebCore::displayP3ColorSpaceRef):
(WebCore::GraphicsContext::drawNativeImage):
(WebCore::drawPatternCallback):
(WebCore::GraphicsContext::drawPattern):
(WebCore::GraphicsContext::drawLine):
(WebCore::applyShadowOffsetWorkaroundIfNeeded):
(WebCore::GraphicsContext::setURLForRect):

  • platform/graphics/cg/ImageBufferCG.cpp:

(WebCore::jpegUTI):

  • platform/graphics/cg/ImageBufferDataCG.cpp:
  • platform/graphics/cg/ImageDecoderCG.cpp:

(WebCore::ImageDecoderCG::createFrameImageAtIndex):

  • platform/graphics/cg/ImageSourceCGMac.mm:
  • platform/graphics/cg/PDFDocumentImage.cpp:
  • platform/graphics/cocoa/ColorCocoa.h:
  • platform/graphics/cocoa/ColorCocoa.mm:
  • platform/graphics/cocoa/FontCacheCoreText.cpp:

(WebCore::FontCache::similarFont):
(WebCore::computeNecessarySynthesis):
(WebCore::FontDatabase::fontForPostScriptName):
(WebCore::variationCapabilitiesForFontDescriptor):
(WebCore::lookupFallbackFont):
(WebCore::FontCache::systemFallbackForCharacters):
(WebCore::FontCache::lastResortFallbackFont):

  • platform/graphics/cocoa/FontCascadeCocoa.mm:

(WebCore::FontCascade::drawGlyphs):
(WebCore::FontCascade::fontForCombiningCharacterSequence const):

  • platform/graphics/cocoa/FontCocoa.mm:

(WebCore::Font::platformInit):
(WebCore::Font::variantCapsSupportsCharacterForSynthesis const):
(WebCore::Font::determinePitch):

  • platform/graphics/cocoa/FontDescriptionCocoa.cpp:

(WebCore::FontCascadeDescription::effectiveFamilyCount const):
(WebCore::FontCascadeDescription::effectiveFamilyAt const):

  • platform/graphics/cocoa/FontPlatformDataCocoa.mm:

(WebCore::FontPlatformData::FontPlatformData):
(WebCore::cascadeToLastResortAndVariationsFontDescriptor):

  • platform/graphics/cocoa/GraphicsContext3DCocoa.mm:

(WebCore::GraphicsContext3D::GraphicsContext3D):
(WebCore::GraphicsContext3D::texImageIOSurface2D):

  • platform/graphics/cocoa/GraphicsContextCocoa.mm:
  • platform/graphics/cocoa/IOSurface.mm:

(WebCore::optionsForBiplanarSurface):
(WebCore::optionsFor32BitSurface):
(WebCore::IOSurface::maximumSize):
(WebCore::IOSurface::surfaceID const):

  • platform/graphics/cocoa/SystemFontDatabaseCoreText.cpp:

(WebCore::SystemFontDatabaseCoreText::cascadeList):

  • platform/graphics/cocoa/TextTrackRepresentationCocoa.h:
  • platform/graphics/cocoa/TextTrackRepresentationCocoa.mm:

(-[WebCoreTextTrackRepresentationCocoaHelper observeValueForKeyPath:ofObject:change:context:]):

  • platform/graphics/cocoa/WebMetalLayer.h:
  • platform/graphics/cv/ImageTransferSessionVT.mm:

(WebCore::cvPixelFormatOpenGLKey):
(WebCore::ImageTransferSessionVT::ImageTransferSessionVT):

  • platform/graphics/cv/VideoTextureCopierCV.h:
  • platform/graphics/ios/DisplayRefreshMonitorIOS.h:
  • platform/graphics/ios/DisplayRefreshMonitorIOS.mm:
  • platform/graphics/ios/FontAntialiasingStateSaver.h:

(WebCore::FontAntialiasingStateSaver::FontAntialiasingStateSaver):
(WebCore::FontAntialiasingStateSaver::setup):
(WebCore::FontAntialiasingStateSaver::restore):

  • platform/graphics/ios/FontCacheIOS.mm:
  • platform/graphics/ios/IconIOS.mm:
  • platform/graphics/mac/ComplexTextControllerCoreText.mm:

(WebCore::ComplexTextController::collectComplexTextRunsForCharacters):

  • platform/graphics/mac/FloatPointMac.mm:
  • platform/graphics/mac/FloatRectMac.mm:
  • platform/graphics/mac/FloatSizeMac.mm:
  • platform/graphics/mac/FontCustomPlatformData.cpp:

(WebCore::createFontCustomPlatformData):

  • platform/graphics/mac/ImageMac.mm:
  • platform/graphics/mac/IntPointMac.mm:
  • platform/graphics/mac/IntRectMac.mm:
  • platform/graphics/mac/IntSizeMac.mm:
  • platform/graphics/mac/WebKitNSImageExtras.h:
  • platform/graphics/mac/WebKitNSImageExtras.mm:
  • platform/graphics/mac/WebLayer.mm:

(-[WebSimpleLayer display]):
(-[WebSimpleLayer drawInContext:]):

  • platform/graphics/opengl/Extensions3DOpenGL.cpp:

(WebCore::Extensions3DOpenGL::supportsExtension):

  • platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
  • platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
  • platform/graphics/opengl/GraphicsContext3DOpenGLES.cpp:
  • platform/graphics/transforms/TransformationMatrix.cpp:

(WebCore::TransformationMatrix::multiply):

  • platform/graphics/transforms/TransformationMatrix.h:
  • platform/ios/CursorIOS.cpp:
  • platform/ios/Device.cpp:
  • platform/ios/Device.h:
  • platform/ios/DeviceMotionClientIOS.h:
  • platform/ios/DeviceMotionClientIOS.mm:

(WebCore::DeviceMotionClientIOS::motionChanged):

  • platform/ios/DeviceOrientationClientIOS.h:
  • platform/ios/DeviceOrientationClientIOS.mm:

(WebCore::DeviceOrientationClientIOS::orientationChanged):

  • platform/ios/DragImageIOS.mm:
  • platform/ios/EventLoopIOS.mm:
  • platform/ios/KeyEventIOS.mm:
  • platform/ios/LegacyTileCache.h:
  • platform/ios/LegacyTileCache.mm:
  • platform/ios/LegacyTileGrid.h:
  • platform/ios/LegacyTileGrid.mm:
  • platform/ios/LegacyTileGridTile.h:
  • platform/ios/LegacyTileGridTile.mm:
  • platform/ios/LegacyTileLayer.h:
  • platform/ios/LegacyTileLayer.mm:
  • platform/ios/LegacyTileLayerPool.h:
  • platform/ios/LegacyTileLayerPool.mm:
  • platform/ios/LowPowerModeNotifierIOS.mm:
  • platform/ios/PasteboardIOS.mm:
  • platform/ios/PlatformEventFactoryIOS.h:
  • platform/ios/PlatformEventFactoryIOS.mm:
  • platform/ios/PlatformPasteboardIOS.mm:
  • platform/ios/PlatformScreenIOS.mm:
  • platform/ios/PlatformSpeechSynthesizerIOS.mm:
  • platform/ios/PlaybackSessionInterfaceAVKit.h:
  • platform/ios/PlaybackSessionInterfaceAVKit.mm:
  • platform/ios/RemoteCommandListenerIOS.h:
  • platform/ios/RemoteCommandListenerIOS.mm:
  • platform/ios/SSLKeyGeneratorIOS.cpp:
  • platform/ios/ScrollAnimatorIOS.h:
  • platform/ios/ScrollAnimatorIOS.mm:
  • platform/ios/ScrollViewIOS.mm:

(WebCore::ScrollView::platformSetContentsSize):

  • platform/ios/ScrollbarThemeIOS.h:
  • platform/ios/ScrollbarThemeIOS.mm:
  • platform/ios/SystemMemoryIOS.cpp:

(WebCore::systemMemoryLevel):

  • platform/ios/ThemeIOS.h:
  • platform/ios/ThemeIOS.mm:
  • platform/ios/TileControllerMemoryHandlerIOS.cpp:
  • platform/ios/TileControllerMemoryHandlerIOS.h:
  • platform/ios/UserAgentIOS.mm:

(WebCore::deviceNameForUserAgent):

  • platform/ios/ValidationBubbleIOS.mm:
  • platform/ios/VideoFullscreenInterfaceAVKit.h:
  • platform/ios/VideoFullscreenInterfaceAVKit.mm:

(WebCore::supportsPictureInPicture):

  • platform/ios/WebAVPlayerController.h:
  • platform/ios/WebAVPlayerController.mm:
  • platform/ios/WebBackgroundTaskController.h:
  • platform/ios/WebBackgroundTaskController.mm:
  • platform/ios/WebCoreMotionManager.h:
  • platform/ios/WebCoreMotionManager.mm:
  • platform/ios/WebEvent.h:
  • platform/ios/WebEvent.mm:
  • platform/ios/WebSQLiteDatabaseTrackerClient.h:
  • platform/ios/WebSQLiteDatabaseTrackerClient.mm:
  • platform/ios/WebVideoFullscreenControllerAVKit.h:
  • platform/ios/WebVideoFullscreenControllerAVKit.mm:

(VideoFullscreenControllerContext::requestUpdateInlineRect):
(VideoFullscreenControllerContext::requestVideoContentLayer):
(VideoFullscreenControllerContext::returnVideoContentLayer):
(VideoFullscreenControllerContext::didSetupFullscreen):
(VideoFullscreenControllerContext::didExitFullscreen):

  • platform/ios/WidgetIOS.mm:
  • platform/ios/wak/FloatingPointEnvironment.cpp:
  • platform/ios/wak/FloatingPointEnvironment.h:
  • platform/ios/wak/WAKAppKitStubs.m:
  • platform/ios/wak/WAKClipView.m:
  • platform/ios/wak/WAKResponder.m:
  • platform/ios/wak/WAKScrollView.mm:
  • platform/ios/wak/WAKView.mm:
  • platform/ios/wak/WAKWindow.mm:
  • platform/ios/wak/WKContentObservation.cpp:
  • platform/ios/wak/WKGraphics.mm:
  • platform/ios/wak/WKUtilities.c:
  • platform/ios/wak/WKView.mm:
  • platform/ios/wak/WebCoreThread.mm:
  • platform/ios/wak/WebCoreThreadRun.cpp:
  • platform/ios/wak/WebCoreThreadSystemInterface.cpp:
  • platform/mac/DragDataMac.mm:

(WebCore::rtfPasteboardType):
(WebCore::rtfdPasteboardType):
(WebCore::stringPasteboardType):
(WebCore::urlPasteboardType):
(WebCore::htmlPasteboardType):
(WebCore::colorPasteboardType):
(WebCore::pdfPasteboardType):
(WebCore::tiffPasteboardType):
(WebCore::DragData::containsURL const):

  • platform/mac/MediaRemoteSoftLink.cpp:
  • platform/mac/MediaRemoteSoftLink.h:
  • platform/mac/SuddenTermination.mm:
  • platform/mac/WebCoreFullScreenPlaceholderView.mm:
  • platform/mac/WebCoreFullScreenWarningView.h:
  • platform/mac/WebCoreFullScreenWarningView.mm:
  • platform/mac/WebCoreFullScreenWindow.h:
  • platform/mac/WebCoreFullScreenWindow.mm:
  • platform/mac/WebNSAttributedStringExtras.mm:
  • platform/mediastream/RealtimeMediaSourceFactory.h:
  • platform/mediastream/RealtimeVideoSource.cpp:

(WebCore::RealtimeVideoSource::~RealtimeVideoSource):
(WebCore::RealtimeVideoSource::prepareToProduceData):

  • platform/mediastream/ios/AVAudioSessionCaptureDevice.h:
  • platform/mediastream/ios/AVAudioSessionCaptureDevice.mm:
  • platform/mediastream/ios/AVAudioSessionCaptureDeviceManager.h:
  • platform/mediastream/ios/AVAudioSessionCaptureDeviceManager.mm:
  • platform/mediastream/ios/CoreAudioCaptureSourceIOS.h:
  • platform/mediastream/ios/CoreAudioCaptureSourceIOS.mm:
  • platform/mediastream/libwebrtc/LibWebRTCMacros.h:
  • platform/mediastream/mac/AVCaptureDeviceManager.mm:

(WebCore::deviceIsAvailable):

  • platform/mediastream/mac/AVMediaCaptureSource.mm:

(WebCore::AVMediaCaptureSource::AVMediaCaptureSource):
(WebCore::AVMediaCaptureSource::stopProducingData):
(-[WebCoreAVMediaCaptureSourceObserver addNotificationObservers]):
(-[WebCoreAVMediaCaptureSourceObserver removeNotificationObservers]):

  • platform/mediastream/mac/AVVideoCaptureSource.mm:

(WebCore::AVVideoCaptureSource::AVVideoCaptureSource):
(WebCore::AVVideoCaptureSource::~AVVideoCaptureSource):
(WebCore::AVVideoCaptureSource::stopProducingData):
(WebCore::AVVideoCaptureSource::prefersPreset):
(WebCore::sensorOrientation):
(WebCore::AVVideoCaptureSource::setupCaptureSession):
(WebCore::AVVideoCaptureSource::monitorOrientation):
(-[WebCoreAVVideoCaptureSourceObserver addNotificationObservers]):
(-[WebCoreAVVideoCaptureSourceObserver removeNotificationObservers]):

  • platform/mediastream/mac/AudioTrackPrivateMediaStreamCocoa.cpp:

(WebCore::AudioTrackPrivateMediaStreamCocoa::createAudioUnit):

  • platform/mediastream/mac/CoreAudioCaptureSource.cpp:

(WebCore::CoreAudioSharedUnit::setupAudioUnit):
(WebCore::CoreAudioCaptureSource::create):
(WebCore::CoreAudioCaptureSource::CoreAudioCaptureSource):
(WebCore::CoreAudioCaptureSource::~CoreAudioCaptureSource):
(WebCore::CoreAudioCaptureSource::startProducingData):

  • platform/mediastream/mac/CoreAudioCaptureSource.h:
  • platform/mediastream/mac/DisplayCaptureSourceCocoa.cpp:

(WebCore::DisplayCaptureSourceCocoa::~DisplayCaptureSourceCocoa):
(WebCore::DisplayCaptureSourceCocoa::startProducingData):

  • platform/mediastream/mac/RealtimeIncomingVideoSourceCocoa.mm:

(WebCore::RealtimeIncomingVideoSourceCocoa::pixelBufferPool):

  • platform/mediastream/mac/RealtimeMediaSourceCenterMac.cpp:
  • platform/mock/MediaPlaybackTargetMock.cpp:
  • platform/mock/MediaPlaybackTargetMock.h:
  • platform/mock/MediaPlaybackTargetPickerMock.cpp:
  • platform/mock/MediaPlaybackTargetPickerMock.h:
  • platform/mock/MockRealtimeAudioSource.cpp:

(WebCore::MockRealtimeAudioSource::~MockRealtimeAudioSource):
(WebCore::MockRealtimeAudioSource::startProducingData):

  • platform/mock/MockRealtimeMediaSourceCenter.cpp:
  • platform/mock/MockRealtimeVideoSource.cpp:
  • platform/network/CredentialStorage.cpp:
  • platform/network/NetworkStateNotifier.h:
  • platform/network/ResourceHandle.cpp:

(WebCore::builtinResourceHandleConstructorMap):

  • platform/network/ResourceHandle.h:
  • platform/network/ResourceHandleClient.h:
  • platform/network/ResourceRequestBase.cpp:
  • platform/network/ResourceRequestBase.h:
  • platform/network/cf/DNSResolveQueueCFNet.cpp:
  • platform/network/cf/ProxyServerCFNet.cpp:
  • platform/network/cf/ResourceHandleCFNet.cpp:

(WebCore::ResourceHandle::createCFURLConnection):

  • platform/network/cf/ResourceRequest.h:

(WebCore::ResourceRequest::resourcePrioritiesEnabled):

  • platform/network/cf/ResourceRequestCFNet.cpp:

(WebCore::ResourceRequest::doUpdatePlatformRequest):
(WebCore::ResourceRequest::doUpdateResourceRequest):

  • platform/network/cf/SocketStreamHandleImplCFNet.cpp:

(WebCore::callbacksRunLoop):
(WebCore::copyCONNECTProxyResponse):

  • platform/network/cocoa/CookieCocoa.mm:

(WebCore::Cookie::operator NSHTTPCookie * _Nullable const):

  • platform/network/cocoa/NetworkStorageSessionCocoa.mm:

(WebCore::cookiesForURL):
(WebCore::setHTTPCookiesForURL):

  • platform/network/cocoa/ResourceRequestCocoa.mm:

(WebCore::ResourceRequest::doUpdateResourceRequest):
(WebCore::ResourceRequest::doUpdatePlatformRequest):

  • platform/network/ios/NetworkStateNotifierIOS.mm:
  • platform/network/ios/WebCoreURLResponseIOS.h:
  • platform/network/ios/WebCoreURLResponseIOS.mm:
  • platform/network/mac/ResourceErrorMac.mm:
  • platform/network/mac/ResourceHandleMac.mm:

(WebCore::ResourceHandle::createNSURLConnection):
(WebCore::ResourceHandle::start):
(WebCore::ResourceHandle::platformLoadResourceSynchronously):
(WebCore::ResourceHandle::didReceiveAuthenticationChallenge):

  • platform/network/mac/UTIUtilities.mm:
  • platform/sql/SQLiteDatabase.h:

(WebCore::SQLiteDatabase::sqlite3Handle const):

  • platform/sql/SQLiteFileSystem.cpp:
  • platform/sql/SQLiteFileSystem.h:
  • platform/sql/SQLiteTransaction.cpp:

(WebCore::SQLiteTransaction::begin):
(WebCore::SQLiteTransaction::commit):
(WebCore::SQLiteTransaction::rollback):
(WebCore::SQLiteTransaction::stop):

  • platform/text/PlatformLocale.cpp:
  • platform/text/PlatformLocale.h:
  • platform/text/ios/LocalizedDateCache.h:
  • platform/text/ios/LocalizedDateCache.mm:
  • platform/text/ios/TextEncodingRegistryIOS.mm:
  • platform/text/mac/LocaleMac.h:
  • platform/text/mac/LocaleMac.mm:
  • plugins/PluginViewBase.h:
  • rendering/InlineTextBox.cpp:

(WebCore::InlineTextBox::paintPlatformDocumentMarker):
(WebCore::InlineTextBox::resolveStyleForMarkedText):
(WebCore::InlineTextBox::collectMarkedTextsForDocumentMarkers):

  • rendering/MarkedText.h:
  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::paint):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::paintBoxDecorations):
(WebCore::allowMinMaxPercentagesInAutoHeightBlocksQuirk):

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::decodingModeForImageDraw const):

  • rendering/RenderButton.cpp:
  • rendering/RenderButton.h:
  • rendering/RenderElement.cpp:

(WebCore::RenderElement::styleWillChange):
(WebCore::RenderElement::styleDidChange):

  • rendering/RenderEmbeddedObject.cpp:

(WebCore::RenderEmbeddedObject::allowsAcceleratedCompositing const):
(WebCore::RenderEmbeddedObject::setPluginUnavailabilityReason):
(WebCore::RenderEmbeddedObject::setPluginUnavailabilityReasonWithDescription):

  • rendering/RenderFileUploadControl.cpp:

(WebCore::RenderFileUploadControl::maxFilenameWidth const):
(WebCore::RenderFileUploadControl::paintObject):

  • rendering/RenderFrameSet.cpp:

(WebCore::RenderFrameSet::positionFrames):

  • rendering/RenderIFrame.h:
  • rendering/RenderImage.cpp:

(WebCore::RenderImage::paintAreaElementFocusRing):

  • rendering/RenderImage.h:
  • rendering/RenderInline.cpp:
  • rendering/RenderInline.h:
  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::RenderLayer):
(WebCore::canCreateStackingContext):
(WebCore::RenderLayer::canUseAcceleratedTouchScrolling const):
(WebCore::RenderLayer::scrollTo):
(WebCore::RenderLayer::scrollRectToVisible):
(WebCore::RenderLayer::updateScrollInfoAfterLayout):
(WebCore::RenderLayer::showsOverflowControls const):
(WebCore::RenderLayer::calculateClipRects const):

  • rendering/RenderLayer.h:
  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::createPrimaryGraphicsLayer):
(WebCore::RenderLayerBacking::shouldClipCompositedBounds const):
(WebCore::RenderLayerBacking::updateConfiguration):
(WebCore::RenderLayerBacking::computeParentGraphicsLayerRect const):
(WebCore::RenderLayerBacking::updateGeometry):
(WebCore::RenderLayerBacking::paintsIntoWindow const):
(WebCore::RenderLayerBacking::setContentsNeedDisplayInRect):
(WebCore::RenderLayerBacking::paintIntoLayer):

  • rendering/RenderLayerBacking.h:
  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::visibleRectForLayerFlushing const):
(WebCore::RenderLayerCompositor::flushPendingLayerChanges):
(WebCore::RenderLayerCompositor::updateCustomLayersAfterFlush):
(WebCore::RenderLayerCompositor::didFlushChangesForLayer):
(WebCore::RenderLayerCompositor::computeCompositingRequirements):
(WebCore::RenderLayerCompositor::setIsInWindow):
(WebCore::RenderLayerCompositor::requiresCompositingForScrollableFrame const):
(WebCore::RenderLayerCompositor::isAsyncScrollableStickyLayer const):
(WebCore::RenderLayerCompositor::requiresCompositingForOverflowScrolling const):
(WebCore::RenderLayerCompositor::contentsScaleMultiplierForNewTiles const):
(WebCore::RenderLayerCompositor::ensureRootLayer):
(WebCore::RenderLayerCompositor::computeStickyViewportConstraints const):
(WebCore::RenderLayerCompositor::willRemoveScrollingLayerWithBacking):
(WebCore::RenderLayerCompositor::didAddScrollingLayer):

  • rendering/RenderLayerCompositor.h:
  • rendering/RenderLayerModelObject.cpp:

(WebCore::RenderLayerModelObject::shouldPlaceBlockDirectionScrollbarOnLeft const):

  • rendering/RenderLineBreak.cpp:
  • rendering/RenderLineBreak.h:
  • rendering/RenderMenuList.cpp:

(WebCore::RenderMenuList::RenderMenuList):
(WebCore::RenderMenuList::willBeDestroyed):
(WebCore::RenderMenuList::adjustInnerStyle):
(RenderMenuList::updateFromElement):
(RenderMenuList::setTextFromOption):
(RenderMenuList::hidePopup):
(RenderMenuList::popupDidHide):

  • rendering/RenderMenuList.h:
  • rendering/RenderObject.cpp:

(WebCore::RenderObject::shouldApplyCompositedContainerScrollsForRepaint):
(WebCore::RenderObject::destroy):

  • rendering/RenderObject.h:
  • rendering/RenderSearchField.cpp:

(WebCore::RenderSearchField::itemText const):

  • rendering/RenderText.cpp:

(WebCore::RenderText::setRenderedText):

  • rendering/RenderText.h:
  • rendering/RenderTextControl.cpp:
  • rendering/RenderTextControl.h:
  • rendering/RenderTextControlMultiLine.cpp:

(WebCore::RenderTextControlMultiLine::getAverageCharWidth):

  • rendering/RenderTextControlSingleLine.cpp:

(WebCore::RenderTextControlSingleLine::layout):
(WebCore::RenderTextControlSingleLine::getAverageCharWidth):
(WebCore::RenderTextControlSingleLine::preferredContentLogicalWidth const):

  • rendering/RenderTextLineBoxes.cpp:

(WebCore::lineDirectionPointFitsInBox):
(WebCore::RenderTextLineBoxes::positionForPoint const):

  • rendering/RenderTheme.cpp:

(WebCore::RenderTheme::paintBorderOnly):

  • rendering/RenderThemeIOS.h:
  • rendering/RenderThemeIOS.mm:

(WebCore::arKitBundle):

  • rendering/RenderView.cpp:

(WebCore::RenderView::availableLogicalHeight const):
(WebCore::RenderView::clientLogicalWidthForFixedPosition const):
(WebCore::RenderView::clientLogicalHeightForFixedPosition const):
(WebCore::RenderView::repaintViewRectangle const):

  • rendering/RenderWidget.cpp:

(WebCore::RenderWidget::willBeDestroyed):

  • rendering/RootInlineBox.cpp:

(WebCore::RootInlineBox::selectionTop const):
(WebCore::RootInlineBox::selectionBottom const):

  • rendering/style/RenderStyle.h:
  • rendering/style/StyleRareInheritedData.cpp:

(WebCore::StyleRareInheritedData::StyleRareInheritedData):
(WebCore::StyleRareInheritedData::operator== const):

  • rendering/style/StyleRareInheritedData.h:
  • rendering/updating/RenderTreeUpdater.cpp:

(WebCore::RenderTreeUpdater::updateElementRenderer):

  • style/StyleResolveForDocument.cpp:

(WebCore::Style::resolveForDocument):

  • testing/Internals.cpp:

(WebCore::Internals::getCurrentCursorInfo):
(WebCore::Internals::isSelectPopupVisible):
(WebCore::Internals::setQuickLookPassword):

  • testing/Internals.mm:

(WebCore::Internals::userPrefersReducedMotion const):

  • testing/js/WebCoreTestSupportPrefix.h:
  • workers/WorkerThread.cpp:

(WebCore::WorkerThread::workerThread):

Source/WebCore/PAL:

  • pal/cf/CoreMediaSoftLink.cpp:
  • pal/cf/CoreMediaSoftLink.h:
  • pal/ios/UIKitSoftLink.h:
  • pal/ios/UIKitSoftLink.mm:
  • pal/spi/cf/CFNetworkSPI.h:
  • pal/spi/cocoa/AVKitSPI.h:
  • pal/spi/cocoa/CFNSURLConnectionSPI.h:
  • pal/spi/cocoa/CoreTextSPI.h:
  • pal/spi/cocoa/DataDetectorsCoreSPI.h:
  • pal/spi/cocoa/IOSurfaceSPI.h:
  • pal/spi/cocoa/LaunchServicesSPI.h:
  • pal/spi/cocoa/NEFilterSourceSPI.h:
  • pal/spi/cocoa/NSAttributedStringSPI.h:
  • pal/spi/cocoa/NSKeyedArchiverSPI.h:
  • pal/spi/cocoa/PassKitSPI.h:
  • pal/spi/cocoa/QuartzCoreSPI.h:
  • pal/spi/ios/DataDetectorsUISPI.h:
  • pal/spi/ios/GraphicsServicesSPI.h:
  • pal/spi/ios/MediaPlayerSPI.h:
  • pal/spi/ios/MobileGestaltSPI.h:
  • pal/spi/mac/AVFoundationSPI.h:
  • pal/system/mac/ClockCM.mm:

(ClockCM::ClockCM):

Source/WebKit:

  • DerivedSources.make:
  • NetworkProcess/Downloads/cocoa/DownloadCocoa.mm:

(WebKit::Download::resume):

  • NetworkProcess/NetworkActivityTracker.h:
  • NetworkProcess/NetworkProcess.h:
  • NetworkProcess/NetworkProcessCreationParameters.cpp:

(WebKit::NetworkProcessCreationParameters::encode const):
(WebKit::NetworkProcessCreationParameters::decode):

  • NetworkProcess/NetworkProcessCreationParameters.h:
  • NetworkProcess/cache/NetworkCacheFileSystem.cpp:

(WebKit::NetworkCache::isSafeToUseMemoryMapForPath):

  • NetworkProcess/cocoa/NetworkDataTaskCocoa.mm:

(WebKit::updateTaskWithFirstPartyForSameSiteCookies):

  • NetworkProcess/cocoa/NetworkProcessCocoa.mm:

(WebKit::NetworkProcess::platformInitializeNetworkProcessCocoa):
(WebKit::NetworkProcess::sourceApplicationAuditData const):
(WebKit::NetworkProcess::platformSyncAllCookies):

  • NetworkProcess/cocoa/NetworkSessionCocoa.h:
  • NetworkProcess/cocoa/NetworkSessionCocoa.mm:

(-[WKNetworkSessionDelegate URLSession:task:didFinishCollectingMetrics:]):
(WebKit::NetworkSessionCocoa::NetworkSessionCocoa):

  • NetworkProcess/ios/NetworkProcessIOS.mm:
  • Platform/IPC/mac/ConnectionMac.mm:

(IPC::ConnectionTerminationWatchdog::ConnectionTerminationWatchdog):
(IPC::Connection::receiveSourceEventHandler):
(IPC::AccessibilityProcessSuspendedNotification):

  • Platform/ios/AccessibilityIOS.mm:
  • Platform/mac/LayerHostingContext.mm:

(WebKit::LayerHostingContext::createForExternalHostingProcess):

  • Platform/spi/Cocoa/DeviceIdentitySPI.h:
  • Platform/spi/ios/CelestialSPI.h:
  • Platform/spi/ios/FrontBoardServicesSPI.h:
  • PluginProcess/mac/PluginProcessShim.mm:
  • Shared/API/Cocoa/WKDataDetectorTypesInternal.h:
  • Shared/API/Cocoa/WebKit.m:
  • Shared/AssistedNodeInformation.cpp:
  • Shared/AssistedNodeInformation.h:
  • Shared/CacheModel.cpp:

(WebKit::calculateURLCacheSizes):

  • Shared/ChildProcess.cpp:
  • Shared/Cocoa/APIObject.mm:

(API::Object::newObject):

  • Shared/Cocoa/WebKit2InitializeCocoa.mm:

(WebKit::runInitializationCode):

  • Shared/DrawingAreaInfo.h:
  • Shared/EditorState.cpp:

(WebKit::EditorState::encode const):
(WebKit::EditorState::decode):
(WebKit::EditorState::PostLayoutData::encode const):
(WebKit::EditorState::PostLayoutData::decode):
(WebKit::operator<<):

  • Shared/EditorState.h:
  • Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.mm:

(WebKit::XPCServiceInitializerDelegate::checkEntitlements):

  • Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.mm:

(WebKit::XPCServiceMain):

  • Shared/NativeWebKeyboardEvent.h:
  • Shared/NativeWebMouseEvent.h:
  • Shared/NativeWebTouchEvent.h:
  • Shared/PrintInfo.cpp:

(WebKit::PrintInfo::encode const):
(WebKit::PrintInfo::decode):

  • Shared/PrintInfo.h:
  • Shared/RemoteLayerTree/RemoteLayerTreePropertyApplier.h:
  • Shared/RemoteLayerTree/RemoteLayerTreePropertyApplier.mm:

(WebKit::RemoteLayerTreePropertyApplier::applyProperties):

  • Shared/SessionState.cpp:

(WebKit::FrameState::encode const):
(WebKit::FrameState::decode):

  • Shared/SessionState.h:
  • Shared/WebCoreArgumentCoders.cpp:
  • Shared/WebCoreArgumentCoders.h:
  • Shared/WebEvent.h:
  • Shared/WebEventConversion.cpp:

(WebKit::WebKit2PlatformTouchEvent::WebKit2PlatformTouchEvent):

  • Shared/WebKeyboardEvent.cpp:
  • Shared/WebPageCreationParameters.cpp:

(WebKit::WebPageCreationParameters::encode const):
(WebKit::WebPageCreationParameters::decode):

  • Shared/WebPageCreationParameters.h:
  • Shared/WebPlatformTouchPoint.cpp:
  • Shared/WebPreferences.yaml:
  • Shared/WebPreferencesDefaultValues.cpp:

(defaultPassiveTouchListenersAsDefaultOnDocument):
(defaultCustomPasteboardDataEnabled):

  • Shared/WebPreferencesDefaultValues.h:
  • Shared/WebProcessCreationParameters.cpp:

(WebKit::WebProcessCreationParameters::encode const):
(WebKit::WebProcessCreationParameters::decode):

  • Shared/WebProcessCreationParameters.h:
  • Shared/WebTouchEvent.cpp:
  • Shared/cf/ArgumentCodersCF.cpp:

(IPC::encode):
(IPC::decode):

  • Shared/cf/ArgumentCodersCF.h:
  • Shared/ios/ChildProcessIOS.mm:
  • Shared/ios/InteractionInformationAtPosition.h:
  • Shared/ios/InteractionInformationAtPosition.mm:
  • Shared/ios/InteractionInformationRequest.cpp:
  • Shared/ios/InteractionInformationRequest.h:
  • Shared/ios/NativeWebKeyboardEventIOS.mm:
  • Shared/ios/NativeWebMouseEventIOS.mm:
  • Shared/ios/NativeWebTouchEventIOS.mm:
  • Shared/ios/WebIOSEventFactory.h:
  • Shared/ios/WebIOSEventFactory.mm:
  • Shared/ios/WebIconUtilities.h:
  • Shared/ios/WebIconUtilities.mm:
  • Shared/mac/ArgumentCodersMac.h:
  • Shared/mac/ArgumentCodersMac.mm:
  • Shared/mac/SandboxExtensionMac.mm:
  • Shared/mac/SecItemShim.cpp:

(WebKit::initializeSecItemShim):

  • UIProcess/API/APIPageConfiguration.cpp:

(API::PageConfiguration::copy const):

  • UIProcess/API/APIPageConfiguration.h:
  • UIProcess/API/APIProcessPoolConfiguration.cpp:

(API::ProcessPoolConfiguration::copy):

  • UIProcess/API/APIProcessPoolConfiguration.h:
  • UIProcess/API/APIUIClient.h:
  • UIProcess/API/C/WKInspector.cpp:
  • UIProcess/API/C/WKPage.cpp:

(WKPageSetIgnoresViewportScaleLimits):

  • UIProcess/API/C/mac/WKContextPrivateMac.mm:

(WKContextIsPlugInUpdateAvailable):

  • UIProcess/API/Cocoa/APIAttachmentCocoa.mm:
  • UIProcess/API/Cocoa/APIWebsiteDataStoreCocoa.mm:

(API::WebsiteDataStore::defaultApplicationCacheDirectory):
(API::WebsiteDataStore::legacyDefaultApplicationCacheDirectory):
(API::WebsiteDataStore::legacyDefaultJavaScriptConfigurationDirectory):

  • UIProcess/API/Cocoa/WKNavigationAction.mm:

(-[WKNavigationAction description]):

  • UIProcess/API/Cocoa/WKPreviewActionItemIdentifiers.mm:
  • UIProcess/API/Cocoa/WKPreviewElementInfo.mm:
  • UIProcess/API/Cocoa/WKProcessGroup.mm:

(IGNORE_WARNINGS_BEGIN):

  • UIProcess/API/Cocoa/WKProcessPool.mm:

(-[WKProcessPool _pluginProcessCount]):

  • UIProcess/API/Cocoa/WKWebView.mm:

(shouldRequireUserGestureToLoadVideo):
(validate):
(-[WKWebView _initializeWithConfiguration:]):
(-[WKWebView _setUpSQLiteDatabaseTrackerClient]):
(-[WKWebView dealloc]):
(-[WKWebView allowsLinkPreview]):
(-[WKWebView setAllowsLinkPreview:]):
(-[WKWebView _countStringMatches:options:maxCount:]):
(-[WKWebView _findString:options:maxCount:]):
(-[WKWebView _hideFindUI]):
(-[WKWebView _scrollPerformanceData]):
(-[WKWebView _allowsMediaDocumentInlinePlayback]):
(-[WKWebView _setAllowsMediaDocumentInlinePlayback:]):
(-[WKWebView _contentsOfUserInterfaceItem:]):
(-[WKWebView _internalDoAfterNextPresentationUpdate:withoutWaitingForPainting:withoutWaitingForAnimatedResize:]):
(-[WKWebView _doAfterNextVisibleContentRectUpdate:]):

  • UIProcess/API/Cocoa/WKWebViewConfiguration.mm:

(-[WKWebViewConfiguration init]):
(-[WKWebViewConfiguration encodeWithCoder:]):
(-[WKWebViewConfiguration initWithCoder:]):
(-[WKWebViewConfiguration copyWithZone:]):
(defaultApplicationNameForUserAgent):

  • UIProcess/API/Cocoa/WKWebViewConfigurationInternal.h:
  • UIProcess/API/Cocoa/WKWebViewInternal.h:
  • UIProcess/API/Cocoa/_WKActivatedElementInfo.mm:

(-[_WKActivatedElementInfo _initWithType:URL:location:title:ID:rect:image:userInfo:]):

  • UIProcess/API/Cocoa/_WKActivatedElementInfoInternal.h:
  • UIProcess/API/Cocoa/_WKAttachment.mm:
  • UIProcess/API/Cocoa/_WKContextMenuElementInfo.mm:
  • UIProcess/API/Cocoa/_WKElementAction.mm:
  • UIProcess/API/Cocoa/_WKElementActionInternal.h:
  • UIProcess/API/Cocoa/_WKProcessPoolConfiguration.mm:
  • UIProcess/ApplePay/cocoa/WebPaymentCoordinatorProxyCocoa.h:
  • UIProcess/ApplePay/cocoa/WebPaymentCoordinatorProxyCocoa.mm:

(-[WKPaymentAuthorizationViewControllerDelegate invalidate]):
(-[WKPaymentAuthorizationViewControllerDelegate paymentAuthorizationViewController:didAuthorizePayment:handler:]):
(-[WKPaymentAuthorizationViewControllerDelegate paymentAuthorizationViewController:didSelectPaymentMethod:handler:]):
(-[WKPaymentAuthorizationViewControllerDelegate paymentAuthorizationViewController:didSelectShippingMethod:handler:]):
(-[WKPaymentAuthorizationViewControllerDelegate paymentAuthorizationViewController:didSelectShippingContact:handler:]):
(WebKit::WebPaymentCoordinatorProxy::platformCanMakePaymentsWithActiveCard):
(WebKit::toPKPaymentRequest):
(WebKit::WebPaymentCoordinatorProxy::platformCompletePaymentSession):
(WebKit::WebPaymentCoordinatorProxy::platformCompleteShippingMethodSelection):
(WebKit::WebPaymentCoordinatorProxy::platformCompleteShippingContactSelection):
(WebKit::WebPaymentCoordinatorProxy::platformCompletePaymentMethodSelection):

  • UIProcess/ApplePay/ios/WebPaymentCoordinatorProxyIOS.mm:
  • UIProcess/ApplicationStateTracker.h:
  • UIProcess/ApplicationStateTracker.mm:
  • UIProcess/Automation/cocoa/WebAutomationSessionCocoa.mm:
  • UIProcess/Automation/ios/WebAutomationSessionIOS.mm:
  • UIProcess/BackgroundProcessResponsivenessTimer.cpp:

(WebKit::BackgroundProcessResponsivenessTimer::shouldBeActive const):

  • UIProcess/ChildProcessProxy.cpp:

(WebKit::ChildProcessProxy::shutDownProcess):

  • UIProcess/Cocoa/DownloadClient.h:
  • UIProcess/Cocoa/DownloadClient.mm:

(WebKit::DownloadClient::takeActivityToken):
(WebKit::DownloadClient::releaseActivityTokenIfNecessary):

  • UIProcess/Cocoa/LayerRepresentation.h:
  • UIProcess/Cocoa/NavigationState.h:
  • UIProcess/Cocoa/NavigationState.mm:

(WebKit::NavigationState::NavigationState):
(WebKit::NavigationState::didChangeIsLoading):

  • UIProcess/Cocoa/PlaybackSessionManagerProxy.h:
  • UIProcess/Cocoa/PlaybackSessionManagerProxy.messages.in:
  • UIProcess/Cocoa/PlaybackSessionManagerProxy.mm:
  • UIProcess/Cocoa/UIDelegate.h:
  • UIProcess/Cocoa/UIDelegate.mm:

(WebKit::UIDelegate::setDelegate):
(WebKit::UIDelegate::UIClient::decidePolicyForUserMediaPermissionRequest):

  • UIProcess/Cocoa/VersionChecks.h:
  • UIProcess/Cocoa/VersionChecks.mm:

(WebKit::linkedOnOrAfter):

  • UIProcess/Cocoa/VideoFullscreenManagerProxy.h:
  • UIProcess/Cocoa/VideoFullscreenManagerProxy.messages.in:
  • UIProcess/Cocoa/VideoFullscreenManagerProxy.mm:

(WebKit::VideoFullscreenManagerProxy::setupFullscreenWithID):
(WebKit::VideoFullscreenManagerProxy::exitFullscreen):
(WebKit::VideoFullscreenManagerProxy::preparedToReturnToInline):
(WebKit::VideoFullscreenManagerProxy::setVideoLayerFrame):

  • UIProcess/Cocoa/ViewGestureController.h:
  • UIProcess/Cocoa/WKShareSheet.mm:

(-[WKShareSheet presentWithParameters:completionHandler:]):

  • UIProcess/Cocoa/WKWebViewContentProvider.h:
  • UIProcess/Cocoa/WKWebViewContentProviderRegistry.h:
  • UIProcess/Cocoa/WKWebViewContentProviderRegistry.mm:
  • UIProcess/Cocoa/WebPageProxyCocoa.mm:
  • UIProcess/Cocoa/WebPasteboardProxyCocoa.mm:
  • UIProcess/Cocoa/WebProcessPoolCocoa.mm:

(WebKit::WebProcessPool::platformResolvePathsForSandboxExtensions):
(WebKit::WebProcessPool::platformInitializeWebProcess):
(WebKit::WebProcessPool::platformInitializeNetworkProcess):
(WebKit::WebProcessPool::registerNotificationObservers):
(WebKit::WebProcessPool::unregisterNotificationObservers):

  • UIProcess/Gamepad/cocoa/UIGamepadProviderCocoa.mm:

(WebKit::UIGamepadProvider::platformSetDefaultGamepadProvider):

  • UIProcess/Gamepad/ios/UIGamepadProviderIOS.mm:
  • UIProcess/Launcher/mac/ProcessLauncherMac.mm:

(WebKit::shouldLeakBoost):
(WebKit::systemDirectoryPath):
(WebKit::ProcessLauncher::launchProcess):

  • UIProcess/Network/NetworkProcessProxy.cpp:

(WebKit::NetworkProcessProxy::didFinishLaunching):

  • UIProcess/PageClient.h:
  • UIProcess/ProcessAssertion.cpp:
  • UIProcess/ProcessAssertion.h:
  • UIProcess/RemoteLayerTree/RemoteLayerTreeDrawingAreaProxy.h:
  • UIProcess/RemoteLayerTree/RemoteLayerTreeDrawingAreaProxy.mm:

(WebKit::RemoteLayerTreeDrawingAreaProxy::~RemoteLayerTreeDrawingAreaProxy):
(WebKit::RemoteLayerTreeDrawingAreaProxy::commitLayerTree):
(WebKit::RemoteLayerTreeDrawingAreaProxy::indicatorLocation const):
(WebKit::RemoteLayerTreeDrawingAreaProxy::updateDebugIndicator):
(WebKit::RemoteLayerTreeDrawingAreaProxy::didRefreshDisplay):
(WebKit::RemoteLayerTreeDrawingAreaProxy::waitForDidUpdateActivityState):

  • UIProcess/RemoteLayerTree/RemoteLayerTreeHost.mm:

(WebKit::RemoteLayerTreeHost::clearLayers):
(WebKit::RemoteLayerTreeHost::detachRootLayer):

  • UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.cpp:

(WebKit::RemoteScrollingCoordinatorProxy::scrollingTreeNodeDidScroll):

  • UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.h:
  • UIProcess/RemoteLayerTree/RemoteScrollingTree.cpp:

(WebKit::RemoteScrollingTree::createScrollingTreeNode):

  • UIProcess/RemoteLayerTree/RemoteScrollingTree.h:
  • UIProcess/RemoteLayerTree/ios/RemoteLayerTreeHostIOS.mm:
  • UIProcess/RemoteLayerTree/ios/RemoteScrollingCoordinatorProxyIOS.mm:
  • UIProcess/RemoteLayerTree/ios/ScrollingTreeOverflowScrollingNodeIOS.h:
  • UIProcess/RemoteLayerTree/ios/ScrollingTreeOverflowScrollingNodeIOS.mm:
  • UIProcess/RemoteLayerTree/ios/ScrollingTreeScrollingNodeDelegateIOS.h:
  • UIProcess/RemoteLayerTree/ios/ScrollingTreeScrollingNodeDelegateIOS.mm:
  • UIProcess/ResourceLoadStatisticsPersistentStorage.cpp:
  • UIProcess/WKImagePreviewViewController.h:
  • UIProcess/WKImagePreviewViewController.mm:
  • UIProcess/WKInspectorHighlightView.h:
  • UIProcess/WKInspectorHighlightView.mm:
  • UIProcess/WebAuthentication/Cocoa/LocalAuthenticator.mm:

(WebKit::LocalAuthenticatorInternal::buildAuthData):
(WebKit::LocalAuthenticator::makeCredential):
(WebKit::LocalAuthenticator::continueMakeCredentialAfterUserConsented):
(WebKit::LocalAuthenticator::continueMakeCredentialAfterAttested):
(WebKit::LocalAuthenticator::getAssertion):
(WebKit::LocalAuthenticator::continueGetAssertionAfterUserConsented):

  • UIProcess/WebAuthentication/Cocoa/LocalConnection.mm:

(WebKit::LocalConnection::getUserConsent const):
(WebKit::LocalConnection::getAttestation const):

  • UIProcess/WebAuthentication/Cocoa/LocalService.mm:

(WebKit::LocalService::isAvailable):

  • UIProcess/WebFullScreenManagerProxy.cpp:

(WebKit::WebFullScreenManagerProxy::supportsFullScreen):

  • UIProcess/WebGeolocationManagerProxy.cpp:
  • UIProcess/WebGeolocationManagerProxy.h:
  • UIProcess/WebInspectorProxy.cpp:
  • UIProcess/WebOpenPanelResultListenerProxy.cpp:
  • UIProcess/WebOpenPanelResultListenerProxy.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::m_resetRecentCrashCountTimer):
(WebKit::WebPageProxy::finishAttachingToWebProcess):
(WebKit::WebPageProxy::initializeWebPage):
(WebKit::WebPageProxy::close):
(WebKit::WebPageProxy::viewDidLeaveWindow):
(WebKit::WebPageProxy::updateThrottleState):
(WebKit::WebPageProxy::waitForDidUpdateActivityState):
(WebKit::WebPageProxy::didCommitLoadForFrame):
(WebKit::WebPageProxy::exitFullscreenImmediately):
(WebKit::WebPageProxy::runJavaScriptAlert):
(WebKit::WebPageProxy::runJavaScriptConfirm):
(WebKit::WebPageProxy::runJavaScriptPrompt):
(WebKit::WebPageProxy::pageDidScroll):
(WebKit::WebPageProxy::processDidTerminate):
(WebKit::WebPageProxy::resetState):
(WebKit::WebPageProxy::resetStateAfterProcessExited):
(WebKit::WebPageProxy::creationParameters):
(WebKit::WebPageProxy::requestGeolocationPermissionForFrame):
(WebKit::WebPageProxy::hasActiveVideoForControlsManager const):
(WebKit::WebPageProxy::requestControlledElementID const):
(WebKit::WebPageProxy::isPlayingVideoInEnhancedFullscreen const):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/WebPasteboardProxy.h:
  • UIProcess/WebPasteboardProxy.messages.in:
  • UIProcess/WebProcessPool.cpp:

(WebKit::WebProcessPool::ensureNetworkProcess):
(WebKit::WebProcessPool::initializeNewWebProcess):
(WebKit::WebProcessPool::updateProcessAssertions):
(WebKit::WebProcessPool::reinstateNetworkProcessAssertionState):

  • UIProcess/WebProcessPool.h:
  • UIProcess/WebProcessProxy.cpp:

(WebKit::isMainThreadOrCheckDisabled):
(WebKit::WebProcessProxy::didFinishLaunching):
(WebKit::WebProcessProxy::didSetAssertionState):

  • UIProcess/WebProcessProxy.h:
  • UIProcess/WebStorage/LocalStorageDatabaseTracker.cpp:

(WebKit::LocalStorageDatabaseTracker::databasePath const):

  • UIProcess/WebStorage/LocalStorageDatabaseTracker.h:
  • UIProcess/WebStorage/ios/LocalStorageDatabaseTrackerIOS.mm:
  • UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm:
  • UIProcess/_WKWebViewPrintFormatter.mm:
  • UIProcess/_WKWebViewPrintFormatterInternal.h:
  • UIProcess/ios/DragDropInteractionState.h:
  • UIProcess/ios/DragDropInteractionState.mm:
  • UIProcess/ios/InputViewUpdateDeferrer.h:
  • UIProcess/ios/InputViewUpdateDeferrer.mm:
  • UIProcess/ios/LayerRepresentation.mm:
  • UIProcess/ios/PageClientImplIOS.h:
  • UIProcess/ios/PageClientImplIOS.mm:
  • UIProcess/ios/ProcessAssertionIOS.mm:
  • UIProcess/ios/ResourceLoadStatisticsPersistentStorageIOS.mm:
  • UIProcess/ios/SmartMagnificationController.h:
  • UIProcess/ios/SmartMagnificationController.messages.in:
  • UIProcess/ios/SmartMagnificationController.mm:
  • UIProcess/ios/TextCheckerIOS.mm:
  • UIProcess/ios/ViewGestureControllerIOS.mm:
  • UIProcess/ios/WKActionSheet.h:
  • UIProcess/ios/WKActionSheet.mm:
  • UIProcess/ios/WKActionSheetAssistant.h:
  • UIProcess/ios/WKActionSheetAssistant.mm:
  • UIProcess/ios/WKApplicationStateTrackingView.h:
  • UIProcess/ios/WKApplicationStateTrackingView.mm:
  • UIProcess/ios/WKContentView.mm:
  • UIProcess/ios/WKContentViewInteraction.h:
  • UIProcess/ios/WKContentViewInteraction.mm:
  • UIProcess/ios/WKGeolocationProviderIOS.h:
  • UIProcess/ios/WKGeolocationProviderIOS.mm:
  • UIProcess/ios/WKGeolocationProviderIOSObjCSecurityOrigin.mm:
  • UIProcess/ios/WKInspectorNodeSearchGestureRecognizer.h:
  • UIProcess/ios/WKInspectorNodeSearchGestureRecognizer.mm:
  • UIProcess/ios/WKKeyboardScrollingAnimator.h:
  • UIProcess/ios/WKKeyboardScrollingAnimator.mm:
  • UIProcess/ios/WKPDFPageNumberIndicator.h:
  • UIProcess/ios/WKPDFPageNumberIndicator.mm:
  • UIProcess/ios/WKPasswordView.h:
  • UIProcess/ios/WKPasswordView.mm:
  • UIProcess/ios/WKScrollView.h:
  • UIProcess/ios/WKScrollView.mm:
  • UIProcess/ios/WKSyntheticClickTapGestureRecognizer.h:
  • UIProcess/ios/WKSyntheticClickTapGestureRecognizer.m:
  • UIProcess/ios/WKWebEvent.h:
  • UIProcess/ios/WKWebEvent.mm:
  • UIProcess/ios/WebDataListSuggestionsDropdownIOS.h:
  • UIProcess/ios/WebDataListSuggestionsDropdownIOS.mm:
  • UIProcess/ios/WebPageProxyIOS.mm:
  • UIProcess/ios/WebProcessProxyIOS.mm:
  • UIProcess/ios/forms/WKAirPlayRoutePicker.h:
  • UIProcess/ios/forms/WKAirPlayRoutePicker.mm:
  • UIProcess/ios/forms/WKFileUploadPanel.h:
  • UIProcess/ios/forms/WKFileUploadPanel.mm:
  • UIProcess/ios/forms/WKFormColorControl.h:
  • UIProcess/ios/forms/WKFormColorControl.mm:
  • UIProcess/ios/forms/WKFormColorPicker.h:
  • UIProcess/ios/forms/WKFormColorPicker.mm:
  • UIProcess/ios/forms/WKFormInputControl.h:
  • UIProcess/ios/forms/WKFormInputControl.mm:
  • UIProcess/ios/forms/WKFormPopover.h:
  • UIProcess/ios/forms/WKFormPopover.mm:
  • UIProcess/ios/forms/WKFormSelectControl.h:
  • UIProcess/ios/forms/WKFormSelectControl.mm:
  • UIProcess/ios/forms/WKFormSelectPicker.h:
  • UIProcess/ios/forms/WKFormSelectPicker.mm:
  • UIProcess/ios/forms/WKFormSelectPopover.h:
  • UIProcess/ios/forms/WKFormSelectPopover.mm:
  • UIProcess/ios/fullscreen/FullscreenTouchSecheuristic.cpp:
  • UIProcess/ios/fullscreen/FullscreenTouchSecheuristic.h:
  • UIProcess/ios/fullscreen/WKFullScreenViewController.h:
  • UIProcess/ios/fullscreen/WKFullScreenViewController.mm:
  • UIProcess/ios/fullscreen/WKFullScreenWindowControllerIOS.h:
  • UIProcess/ios/fullscreen/WKFullScreenWindowControllerIOS.mm:
  • UIProcess/ios/fullscreen/WKFullscreenStackView.h:
  • UIProcess/ios/fullscreen/WKFullscreenStackView.mm:
  • UIProcess/mac/LegacySessionStateCoding.cpp:

(WebKit::encodeFrameStateNode):
(WebKit::decodeBackForwardTreeNode):

  • UIProcess/mac/PageClientImplMac.h:
  • UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h:
  • UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm:
  • UIProcess/mac/ViewSnapshotStore.mm:
  • UIProcess/mac/WKFullScreenWindowController.mm:
  • WebProcess/EntryPoint/mac/XPCService/WebContentServiceEntryPoint.mm:

(WebContentServiceInitializer):

  • WebProcess/FullScreen/WebFullScreenManager.cpp:

(WebKit::WebFullScreenManager::videoControlsManagerDidChange):
(WebKit::WebFullScreenManager::willEnterFullScreen):
(WebKit::WebFullScreenManager::didEnterFullScreen):
(WebKit::WebFullScreenManager::willExitFullScreen):

  • WebProcess/Geolocation/WebGeolocationManager.cpp:
  • WebProcess/Geolocation/WebGeolocationManager.h:
  • WebProcess/Geolocation/WebGeolocationManager.messages.in:
  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInNodeHandle.mm:
  • WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
  • WebProcess/InjectedBundle/API/c/mac/WKBundlePageBannerMac.mm:
  • WebProcess/InjectedBundle/API/mac/WKDOMInternals.mm:
  • WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:

(-[WKWebProcessPlugInBrowserContextController _setEditingDelegate:]):

  • WebProcess/WebCoreSupport/SessionStateConversion.cpp:

(WebKit::toFrameState):
(WebKit::applyFrameState):

  • WebProcess/WebCoreSupport/WebAlternativeTextClient.h:
  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::windowRect):
(WebKit::WebChromeClient::enterVideoFullscreenForVideoElement):

  • WebProcess/WebCoreSupport/WebChromeClient.h:
  • WebProcess/WebCoreSupport/WebEditorClient.cpp:
  • WebProcess/WebCoreSupport/WebEditorClient.h:
  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::dispatchDidLayout):
(WebKit::WebFrameLoaderClient::saveViewStateToItem):
(WebKit::WebFrameLoaderClient::restoreViewState):
(WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
(WebKit::WebFrameLoaderClient::objectContentType):

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
  • WebProcess/WebCoreSupport/WebInspectorClient.cpp:

(WebKit::WebInspectorClient::highlight):
(WebKit::WebInspectorClient::hideHighlight):

  • WebProcess/WebCoreSupport/WebInspectorClient.h:
  • WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
  • WebProcess/WebCoreSupport/WebPlatformStrategies.h:
  • WebProcess/WebCoreSupport/ios/WebChromeClientIOS.mm:
  • WebProcess/WebCoreSupport/ios/WebEditorClientIOS.mm:
  • WebProcess/WebCoreSupport/ios/WebFrameLoaderClientIOS.mm:
  • WebProcess/WebCoreSupport/mac/WebDragClientMac.mm:
  • WebProcess/WebPage/DrawingArea.cpp:

(WebKit::DrawingArea::create):

  • WebProcess/WebPage/DrawingArea.h:
  • WebProcess/WebPage/FindController.cpp:

(WebKit::FindController::findString):

  • WebProcess/WebPage/FindController.h:
  • WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemoteCustom.mm:

(WebKit::PlatformCALayerRemoteCustom::PlatformCALayerRemoteCustom):

  • WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDrawingArea.h:
  • WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDrawingArea.mm:

(WebKit::RemoteLayerTreeDrawingArea::RemoteLayerTreeDrawingArea):
(WebKit::RemoteLayerTreeDrawingArea::updateScrolledExposedRect):

  • WebProcess/WebPage/ViewGestureGeometryCollector.cpp:

(WebKit::ViewGestureGeometryCollector::dispatchDidCollectGeometryForSmartMagnificationGesture):
(WebKit::ViewGestureGeometryCollector::collectGeometryForSmartMagnificationGesture):
(WebKit::ViewGestureGeometryCollector::mainFrameDidLayout):

  • WebProcess/WebPage/ViewGestureGeometryCollector.h:
  • WebProcess/WebPage/ViewGestureGeometryCollector.messages.in:
  • WebProcess/WebPage/ViewUpdateDispatcher.cpp:
  • WebProcess/WebPage/WKAccessibilityWebPageObjectIOS.h:
  • WebProcess/WebPage/WKAccessibilityWebPageObjectIOS.mm:
  • WebProcess/WebPage/WebFrame.h:
  • WebProcess/WebPage/WebOpenPanelResultListener.cpp:
  • WebProcess/WebPage/WebOpenPanelResultListener.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::m_cpuLimit):
(WebKit::WebPage::~WebPage):
(WebKit::WebPage::scalePage):
(WebKit::WebPage::setUseFixedLayout):
(WebKit::WebPage::disabledAdaptationsDidChange):
(WebKit::WebPage::viewportPropertiesDidChange):
(WebKit::WebPage::pageDidScroll):
(WebKit::WebPage::mouseEvent):
(WebKit::WebPage::updatePreferences):
(WebKit::WebPage::willCommitLayerTree):
(WebKit::WebPage::didFlushLayerTreeAtTime):
(WebKit::WebPage::mainFrameDidLayout):
(WebKit::WebPage::resetAssistedNodeForFrame):
(WebKit::WebPage::elementDidFocus):
(WebKit::WebPage::elementDidBlur):
(WebKit::WebPage::willReplaceMultipartContent):
(WebKit::WebPage::didReplaceMultipartContent):
(WebKit::WebPage::didCommitLoad):

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in:
  • WebProcess/WebPage/ios/FindControllerIOS.mm:
  • WebProcess/WebPage/ios/WebPageIOS.mm:
  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::updateScrolledExposedRect):

  • WebProcess/WebPage/mac/WebPageMac.mm:
  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::WebProcess):
(WebKit::WebProcess::initializeConnection):
(WebKit::WebProcess::initializeWebProcess):
(WebKit::WebProcess::actualPrepareToSuspend):
(WebKit::WebProcess::cancelPrepareToSuspend):
(WebKit::WebProcess::processDidResume):

  • WebProcess/WebProcess.h:
  • WebProcess/cocoa/PlaybackSessionManager.h:
  • WebProcess/cocoa/PlaybackSessionManager.messages.in:
  • WebProcess/cocoa/PlaybackSessionManager.mm:
  • WebProcess/cocoa/VideoFullscreenManager.h:
  • WebProcess/cocoa/VideoFullscreenManager.messages.in:
  • WebProcess/cocoa/VideoFullscreenManager.mm:

(WebKit::VideoFullscreenManager::supportsVideoFullscreen const):
(WebKit::VideoFullscreenManager::supportsVideoFullscreenStandby const):
(WebKit::VideoFullscreenManager::didSetupFullscreen):
(WebKit::VideoFullscreenManager::didExitFullscreen):

  • WebProcess/cocoa/WebProcessCocoa.mm:

(WebKit::WebProcess::platformInitializeWebProcess):
(WebKit::WebProcess::initializeProcessName):
(WebKit::registerWithAccessibility):
(WebKit::WebProcess::sourceApplicationAuditData const):
(WebKit::WebProcess::initializeSandbox):

  • WebProcess/mac/SecItemShimLibrary.mm:
  • config.h:

Source/WebKitLegacy:

  • Storage/StorageTracker.cpp:

(WebKit::StorageTracker::syncDeleteAllOrigins):
(WebKit::StorageTracker::syncDeleteOrigin):

  • WebCoreSupport/WebResourceLoadScheduler.cpp:

(WebResourceLoadScheduler::loadResource):
(WebResourceLoadScheduler::scheduleLoad):
(WebResourceLoadScheduler::remove):
(WebResourceLoadScheduler::servePendingRequests):

Source/WebKitLegacy/ios:

  • DefaultDelegates/WebDefaultFormDelegate.m:
  • DefaultDelegates/WebDefaultFrameLoadDelegate.m:
  • DefaultDelegates/WebDefaultResourceLoadDelegate.m:
  • DefaultDelegates/WebDefaultUIKitDelegate.m:
  • Misc/MemoryMeasure.mm:
  • Misc/WebGeolocationCoreLocationProvider.mm:
  • Misc/WebGeolocationProviderIOS.mm:
  • Misc/WebNSStringExtrasIOS.m:
  • Misc/WebUIKitSupport.mm:

(WebKitPlatformSystemRootDirectory):

  • WebCoreSupport/PopupMenuIOS.mm:
  • WebCoreSupport/SearchPopupMenuIOS.cpp:
  • WebCoreSupport/WebChromeClientIOS.h:
  • WebCoreSupport/WebChromeClientIOS.mm:
  • WebCoreSupport/WebFixedPositionContent.mm:
  • WebCoreSupport/WebFrameIOS.mm:
  • WebCoreSupport/WebGeolocation.mm:
  • WebCoreSupport/WebInspectorClientIOS.mm:
  • WebCoreSupport/WebMIMETypeRegistry.mm:
  • WebCoreSupport/WebSelectionRect.m:
  • WebCoreSupport/WebVisiblePosition.mm:
  • WebView/WebFrameViewWAKCompatibility.m:
  • WebView/WebPDFViewIOS.mm:
  • WebView/WebPDFViewPlaceholder.mm:
  • WebView/WebPlainWhiteView.h:
  • WebView/WebPlainWhiteView.mm:

Source/WebKitLegacy/mac:

  • DOM/DOM.mm:

(-[DOMNode boundingBox]):

  • DOM/DOMElement.mm:
  • DOM/DOMHTML.mm:
  • DOM/DOMInternal.mm:
  • DOM/DOMUIKitExtensions.mm:
  • DOM/WebDOMOperations.mm:
  • DefaultDelegates/WebDefaultContextMenuDelegate.mm:
  • DefaultDelegates/WebDefaultEditingDelegate.m:
  • DefaultDelegates/WebDefaultPolicyDelegate.m:

(-[WebDefaultPolicyDelegate webView:decidePolicyForNavigationAction:request:frame:decisionListener:]):

  • DefaultDelegates/WebDefaultUIDelegate.h:
  • DefaultDelegates/WebDefaultUIDelegate.mm:

(-[WebDefaultUIDelegate webViewClose:]):
(-[WebDefaultUIDelegate webViewFocus:]):
(-[WebDefaultUIDelegate webViewUnfocus:]):
(-[WebDefaultUIDelegate webViewIsResizable:]):
(-[WebDefaultUIDelegate webView:setResizable:]):
(-[WebDefaultUIDelegate webView:setFrame:]):
(-[WebDefaultUIDelegate webView:runJavaScriptTextInputPanelWithPrompt:defaultText:initiatedByFrame:]):

  • History/BackForwardList.h:
  • History/BackForwardList.mm:
  • History/WebBackForwardList.mm:

(+[WebBackForwardList initialize]):
(bumperCarBackForwardHackNeeded):

  • History/WebHistory.mm:

(-[WebHistoryPrivate addItem:discardDuplicate:]):
(-[WebHistory _sendNotification:entries:]):
(-[WebHistory loadFromURL:error:]):
(-[WebHistory saveToURL:error:]):

  • History/WebHistoryItem.mm:

(WKNotifyHistoryItemChanged):
(+[WebHistoryItem initialize]):
(-[WebHistoryItem initFromDictionaryRepresentation:]):

  • History/WebURLsWithTitles.m:
  • Misc/WebCache.mm:

(+[WebCache initialize]):

  • Misc/WebDownload.mm:

(-[WebDownloadInternal download:didReceiveAuthenticationChallenge:]):

  • Misc/WebElementDictionary.mm:

(+[WebElementDictionary initialize]):
(+[WebElementDictionary initializeLookupTable]):

  • Misc/WebIconDatabase.mm:
  • Misc/WebKitNSStringExtras.mm:

(+[NSString _webkit_localCacheDirectoryWithBundleIdentifier:]):

  • Misc/WebKitVersionChecks.h:
  • Misc/WebKitVersionChecks.mm:

(WebKitLinkedOnOrAfter):
(WebKitLinkTimeVersion):

  • Misc/WebLocalizableStrings.mm:
  • Misc/WebNSControlExtras.h:
  • Misc/WebNSControlExtras.m:
  • Misc/WebNSEventExtras.m:
  • Misc/WebNSFileManagerExtras.mm:
  • Misc/WebNSImageExtras.h:
  • Misc/WebNSImageExtras.m:
  • Misc/WebNSPasteboardExtras.mm:
  • Misc/WebNSPrintOperationExtras.h:
  • Misc/WebNSPrintOperationExtras.m:
  • Misc/WebNSViewExtras.m:
  • Misc/WebNSWindowExtras.m:
  • Panels/WebAuthenticationPanel.h:
  • Panels/WebAuthenticationPanel.m:
  • Panels/WebPanelAuthenticationHandler.m:
  • Plugins/Hosted/WebHostedNetscapePluginView.mm:

(+[WebHostedNetscapePluginView initialize]):

  • Plugins/WebBasePluginPackage.h:
  • Plugins/WebBasePluginPackage.mm:
  • Plugins/WebJavaPlugIn.h:
  • Plugins/WebPluginContainerCheck.mm:
  • Plugins/WebPluginController.h:
  • Plugins/WebPluginController.mm:

(-[WebPluginController plugInViewWithArguments:fromPluginPackage:]):
(-[WebPluginController addPlugin:]):
(-[WebPluginController destroyPlugin:]):
(-[WebPluginController destroyAllPlugins]):

  • Plugins/WebPluginDatabase.mm:

(+[WebPluginDatabase _defaultPlugInPaths]):

  • Plugins/WebPluginPackage.mm:

(-[WebPluginPackage initWithPath:]):

  • Storage/WebDatabaseManager.mm:

(-[WebDatabaseManager deleteAllDatabases]):

  • Storage/WebDatabaseManagerClient.h:
  • Storage/WebDatabaseManagerClient.mm:

(WebDatabaseManagerClient::WebDatabaseManagerClient):
(WebDatabaseManagerClient::~WebDatabaseManagerClient):

  • Storage/WebStorageManager.mm:

(-[WebStorageManager deleteAllOrigins]):
(WebKitInitializeStorageIfNecessary):

  • WebCoreSupport/WebAlternativeTextClient.h:
  • WebCoreSupport/WebApplicationCache.mm:

(applicationCacheBundleIdentifier):

  • WebCoreSupport/WebChromeClient.h:
  • WebCoreSupport/WebChromeClient.mm:

(WebChromeClient::setWindowRect):
(WebChromeClient::windowRect):
(WebChromeClient::takeFocus):
(WebChromeClient::addMessageToConsole):
(WebChromeClient::enableSuddenTermination):
(WebChromeClient::disableSuddenTermination):
(WebChromeClient::createPopupMenu const):
(WebChromeClient::createSearchPopupMenu const):
(WebChromeClient::shouldPaintEntireContents const):
(WebChromeClient::supportsVideoFullscreen):
(WebChromeClient::supportsFullScreenForElement):
(WebChromeClient::enterFullScreenForElement):
(WebChromeClient::exitFullScreenForElement):

  • WebCoreSupport/WebContextMenuClient.mm:
  • WebCoreSupport/WebDragClient.mm:
  • WebCoreSupport/WebEditorClient.h:
  • WebCoreSupport/WebEditorClient.mm:

(+[WebUndoStep initialize]):
(updateFontPanel):
(WebEditorClient::didBeginEditing):
(WebEditorClient::respondToChangedContents):
(WebEditorClient::respondToChangedSelection):
(WebEditorClient::canceledComposition):
(WebEditorClient::didEndEditing):
(WebEditorClient::didWriteSelectionToPasteboard):
(attributesForAttributedStringConversion):
(WebEditorClient::setInsertionPasteboard):
(WebEditorClient::registerUndoOrRedoStep):
(WebEditorClient::handleKeyboardEvent):
(WebEditorClient::handleInputMethodKeydown):
(WebEditorClient::textDidChangeInTextField):
(WebEditorClient::requestCheckingOfString):

  • WebCoreSupport/WebFrameLoaderClient.h:
  • WebCoreSupport/WebFrameLoaderClient.mm:

(WebFrameLoaderClient::detachedFromParent2):
(WebFrameLoaderClient::dispatchDidLoadResourceFromMemoryCache):
(WebFrameLoaderClient::assignIdentifierToInitialRequest):
(WebFrameLoaderClient::dispatchWillSendRequest):
(WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):
(WebFrameLoaderClient::dispatchDidReceiveResponse):
(WebFrameLoaderClient::willCacheResponse const):
(WebFrameLoaderClient::dispatchDidReceiveContentLength):
(WebFrameLoaderClient::dispatchDidFinishLoading):
(WebFrameLoaderClient::dispatchDidFailLoading):
(WebFrameLoaderClient::dispatchDidChangeLocationWithinPage):
(WebFrameLoaderClient::dispatchWillClose):
(WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
(WebFrameLoaderClient::dispatchDidCommitLoad):
(WebFrameLoaderClient::dispatchDidFailProvisionalLoad):
(WebFrameLoaderClient::dispatchDidFailLoad):
(WebFrameLoaderClient::dispatchDidFinishDocumentLoad):
(WebFrameLoaderClient::dispatchDidFinishLoad):
(WebFrameLoaderClient::dispatchDidReachLayoutMilestone):
(WebFrameLoaderClient::willChangeTitle):
(WebFrameLoaderClient::didChangeTitle):
(WebFrameLoaderClient::didReplaceMultipartContent):
(WebFrameLoaderClient::updateGlobalHistory):
(WebFrameLoaderClient::saveViewStateToItem):
(WebFrameLoaderClient::restoreViewState):
(WebFrameLoaderClient::provisionalLoadStarted):
(WebFrameLoaderClient::prepareForDataSourceReplacement):
(WebFrameLoaderClient::setTitle):
(WebFrameLoaderClient::savePlatformDataToCachedFrame):
(WebFrameLoaderClient::transitionToCommittedFromCachedFrame):
(WebFrameLoaderClient::transitionToCommittedForNewPage):
(WebFrameLoaderClient::didRestoreFromPageCache):
(WebFrameLoaderClient::actionDictionary const):
(WebFrameLoaderClient::createPlugin):
(WebFrameLoaderClient::getLoadDecisionForIcons):
(WebFrameLoaderClient::finishedLoadingIcon):
(+[WebFramePolicyListener initialize]):

  • WebCoreSupport/WebFrameNetworkingContext.mm:
  • WebCoreSupport/WebGeolocationClient.h:
  • WebCoreSupport/WebGeolocationClient.mm:

(WebGeolocationClient::requestPermission):

  • WebCoreSupport/WebInspectorClient.h:
  • WebCoreSupport/WebJavaScriptTextInputPanel.m:
  • WebCoreSupport/WebNotificationClient.mm:
  • WebCoreSupport/WebOpenPanelResultListener.mm:
  • WebCoreSupport/WebPlatformStrategies.h:
  • WebCoreSupport/WebPlatformStrategies.mm:
  • WebCoreSupport/WebProgressTrackerClient.h:
  • WebCoreSupport/WebProgressTrackerClient.mm:

(WebProgressTrackerClient::progressStarted):
(WebProgressTrackerClient::progressEstimateChanged):
(WebProgressTrackerClient::progressFinished):

  • WebCoreSupport/WebSecurityOrigin.mm:
  • WebInspector/WebNodeHighlight.h:
  • WebInspector/WebNodeHighlight.mm:

(-[WebNodeHighlight initWithTargetView:inspectorController:]):
(-[WebNodeHighlight dealloc]):
(-[WebNodeHighlight attach]):

  • WebInspector/WebNodeHighlightView.h:
  • WebInspector/WebNodeHighlightView.mm:

(-[WebNodeHighlightView initWithWebNodeHighlight:]):
(-[WebNodeHighlightView dealloc]):

  • WebInspector/WebNodeHighlighter.mm:

(-[WebNodeHighlighter highlight]):

  • WebView/WebArchive.mm:

(+[WebArchivePrivate initialize]):

  • WebView/WebClipView.h:
  • WebView/WebDataSource.mm:

(WebDataSourcePrivate::WebDataSourcePrivate):
(+[WebDataSource initialize]):
(+[WebDataSource _repTypesAllowImageTypeOmission:]):
(-[WebDataSource _makeRepresentation]):

  • WebView/WebDelegateImplementationCaching.h:
  • WebView/WebDelegateImplementationCaching.mm:

(CallDelegate):
(CallDelegateReturningFloat):
(CallDelegateReturningBoolean):
(CallUIDelegate):
(CallUIDelegateReturningFloat):
(CallUIDelegateReturningBoolean):
(CallFrameLoadDelegate):
(CallFrameLoadDelegateReturningBoolean):
(CallResourceLoadDelegate):
(CallScriptDebugDelegate):
(CallFormDelegate):
(CallFormDelegateReturningBoolean):

  • WebView/WebDeviceOrientation.mm:

(-[WebDeviceOrientation initWithCanProvideAlpha:alpha:canProvideBeta:beta:canProvideGamma:gamma:]):

  • WebView/WebDocumentInternal.h:
  • WebView/WebDocumentLoaderMac.mm:

(needsDataLoadWorkaround):

  • WebView/WebDynamicScrollBarsViewInternal.h:
  • WebView/WebFormDelegate.m:
  • WebView/WebFrame.mm:

(-[WebFrame _updateBackgroundAndUpdatesWhileOffscreen]):
(-[WebFrame _unmarkAllMisspellings]):
(-[WebFrame _paintBehaviorForDestinationContext:]):
(-[WebFrame _drawRect:contentsOnly:]):
(-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
(-[WebFrame _scrollDOMRangeToVisible:]):
(-[WebFrame _bodyBackgroundColor]):
(-[WebFrame accessibilityRoot]):
(needsMicrosoftMessengerDOMDocumentWorkaround):

  • WebView/WebFrameInternal.h:
  • WebView/WebFrameView.mm:

(-[WebFrameView _setDocumentView:]):
(+[WebFrameView _viewTypesAllowImageTypeOmission:]):
(-[WebFrameView _viewClassForMIMEType:]):
(-[WebFrameView initWithFrame:]):
(-[WebFrameView drawRect:]):
(-[WebFrameView _firstResponderIsFormControl]):
(-[WebFrameView keyDown:keyDown:]):
(-[WebFrameView _isScrollable]):

  • WebView/WebFullScreenController.h:
  • WebView/WebFullScreenController.mm:
  • WebView/WebHTMLRepresentation.mm:
  • WebView/WebHTMLView.mm:

(-[WebHTMLView hitTest:]):
(-[WebHTMLView initWithFrame:]):
(-[WebHTMLView dealloc]):
(-[WebHTMLView addSubview:]):
(-[WebHTMLView mouseDown:]):
(-[WebHTMLView mouseUp:]):
(-[WebHTMLView resignFirstResponder]):
(-[WebHTMLView accessibilityHitTest:]):
(-[WebHTMLView selectionImageForcingBlackText:selectionImageForcingBlackText:]):

  • WebView/WebHTMLViewInternal.h:
  • WebView/WebIndicateLayer.h:
  • WebView/WebIndicateLayer.mm:
  • WebView/WebMediaPlaybackTargetPicker.h:
  • WebView/WebMediaPlaybackTargetPicker.mm:
  • WebView/WebPDFDocumentExtras.h:
  • WebView/WebPDFDocumentExtras.mm:
  • WebView/WebPDFRepresentation.h:
  • WebView/WebPDFRepresentation.mm:
  • WebView/WebPDFView.h:
  • WebView/WebPreferences.mm:

(cacheModelForMainBundle):
(WebPreferencesPrivate::WebPreferencesPrivate):
(-[WebPreferences initWithIdentifier:sendChangeNotification:initWithIdentifier:]):
(-[WebPreferences encodeWithCoder:]):
(+[WebPreferences standardPreferences]):
(+[WebPreferences initialize]):
(-[WebPreferences _valueForKey:]):
(-[WebPreferences _setStringValue:forKey:]):
(-[WebPreferences _setIntegerValue:forKey:]):
(-[WebPreferences _setUnsignedIntValue:forKey:]):
(-[WebPreferences _setFloatValue:forKey:]):
(-[WebPreferences _setBoolValue:forKey:]):
(-[WebPreferences _setLongLongValue:forKey:]):
(-[WebPreferences _setUnsignedLongLongValue:forKey:]):
(-[WebPreferences _postCacheModelChangedNotification]):
(-[WebPreferences _postPreferencesChangedNotification]):
(+[WebPreferences _switchNetworkLoaderToNewTestingSession]):
(-[WebPreferences setStorageBlockingPolicy:]):

  • WebView/WebResource.mm:

(+[WebResourcePrivate initialize]):

  • WebView/WebTextCompletionController.h:
  • WebView/WebTextIterator.mm:

(+[WebTextIteratorPrivate initialize]):

  • WebView/WebView.mm:

(shouldEnableLoadDeferring):
(shouldRestrictWindowFocus):
(shouldRespectPriorityInCSSAttributeSetters):
(shouldUseLegacyBackgroundSizeShorthandBehavior):
(shouldAllowPictureInPictureMediaPlayback):
(shouldAllowContentSecurityPolicySourceStarToMatchAnyProtocol):
(shouldAllowWindowOpenWithoutUserGesture):
(shouldConvertInvalidURLsToBlank):
(shouldRequireUserGestureToLoadVideo):
(-[WebView _commonInitializationWithFrameName:groupName:]):
(+[WebView _viewClass:andRepresentationClass:forMIMEType:allowingPlugins:]):
(-[WebView _viewClass:andRepresentationClass:forMIMEType:]):
(-[WebView _closePluginDatabases]):
(-[WebView _closeWithFastTeardown]):
(-[WebView _close]):
(+[WebView _MIMETypeForFile:]):
(-[WebView setShowingInspectorIndication:]):
(-[WebView _setFormDelegate:]):
(-[WebView _needsPreHTML5ParserQuirks]):
(-[WebView _preferencesChangedNotification:]):
(-[WebView _preferencesChanged:]):
(-[WebView _cacheResourceLoadDelegateImplementations]):
(-[WebView _cacheFrameLoadDelegateImplementations]):
(-[WebView _policyDelegateForwarder]):
(-[WebView _UIDelegateForwarder]):
(-[WebView _editingDelegateForwarder]):
(-[WebView _updateActiveState]):
(-[_WebSafeForwarder forwardInvocation:]):
(+[WebView initialize]):
(-[WebView _pluginForMIMEType:]):
(-[WebView _pluginForExtension:]):
(-[WebView _isMIMETypeRegisteredAsPlugin:]):
(+[WebView canShowMIMETypeAsHTML:]):
(-[WebView _initWithArguments:]):
(-[WebView initWithFrame:frameName:groupName:]):
(-[WebView dealloc]):
(-[WebView close]):
(-[WebView viewDidMoveToWindow]):
(-[WebView setUIDelegate:]):
(-[WebView setResourceLoadDelegate:]):
(-[WebView setPolicyDelegate:]):
(-[WebView setFrameLoadDelegate:]):
(-[WebView goBack]):
(-[WebView goForward]):
(-[WebView stringByEvaluatingJavaScriptFromString:]):
(-[WebView setHostWindow:]):
(-[WebView becomeFirstResponder]):
(+[WebView _cacheModelChangedNotification:]):
(-[WebView _frameViewAtWindowPoint:]):
(+[WebView _preflightSpellCheckerNow:]):
(+[WebView _preflightSpellChecker]):
(-[WebView canGoBack]):
(-[WebView canGoForward]):
(-[WebView stopLoading:]):
(-[WebView reload:]):
(-[WebView setMainFrameDocumentReady:]):
(-[WebView _shouldChangeSelectedDOMRange:toDOMRange:affinity:stillSelecting:]):
(-[WebView setContinuousSpellCheckingEnabled:]):
(-[WebView undoManager]):
(-[WebView isAutomaticQuoteSubstitutionEnabled]):
(-[WebView isAutomaticLinkDetectionEnabled]):
(-[WebView isAutomaticDashSubstitutionEnabled]):
(-[WebView isAutomaticTextReplacementEnabled]):
(-[WebView isAutomaticSpellingCorrectionEnabled]):
(+[WebView _setCacheModel:]):
(-[WebView _retrieveKeyboardUIModeFromPreferences:]):
(-[WebView _keyboardUIMode]):
(LayerFlushController::flushLayers):
(-[WebView _scheduleCompositingLayerFlush]):
(-[WebView _enterVideoFullscreenForVideoElement:mode:]):
(-[WebView fullScreenPlaceholderView]):
(WebInstallMemoryPressureHandler):

  • WebView/WebViewData.h:
  • WebView/WebViewData.mm:

(+[WebViewPrivate initialize]):
(-[WebViewPrivate init]):
(-[WebViewPrivate dealloc]):

  • WebView/WebViewInternal.h:

Source/WTF:

  • wtf/Assertions.h:
  • wtf/FeatureDefines.h:
  • wtf/InlineASM.h:
  • wtf/MemoryPressureHandler.cpp:

(WTF::thresholdForPolicy):

  • wtf/Platform.h:
  • wtf/cocoa/MemoryPressureHandlerCocoa.mm:

(WTF::MemoryPressureHandler::install):
(WTF::MemoryPressureHandler::respondToMemoryPressure):

  • wtf/spi/cocoa/NSMapTableSPI.h:
  • wtf/spi/darwin/XPCSPI.h:
  • wtf/text/StringCommon.h:
  • wtf/text/TextBreakIterator.cpp:
  • wtf/text/TextBreakIterator.h:
  • wtf/unicode/icu/CollatorICU.cpp:

(WTF::copyDefaultLocale):

Tools:

  • DumpRenderTree/AccessibilityController.h:
  • DumpRenderTree/AccessibilityTextMarker.h:
  • DumpRenderTree/AccessibilityUIElement.cpp:

(AccessibilityUIElement::getJSClass):

  • DumpRenderTree/AccessibilityUIElement.h:
  • DumpRenderTree/DumpRenderTreeFileDraggingSource.h:
  • DumpRenderTree/TestRunner.cpp:

(getSecureEventInputIsEnabledCallback):
(TestRunner::staticFunctions):
(TestRunner::callUIScriptCallback):

  • DumpRenderTree/TestRunner.h:
  • DumpRenderTree/cg/PixelDumpSupportCG.cpp:
  • DumpRenderTree/ios/AccessibilityTextMarkerIOS.mm:
  • DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
  • DumpRenderTree/ios/DumpRenderTreeAppMain.mm:
  • DumpRenderTree/ios/DumpRenderTreeBrowserView.mm:
  • DumpRenderTree/ios/TextInputControllerIOS.m:
  • DumpRenderTree/ios/UIScriptControllerIOS.mm:
  • DumpRenderTree/mac/AppleScriptController.m:
  • DumpRenderTree/mac/DumpRenderTree.mm:

(createWebViewAndOffscreenWindow):
(destroyWebViewAndOffscreenWindow):
(resetWebPreferencesToConsistentValues):
(setDefaultsToConsistentValuesForTesting):
(allocateGlobalControllers):
(releaseGlobalControllers):
(addTestPluginsToPluginSearchPath):
(prepareConsistentTestingEnvironment):
(dumpRenderTree):
(DumpRenderTreeMain):
(dumpFrameAsPDF):
(dumpBackForwardListForAllWindows):
(updateDisplay):
(dump):
(resetWebViewToConsistentStateBeforeTesting):
(runTest):
(displayWebView):
(displayAndTrackRepaintsWebView):

  • DumpRenderTree/mac/DumpRenderTreeDraggingInfo.h:
  • DumpRenderTree/mac/DumpRenderTreeDraggingInfo.mm:
  • DumpRenderTree/mac/DumpRenderTreeMac.h:
  • DumpRenderTree/mac/DumpRenderTreePasteboard.h:
  • DumpRenderTree/mac/DumpRenderTreeWindow.h:
  • DumpRenderTree/mac/DumpRenderTreeWindow.mm:

(-[DumpRenderTreeWindow close]):
(-[DumpRenderTreeWindow webView]):
(-[DumpRenderTreeWindow webViewStartedAcceleratedCompositing:]):

  • DumpRenderTree/mac/EventSendingController.h:
  • DumpRenderTree/mac/EventSendingController.mm:

(+[EventSendingController isSelectorExcludedFromWebScript:]):
(+[EventSendingController webScriptNameForSelector:]):
(-[EventSendingController dealloc]):
(-[EventSendingController currentEventTime]):
(-[EventSendingController clearKillRing]):
(modifierFlags):
(-[EventSendingController mouseDown:withModifiers:]):
(-[EventSendingController scalePageBy:atX:andY:]):
(-[EventSendingController mouseUp:withModifiers:]):
(-[EventSendingController mouseMoveToX:Y:]):
(-[EventSendingController mouseScrollByX:andY:continuously:]):
(-[EventSendingController keyDown:withModifiers:withLocation:]):

  • DumpRenderTree/mac/FrameLoadDelegate.mm:

(-[FrameLoadDelegate init]):
(-[FrameLoadDelegate dealloc]):
(-[FrameLoadDelegate processWork:]):
(-[FrameLoadDelegate webView:didStartProvisionalLoadForFrame:]):
(-[FrameLoadDelegate webView:didCommitLoadForFrame:]):
(-[FrameLoadDelegate didClearWindowObjectInStandardWorldForFrame:]):

  • DumpRenderTree/mac/LayoutTestHelper.m:
  • DumpRenderTree/mac/MockGeolocationProvider.mm:

(-[MockGeolocationProvider timerFired]):

  • DumpRenderTree/mac/TestRunnerMac.mm:

(TestRunner::setMainFrameIsFirstResponder):
(TestRunner::setAutomaticLinkDetectionEnabled):
(TestRunner::setUseDashboardCompatibilityMode):
(TestRunner::isCommandEnabled):
(TestRunner::inspectorTestStubURL):
(TestRunner::apiTestNewWindowDataLoadBaseURL):
(TestRunner::abortModal):
(TestRunner::setTextDirection):
(TestRunner::addChromeInputField):
(TestRunner::removeChromeInputField):
(TestRunner::focusWebView):
(TestRunner::setBackingScaleFactor):
(TestRunner::imageCountInGeneralPasteboard const):

  • DumpRenderTree/mac/UIDelegate.h:
  • DumpRenderTree/mac/UIDelegate.mm:

(-[UIDelegate modalWindowWillClose:]):
(-[UIDelegate webViewRunModal:]):
(-[UIDelegate webView:supportsFullScreenForElement:withKeyboard:]):
(-[UIDelegate dealloc]):

  • Scripts/check-for-inappropriate-objc-class-names:
  • TestRunnerShared/UIScriptContext/UIScriptController.cpp:
  • TestRunnerShared/spi/UIKitTestSPI.h:
  • TestWebKitAPI/Tests/WTF/darwin/WeakLinking.cpp:
  • TestWebKitAPI/Tests/WebCore/MarkedText.cpp:

(WebCore::operator<<):

  • TestWebKitAPI/Tests/WebCore/cocoa/DatabaseTrackerTest.mm:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebCore/cocoa/WebCoreNSURLSession.mm:

(TestWebKitAPI::WebCoreNSURLSessionTest::SetUp):

  • TestWebKitAPI/Tests/WebCore/ios/PreviewLoader.cpp:
  • TestWebKitAPI/Tests/WebKit/NoHistoryItemScrollToFragment.mm:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit/WKPreferences.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKitCocoa/AdditionalReadAccessAllowedURLs.mm:
  • TestWebKitAPI/Tests/WebKitCocoa/AnimatedResize.mm:
  • TestWebKitAPI/Tests/WebKitCocoa/BundleEditingDelegate.mm:

(TEST):

  • TestWebKitAPI/Tests/WebKitCocoa/BundleRangeHandle.mm:

(TEST):

  • TestWebKitAPI/Tests/WebKitCocoa/BundleRangeHandlePlugIn.mm:

(-[BundleRangeHandlePlugIn webProcessPlugInBrowserContextController:didFinishDocumentLoadForFrame:]):

  • TestWebKitAPI/Tests/WebKitCocoa/Coding.mm:

(TEST):

  • TestWebKitAPI/Tests/WebKitCocoa/CopyHTML.mm:
  • TestWebKitAPI/Tests/WebKitCocoa/CopyURL.mm:

(createWebViewWithCustomPasteboardDataEnabled):

  • TestWebKitAPI/Tests/WebKitCocoa/Copying.mm:

(TEST):

  • TestWebKitAPI/Tests/WebKitCocoa/DataDetection.mm:
  • TestWebKitAPI/Tests/WebKitCocoa/DoAfterNextPresentationUpdateAfterCrash.mm:
  • TestWebKitAPI/Tests/WebKitCocoa/EditorStateTests.mm:
  • TestWebKitAPI/Tests/WebKitCocoa/ExitFullscreenOnEnterPiP.mm:
  • TestWebKitAPI/Tests/WebKitCocoa/FindInPage.mm:
  • TestWebKitAPI/Tests/WebKitCocoa/FixedLayoutSize.mm:
  • TestWebKitAPI/Tests/WebKitCocoa/FontAttributes.mm:
  • TestWebKitAPI/Tests/WebKitCocoa/Geolocation.mm:
  • TestWebKitAPI/Tests/WebKitCocoa/InteractionDeadlockAfterCrash.mm:
  • TestWebKitAPI/Tests/WebKitCocoa/LocalStorageClear.mm:

(defaultWebsiteCacheDirectory):
(defaultApplicationCacheDirectory):
(TEST):

  • TestWebKitAPI/Tests/WebKitCocoa/NSFileManagerExtras.mm:
  • TestWebKitAPI/Tests/WebKitCocoa/NowPlaying.mm:
  • TestWebKitAPI/Tests/WebKitCocoa/NowPlayingControlsTests.mm:
  • TestWebKitAPI/Tests/WebKitCocoa/PasteHTML.mm:
  • TestWebKitAPI/Tests/WebKitCocoa/PasteImage.mm:
  • TestWebKitAPI/Tests/WebKitCocoa/PasteMixedContent.mm:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKitCocoa/PasteRTFD.mm:
  • TestWebKitAPI/Tests/WebKitCocoa/QuickLook.mm:
  • TestWebKitAPI/Tests/WebKitCocoa/RenderedImageWithOptions.mm:

(runTestWithWidth):

  • TestWebKitAPI/Tests/WebKitCocoa/RenderedImageWithOptionsPlugIn.mm:

(-[RenderedImageWithOptionsPlugIn renderImageWithWidth:completionHandler:]):

  • TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
  • TestWebKitAPI/Tests/WebKitCocoa/ShrinkToFit.mm:
  • TestWebKitAPI/Tests/WebKitCocoa/UserContentController.mm:
  • TestWebKitAPI/Tests/WebKitCocoa/VisibleContentRect.mm:
  • TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:

(platformCopyRichTextWithMultipleAttachments):
(platformCopyRichTextWithImage):
(platformCopyPNG):

  • TestWebKitAPI/Tests/WebKitCocoa/WKContentViewEditingActions.mm:
  • TestWebKitAPI/Tests/WebKitCocoa/WKContentViewTargetForAction.mm:
  • TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
  • TestWebKitAPI/Tests/WebKitCocoa/WKPDFViewStablePresentationUpdateCallback.mm:
  • TestWebKitAPI/Tests/WebKitCocoa/WKRequestActivatedElementInfo.mm:
  • TestWebKitAPI/Tests/WebKitCocoa/WKURLSchemeHandler-leaks.mm:
  • TestWebKitAPI/Tests/WebKitCocoa/WKWebViewSnapshot.mm:

(TEST):

  • TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:

(TEST):

  • TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:

(TEST):

  • TestWebKitAPI/Tests/WebKitCocoa/_WKInputDelegate.mm:
  • TestWebKitAPI/Tests/WebKitLegacy/ios/AudioSessionCategoryIOS.mm:
  • TestWebKitAPI/Tests/WebKitLegacy/ios/SnapshotViaRenderInContext.mm:
  • TestWebKitAPI/Tests/WebKitLegacy/mac/AccessingPastedImage.mm:
  • TestWebKitAPI/Tests/ios/AccessibilityTestsIOS.mm:
  • TestWebKitAPI/Tests/ios/ActionSheetTests.mm:
  • TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
  • TestWebKitAPI/Tests/ios/FocusPreservationTests.mm:
  • TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
  • TestWebKitAPI/Tests/ios/RenderingProgressTests.mm:
  • TestWebKitAPI/Tests/ios/ScrollViewInsetTests.mm:
  • TestWebKitAPI/Tests/ios/SetTimeoutFunction.mm:
  • TestWebKitAPI/Tests/ios/SynchronousTimeoutTests.mm:
  • TestWebKitAPI/Tests/ios/TestInputDelegate.h:
  • TestWebKitAPI/Tests/ios/TestInputDelegate.mm:
  • TestWebKitAPI/Tests/ios/TextAutosizingBoost.mm:
  • TestWebKitAPI/Tests/ios/UIPasteboardTests.mm:
  • TestWebKitAPI/Tests/ios/WKScrollViewDelegate.mm:
  • TestWebKitAPI/Tests/ios/WKScrollViewTests.mm:
  • TestWebKitAPI/Tests/ios/WKWebViewAutofillTests.mm:
  • TestWebKitAPI/Tests/ios/WKWebViewEditActions.mm:
  • TestWebKitAPI/cocoa/DragAndDropSimulator.h:
  • TestWebKitAPI/cocoa/TestNavigationDelegate.mm:

(-[WKWebView _test_waitForDidFinishNavigation]):

  • TestWebKitAPI/cocoa/TestWKWebView.h:
  • TestWebKitAPI/cocoa/TestWKWebView.mm:
  • TestWebKitAPI/config.h:
  • TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
  • TestWebKitAPI/ios/TestWKWebViewController.h:
  • TestWebKitAPI/ios/TestWKWebViewController.mm:
  • TestWebKitAPI/ios/UIKitSPI.h:
  • WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
  • WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:

(WTR::InjectedBundle::beginTesting):

  • WebKitTestRunner/InjectedBundle/mac/TestRunnerMac.mm:

(WTR::TestRunner::inspectorTestStubURL):

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::webProcessName):
(WTR::TestController::networkProcessName):

  • WebKitTestRunner/TestInvocation.cpp:

(WTR::TestInvocation::invoke):
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):

  • WebKitTestRunner/cg/TestInvocationCG.cpp:
  • WebKitTestRunner/cocoa/TestControllerCocoa.mm:

(WTR::initializeWebViewConfiguration):
(WTR::TestController::platformCreateWebView):
(WTR::TestController::imageCountInGeneralPasteboard const):
(WTR::TestController::addTestKeyToKeychain):
(WTR::TestController::cleanUpKeychain):
(WTR::TestController::keyExistsInKeychain):

  • WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
  • WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
  • WebKitTestRunner/ios/UIScriptControllerIOS.mm:
2:30 PM Changeset in webkit [237265] by pvollan@apple.com
  • 5 edits in trunk/Source/WebCore

[WebVTT] The TextTrackLoader parameter in TextTrackLoaderClient virtual methods should be a reference
https://bugs.webkit.org/show_bug.cgi?id=190730

Reviewed by Chris Dumez.

No new tests. No change in behavior.

  • html/track/LoadableTextTrack.cpp:

(WebCore::LoadableTextTrack::newCuesAvailable):
(WebCore::LoadableTextTrack::cueLoadingCompleted):
(WebCore::LoadableTextTrack::newRegionsAvailable):

  • html/track/LoadableTextTrack.h:
  • loader/TextTrackLoader.cpp:

(WebCore::TextTrackLoader::cueLoadTimerFired):
(WebCore::TextTrackLoader::newRegionsParsed):

  • loader/TextTrackLoader.h:
2:16 PM Changeset in webkit [237264] by achristensen@apple.com
  • 28 edits in trunk/Source

Clean up FrameLoader two-state enums
https://bugs.webkit.org/show_bug.cgi?id=190731

Reviewed by Chris Dumez.

Source/WebCore:

This patch does three things:

  1. Add an overload to EnumTraits so we do not need to list out the valid values of boolean enum classes.

The valid values are always 0 and 1. This is used when decoding from IPC.

  1. Add a 2-state enum class for NewLoadInProgress instad of a bool so we can understand the code better.
  2. Begin passing LockBackForwardList to the UIProcess. We will need it soon for PSON.
  • history/CachedFrame.h:
  • loader/EmptyFrameLoaderClient.h:
  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::provisionalLoadStarted):
(WebCore::FrameLoader::loadWithDocumentLoader):
(WebCore::FrameLoader::commitProvisionalLoad):
(WebCore::FrameLoader::clientRedirectCancelledOrFinished):
(WebCore::FrameLoader::clientRedirected):
(WebCore::FrameLoader::receivedMainResourceError):
(WebCore::FrameLoader::continueLoadAfterNavigationPolicy):

  • loader/FrameLoader.h:
  • loader/FrameLoaderClient.h:
  • loader/FrameLoaderTypes.h:
  • loader/NavigationScheduler.cpp:

(WebCore::ScheduledNavigation::didStopTimer):
(WebCore::NavigationScheduler::cancel):

  • loader/NavigationScheduler.h:
  • platform/network/StoredCredentialsPolicy.h:

Source/WebKit:

  • NetworkProcess/NetworkProcess.h:
  • NetworkProcess/NetworkProcess.messages.in:
  • Shared/WebCoreArgumentCoders.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::willPerformClientRedirectForFrame):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::dispatchWillPerformClientRedirect):

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.h:

Source/WebKitLegacy/mac:

  • WebCoreSupport/WebFrameLoaderClient.h:
  • WebCoreSupport/WebFrameLoaderClient.mm:

(WebFrameLoaderClient::dispatchWillPerformClientRedirect):

Source/WebKitLegacy/win:

  • WebCoreSupport/WebFrameLoaderClient.cpp:

(WebFrameLoaderClient::dispatchWillPerformClientRedirect):

  • WebCoreSupport/WebFrameLoaderClient.h:

Source/WTF:

  • wtf/EnumTraits.h:

(WTF::isValidEnum):

2:11 PM Changeset in webkit [237263] by sbarati@apple.com
  • 1 edit
    409 adds in trunk/PerformanceTests

Make JetStream 2
https://bugs.webkit.org/show_bug.cgi?id=187829

Rubber-stamped by Mark Lam.

This patch checks in the new JetStream 2 benchmark. JetStream 2 is
a new JavaScript and Web Assembly benchmark. JetStream 2's goal
is to measure the startup, worst case, and peak throughput performance
of the JavaScript engine. JetStream 2 incorporates these previous
benchmarks:

  • JetStream
  • ARES-6
  • Kraken
  • Web Tooling Benchmark
  • WasmBench
  • RexBench


JetStream 2 also adds some new benchmarks:

  • Two tests emphasizing web worker performance.
  • One test emphasizing Promise, async iteration, and DataView performance.
  • Two new code load tests.
  • WSL: a test measuring all kinds of things, especially emphasizing exception performance.
  • JetStream2: Added.
1:02 PM Changeset in webkit [237262] by wenson_hsieh@apple.com
  • 7 edits in trunk/Source/WebCore

[GTK] fast/css/pseudo-visited-background-color-on-input.html is failing since r237425
https://bugs.webkit.org/show_bug.cgi?id=190712

Reviewed by Tim Horton.

Ensure that color inputs are enabled by default on GTK, and that color inputs have a -webkit-appearance of
color-well by default. Fixes fast/css/pseudo-visited-background-color-on-input.html on GTK.

  • page/RuntimeEnabledFeatures.cpp:

(WebCore::RuntimeEnabledFeatures::RuntimeEnabledFeatures):

  • rendering/RenderTheme.cpp:

(WebCore::RenderTheme::colorInputStyleSheet const):

  • rendering/RenderTheme.h:

(WebCore::RenderTheme::platformUsesColorWellAppearance const):
(WebCore::RenderTheme::platformColorInputStyleSheet const): Deleted.

Replace this with a platform hook that determines whether we want to use -webkit-appearance: color-well; by
default for inputs of type color. For now, only iOS overrides this to return false; in the future, we should
support -webkit-appearance: color-well; on iOS, and remove this platform hook entirely.

  • rendering/RenderThemeIOS.h:
  • rendering/RenderThemeMac.h:
  • rendering/RenderThemeMac.mm:

(WebCore::RenderThemeMac::platformColorInputStyleSheet const): Deleted.

11:15 AM Changeset in webkit [237261] by youenn@apple.com
  • 21 edits in trunk

Handle MDNS resolution of candidates through libwebrtc directly
https://bugs.webkit.org/show_bug.cgi?id=190681

Reviewed by Eric Carlson.

Source/ThirdParty/libwebrtc:

  • Configurations/libwebrtc.iOS.exp:
  • Configurations/libwebrtc.iOSsim.exp:
  • Configurations/libwebrtc.mac.exp:

Source/WebCore:

Remove the previous MDNS resolution mechanism.
Instead, add support for the AsyncResolver mechanism added to libwebrtc.
Covered by current mdns webrtc test that is unflaked.

  • Modules/mediastream/PeerConnectionBackend.cpp:

(WebCore::PeerConnectionBackend::addIceCandidate):

  • platform/mediastream/libwebrtc/LibWebRTCProvider.cpp:

(WebCore::LibWebRTCProvider::createPeerConnection):

  • platform/mediastream/libwebrtc/LibWebRTCProvider.h:
  • testing/MockLibWebRTCPeerConnection.cpp:

(WebCore::MockLibWebRTCPeerConnectionFactory::CreatePeerConnection):

  • testing/MockLibWebRTCPeerConnection.h:

Source/WebKit:

Add support for AsyncResolver to resolve MDNS.
This basically reuse the code path used to resolve STUN server addresses.
Removed MDNS specific resolution.
Use existing CFHost resolution mechanism to do the actual resolution.

  • NetworkProcess/webrtc/NetworkMDNSRegister.cpp:

(WebKit::NetworkMDNSRegister::registerMDNSName):

  • NetworkProcess/webrtc/NetworkMDNSRegister.messages.in:
  • WebProcess/Network/webrtc/LibWebRTCProvider.cpp:

(WebKit::LibWebRTCProvider::createPeerConnection):

  • WebProcess/Network/webrtc/LibWebRTCProvider.h:
  • WebProcess/Network/webrtc/LibWebRTCSocketFactory.h:
  • WebProcess/Network/webrtc/WebMDNSRegister.cpp:
  • WebProcess/Network/webrtc/WebMDNSRegister.h:
  • WebProcess/Network/webrtc/WebMDNSRegister.messages.in:

LayoutTests:

Test should no longer be flaky as we no longer enforce a timer for resolving MDNS candidates.

10:33 AM Changeset in webkit [237260] by achristensen@apple.com
  • 3 edits in trunk/Source/WebKitLegacy/mac

Unreviewed, rolling out r237137.

SPI is actually used

Reverted changeset:

"Remove unused WebFrame._loadType"
https://bugs.webkit.org/show_bug.cgi?id=190583
https://trac.webkit.org/changeset/237137

10:31 AM Changeset in webkit [237259] by Ross Kirsling
  • 5 edits in trunk

delete expression should not throw without a reference
https://bugs.webkit.org/show_bug.cgi?id=190637

Reviewed by Yusuke Suzuki.

Source/JavaScriptCore:

  • parser/Parser.cpp:

(JSC::Parser<LexerType>::parseUnaryExpression):
Eliminate non-spec-compliant switch case.

LayoutTests:

  • js/basic-strict-mode-expected.txt:
  • js/script-tests/basic-strict-mode.js:

Update test cases.

10:11 AM Changeset in webkit [237258] by wenson_hsieh@apple.com
  • 2 edits
    1 move
    1 add
    2 deletes in trunk/LayoutTests

[GTK] fast/selectors/read-only-read-write-input-basics.html failing since r237245
https://bugs.webkit.org/show_bug.cgi?id=190711

Unreviewed test gardening.

Adjust layout test baselines after r237245. Make fast/selectors/read-only-read-write-input-basics-expected.txt
contain PASS expectations for color inputs, and remove port-specific iOS/macOS WebKit2 expectations. Since color
inputs are disabled in legacy WebKit, move the layout test expectation in platform/mac to platform/mac-wk1.

  • fast/selectors/read-only-read-write-input-basics-expected.txt:
  • platform/ios-wk2/fast/selectors/read-only-read-write-input-basics-expected.txt: Removed.
  • platform/mac-wk2/fast/selectors/read-only-read-write-input-basics-expected.txt: Removed.
8:33 AM Changeset in webkit [237257] by Chris Dumez
  • 11 edits in trunk

[PSON] Cap number of SuspendedPageProxy objects and allow a WebPageProxy to have more than one
https://bugs.webkit.org/show_bug.cgi?id=190688
<rdar://problem/45354095>

Reviewed by Antti Koivisto.

Source/WebKit:

Cap number of SuspendedPageProxy objects to 3 to avoid accumulating too many "suspended" processes.

Also allow a WebPageProxy to have more than one SuspendedPageProxy so that PageCache now works for
more than 1 history navigation (up to 3 with the suspended page limit in this patch).

The following cleanup / refactoring was made to support this:

  • The SuspendedPageProxy objects are now owned by the WebProcessPool instead of the WebPageProxy. The WebProcessPool is in charge of limiting the number of SuspendedPageProxy objects by dropping the oldest one whenever a WebPageProxy tries to add a new one and we've already reached the limit.
  • WebProcessProxy no longer needs to know anything about suspended pages, which simplifies the code quite a bit. Instead, the SuspendedPageProxy objects now register themselves as IPC::MessageReceivers with their WebProcessProxy. The SuspendedPageProxy also take care of calling maybeShutdown() on their WebProcessProxy when they get destroyed.
  • UIProcess/SuspendedPageProxy.cpp:

(WebKit::SuspendedPageProxy::~SuspendedPageProxy):
(WebKit::SuspendedPageProxy::tearDownDrawingAreaInWebProcess):
(WebKit::SuspendedPageProxy::unsuspend):
(WebKit::SuspendedPageProxy::didFinishLoad):
(WebKit::SuspendedPageProxy::didReceiveSyncMessage):

  • UIProcess/SuspendedPageProxy.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::suspendCurrentPageIfPossible):
(WebKit::WebPageProxy::swapToWebProcess):
(WebKit::WebPageProxy::close):
(WebKit::WebPageProxy::continueNavigationInNewProcess):
(WebKit::WebPageProxy::didCompletePageTransition):
(WebKit::WebPageProxy::enterAcceleratedCompositingMode):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebProcessPool.cpp:

(WebKit::WebProcessPool::disconnectProcess):
(WebKit::WebProcessPool::processForNavigationInternal):
(WebKit::WebProcessPool::addSuspendedPageProxy):
(WebKit::WebProcessPool::removeAllSuspendedPageProxiesForPage):
(WebKit::WebProcessPool::takeSuspendedPageProxy):
(WebKit::WebProcessPool::hasSuspendedPageProxyFor):

  • UIProcess/WebProcessPool.h:
  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::didReceiveMessage):
(WebKit::WebProcessProxy::processDidTerminateOrFailedToLaunch):
(WebKit::WebProcessProxy::canTerminateChildProcess):
(WebKit::WebProcessProxy::requestTermination):

  • UIProcess/WebProcessProxy.h:

Tools:

Extended API test coverage to confirm that:

  • We do not accumulate more than 3 suspended processes.
  • We can navigate back 3 times and use the page cache for each of these loads.
  • TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
8:19 AM Changeset in webkit [237256] by magomez@igalia.com
  • 2 edits
    2 adds in trunk/LayoutTests

Unreviewed GTK+ gardening after r237249.

  • platform/gtk/TestExpectations:
  • platform/gtk/fast/forms/fieldset/fieldset-elements-htmlcollection-expected.txt: Added.
6:50 AM Changeset in webkit [237255] by ajuma@chromium.org
  • 27 edits in trunk/Source/WebCore

[IntersectionObserver] Factor out rect mapping and clipping logic from computeRectForRepaint
https://bugs.webkit.org/show_bug.cgi?id=189833

Reviewed by Simon Fraser.

Factor out the rect mapping and clipping logic from computeRectForRepaint to a new
computeVisibleRectInContainer method that computeRectForRepaint now calls. Make
computeVisibleRectInContainer take a VisibleRectContext with options to use
edge-inclusive intersection and to apply all clips and scrolls rather than only
the clips and scrolls that are currently applied by the repaint logic. These
options will be used by IntersectionObserver in a future patch.

No new tests, no change in behavior.

  • platform/graphics/FloatRect.cpp:

(WebCore::FloatRect::edgeInclusiveIntersect):

  • platform/graphics/FloatRect.h:
  • platform/graphics/LayoutRect.cpp:

(WebCore::LayoutRect::edgeInclusiveIntersect):

  • platform/graphics/LayoutRect.h:
  • rendering/RenderBox.cpp:

(WebCore::RenderBox::applyCachedClipAndScrollPosition const):
(WebCore::RenderBox::computeVisibleRectUsingPaintOffset const):
(WebCore::RenderBox::computeVisibleRectInContainer const):
(WebCore::RenderBox::applyCachedClipAndScrollPositionForRepaint const): Deleted.
(WebCore::RenderBox::shouldApplyClipAndScrollPositionForRepaint const): Deleted.
The iOS-specific logic in this method has moved to RenderObject::shouldApplyCompositedContainerScrollsForRepaint.
(WebCore::RenderBox::computeRectForRepaint const): Deleted.

  • rendering/RenderBox.h:

(WebCore::RenderBox::computeRectForRepaint): Deleted.

  • rendering/RenderInline.cpp:

(WebCore::RenderInline::clippedOverflowRectForRepaint const):
(WebCore::RenderInline::computeVisibleRectUsingPaintOffset const):
(WebCore::RenderInline::computeVisibleRectInContainer const):
(WebCore::RenderInline::computeRectForRepaint const): Deleted.

  • rendering/RenderInline.h:

(WebCore::RenderInline::computeRectForRepaint): Deleted.

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::shouldApplyCompositedContainerScrollsForRepaint):
(WebCore::RenderObject::visibleRectContextForRepaint):
(WebCore::RenderObject::computeRectForRepaint const):
(WebCore::RenderObject::computeFloatRectForRepaint const):
(WebCore::RenderObject::computeVisibleRectInContainer const):
(WebCore::RenderObject::computeFloatVisibleRectInContainer const):

  • rendering/RenderObject.h:

(WebCore::RenderObject::computeAbsoluteRepaintRect const):
(WebCore::RenderObject::VisibleRectContext::VisibleRectContext):
(WebCore::RenderObject::RepaintContext::RepaintContext): Deleted.
(WebCore::RenderObject::computeRectForRepaint): Deleted.

  • rendering/RenderTableCell.cpp:

(WebCore::RenderTableCell::computeVisibleRectInContainer const):
(WebCore::RenderTableCell::computeRectForRepaint const): Deleted.

  • rendering/RenderTableCell.h:
  • rendering/RenderView.cpp:

(WebCore::RenderView::computeVisibleRectInContainer const):
(WebCore::RenderView::computeRectForRepaint const): Deleted.

  • rendering/RenderView.h:
  • rendering/svg/RenderSVGForeignObject.cpp:

(WebCore::RenderSVGForeignObject::computeFloatVisibleRectInContainer const):
(WebCore::RenderSVGForeignObject::computeVisibleRectInContainer const):
(WebCore::RenderSVGForeignObject::computeFloatRectForRepaint const): Deleted.
(WebCore::RenderSVGForeignObject::computeRectForRepaint const): Deleted.

  • rendering/svg/RenderSVGForeignObject.h:
  • rendering/svg/RenderSVGInline.cpp:

(WebCore::RenderSVGInline::computeFloatVisibleRectInContainer const):
(WebCore::RenderSVGInline::computeFloatRectForRepaint const): Deleted.

  • rendering/svg/RenderSVGInline.h:
  • rendering/svg/RenderSVGModelObject.cpp:

(WebCore::RenderSVGModelObject::computeFloatVisibleRectInContainer const):
(WebCore::RenderSVGModelObject::computeFloatRectForRepaint const): Deleted.

  • rendering/svg/RenderSVGModelObject.h:
  • rendering/svg/RenderSVGRoot.cpp:

(WebCore::RenderSVGRoot::computeFloatVisibleRectInContainer const):
(WebCore::RenderSVGRoot::computeFloatRectForRepaint const): Deleted.

  • rendering/svg/RenderSVGRoot.h:
  • rendering/svg/RenderSVGText.cpp:

(WebCore::RenderSVGText::computeVisibleRectInContainer const):
(WebCore::RenderSVGText::computeFloatVisibleRectInContainer const):
(WebCore::RenderSVGText::computeRectForRepaint const): Deleted.
(WebCore::RenderSVGText::computeFloatRectForRepaint const): Deleted.

  • rendering/svg/RenderSVGText.h:
  • rendering/svg/SVGRenderSupport.cpp:

(WebCore::SVGRenderSupport::clippedOverflowRectForRepaint):
(WebCore::SVGRenderSupport::computeFloatVisibleRectInContainer):
(WebCore::SVGRenderSupport::computeFloatRectForRepaint): Deleted.

  • rendering/svg/SVGRenderSupport.h:
6:04 AM Changeset in webkit [237254] by yusukesuzuki@slowstart.org
  • 27 edits
    2 adds in trunk

[JSC] JSC should have "parseFunction" to optimize Function constructor
https://bugs.webkit.org/show_bug.cgi?id=190340

Reviewed by Mark Lam.

JSTests:

This patch fixes the line number of syntax errors raised by the Function constructor,
since we now parse the final code only once. And we no longer use block statement
for Function constructor's parsing.

  • ChakraCore/test/Function/FuncBodyES5.baseline-jsc:
  • stress/function-cache-with-parameters-end-position.js: Added.

(shouldBe):
(shouldThrow):
(i.anonymous):

  • stress/function-constructor-name.js: Added.

(shouldBe):
(GeneratorFunction):
(AsyncFunction.async):
(AsyncGeneratorFunction.async):
(anonymous):
(async.anonymous):

  • test262/expectations.yaml:

LayoutTests/imported/w3c:

  • web-platform-tests/html/webappapis/scripting/events/inline-event-handler-ordering-expected.txt:
  • web-platform-tests/html/webappapis/scripting/events/invalid-uncompiled-raw-handler-compiled-late-expected.txt:
  • web-platform-tests/html/webappapis/scripting/processing-model-2/compile-error-in-attribute-expected.txt:
  • web-platform-tests/html/webappapis/scripting/processing-model-2/compile-error-in-body-onerror-expected.txt:

Source/JavaScriptCore:

The current Function constructor is suboptimal. We parse the piece of the same code three times to meet
the spec requirement. (1) check parameters syntax, (2) check body syntax, and (3) parse the entire function.
And to parse 1-3 correctly, we create two strings, the parameters and the entire function. This operation
is really costly and ideally we should meet the above requirement by the one time parsing.

To meet the above requirement, we add a special function for Parser, parseSingleFunction. This function
takes std::optional<int> functionConstructorParametersEndPosition and check this end position is correct in the parser.
For example, if we run the code,

Function('/*', '*/){')

According to the spec, this should produce '/*' parameter string and '*/){' body string. And parameter
string should be syntax-checked by the parser, and raise the error since it is incorrect. Instead of doing
that, in our implementation, we first create the entire string.

function anonymous(/*) {

*/){

}

And we parse it. At that time, we also pass the end position of the parameters to the parser. In the above case,
the position of the `function anonymous(/*)' <> is passed. And in the parser, we check that the last token
offset of the parameters is the given end position. This check allows us to raise the error correctly to the
above example while we parse the entire function only once. And we do not need to create two strings too.

This improves the performance of the Function constructor significantly. And web-tooling-benchmark/uglify-js is
significantly sped up (28.2%).

Before:

uglify-js: 2.94 runs/s

After:

uglify-js: 3.77 runs/s

  • bytecode/UnlinkedFunctionExecutable.cpp:

(JSC::UnlinkedFunctionExecutable::fromGlobalCode):

  • bytecode/UnlinkedFunctionExecutable.h:
  • parser/Parser.cpp:

(JSC::Parser<LexerType>::parseInner):
(JSC::Parser<LexerType>::parseSingleFunction):
(JSC::Parser<LexerType>::parseFunctionInfo):
(JSC::Parser<LexerType>::parseFunctionDeclaration):
(JSC::Parser<LexerType>::parseAsyncFunctionDeclaration):

  • parser/Parser.h:

(JSC::Parser<LexerType>::parse):
(JSC::parse):
(JSC::parseFunctionForFunctionConstructor):

  • parser/ParserModes.h:
  • parser/ParserTokens.h:

(JSC::JSTextPosition::JSTextPosition):
(JSC::JSTokenLocation::JSTokenLocation): Deleted.

  • parser/SourceCodeKey.h:

(JSC::SourceCodeKey::SourceCodeKey):
(JSC::SourceCodeKey::operator== const):

  • runtime/CodeCache.cpp:

(JSC::CodeCache::getUnlinkedGlobalCodeBlock):
(JSC::CodeCache::getUnlinkedGlobalFunctionExecutable):

  • runtime/CodeCache.h:
  • runtime/FunctionConstructor.cpp:

(JSC::constructFunctionSkippingEvalEnabledCheck):

  • runtime/FunctionExecutable.cpp:

(JSC::FunctionExecutable::fromGlobalCode):

  • runtime/FunctionExecutable.h:

LayoutTests:

  • fast/dom/attribute-event-listener-errors-expected.txt:
  • fast/events/attribute-listener-deletion-crash-expected.txt:
  • fast/events/window-onerror-syntax-error-in-attr-expected.txt:
  • js/dom/invalid-syntax-for-function-expected.txt:
  • js/dom/script-start-end-locations-expected.txt:
4:22 AM Changeset in webkit [237253] by commit-queue@webkit.org
  • 21 edits
    2 deletes in trunk

Unreviewed, rolling out r237242.
https://bugs.webkit.org/show_bug.cgi?id=190701

it breaks "stress/sampling-profiler-basic.js" (Requested by
caiolima on #webkit).

Reverted changeset:

"[BigInt] Add ValueSub into DFG"
https://bugs.webkit.org/show_bug.cgi?id=186176
https://trac.webkit.org/changeset/237242

2:25 AM Changeset in webkit [237252] by bshafiei@apple.com
  • 4 edits
    1 add in branches/safari-606-branch

Cherry-pick r237129. rdar://problem/45285646

JSArray::shiftCountWithArrayStorage is wrong when an array has holes
https://bugs.webkit.org/show_bug.cgi?id=190262
<rdar://problem/44986241>

Reviewed by Mark Lam.

JSTests:

  • stress/array-prototype-concat-of-long-spliced-arrays.js: (test):
  • stress/slice-array-storage-with-holes.js: Added. (main):

Source/JavaScriptCore:

We would take the fast path for shiftCountWithArrayStorage when the array
hasHoles(). However, the code for this was wrong. It'd incorrectly update
ArrayStorage::m_numValuesInVector. Since the hasHoles() for ArrayStorage
path is never taken in JetStream 2, this patch just removes that from
the fast path. Instead, we just fallback to the slow path when hasHoles().
If we find evidence that this matters for real use cases, we can
figure out a way to make the fast path work.

  • runtime/JSArray.cpp: (JSC::JSArray::shiftCountWithArrayStorage):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@237129 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2:25 AM Changeset in webkit [237251] by bshafiei@apple.com
  • 2 edits in branches/safari-606-branch/Source/WebCore

Cherry-pick r237081. rdar://problem/45285441

WebAVSampleBufferErrorListener's parent should be a WeakPtr.
https://bugs.webkit.org/show_bug.cgi?id=190524
<rdar://problem/44359307>

Reviewed by Eric Carlson.

Once WebAVSampleBufferErrorListener's parent is a WeakPtr, we no longer need to pass
protectedSelf into the callOnMainThread lambdas; we can pass in the parent itself.

  • platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm: (-[WebAVSampleBufferErrorListener initWithParent:]): (-[WebAVSampleBufferErrorListener observeValueForKeyPath:ofObject:change:context:]): (-[WebAVSampleBufferErrorListener layerFailedToDecode:]): (WebCore::SourceBufferPrivateAVFObjC::SourceBufferPrivateAVFObjC): (WebCore::SourceBufferPrivateAVFObjC::destroyRenderers):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@237081 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2:25 AM Changeset in webkit [237250] by bshafiei@apple.com
  • 5 edits in branches/safari-606-branch

Cherry-pick r236820. rdar://problem/45285653

[WebCrypto] ECDSA could not deal with invalid signature inputs
https://bugs.webkit.org/show_bug.cgi?id=189879
<rdar://problem/44701276>

Reviewed by Brent Fulgham.

Source/WebCore:

Add some guards over detections of the start positions of r/s.

Covered by improved existing tests.

  • crypto/mac/CryptoAlgorithmECDSAMac.cpp: (WebCore::verifyECDSA):

LayoutTests:

  • crypto/subtle/ecdsa-verify-malformed-parameters-expected.txt:
  • crypto/subtle/ecdsa-verify-malformed-parameters.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@236820 268f45cc-cd09-0410-ab3c-d52691b4dbfc

1:25 AM Changeset in webkit [237249] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Missing #pragma once in WasmOpcodeOrigin.h
https://bugs.webkit.org/show_bug.cgi?id=190699

Patch by Takafumi Kubota <takafumi.kubota1012@sslab.ics.keio.ac.jp> on 2018-10-18
Reviewed by Yusuke Suzuki.

This patch add #pragma once into WasmOpcodeOrigin.h to avoid the
multiple inclusion that can happen in the unified build
configuration.

  • wasm/WasmOpcodeOrigin.h:
12:15 AM Changeset in webkit [237248] by bshafiei@apple.com
  • 2 edits in branches/safari-606-branch/Source/WebCore

Cherry-pick r236806. rdar://problem/45285366

CRASH in CVPixelBufferGetBytePointerCallback()
https://bugs.webkit.org/show_bug.cgi?id=190092

Reviewed by Eric Carlson.

Speculative fix for crash that occurs when callers of CVPixelBufferGetBytePointerCallback() attempt
to read the last byte of a CVPixelBuffer (as a pre-flight check) and crash due to a memory access
error. It's speculated that mismatching CVPixelBufferLockBytePointer / CVPixelBufferUnlockBytePointer
calls could result in an incorrect state inside the CVPixelBuffer. Add log count checks, locking, and
release logging to try to pinpoint if mismatch lock counts are occurring in this code path.

  • platform/graphics/cv/PixelBufferConformerCV.cpp: (WebCore::CVPixelBufferGetBytePointerCallback): (WebCore::CVPixelBufferReleaseBytePointerCallback): (WebCore::CVPixelBufferReleaseInfoCallback): (WebCore::PixelBufferConformerCV::createImageFromPixelBuffer):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@236806 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Oct 17, 2018:

9:35 PM Changeset in webkit [237247] by bshafiei@apple.com
  • 3 edits in tags/Safari-607.1.11/Source/WebKitLegacy/mac

Revert r237137. rdar://problem/45361541

9:28 PM Changeset in webkit [237246] by bshafiei@apple.com
  • 1 copy in tags/Safari-607.1.11

Tag Safari-607.1.11.

8:48 PM Changeset in webkit [237245] by wenson_hsieh@apple.com
  • 57 edits
    16 copies
    3 moves
    60 adds
    1 delete in trunk

Enable the datalist element by default on iOS and macOS
https://bugs.webkit.org/show_bug.cgi?id=190594
<rdar://problem/45281159>

Reviewed by Ryosuke Niwa and Tim Horton.

LayoutTests/imported/w3c:

Rebaseline some web platform tests.

  • web-platform-tests/html/semantics/forms/constraints/form-validation-validity-badInput-expected.txt:
  • web-platform-tests/html/semantics/forms/constraints/form-validation-willValidate-expected.txt:
  • web-platform-tests/html/semantics/forms/the-datalist-element/datalistoptions-expected.txt:
  • web-platform-tests/html/semantics/forms/the-input-element/hidden-expected.txt:
  • web-platform-tests/html/semantics/forms/the-input-element/selection-expected.txt:
  • web-platform-tests/html/semantics/forms/the-input-element/text-expected.txt:
  • web-platform-tests/shadow-dom/input-element-list-expected.txt:

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

Rebaselined existing layout tests.

  • Configurations/FeatureDefines.xcconfig:
  • bindings/js/WebCoreBuiltinNames.h:
  • css/CSSDefaultStyleSheets.cpp:

(WebCore::CSSDefaultStyleSheets::ensureDefaultStyleSheetsForElement):

  • css/CSSDefaultStyleSheets.h:
  • css/InspectorCSSOMWrappers.cpp:

(WebCore::InspectorCSSOMWrappers::collectDocumentWrappers):

  • css/html.css:

Remove color input and datalist style rules from the default UA stylesheet.

(input[type="color"]::-webkit-color-swatch-wrapper): Deleted.

  • html/HTMLDataListElement.idl:

Make HTMLDataListElement runtime-enabled.

  • html/HTMLTagNames.in:
  • html/RangeInputType.cpp:

Make a slight adjustment here so that inputs of type range respect the list attribute. Fixes a few layout tests
that add a datalist to an input of type range. See <https://bugs.webkit.org/show_bug.cgi?id=190613> for more
details.

(WebCore::RangeInputType::shouldRespectListAttribute):

  • html/TextFieldInputType.cpp:

(WebCore::TextFieldInputType::shouldRespectListAttribute):

  • page/RuntimeEnabledFeatures.h:

Add a runtime-enabled feature for the datalist element. Additionally, make the runtime-enabled feature for input
type color false by default, so that it's off in WebKitLegacy.

(WebCore::RuntimeEnabledFeatures::dataListElementEnabled const):
(WebCore::RuntimeEnabledFeatures::setDataListElementEnabled):

  • rendering/RenderTheme.cpp:

(WebCore::RenderTheme::colorInputStyleSheet const):

Add new style-sheet hooks for datalist and input type color, so that style rules for color inputs and datalists
can be added at runtime only if the feature is enabled. This ensures that in WebKitLegacy (or other ports where
either or both elements are disabled), we don't still apply rules for datalist and input[type="color"]. Notably,
this allows fallback content inside datalist elements to still work in WebKitLegacy (which would otherwise be
hidden when using the default stylesheet since display: none is applied to datalist by default). This also
prevents inputs of type color from having a smaller size, no outline, and the appearance of a color well on
macOS.

(WebCore::RenderTheme::dataListStyleSheet const):

  • rendering/RenderTheme.h:

(WebCore::RenderTheme::platformColorInputStyleSheet const):

  • rendering/RenderThemeMac.h:
  • rendering/RenderThemeMac.mm:

(WebCore::RenderThemeMac::platformColorInputStyleSheet const):

Source/WebCore/PAL:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit:

  • Configurations/FeatureDefines.xcconfig:
  • Platform/spi/ios/UIKitSPI.h:

Add SPI to UITextSuggestion.

  • Shared/WebPreferences.yaml:
  • Shared/WebPreferencesDefaultValues.h:
  • UIProcess/mac/WebDataListSuggestionsDropdownMac.mm:

(-[WKDataListSuggestionCell setText:]):
(-[WKDataListSuggestionTable initWithElementRect:]):

Fix the 32-bit macOS build with ENABLE(DATALIST_ELEMENT).

Source/WebKitLegacy/mac:

  • Configurations/FeatureDefines.xcconfig:

Tools:

  • TestWebKitAPI/Configurations/FeatureDefines.xcconfig:

LayoutTests:

Mark a couple of datalist tests as failures, with corresponding Bugzilla links.

  • fast/forms/datalist/datalist-fallback-content-expected.html:
  • fast/forms/datalist/datalist-fallback-content.html:

Refactor this ref test. This was checking that a text input field with an associated datalist with fallback
content looks identical to an text input field without a datalist, but this simply isn't the case with our
current implementation due to the presence of the list button. Instead, add a div to cover the list button in
both cases, and further augment this test to check that inputs of type color behave the same.

  • fast/forms/datalist/range-snap-to-datalist-expected.txt: Added.

Add missing expectations for this test that were never checked in. Since sliderTickSnappingThreshold simply
returns 0, this test behaves as expected, though behavior here may change when we add a make the "snapping
threshold" nonzero.

  • fast/forms/datalist/validity-assertion-inserting-into-datalist-expected.txt: Renamed from LayoutTests/fast/forms/validity-assertion-inserting-into-datalist-expected.txt.
  • fast/forms/datalist/validity-assertion-inserting-into-datalist.html: Renamed from LayoutTests/fast/forms/validity-assertion-inserting-into-datalist.html.
  • fast/selectors/read-only-read-write-input-basics-expected.txt:
  • platform/mac/imported/w3c/web-platform-tests/html/dom/reflection-forms-expected.txt:
  • platform/ios-simulator/fast/forms/datalist/datalist-searchinput-appearance-expected.txt: Added.
  • platform/ios-simulator/fast/forms/datalist/datalist-textinput-appearance-expected.txt: Added.

Add missing expectations.

  • platform/ios-wk1/TestExpectations:

Don't run datalist tests in WebKitLegacy by marking them as [ WontFix ].

  • platform/ios-wk2/accessibility/roles-exposed-expected.txt: Added.
  • platform/ios-wk2/fast/borders/empty-outline-border-assert-expected.txt: Added.
  • platform/ios-wk2/fast/dom/Window/window-lookup-precedence-expected.txt: Added.
  • platform/ios-wk2/fast/forms/label/labelable-elements-expected.txt: Added.
  • platform/ios-wk2/fast/forms/label/readwrite-readonly-expected.txt: Copied from LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/selectors/pseudo-classes/readwrite-readonly-expected.txt.
  • platform/ios-wk2/fast/selectors/read-only-read-write-input-basics-expected.txt: Copied from LayoutTests/fast/selectors/read-only-read-write-input-basics-expected.txt.
  • platform/ios-wk2/imported/w3c/web-platform-tests/custom-elements/builtin-coverage-expected.txt: Added.
  • platform/ios-wk2/imported/w3c/web-platform-tests/dom/nodes/Node-cloneNode-expected.txt: Added.
  • platform/ios-wk2/imported/w3c/web-platform-tests/html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-newelements-expected.txt: Added.
  • platform/ios-wk2/imported/w3c/web-platform-tests/html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-newelements-xhtml-expected.txt: Added.
  • platform/mac-wk2/imported/w3c/web-platform-tests/html/dom/reflection-forms-expected.txt: Copied from LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/dom/reflection-forms-expected.txt.
  • platform/ios-wk2/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-badInput-expected.txt: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-badInput-expected.txt.
  • platform/ios-wk2/imported/w3c/web-platform-tests/html/semantics/forms/textfieldselection/selection-not-application-expected.txt:
  • platform/ios-wk2/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/selection-expected.txt: Copied from LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/selection-expected.txt.
  • platform/ios-wk2/imported/w3c/web-platform-tests/html/semantics/interfaces-expected.txt:
  • platform/ios-wk2/imported/w3c/web-platform-tests/html/semantics/selectors/pseudo-classes/readwrite-readonly-expected.txt: Copied from LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/selectors/pseudo-classes/readwrite-readonly-expected.txt.
  • platform/ios-wk2/imported/w3c/web-platform-tests/shadow-dom/input-element-list-expected.txt: Added.
  • platform/ios-wk2/mathml/presentation/foreign-element-in-token-expected.txt: Added.

Add baselines for WebKit2, where we enable the datalist element and color inputs.

  • platform/ios/TestExpectations:
  • platform/mac-wk1/TestExpectations:

Don't run datalist tests in WebKitLegacy by marking them as [ WontFix ].

  • platform/mac-wk2/accessibility/roles-exposed-expected.txt: Copied from LayoutTests/platform/mac/accessibility/roles-exposed-expected.txt.
  • platform/mac-wk2/fast/borders/empty-outline-border-assert-expected.txt: Added.
  • platform/mac-wk2/fast/dom/Window/window-lookup-precedence-expected.txt: Added.
  • platform/mac-wk2/fast/forms/label/labelable-elements-expected.txt: Added.
  • platform/mac-wk2/fast/forms/label/readwrite-readonly-expected.txt: Copied from LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/selectors/pseudo-classes/readwrite-readonly-expected.txt.
  • platform/mac-wk2/fast/selectors/read-only-read-write-input-basics-expected.txt: Copied from LayoutTests/fast/selectors/read-only-read-write-input-basics-expected.txt.
  • platform/mac-wk2/imported/w3c/web-platform-tests/custom-elements/builtin-coverage-expected.txt: Added.
  • platform/mac-wk2/imported/w3c/web-platform-tests/dom/nodes/Node-cloneNode-expected.txt: Added.
  • platform/mac-wk2/imported/w3c/web-platform-tests/html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-newelements-expected.txt: Added.
  • platform/mac-wk2/imported/w3c/web-platform-tests/html/dom/documents/dom-tree-accessors/document.getElementsByName/document.getElementsByName-newelements-xhtml-expected.txt: Added.
  • platform/mac-wk2/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-badInput-expected.txt: Renamed from LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-badInput-expected.txt.
  • platform/mac-wk2/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-willValidate-expected.txt: Renamed from LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-willValidate-expected.txt.
  • platform/mac-wk2/imported/w3c/web-platform-tests/html/semantics/forms/textfieldselection/selection-not-application-expected.txt: Copied from LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/textfieldselection/selection-not-application-expected.txt.
  • platform/mac-wk2/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/selection-expected.txt: Renamed from LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/selection-expected.txt.
  • platform/mac-wk2/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/type-change-state-expected.txt: Copied from LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/type-change-state-expected.txt.
  • platform/mac-wk2/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/valueMode-expected.txt: Copied from LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/valueMode-expected.txt.
  • platform/mac-wk2/imported/w3c/web-platform-tests/html/semantics/interfaces-expected.txt: Copied from LayoutTests/platform/ios-wk2/imported/w3c/web-platform-tests/html/semantics/interfaces-expected.txt.
  • platform/mac-wk2/imported/w3c/web-platform-tests/html/semantics/selectors/pseudo-classes/readwrite-readonly-expected.txt: Copied from LayoutTests/platform/mac/imported/w3c/web-platform-tests/html/semantics/selectors/pseudo-classes/readwrite-readonly-expected.txt.
  • platform/mac-wk2/imported/w3c/web-platform-tests/shadow-dom/input-element-list-expected.txt: Added.
  • platform/mac-wk2/mathml/presentation/foreign-element-in-token-expected.txt: Added.

Add baselines for WebKit2, where we enable the datalist element and color inputs.

  • platform/mac/TestExpectations:
  • platform/mac/accessibility/roles-exposed-expected.txt:
  • platform/mac/fast/selectors/read-only-read-write-input-basics-expected.txt:
  • platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/textfieldselection/selection-not-application-expected.txt:
  • platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/type-change-state-expected.txt:
  • platform/mac/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/valueMode-expected.txt:
  • platform/mac/imported/w3c/web-platform-tests/html/semantics/selectors/pseudo-classes/readwrite-readonly-expected.txt:

Re-rebaseline test expectations that involve input type color, now that color inputs are off by default in WebKitLegacy.

  • platform/win/TestExpectations:

Remove various datalist test skips and failures on macOS and iOS; ensure that the test failures that are still
present are tracked with links to Bugzilla.

8:18 PM Changeset in webkit [237244] by keith_miller@apple.com
  • 3 edits
    1 add in trunk

JSTests:
AI does not clear Phantom allocation nodes.
https://bugs.webkit.org/show_bug.cgi?id=190694

Reviewed by Saam Barati.

  • stress/ftl-ai-filter-phantoms-should-clear-clear-value.js: Added.

(Day):
(DaysInYear):
(TimeInYear):
(TimeFromYear):
(DayFromYear):
(InLeapYear):
(YearFromTime):
(WeekDay):
(DaylightSavingTA):
(GetSecondSundayInMarch):
(TimeInMonth):

Source/JavaScriptCore:
[BigInt] Add ValueSub into DFG
https://bugs.webkit.org/show_bug.cgi?id=186176

Patch by Caio Lima <Caio Lima> on 2018-10-17
Reviewed by Yusuke Suzuki.

We are introducing in this patch a new node called ValueSub. This node
is necessary due to introduction of BigInt, making subtraction
operations result in non-Number values in some cases. In such case, ValueSub is
responsible to handle Untyped and BigInt operations.
In addition, we are also creating a speculative path when both
operands are BigInt. According to a simple BigInt subtraction microbenchmark,
this represents a speedup of ~1.2x faster.

big-int-simple-sub 14.6427+-0.5652 11.9559+-0.6485 definitely 1.2247x faster

  • dfg/DFGAbstractInterpreterInlines.h:

(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGClobberize.h:

(JSC::DFG::clobberize):

  • dfg/DFGDoesGC.cpp:

(JSC::DFG::doesGC):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):

  • dfg/DFGGraph.h:

(JSC::DFG::Graph::addSpeculationMode):

  • dfg/DFGNodeType.h:
  • dfg/DFGOperations.cpp:
  • dfg/DFGOperations.h:
  • dfg/DFGPredictionPropagationPhase.cpp:
  • dfg/DFGSafeToExecute.h:

(JSC::DFG::safeToExecute):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileValueSub):
(JSC::DFG::SpeculativeJIT::compileArithSub):

  • dfg/DFGSpeculativeJIT.h:
  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGValidate.cpp:
  • ftl/FTLCapabilities.cpp:

(JSC::FTL::canCompile):

  • ftl/FTLLowerDFGToB3.cpp:

(JSC::FTL::DFG::LowerDFGToB3::compileNode):
(JSC::FTL::DFG::LowerDFGToB3::compileValueAdd):
(JSC::FTL::DFG::LowerDFGToB3::compileValueSub):

7:47 PM Changeset in webkit [237243] by commit-queue@webkit.org
  • 15 edits
    2 adds in trunk

Parse paint() and store paint callbacks for CSS Painting API
https://bugs.webkit.org/show_bug.cgi?id=190657

Patch by Justin Michaud <justin_michaud@apple.com> on 2018-10-17
Reviewed by Dean Jackson.

Source/WebCore:

Implement support for parsing paint() images in css, and store CSS paint callback objects in the paint definition map.

  • Sources.txt:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSCSSPaintWorkletGlobalScopeCustom.cpp:

(WebCore::JSCSSPaintWorkletGlobalScope::visitAdditionalChildren):
(WebCore::JSCSSPaintWorkletGlobalScope::registerPaint):

  • css/CSSImageGeneratorValue.cpp:

(WebCore::CSSImageGeneratorValue::image):
(WebCore::CSSImageGeneratorValue::isFixedSize const):
(WebCore::CSSImageGeneratorValue::fixedSize):
(WebCore::CSSImageGeneratorValue::isPending const):
(WebCore::CSSImageGeneratorValue::knownToBeOpaque const):
(WebCore::CSSImageGeneratorValue::loadSubimages):

  • css/CSSPaintImageValue.cpp: Added.

(WebCore::CSSPaintImageValue::customCSSText const):

  • css/CSSPaintImageValue.h: Added.
  • css/CSSPaintWorkletGlobalScope.h:
  • css/CSSPaintWorkletGlobalScope.idl:
  • css/CSSValue.cpp:

(WebCore::CSSValue::equals const):
(WebCore::CSSValue::cssText const):
(WebCore::CSSValue::destroy):

  • css/CSSValue.h:

(WebCore::CSSValue::isPaintImageValue const):

  • css/CSSValueKeywords.in:
  • css/parser/CSSPropertyParserHelpers.cpp:

(WebCore::CSSPropertyParserHelpers::consumeCustomPaint):
(WebCore::CSSPropertyParserHelpers::consumeGeneratedImage):
(WebCore::CSSPropertyParserHelpers::isGeneratedImage):

  • platform/mediastream/mac/RealtimeVideoUtilities.h:

LayoutTests:

  • fast/css-custom-paint/basic-expected.txt:
  • fast/css-custom-paint/basic.html:
6:14 PM Changeset in webkit [237242] by Caio Lima
  • 21 edits
    2 adds in trunk

[BigInt] Add ValueSub into DFG
https://bugs.webkit.org/show_bug.cgi?id=186176

Reviewed by Yusuke Suzuki.

JSTests:

  • stress/big-int-subtraction-jit.js:
  • stress/value-sub-big-int-prediction-propagation.js: Added.
  • stress/value-sub-big-int-untyped.js: Added.

Source/JavaScriptCore:

We are introducing in this patch a new node called ValueSub. This node
is necessary due to introduction of BigInt, making subtraction
operations result in non-Number values in some cases. In such case, ValueSub is
responsible to handle Untyped and BigInt operations.
In addition, we are also creating a speculative path when both
operands are BigInt. According to a simple BigInt subtraction microbenchmark,
this represents a speedup of ~1.2x faster.

big-int-simple-sub 14.6427+-0.5652 11.9559+-0.6485 definitely 1.2247x faster

  • dfg/DFGAbstractInterpreterInlines.h:

(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGClobberize.h:

(JSC::DFG::clobberize):

  • dfg/DFGDoesGC.cpp:

(JSC::DFG::doesGC):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):

  • dfg/DFGGraph.h:

(JSC::DFG::Graph::addSpeculationMode):

  • dfg/DFGNodeType.h:
  • dfg/DFGOperations.cpp:
  • dfg/DFGOperations.h:
  • dfg/DFGPredictionPropagationPhase.cpp:
  • dfg/DFGSafeToExecute.h:

(JSC::DFG::safeToExecute):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileValueSub):
(JSC::DFG::SpeculativeJIT::compileArithSub):

  • dfg/DFGSpeculativeJIT.h:
  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGValidate.cpp:
  • ftl/FTLCapabilities.cpp:

(JSC::FTL::canCompile):

  • ftl/FTLLowerDFGToB3.cpp:

(JSC::FTL::DFG::LowerDFGToB3::compileNode):
(JSC::FTL::DFG::LowerDFGToB3::compileValueAdd):
(JSC::FTL::DFG::LowerDFGToB3::compileValueSub):

4:56 PM Changeset in webkit [237241] by mark.lam@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

The parser should not emit a ApplyFunctionCallDotNode for Reflect.apply.
https://bugs.webkit.org/show_bug.cgi?id=190671
<rdar://problem/45201145>

Reviewed by Saam Barati.

The bytecode generator does not currently know how to inline Reflect.apply (see
https://bugs.webkit.org/show_bug.cgi?id=190668). Hence, it's a waste of time to
emit the ApplyFunctionCallDotNode since the function check against Function.apply
that it will generate will always fail.

Also fixed CallVariant::dump() to be able to handle dumping a non-executable
callee. Reflect.apply used to trip this up. Any object with an apply property
invoked as a function could also trip this up. This is now fixed.

  • bytecode/CallVariant.cpp:

(JSC::CallVariant::dump const):

  • bytecompiler/NodesCodegen.cpp:

(JSC::ApplyFunctionCallDotNode::emitBytecode):

  • parser/ASTBuilder.h:

(JSC::ASTBuilder::makeFunctionCallNode):

4:54 PM Changeset in webkit [237240] by Ryan Haddad
  • 3 edits in trunk/Source/WebCore

[MediaStream] Consolidate all image conversion and resizing into one class
https://bugs.webkit.org/show_bug.cgi?id=190519
<rdar://problem/45224307>

Try to fix the iOSMac build after r237236.

Patch by Eric Carlson <eric.carlson@apple.com> on 2018-10-17

  • platform/graphics/cv/ImageTransferSessionVT.h:
  • platform/graphics/cv/ImageTransferSessionVT.mm:
4:30 PM Changeset in webkit [237239] by Justin Fan
  • 7 edits
    17 adds in trunk

[WebGPU] Implement WebGPU bindings up through WebGPUDevice creation
https://bugs.webkit.org/show_bug.cgi?id=190653

Reviewed by Dean Jackson.

Source/WebCore:

Test: webgpu/webgpu-enabled.html

Add WebGPU Sketch bindings for window.webgpu, WebGPUAdapter, WebGPUAdapterDescriptor,
and WebGPUDevice creation. Based off IDL commit version b6c61ee.
https://github.com/gpuweb/gpuweb/blob/master/design/sketch.webidl

  • CMakeLists.txt:
  • DerivedSources.make:
  • Modules/webgpu/DOMWindowWebGPU.cpp: Added.

(WebCore::DOMWindowWebGPU::DOMWindowWebGPU):
(WebCore::DOMWindowWebGPU::supplementName):
(WebCore::DOMWindowWebGPU::from):
(WebCore::DOMWindowWebGPU::webgpu):
(WebCore::DOMWindowWebGPU::webgpu const):

  • Modules/webgpu/DOMWindowWebGPU.h: Added.
  • Modules/webgpu/DOMWindowWebGPU.idl: Added.
  • Modules/webgpu/WebGPU.cpp: Added.

(WebCore::WebGPU::create):
(WebCore::WebGPU::requestAdapter const):

  • Modules/webgpu/WebGPU.h: Added.
  • Modules/webgpu/WebGPU.idl: Added.
  • Modules/webgpu/WebGPUAdapter.cpp: Added.

(WebCore::WebGPUAdapter::create):
(WebCore::WebGPUAdapter::WebGPUAdapter):
(WebCore::WebGPUAdapter::createDevice):

  • Modules/webgpu/WebGPUAdapter.h: Added.
  • Modules/webgpu/WebGPUAdapter.idl: Added.
  • Modules/webgpu/WebGPUAdapterDescriptor.h: Added.
  • Modules/webgpu/WebGPUAdapterDescriptor.idl: Added.
  • Modules/webgpu/WebGPUDevice.cpp: Added.

(WebCore::WebGPUDevice::create):
(WebCore::WebGPUDevice::WebGPUDevice):

  • Modules/webgpu/WebGPUDevice.h: Added.

(WebCore::WebGPUDevice::adapter const):

  • Modules/webgpu/WebGPUDevice.idl: Added.
  • Sources.txt:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/WebCoreBuiltinNames.h:

LayoutTests:

Small test to validate creation of a WebGPUDevice when WebGPU is enabled.

  • webgpu/webgpu-enabled.html: Added.
4:10 PM Changeset in webkit [237238] by aestes@apple.com
  • 6 edits
    2 adds in trunk

[Apple Pay] Increment the API version to 5
https://bugs.webkit.org/show_bug.cgi?id=190686
<rdar://problem/45348523>

Reviewed by Simon Fraser.

Source/WebCore:

Test: http/tests/ssl/applepay/ApplePaySessionV5.html

  • testing/MockPaymentCoordinator.cpp:

(WebCore::MockPaymentCoordinator::supportsVersion):

Source/WebKit:

  • WebProcess/ApplePay/WebPaymentCoordinator.cpp:

(WebKit::WebPaymentCoordinator::supportsVersion):

LayoutTests:

  • http/tests/ssl/applepay/ApplePaySessionV5-expected.txt: Added.
  • http/tests/ssl/applepay/ApplePaySessionV5.html: Added.
  • platform/mac-wk2/TestExpectations:
4:06 PM Changeset in webkit [237237] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WTF

Unreviewed, rolling out r237208.
https://bugs.webkit.org/show_bug.cgi?id=190691

Caused the API test that was changed to failure continuously
(Requested by Truitt on #webkit).

Reverted changeset:

"[Media] Use nanoseconds as MaximumTimeScale"
https://bugs.webkit.org/show_bug.cgi?id=190631
https://trac.webkit.org/changeset/237208

2:55 PM Changeset in webkit [237236] by eric.carlson@apple.com
  • 23 edits
    2 adds
    2 deletes in trunk/Source/WebCore

[MediaStream] Consolidate all image conversion and resizing into one class
https://bugs.webkit.org/show_bug.cgi?id=190519
<rdar://problem/45224307>

Reviewed by Youenn Fablet.

No new tests, no functional change.

  • SourcesCocoa.txt: Add ImageTransferSessionVT.
  • WebCore.xcodeproj/project.pbxproj: Ditto.
  • platform/MediaSample.h:

(WebCore::MediaSample::videoPixelFormat const): New.

  • platform/cocoa/VideoToolboxSoftLink.cpp: Add new kVTPixelTransferProperty keys.
  • platform/cocoa/VideoToolboxSoftLink.h:
  • platform/graphics/avfoundation/objc/MediaSampleAVFObjC.h:

(WebCore::MediaSampleAVFObjC::create): Remove unimplemented variant.

  • platform/graphics/avfoundation/objc/MediaSampleAVFObjC.mm:

(WebCore::MediaSampleAVFObjC::videoPixelFormat const): New.

  • platform/graphics/cv/ImageTransferSessionVT.h: Added.

(WebCore::ImageTransferSessionVT::create):

  • platform/graphics/cv/ImageTransferSessionVT.mm: Added.

(WebCore::ImageTransferSessionVT::ImageTransferSessionVT):
(WebCore::ImageTransferSessionVT::~ImageTransferSessionVT):
(WebCore::ImageTransferSessionVT::setSize):
(WebCore::ImageTransferSessionVT::createPixelBuffer):
(WebCore::ImageTransferSessionVT::createCMSampleBuffer):
(WebCore::roundUpToMacroblockMultiple):
(WebCore::ImageTransferSessionVT::ioSurfacePixelBufferCreationOptions):
(WebCore::ImageTransferSessionVT::createMediaSample):

  • platform/graphics/cv/PixelBufferResizer.h: Removed.
  • platform/graphics/cv/PixelBufferResizer.mm: Removed.
  • platform/mediastream/mac/AVVideoCaptureSource.h:
  • platform/mediastream/mac/AVVideoCaptureSource.mm:

(WebCore::AVVideoCaptureSource::prefersPreset):
(WebCore::AVVideoCaptureSource::captureOutputDidOutputSampleBufferFromConnection): Remove
the resizing logic, it is handled by the base class.

  • platform/mediastream/mac/DisplayCaptureSourceCocoa.cpp:

(WebCore::DisplayCaptureSourceCocoa::capabilities):
(WebCore::DisplayCaptureSourceCocoa::settingsDidChange):
(WebCore::DisplayCaptureSourceCocoa::setIntrinsicSize):
(WebCore::DisplayCaptureSourceCocoa::emitFrame): Remove resizing logic, just use a transfer
session to create an image from the capture source native output format.
(WebCore::DisplayCaptureSourceCocoa::sampleBufferFromPixelBuffer): Deleted.
(WebCore::roundUpToMacroblockMultiple): Deleted.
(WebCore::DisplayCaptureSourceCocoa::pixelBufferFromIOSurface): Deleted.

  • platform/mediastream/mac/DisplayCaptureSourceCocoa.h:
  • platform/mediastream/mac/MockRealtimeVideoSourceMac.h:
  • platform/mediastream/mac/MockRealtimeVideoSourceMac.mm:

(WebCore::MockRealtimeVideoSourceMac::updateSampleBuffer): Use image transfer session.
(WebCore::MockRealtimeVideoSourceMac::CMSampleBufferFromPixelBuffer): Deleted.
(WebCore::MockRealtimeVideoSourceMac::pixelBufferFromCGImage const): Deleted.
(WebCore::MockRealtimeVideoSourceMac::setSizeAndFrameRateWithPreset): Deleted.

  • platform/mediastream/mac/ScreenDisplayCaptureSourceMac.h:
  • platform/mediastream/mac/ScreenDisplayCaptureSourceMac.mm:

(WebCore::ScreenDisplayCaptureSourceMac::createDisplayStream):
(WebCore::ScreenDisplayCaptureSourceMac::generateFrame): Return the IOSurface directly.

  • platform/mediastream/mac/WindowDisplayCaptureSourceMac.h:
  • platform/mediastream/mac/WindowDisplayCaptureSourceMac.mm:

(WebCore::WindowDisplayCaptureSourceMac::generateFrame): Return the CGImage directly.
(WebCore::WindowDisplayCaptureSourceMac::pixelBufferFromCGImage): Deleted.

  • platform/mock/MockRealtimeVideoSource.cpp:

(WebCore::MockRealtimeVideoSource::capabilities): Only the camera supports device ID.
(WebCore::MockRealtimeVideoSource::settings): Ditto.

2:09 PM Changeset in webkit [237235] by bshafiei@apple.com
  • 7 edits in trunk/Source

Versioning.

2:06 PM Changeset in webkit [237234] by eric.carlson@apple.com
  • 9 edits in trunk/Source/WebCore

[MediaStream] Clean up capture source factory management
https://bugs.webkit.org/show_bug.cgi?id=190502
<rdar://problem/45212447>

Reviewed by Youenn Fablet.

No new tests, no functional change.

  • platform/mediastream/RealtimeMediaSourceCenter.cpp:

(WebCore::RealtimeMediaSourceCenter::setAudioFactory):
(WebCore::RealtimeMediaSourceCenter::unsetAudioFactory):
(WebCore::RealtimeMediaSourceCenter::audioFactory):
(WebCore::RealtimeMediaSourceCenter::setVideoFactory):
(WebCore::RealtimeMediaSourceCenter::unsetVideoFactory):
(WebCore::RealtimeMediaSourceCenter::videoFactory):
(WebCore::RealtimeMediaSourceCenter::setDisplayCaptureFactory):
(WebCore::RealtimeMediaSourceCenter::unsetDisplayCaptureFactory):
(WebCore::RealtimeMediaSourceCenter::displayCaptureFactory):

  • platform/mediastream/RealtimeMediaSourceCenter.h:

(WebCore::RealtimeMediaSourceCenter::setAudioFactory): Deleted.
(WebCore::RealtimeMediaSourceCenter::unsetAudioFactory): Deleted.
(): Deleted.

  • platform/mediastream/gstreamer/RealtimeMediaSourceCenterLibWebRTC.cpp:

(WebCore::RealtimeMediaSourceCenterLibWebRTC::audioFactoryPrivate):
(WebCore::RealtimeMediaSourceCenterLibWebRTC::videoFactoryPrivate):
(WebCore::RealtimeMediaSourceCenterLibWebRTC::displayCaptureFactoryPrivate):
(WebCore::RealtimeMediaSourceCenterLibWebRTC::audioCaptureSourceFactory): Deleted.
(WebCore::RealtimeMediaSourceCenterLibWebRTC::audioFactory): Deleted.
(WebCore::RealtimeMediaSourceCenterLibWebRTC::videoFactory): Deleted.
(WebCore::RealtimeMediaSourceCenterLibWebRTC::displayCaptureFactory): Deleted.

  • platform/mediastream/gstreamer/RealtimeMediaSourceCenterLibWebRTC.h:
  • platform/mediastream/mac/RealtimeMediaSourceCenterMac.cpp:

(WebCore::RealtimeMediaSourceCenterMac::audioFactoryPrivate):
(WebCore::RealtimeMediaSourceCenterMac::videoFactoryPrivate):
(WebCore::RealtimeMediaSourceCenterMac::displayCaptureFactoryPrivate):
(WebCore::RealtimeMediaSourceCenterMac::videoCaptureSourceFactory): Deleted.
(WebCore::RealtimeMediaSourceCenterMac::displayCaptureSourceFactory): Deleted.
(WebCore::RealtimeMediaSourceCenterMac::audioCaptureSourceFactory): Deleted.
(WebCore::RealtimeMediaSourceCenterMac::audioFactory): Deleted.
(WebCore::RealtimeMediaSourceCenterMac::videoFactory): Deleted.
(WebCore::RealtimeMediaSourceCenterMac::displayCaptureFactory): Deleted.

  • platform/mediastream/mac/RealtimeMediaSourceCenterMac.h:
  • platform/mock/MockRealtimeMediaSourceCenter.cpp:

(WebCore::MockRealtimeMediaSourceCenter::audioFactoryPrivate):
(WebCore::MockRealtimeMediaSourceCenter::videoFactoryPrivate):
(WebCore::MockRealtimeMediaSourceCenter::displayCaptureFactoryPrivate):
(WebCore::MockRealtimeMediaSourceCenter::audioFactory): Deleted.
(WebCore::MockRealtimeMediaSourceCenter::videoFactory): Deleted.
(WebCore::MockRealtimeMediaSourceCenter::displayCaptureFactory): Deleted.

  • platform/mock/MockRealtimeMediaSourceCenter.h:
1:37 PM Changeset in webkit [237233] by achristensen@apple.com
  • 23 edits in trunk/Source

BackForwardClient needs to be able to support UIProcess-only back/forward lists
https://bugs.webkit.org/show_bug.cgi?id=190675

Reviewed by Chris Dumez.

Source/WebCore:

Return a RefPtr<HistoryItem> instead of a HistoryItem so that we will be able to return a
HistoryItem that has been created instead of a pointer to a HistoryItem that is owned by something else.
Also use unsigned for the back and forward list counts because they can never be negative.

  • history/BackForwardClient.h:
  • history/BackForwardController.cpp:

(WebCore::BackForwardController::backItem):
(WebCore::BackForwardController::currentItem):
(WebCore::BackForwardController::forwardItem):
(WebCore::BackForwardController::canGoBackOrForward const):
(WebCore::BackForwardController::goBackOrForward):
(WebCore::BackForwardController::goBack):
(WebCore::BackForwardController::goForward):
(WebCore::BackForwardController::count const):
(WebCore::BackForwardController::backCount const):
(WebCore::BackForwardController::forwardCount const):
(WebCore::BackForwardController::itemAtIndex):

  • history/BackForwardController.h:

(WebCore::BackForwardController::backItem): Deleted.
(WebCore::BackForwardController::currentItem): Deleted.
(WebCore::BackForwardController::forwardItem): Deleted.

  • loader/EmptyClients.cpp:
  • loader/NavigationScheduler.cpp:

(WebCore::NavigationScheduler::scheduleHistoryNavigation):

Source/WebKit:

  • UIProcess/WebBackForwardList.cpp:

(WebKit::WebBackForwardList::itemAtIndex const):
(WebKit::WebBackForwardList::backListCount const):
(WebKit::WebBackForwardList::forwardListCount const):

  • UIProcess/WebBackForwardList.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::backForwardBackListCount):
(WebKit::WebPageProxy::backForwardForwardListCount):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • WebProcess/WebPage/WebBackForwardListProxy.cpp:

(WebKit::WebBackForwardListProxy::itemAtIndex):
(WebKit::WebBackForwardListProxy::backListCount const):
(WebKit::WebBackForwardListProxy::forwardListCount const):

  • WebProcess/WebPage/WebBackForwardListProxy.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::dumpHistoryForTesting):

Source/WebKitLegacy/mac:

  • History/BackForwardList.h:
  • History/BackForwardList.mm:

(BackForwardList::backItem):
(BackForwardList::currentItem):
(BackForwardList::forwardItem):
(BackForwardList::backListCount const):
(BackForwardList::forwardListCount const):
(BackForwardList::itemAtIndex):

  • History/WebBackForwardList.mm:

(-[WebBackForwardList backItem]):
(-[WebBackForwardList currentItem]):
(-[WebBackForwardList forwardItem]):
(-[WebBackForwardList itemAtIndex:]):

Source/WebKitLegacy/win:

  • BackForwardList.cpp:

(BackForwardList::backItem):
(BackForwardList::currentItem):
(BackForwardList::forwardItem):
(BackForwardList::backListCount const):
(BackForwardList::forwardListCount const):
(BackForwardList::itemAtIndex):

  • BackForwardList.h:
12:46 PM Changeset in webkit [237232] by Devin Rousso
  • 3 edits in trunk/Source/WebInspectorUI

Web Inspector: Quickly Open to line/column does should have caret indicating where the position is
https://bugs.webkit.org/show_bug.cgi?id=190643

Reviewed by Matt Baker.

  • UserInterface/Views/TextEditor.js:

(WI.TextEditor.prototype.set selectedTextRange):
(WI.TextEditor.prototype.revealPosition):
Ensure that CodeMirror is focused before attempting to setSelection.
Drive-by: allow selections past the "end" of the line (since there is a \n or \r).

  • UserInterface/Views/SourceCodeTextEditor.js:

(WI.SourceCodeTextEditor.prototype.dialogWasDismissedWithRepresentedObject):
Remove the extra focus call after dismissing the WI.GoToLineDialog since it is now
handled by WI.TextEditor via revealPosition.

12:06 PM Changeset in webkit [237231] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebCore

[Web Animations] Do not create a DocumentTimeline to suspend or resume animations
https://bugs.webkit.org/show_bug.cgi?id=190660

Patch by Antoine Quint <Antoine Quint> on 2018-10-17
Reviewed by Dean Jackson.

We check that there is an existing timeline before trying to suspend or resume its animations, otherwise
we're creating a DocumentTimeline when nothing requires for it to exist. We also have to check that we
suspend animations when a DocumentTimeline is created while the page is not visible.

No new tests as there is no change in behavior here.

  • animation/DocumentTimeline.cpp:

(WebCore::DocumentTimeline::DocumentTimeline):

  • dom/Document.cpp:

(WebCore::Document::didBecomeCurrentDocumentInFrame):
(WebCore::Document::resume):

  • page/Frame.cpp:

(WebCore::Frame::clearTimers):

  • page/Page.cpp:

(WebCore::Page::setIsVisibleInternal):
(WebCore::Page::hiddenPageCSSAnimationSuspensionStateChanged):

12:00 PM Changeset in webkit [237230] by Antti Koivisto
  • 4 edits in trunk/Source/WebCore

Tiling CSS gradients is slow
https://bugs.webkit.org/show_bug.cgi?id=190615

Reviewed by Tim Horton.

Painting blocks the main thread on CG rendering queue to make a copy of the backing store.

  • platform/graphics/BitmapImage.cpp:

(WebCore::BitmapImage::drawPattern):

Also use sinkIntoImage for bitmap image pattern drawing.

  • platform/graphics/GradientImage.cpp:

(WebCore::GradientImage::drawPattern):

Sink the gradient into an Image after generating it. Unlike ImageBuffer, painting it doesn't involve inefficient copies.
Previous isCompatibleWithContext test is replaced with an equivalent scale factor test.

  • platform/graphics/GradientImage.h:
11:31 AM Changeset in webkit [237229] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed, rolling out r237024.
https://bugs.webkit.org/show_bug.cgi?id=190673

"It regressed ARES6 on iOS devices by 4-8%" (Requested by
saamyjoon on #webkit).

Reverted changeset:

"Increase executable memory pool from 64MB to 128MB for ARM64"
https://bugs.webkit.org/show_bug.cgi?id=190453
https://trac.webkit.org/changeset/237024

11:11 AM Changeset in webkit [237228] by Chris Dumez
  • 14 edits in trunk/Source/WebCore

Update more DOMWindow getters to return references instead of raw pointers
https://bugs.webkit.org/show_bug.cgi?id=190654

Reviewed by Youenn Fablet.

Update more DOMWindow getters to return references instead of raw pointers, since they
can no longer return null after recent refactoring.

  • Modules/gamepad/GamepadManager.cpp:

(WebCore::navigatorGamepadFromDOMWindow):

  • bindings/js/JSDOMWindowCustom.cpp:

(WebCore::JSDOMWindow::heapSnapshot):

  • dom/Document.cpp:

(WebCore::Document::location const):
(WebCore::Document::dispatchPopstateEvent):

  • dom/Event.cpp:

(WebCore::Event::timeStampForBindings const):

  • loader/DocumentThreadableLoader.cpp:

(WebCore::DocumentThreadableLoader::loadRequest):

  • loader/ResourceTimingInformation.cpp:

(WebCore::ResourceTimingInformation::addResourceTiming):

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::screen):
(WebCore::DOMWindow::history):
(WebCore::DOMWindow::crypto const):
(WebCore::DOMWindow::locationbar):
(WebCore::DOMWindow::menubar):
(WebCore::DOMWindow::personalbar):
(WebCore::DOMWindow::scrollbars):
(WebCore::DOMWindow::statusbar):
(WebCore::DOMWindow::toolbar):
(WebCore::DOMWindow::applicationCache):
(WebCore::DOMWindow::navigator):
(WebCore::DOMWindow::performance const):
(WebCore::DOMWindow::nowTimestamp const):
(WebCore::DOMWindow::location):
(WebCore::DOMWindow::visualViewport):
(WebCore::DOMWindow::styleMedia):

  • page/DOMWindow.h:
  • page/FrameView.cpp:

(WebCore::FrameView::updateLayoutViewport):

  • page/History.cpp:

(WebCore::History::stateObjectAdded):

  • page/IntersectionObserver.cpp:

(WebCore::IntersectionObserver::createTimestamp const):

  • page/PerformanceObserver.cpp:

(WebCore::PerformanceObserver::PerformanceObserver):

  • platform/cocoa/VideoFullscreenModelVideoElement.mm:

(WebCore::VideoFullscreenModelVideoElement::requestFullscreenMode):

11:07 AM Changeset in webkit [237227] by youenn@apple.com
  • 1 edit
    2 deletes in trunk/Source/ThirdParty/libwebrtc

Remove unneeded .rej files from libwebrtc
https://bugs.webkit.org/show_bug.cgi?id=190670

Reviewed by Mark Lam.

  • Source/third_party/boringssl/src/.github/PULL_REQUEST_TEMPLATE.rej: Removed.
  • Source/third_party/boringssl/src/third_party/googletest/.gitignore.rej: Removed.
10:54 AM Changeset in webkit [237226] by youenn@apple.com
  • 2 edits in trunk/Source/ThirdParty/libwebrtc

REGRESSION (r237075): webrtc/video-replace-muted-track.html is Crashing
https://bugs.webkit.org/show_bug.cgi?id=190646

Reviewed by Eric Carlson.

Do not use VCP pixel buffer pool at all.
RealtimeOutgoingVideoSource makes sure to send the frame in the right format.
Tested by ensuring test no longer crashes.

  • Source/webrtc/sdk/objc/components/video_codec/RTCVideoEncoderH264.mm:

(-[RTCSingleVideoEncoderH264 resetCompressionSessionIfNeededWithFrame:]):
(-[RTCSingleVideoEncoderH264 resetCompressionSessionWithPixelFormat:]):

10:52 AM Changeset in webkit [237225] by Chris Fleizach
  • 6 edits
    2 adds in trunk

AX: Certain tags should identify their context to iOS API
https://bugs.webkit.org/show_bug.cgi?id=190622
<rdar://problem/45308194>

Reviewed by Zalan Bujtas.

Source/WebCore:

Convey the semantic meaning of <code> tag to the iOS API so VoiceOver can make use of it.

Tests: accessibility/ios-simulator/text-context-attributes.html

  • accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:

(-[WebAccessibilityObjectWrapper accessibilityTextualContext]):
(AXAttributeStringSetStyle):

Tools:

  • DumpRenderTree/ios/AccessibilityUIElementIOS.mm:

(AccessibilityUIElement::stringAttributeValue):

  • WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:

(WTR::AccessibilityUIElement::stringAttributeValue):

LayoutTests:

  • accessibility/ios-simulator/text-context-attributes.html: Added.
  • accessibility/ios-simulator/text-context-attributes-expcted.txt: Added.
10:51 AM Changeset in webkit [237224] by youenn@apple.com
  • 2 edits in trunk/Source/WebCore

Remove unused code from RealtimeOutgoingVideoSourceCocoa
https://bugs.webkit.org/show_bug.cgi?id=190666

Reviewed by Eric Carlson.

No change of behavior, removed no longer used code.

  • platform/mediastream/mac/RealtimeOutgoingVideoSourceCocoa.cpp:

(): Deleted.

10:50 AM Changeset in webkit [237223] by yusukesuzuki@slowstart.org
  • 2 edits in trunk/Source/JavaScriptCore

[JSC] Use WTF::Function instead of std::function
https://bugs.webkit.org/show_bug.cgi?id=190665

Reviewed by Keith Miller.

We should use WTF::Function as much as possible. It allocates memory from bmalloc instead of standard malloc.

  • runtime/JSNativeStdFunction.h:
10:49 AM Changeset in webkit [237222] by keith_miller@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Remove debug logging from generate_offsets_extractor.rb
https://bugs.webkit.org/show_bug.cgi?id=190667

Reviewed by Mark Lam.

  • offlineasm/generate_offset_extractor.rb:
10:20 AM Changeset in webkit [237221] by keith_miller@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed, fix windows build.

  • offlineasm/generate_offset_extractor.rb:
8:48 AM Changeset in webkit [237220] by yusukesuzuki@slowstart.org
  • 8 edits in trunk/Source/JavaScriptCore

[JSC] More aggressively use constexpr in LowLevelInterpreter.asm for constant values
https://bugs.webkit.org/show_bug.cgi?id=190659

Reviewed by Keith Miller.

Asking the actual constant value to the JSC binary is always the best way to get the correct value.
The value is correctly updated once the original value is changed. We would like to encourage this
approach more in LowLevelInterpreter.asm.

This patch expands the coverage of this approach. We make ObservedType, ResultType, and ArithProfile
constexpr-friendly to produce the magic value used in LowLevelInterpreter.asm at compiling time.
This change allows us to easily extend ArithProfile in the future to adopt BigInt efficiently.

We additionally use constexpr for several constant values in LowLevelInterpreter.asm.

  • assembler/MaxFrameExtentForSlowPathCall.h:

Use this value in LowLevelInterpreter.asm directly. We also make them constexpr. And we add CPU(ARM64E).

  • bytecode/ArithProfile.h:

(JSC::ObservedType::ObservedType):
(JSC::ObservedType::sawInt32 const):
(JSC::ObservedType::isOnlyInt32 const):
(JSC::ObservedType::sawNumber const):
(JSC::ObservedType::isOnlyNumber const):
(JSC::ObservedType::sawNonNumber const):
(JSC::ObservedType::isOnlyNonNumber const):
(JSC::ObservedType::isEmpty const):
(JSC::ObservedType::bits const):
(JSC::ObservedType::withInt32 const):
(JSC::ObservedType::withNumber const):
(JSC::ObservedType::withNonNumber const):
(JSC::ObservedType::withoutNonNumber const):
(JSC::ObservedType::operator== const):
(JSC::ArithProfile::ArithProfile):
(JSC::ArithProfile::fromInt):
(JSC::ArithProfile::observedUnaryInt):
(JSC::ArithProfile::observedUnaryNumber):
(JSC::ArithProfile::observedBinaryIntInt):
(JSC::ArithProfile::observedBinaryNumberInt):
(JSC::ArithProfile::observedBinaryIntNumber):
(JSC::ArithProfile::observedBinaryNumberNumber):
(JSC::ArithProfile::lhsObservedType const):
(JSC::ArithProfile::rhsObservedType const):
(JSC::ArithProfile::bits const):
Make ObservedType and ArithProfile constexpr-friendly.

  • llint/LLIntData.cpp:

(JSC::LLInt::Data::performAssertions):
Make several ASSERTs to STATIC_ASSERTs. Remove some unnecessary checks.

  • llint/LLIntOffsetsExtractor.cpp:
  • llint/LowLevelInterpreter.asm:

Remove unused constant values. Use constexpr more and more aggressively.

  • parser/ResultType.h:

(JSC::ResultType::ResultType):
(JSC::ResultType::isInt32 const):
(JSC::ResultType::definitelyIsNumber const):
(JSC::ResultType::definitelyIsString const):
(JSC::ResultType::definitelyIsBoolean const):
(JSC::ResultType::definitelyIsBigInt const):
(JSC::ResultType::mightBeNumber const):
(JSC::ResultType::isNotNumber const):
(JSC::ResultType::mightBeBigInt const):
(JSC::ResultType::isNotBigInt const):
(JSC::ResultType::nullType):
(JSC::ResultType::booleanType):
(JSC::ResultType::numberType):
(JSC::ResultType::numberTypeIsInt32):
(JSC::ResultType::stringOrNumberType):
(JSC::ResultType::addResultType):
(JSC::ResultType::stringType):
(JSC::ResultType::bigIntType):
(JSC::ResultType::unknownType):
(JSC::ResultType::forAdd):
(JSC::ResultType::forLogicalOp):
(JSC::ResultType::forBitOp):
(JSC::ResultType::bits const):
Make ResultType constexpr-friendly.

  • runtime/JSCJSValue.h:

Use offsetof instead of OBJECT_OFFSETOF. It is OK since EncodedValueDescriptor is POD.
This change makes TagOffset and PayloadOffset macros constexpr-friendly while OBJECT_OFFSETOF
cannot be used in constexpr since it uses reinterpret_cast.

7:10 AM Changeset in webkit [237219] by keith_miller@apple.com
  • 8 edits
    2 adds in trunk/Source/JavaScriptCore

Unreviewed revert Fujii's revert in r237214 with new WinCairo build fix.

6:52 AM Changeset in webkit [237218] by ajuma@chromium.org
  • 18 edits in trunk

Flaky IntersectionObserver web platform tests involving style updates
https://bugs.webkit.org/show_bug.cgi?id=189091

Reviewed by Simon Fraser.

Source/WebCore:

Update intersection observations when flushing layers from the WebProcess
to the UIProcess to make the timing of these updates more predictable, and
more consistent with the IntersectionObserver spec, since the spec expects
these updates to happen as part of the "Update the rendering" step in the
HTML EventLoop.

Getting a similar approach to work with WK1 seems to add more complexity than it's
worth, since flushes don't happen for scrolls handled by platform widgets, and
flushes for other invalidations only happen when in compositing mode.

The only remaining timer-driven intersection observation update is for handling
the initial observation on a newly added target, which needs to happen even if
there are no changes triggering a flush.

Tested by the following tests no longer being flaky:

imported/w3c/web-platform-tests/intersection-observer/bounding-box.html
imported/w3c/web-platform-tests/intersection-observer/display-none.html
imported/w3c/web-platform-tests/intersection-observer/containing-block.html

  • dom/Document.cpp:

(WebCore::Document::resolveStyle):
(WebCore::Document::updateIntersectionObservations):
(WebCore::Document::scheduleForcedIntersectionObservationUpdate):
(WebCore::Document::scheduleIntersectionObservationUpdate): Deleted.

  • dom/Document.h:
  • page/FrameView.cpp:

(WebCore::FrameView::flushCompositingStateForThisFrame):
(WebCore::FrameView::viewportContentsChanged):

  • page/IntersectionObserver.cpp:

(WebCore::IntersectionObserver::observe):

  • page/Page.cpp:

(WebCore::Page::Page):
(WebCore::Page::willDisplayPage):
(WebCore::Page::addDocumentNeedingIntersectionObservationUpdate):
(WebCore::Page::updateIntersectionObservations):
(WebCore::Page::scheduleForcedIntersectionObservationUpdate):

  • page/Page.h:

Source/WebKit:

Add a WebPage::willDisplayPage bottleneck that gets called when flushing layers
or, in the non-composited case, when rendering the page into a bitmap.

  • WebProcess/WebPage/AcceleratedDrawingArea.cpp:

(WebKit::AcceleratedDrawingArea::updateBackingStoreState):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:

(WebKit::CoordinatedLayerTreeHost::layerFlushTimerFired):

  • WebProcess/WebPage/DrawingAreaImpl.cpp:

(WebKit::DrawingAreaImpl::display):

  • WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDrawingArea.mm:

(WebKit::RemoteLayerTreeDrawingArea::flushLayers):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::willDisplayPage):

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::flushLayers):

LayoutTests:

Remove expectation for tests that are no longer flaky.

Skip IntersectionObserver tests on WK1.

4:07 AM Changeset in webkit [237217] by cturner@igalia.com
  • 3 edits
    1 add in trunk

[EME] Sanity check key ID length in the keyids init data format
https://bugs.webkit.org/show_bug.cgi?id=190629

Reviewed by Xabier Rodriguez-Calvar.

LayoutTests/imported/w3c:

  • web-platform-tests/encrypted-media/clearkey-generate-request-disallowed-input.https-expected.txt:

Added new baseline.

Source/WebCore:

Covered by web-platform-tests/encrypted-media/clearkey-generate-request-disallowed-input.https.html

  • Modules/encryptedmedia/InitDataRegistry.cpp:

(WebCore::extractKeyIDsKeyids): Ensure the decoded key id length
is at least 1 byte and no more than 512 bytes.

4:00 AM Changeset in webkit [237216] by cturner@igalia.com
  • 2 edits in trunk/LayoutTests

[EME] media/encrypted-media/mock-MediaKeySystemAccess.html crashes in CDM::createInstance
https://bugs.webkit.org/show_bug.cgi?id=190578

Reviewed by Xabier Rodriguez-Calvar.

  • platform/gtk/TestExpectations:

Oct 16, 2018:

9:16 PM Changeset in webkit [237215] by mark.lam@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

GetIndexedPropertyStorage can GC.
https://bugs.webkit.org/show_bug.cgi?id=190625
<rdar://problem/45309366>

Reviewed by Saam Barati.

This is because if the ArrayMode type is String, the DFG and FTL will be emitting
a call to operationResolveRope, and operationResolveRope can GC. This patch
updates doesGC() to reflect this.

  • dfg/DFGDoesGC.cpp:

(JSC::DFG::doesGC):

8:01 PM Changeset in webkit [237214] by Fujii Hironori
  • 8 edits
    2 deletes in trunk/Source/JavaScriptCore

Unreviewed, rolling out r237188, r237189, and r237197.

It breaks WinCairo Debug builds and Release LayoutTests

Reverted changesets:

https://bugs.webkit.org/show_bug.cgi?id=189708
https://trac.webkit.org/changeset/237188

"Unreviewed, forgot to add untracked files."
https://trac.webkit.org/changeset/237189

"isASTErroneous in offlineasm should de-macroify before
looking for Errors"
https://bugs.webkit.org/show_bug.cgi?id=190634
https://trac.webkit.org/changeset/237197

7:19 PM Changeset in webkit [237213] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit

[GTK][WPE] Fix xdg-desktop-portal permissions from a sandbox
https://bugs.webkit.org/show_bug.cgi?id=190619

Patch by Patrick Griffis <Patrick Griffis> on 2018-10-16
Reviewed by Michael Catanzaro.

We have to generate a /.flatpak-info file for xdg-desktop-portal
to properly treat us as a sandboxed application.

  • UIProcess/Launcher/glib/BubblewrapLauncher.cpp:

(WebKit::createSealedMemFdWithData):
(WebKit::argsToFd):
(WebKit::XDGDBusProxyLauncher::setPermissions):
(WebKit::createFlatpakInfo):
(WebKit::bubblewrapSpawn):

6:53 PM Changeset in webkit [237212] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebInspectorUI

Web Inspector: ⌃G to jump to line in CSS file wipes the line
https://bugs.webkit.org/show_bug.cgi?id=190645

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2018-10-16
Reviewed by Devin Rousso.

  • UserInterface/Base/Main.js:
  • UserInterface/Views/Dialog.js:

(WI.Dialog.prototype.dismiss):

  • UserInterface/Views/SourceCodeTextEditor.js:

(WI.SourceCodeTextEditor.prototype.dialogWasDismissed): Deleted.
Rename the handler when dismissing a dialog with a value so that
it is clear this is only on a successful value and not an invalid value.
Dialog now only calls this delegate with a valid value. This addresses
exceptions seen when the GoToLineDialog was dimissed via Escape and
an unexpected null value was being handled in the delegate.

  • UserInterface/Views/GoToLineDialog.js:

(WI.GoToLineDialog.prototype._handleKeydownEvent):

  • UserInterface/Views/OpenResourceDialog.js:

(WI.OpenResourceDialog.prototype._handleKeydownEvent):
Prevent default on the event whenever we dismiss the dialog.
Without this, the key event was also being sent to the editor.
In this case, that meant an "Enter" key was replacing the new
selection in the TextEditor with a newline!

5:27 PM Changeset in webkit [237211] by Chris Dumez
  • 4 edits
    2 adds in trunk

Regression(r236795) Check boxes are sometimes checked when they should not be
https://bugs.webkit.org/show_bug.cgi?id=190651
<rdar://problem/45319934>

Reviewed by Ryosuke Niwa.

Source/WebCore:

r236795 mistakenly dropped the statement resetting m_reflectsCheckedAttribute to true
in HTMLInputElement::parseAttribute() because it looked like a no-op given that we
made sure it was true a couple of line above. However, I overlooked that calling
HTMLInputElement::setChecked() sets m_reflectsCheckedAttribute to false.

This patch thus re-introduces the statement. It also renames m_reflectsCheckedAttribute
to m_dirtyCheckednessFlag and reverses its value in order to match the specification
more closely:

Test: fast/dom/HTMLInputElement/checkbox-dirty-checkedness-flag.html

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::HTMLInputElement):
(WebCore::HTMLInputElement::parseAttribute):
(WebCore::HTMLInputElement::finishParsingChildren):
(WebCore::HTMLInputElement::reset):
(WebCore::HTMLInputElement::setChecked):
(WebCore::HTMLInputElement::copyNonAttributePropertiesFromElement):

  • html/HTMLInputElement.h:

LayoutTests:

Add layout test coverage.

  • fast/dom/HTMLInputElement/checkbox-dirty-checkedness-flag-expected.txt: Added.
  • fast/dom/HTMLInputElement/checkbox-dirty-checkedness-flag.html: Added.
4:59 PM Changeset in webkit [237210] by sihui_liu@apple.com
  • 14 edits in trunk

Add a switch for Web SQL
https://bugs.webkit.org/show_bug.cgi?id=190271

Reviewed by Ryosuke Niwa.

Source/WebCore:

Web SQL is still enabled by default.

  • Modules/webdatabase/DOMWindowWebDatabase.idl:
  • Modules/webdatabase/Database.idl:
  • Modules/webdatabase/SQLError.idl:
  • Modules/webdatabase/SQLResultSet.idl:
  • Modules/webdatabase/SQLResultSetRowList.idl:
  • bindings/js/WebCoreBuiltinNames.h:
  • page/RuntimeEnabledFeatures.h:

(WebCore::RuntimeEnabledFeatures::setWebSQLDisabled):
(WebCore::RuntimeEnabledFeatures::webSQLEnabled const):

Source/WebKit:

  • Shared/WebPreferences.yaml:
  • UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesSetWebSQLDisabled):
(WKPreferencesGetWebSQLDisabled):

  • UIProcess/API/C/WKPreferencesRef.h:

Tools:

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::resetPreferencesToConsistentValues):

4:43 PM Changeset in webkit [237209] by Chris Dumez
  • 11 edits in trunk

window.performance should not become null after the window loses its browsing context
https://bugs.webkit.org/show_bug.cgi?id=190636

Reviewed by Ryosuke Niwa.

Source/WebCore:

window.performance should not become null after the window loses its browsing context. This
WebKit behavior does not match the HTML specification nor the behavior of other browsers.

Also note that the attribute is not nullable in the specification:

No new tests, updated existing test.

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::performance const):

  • page/Performance.cpp:

(WebCore::Performance::Performance):

  • page/Performance.h:
  • platform/GenericTaskQueue.h:

(WebCore::TaskDispatcher::TaskDispatcher):
(WebCore::TaskDispatcher::postTask):
(WebCore::GenericTaskQueue::GenericTaskQueue):
(WebCore::GenericTaskQueue::isClosed const):

  • workers/WorkerGlobalScope.cpp:

(WebCore::WorkerGlobalScope::WorkerGlobalScope):

LayoutTests:

Extend layout test coverage.

  • http/tests/dom/cross-origin-detached-window-properties-expected.txt:
  • http/tests/dom/cross-origin-detached-window-properties.html:
  • http/tests/dom/same-origin-detached-window-properties-expected.txt:
  • http/tests/dom/same-origin-detached-window-properties.html:
4:18 PM Changeset in webkit [237208] by aboya@igalia.com
  • 2 edits in trunk/Source/WTF

[Media] Use nanoseconds as MaximumTimeScale
https://bugs.webkit.org/show_bug.cgi?id=190631

1e9 is a much more useful timescale than the previous one 231-1.
Unlike 2
31-1, which is a prime number, nanosecond scale is pretty
common among some formats like WebM and frameworks like GStreamer
where base 10 timescale is common... and it's those big timescales the
ones that are usually scaled up to MaximumTimeScale.

Reviewed by Jer Noble.

  • wtf/MediaTime.cpp:
4:12 PM Changeset in webkit [237207] by jer.noble@apple.com
  • 6 edits
    1 add in trunk/Source

Refactoring: Convert HTMLMediaElement::scheduleDelayedAction() to individually schedulable & cancelable tasks
https://bugs.webkit.org/show_bug.cgi?id=188208

Reviewed by Eric Carlson.

Rather than have a single, monolithic, zero-duration-timer based dispatch for
a bunch of methods to be performed in a future run-loop, convert them all to
use a DeferrableTask, which in turn is a kind of GenericTaskQueue which can
enqueue only a single task at a time. Convert some other zero-duration-timer
and GenericTaskQueue dispatches to this new DeferrableTask.

  • WebCore.xcodeproj/project.pbxproj:
  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::HTMLMediaElement):
(WebCore::HTMLMediaElement::finishParsingChildren):
(WebCore::HTMLMediaElement::scheduleCheckPlaybackTargetCompatability):
(WebCore::HTMLMediaElement::checkPlaybackTargetCompatablity):
(WebCore::HTMLMediaElement::prepareForLoad):
(WebCore::HTMLMediaElement::setReadyState):
(WebCore::HTMLMediaElement::seekWithTolerance):
(WebCore::HTMLMediaElement::setMuted):
(WebCore::HTMLMediaElement::mediaPlayerDidAddTextTrack):
(WebCore::HTMLMediaElement::didAddTextTrack):
(WebCore::HTMLMediaElement::scheduleConfigureTextTracks):
(WebCore::HTMLMediaElement::mediaPlayerTimeChanged):
(WebCore::HTMLMediaElement::scheduleMediaEngineWasUpdated):
(WebCore::HTMLMediaElement::mediaEngineWasUpdated):
(WebCore::HTMLMediaElement::mediaPlayerEngineUpdated):
(WebCore::HTMLMediaElement::scheduleUpdatePlayState):
(WebCore::HTMLMediaElement::updatePlayState):
(WebCore::HTMLMediaElement::setPlaying):
(WebCore::HTMLMediaElement::setPausedInternal):
(WebCore::HTMLMediaElement::cancelPendingTasks):
(WebCore::HTMLMediaElement::userCancelledLoad):
(WebCore::HTMLMediaElement::clearMediaPlayer):
(WebCore::HTMLMediaElement::contextDestroyed):
(WebCore::HTMLMediaElement::stop):
(WebCore::HTMLMediaElement::suspend):
(WebCore::HTMLMediaElement::resume):
(WebCore::HTMLMediaElement::mediaPlayerCurrentPlaybackTargetIsWirelessChanged):
(WebCore::HTMLMediaElement::dispatchEvent):
(WebCore::HTMLMediaElement::removeEventListener):
(WebCore::HTMLMediaElement::enqueuePlaybackTargetAvailabilityChangedEvent):
(WebCore::HTMLMediaElement::didBecomeFullscreenElement):
(WebCore::HTMLMediaElement::markCaptionAndSubtitleTracksAsUnconfigured):
(WebCore::HTMLMediaElement::scheduleUpdateMediaState):
(WebCore::HTMLMediaElement::updateMediaState):
(WebCore::HTMLMediaElement::playbackControlsManagerBehaviorRestrictionsTimerFired):
(WebCore::setFlags): Deleted.
(WebCore::clearFlags): Deleted.
(WebCore::actionName): Deleted.
(WebCore::HTMLMediaElement::scheduleDelayedAction): Deleted.
(WebCore::HTMLMediaElement::pendingActionTimerFired): Deleted.

  • html/HTMLMediaElement.h:
  • html/HTMLMediaElementEnums.h:
  • platform/DeferrableTask.h: Added.

(WebCore::DeferrableTask::DeferrableTask):
(WebCore::DeferrableTask::scheduleTask):
(WebCore::DeferrableTask::close):
(WebCore::DeferrableTask::cancelTask):
(WebCore::DeferrableTask::hasPendingTask const):

3:58 PM Changeset in webkit [237206] by Dewei Zhu
  • 2 edits in trunk/Websites/perf.webkit.org

Unreviewed, rolling out r236996.

Temporarily rollout to fix a manifest generation bug.
"lastModified" field for certain platform & metric configurations may be missing.

Reverted changeset:

"ManifestGenerator shouldn't need more than 1GB of memory or
run for 30 seconds"
https://bugs.webkit.org/show_bug.cgi?id=190393
https://trac.webkit.org/changeset/236996

3:31 PM Changeset in webkit [237205] by achristensen@apple.com
  • 17 edits
    4 deletes in trunk

Remove InjectedBundleBackForwardList
https://bugs.webkit.org/show_bug.cgi?id=190640

Reviewed by Chris Dumez.

Source/WebKit:

These objects are only used in testing now, so I made a replacement to be used for testing,
WKBundlePageDumpHistoryForTesting and WKBundleClearHistoryForTesting.
The existence of these objects is problematic with process swapping and the true back/forward list being in the UIProcess.

  • Sources.txt:
  • WebProcess/InjectedBundle/API/c/WKBundleBackForwardList.cpp:

(WKBundleBackForwardListGetTypeID):
(WKBundleBackForwardListCopyItemAtIndex):
(WKBundleBackForwardListGetBackListCount):
(WKBundleBackForwardListGetForwardListCount):
(WKBundleBackForwardListClear):

  • WebProcess/InjectedBundle/API/c/WKBundleBackForwardList.h:
  • WebProcess/InjectedBundle/API/c/WKBundleBackForwardListItem.cpp:

(WKBundleBackForwardListItemGetTypeID):
(WKBundleBackForwardListItemIsSame):
(WKBundleBackForwardListItemCopyURL):
(WKBundleBackForwardListItemCopyTarget):
(WKBundleBackForwardListItemIsTargetItem):
(WKBundleBackForwardListItemCopyChildren):

  • WebProcess/InjectedBundle/API/c/WKBundleBackForwardListItem.h:
  • WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:

(WKBundlePageDumpHistoryForTesting):
(WKBundleClearHistoryForTesting):
(WKBundlePageGetBackForwardList):

  • WebProcess/InjectedBundle/API/c/WKBundlePage.h:
  • WebProcess/InjectedBundle/InjectedBundleBackForwardList.cpp: Removed.
  • WebProcess/InjectedBundle/InjectedBundleBackForwardList.h: Removed.
  • WebProcess/InjectedBundle/InjectedBundleBackForwardListItem.cpp: Removed.
  • WebProcess/InjectedBundle/InjectedBundleBackForwardListItem.h: Removed.
  • WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::~WebPage):
(WebKit::dumpHistoryItem):
(WebKit::WebPage::dumpHistoryForTesting):
(WebKit::WebPage::clearHistory):
(WebKit::WebPage::didReceiveSyncMessage):
(WebKit::WebPage::backForwardList): Deleted.

  • WebProcess/WebPage/WebPage.h:

Tools:

  • WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:

(WTR::InjectedBundle::dumpBackForwardListsForAllPages):

  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:

(WTR::InjectedBundlePage::prepare):
(WTR::InjectedBundlePage::dumpHistory):
(WTR::hasPrefix): Deleted.
(WTR::compareByTargetName): Deleted.
(WTR::dumpBackForwardListItem): Deleted.
(WTR::InjectedBundlePage::dumpBackForwardList): Deleted.

  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.h:
  • WebKitTestRunner/InjectedBundle/TestRunner.cpp:

(WTR::TestRunner::clearBackForwardList):

2:53 PM Changeset in webkit [237204] by timothy@apple.com
  • 24 edits
    4 adds in trunk

Add <meta name="supported-color-schemes"> to control what color schemes the page supports
https://bugs.webkit.org/show_bug.cgi?id=190526
rdar://problem/45230140

Reviewed by Dean Jackson.

Source/WebCore:

Test: css-dark-mode/supported-color-schemes.html

  • dom/Document.cpp:

(WebCore::isColorSchemeSeparator): Added.
(WebCore::processColorSchemes): Added.
(WebCore::Document::processSupportedColorSchemes): Added.
(WebCore::Document::useDarkAppearance const): Take system appearance and document's
suppoerted color shcemes into account.

  • dom/Document.h:
  • editing/cocoa/WebContentReaderCocoa.mm:

(WebCore::createFragment): Update use of LocalDefaultSystemAppearance.

  • html/HTMLMetaElement.cpp:

(WebCore::HTMLMetaElement::process): Added supported-color-schemes behind runtime feature check.

  • inspector/InspectorOverlay.cpp:

(WebCore::InspectorOverlay::paint): Update use of LocalDefaultSystemAppearance.

  • platform/mac/DragImageMac.mm:

(WebCore::createDragImageForLink): Update use of LocalDefaultSystemAppearance.

  • platform/mac/LocalDefaultSystemAppearance.h:
  • platform/mac/LocalDefaultSystemAppearance.mm:

(WebCore::LocalDefaultSystemAppearance::LocalDefaultSystemAppearance):
Drop the need for useSystemAppearance. This is accounted for in Document::useDarkAppearance.

  • platform/mac/ThemeMac.mm:

(WebCore::ThemeMac::paint): Update use of LocalDefaultSystemAppearance.

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::paintContents): Update use of LocalDefaultSystemAppearance.

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::paintContents): Update use of LocalDefaultSystemAppearance.

  • rendering/RenderTheme.cpp:

(WebCore::RenderTheme::paint): Use document instead of page.

  • rendering/RenderThemeCocoa.mm:

(WebCore::RenderThemeCocoa::drawLineForDocumentMarker): Update use of LocalDefaultSystemAppearance.

  • rendering/RenderThemeMac.mm:

(WebCore::RenderThemeMac::documentViewFor const): Update use of LocalDefaultSystemAppearance.
(WebCore::RenderThemeMac::platformActiveSelectionBackgroundColor const): Ditto.
(WebCore::RenderThemeMac::platformInactiveSelectionBackgroundColor const): Ditto.
(WebCore::RenderThemeMac::transformSelectionBackgroundColor const): Ditto.
(WebCore::RenderThemeMac::supportsSelectionForegroundColors const): Ditto.
(WebCore::RenderThemeMac::platformActiveSelectionForegroundColor const): Ditto.
(WebCore::RenderThemeMac::platformInactiveSelectionForegroundColor const): Ditto.
(WebCore::RenderThemeMac::platformActiveListBoxSelectionBackgroundColor const): Ditto.
(WebCore::RenderThemeMac::platformInactiveListBoxSelectionBackgroundColor const): Ditto.
(WebCore::RenderThemeMac::platformActiveListBoxSelectionForegroundColor const): Ditto.
(WebCore::RenderThemeMac::platformInactiveListBoxSelectionForegroundColor const): Ditto.
(WebCore::RenderThemeMac::platformActiveTextSearchHighlightColor const): Ditto.
(WebCore::RenderThemeMac::colorCache const): Ditto.
(WebCore::RenderThemeMac::systemColor const): Ditto.
(WebCore::RenderThemeMac::paintCellAndSetFocusedElementNeedsRepaintIfNecessary): Ditto.
(WebCore::RenderThemeMac::paintSliderThumb): Ditto.
(WebCore::RenderThemeMac::usingDarkAppearance const): No need to limit to macOS here.

  • svg/graphics/SVGImage.cpp:

(WebCore::SVGImage::draw): Update use of LocalDefaultSystemAppearance.

Source/WebKit:

  • UIProcess/mac/WKPrintingView.mm:

(-[WKPrintingView drawRect:]): Update use of LocalDefaultSystemAppearance.

  • WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp:

(WebKit::InjectedBundleRangeHandle::renderedImage): Ditto.

  • WebProcess/Plugins/PDF/PDFPlugin.mm:

(WebKit::PDFPlugin::paintControlForLayerInContext): Ditto.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::drawRect): Ditto.

Source/WebKitLegacy/mac:

  • WebCoreSupport/WebEditorClient.mm:

(_WebCreateFragment): Update use of LocalDefaultSystemAppearance.

LayoutTests:

  • css-dark-mode/supported-color-schemes-expected.txt: Added.
  • css-dark-mode/supported-color-schemes.html: Added.
2:33 PM Changeset in webkit [237203] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

Remove superfluous VIDEO build guard
https://bugs.webkit.org/show_bug.cgi?id=190624

Patch by Rob Buis <rbuis@igalia.com> on 2018-10-16
Reviewed by Michael Catanzaro.

Remove some instances where the VIDEO build guard is included within another VIDEO build guard.

No new tests. No change in behavior.

  • platform/graphics/MediaPlayer.cpp:

(WebCore::buildMediaEnginesVector):

  • platform/graphics/MediaPlayer.h:
  • platform/graphics/MediaPlayerPrivate.h:
2:01 PM Changeset in webkit [237202] by youenn@apple.com
  • 17 edits in trunk

Support RTCConfiguration.certificates
https://bugs.webkit.org/show_bug.cgi?id=190603

Reviewed by Eric Carlson.

LayoutTests/imported/w3c:

  • web-platform-tests/webrtc/RTCCertificate-expected.txt:
  • web-platform-tests/webrtc/RTCPeerConnection-constructor-expected.txt:
  • web-platform-tests/webrtc/rtcpeerconnection/rtcpeerconnection-constructor-expected.txt:

Source/ThirdParty/libwebrtc:

  • Configurations/libwebrtc.iOS.exp:
  • Configurations/libwebrtc.iOSsim.exp:
  • Configurations/libwebrtc.mac.exp:

Source/WebCore:

Update RTCConfiguration to have a certificates member.
Add the conversion from RTCCertificate to libwebrtc certificates.
Add check to ensure that certificates are not expired.
Add check to ensure that certificates passed to setConfiguration were
the same as the ones passed to RTCPeerConnection constructor.
Once these checks are done, we reuse the certificates created at
RCPeerConnection creation time when setting the configuration again.

Covered by rebased WPT test.

  • Modules/mediastream/RTCConfiguration.h:
  • Modules/mediastream/RTCConfiguration.idl:
  • Modules/mediastream/RTCPeerConnection.cpp:

(WebCore::certificatesFromConfiguration):
(WebCore::RTCPeerConnection::initializeConfiguration):
(WebCore::RTCPeerConnection::setConfiguration):

  • Modules/mediastream/RTCPeerConnection.h:
  • Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp:

(WebCore::LibWebRTCMediaEndpoint::setConfiguration):

  • Modules/mediastream/libwebrtc/LibWebRTCPeerConnectionBackend.cpp:

(WebCore::configurationFromMediaEndpointConfiguration):

  • platform/mediastream/MediaEndpointConfiguration.cpp:

(WebCore::MediaEndpointConfiguration::MediaEndpointConfiguration):

  • platform/mediastream/MediaEndpointConfiguration.h:
1:18 PM Changeset in webkit [237201] by Ryan Haddad
  • 4 edits in trunk/Source/WebCore

Unreviewed, rolling out r237163.

Introduced layout test failures on iOS Simulator.

Reverted changeset:

"[CG] Adopt CG SPI for non-even cornered rounded rects"
https://bugs.webkit.org/show_bug.cgi?id=190155
https://trac.webkit.org/changeset/237163

1:09 PM Changeset in webkit [237200] by dinfuehr@igalia.com
  • 2 edits in trunk/JSTests

[JSC] stress/array-prototype-concat-of-long-spliced-arrays2.js times out on arm and mips
https://bugs.webkit.org/show_bug.cgi?id=190611

Reviewed by Saam Barati.

Reduce array length just like in array-prototype-concat-of-long-spliced-arrays.js
to improve test runtime. On ARM/MIPS this test even timed out when running all
tests.

  • stress/array-prototype-concat-of-long-spliced-arrays2.js:

(test):

1:07 PM Changeset in webkit [237199] by dinfuehr@igalia.com
  • 2 edits in trunk/Tools

Unreviewed, added myself to contributors.json.

  • Scripts/webkitpy/common/config/contributors.json:
12:23 PM Changeset in webkit [237198] by Devin Rousso
  • 20 edits in trunk

Web Inspector: Canvas: capture previously saved states and add them to the recording payload
https://bugs.webkit.org/show_bug.cgi?id=190473

Reviewed by Joseph Pecoraro.

Source/JavaScriptCore:

  • inspector/protocol/Recording.json:

Add states key to InitialState object.

Source/WebCore:

Updated existing tests: inspector/canvas/recording-2d.html

inspector/model/recording.html

Instead of sending a single object of the current state of the context, send an array of
objects, one for each restore point.

  • html/canvas/CanvasRenderingContext2DBase.h:
  • html/canvas/CanvasRenderingContext2DBase.cpp:

(WebCore::CanvasRenderingContext2DBase::stateStack): Added.

  • inspector/InspectorCanvas.h:
  • inspector/InspectorCanvas.cpp:

(WebCore::InspectorCanvas::stringIndexForKey): Added.
(WebCore::InspectorCanvas::buildInitialState):

Source/WebInspectorUI:

Instead of sending a single object of the current state of the context, send an array of
objects, one for each restore point. When replaying, recreate each restore point before
applying the selected action(s).

  • UserInterface/Models/Recording.js:

(WI.Recording):
(WI.Recording.fromPayload):
(WI.Recording.prototype.toJSON):
(WI.Recording.prototype.async._process):
(WI.Recording.prototype.async._swizzleState): Added.

  • UserInterface/Models/RecordingAction.js:

(WI.RecordingAction):
(WI.RecordingAction.deriveCurrentState): Added.
(WI.RecordingAction.prototype.get states): Added.
(WI.RecordingAction.prototype.process):
(WI.RecordingAction.prototype.get state): Deleted.
Drive-by: when processing, also check to see if any values in the current state changed
outside of those expected in _stateModifiers (e.g. restore may modify some state values).

  • UserInterface/Views/RecordingContentView.js:

(WI.RecordingContentView.prototype._generateContentCanvas2D):

  • UserInterface/Views/RecordingStateDetailsSidebarPanel.js:

(WI.RecordingStateDetailsSidebarPanel.prototype._generateDetailsCanvas2D):
Default to showing the most recent (current) state.

  • UserInterface/Views/CanvasTabContentView.js:

(WI.CanvasTabContentView.prototype.initialLayout): Added.
(WI.CanvasTabContentView.prototype._addCanvas):
(WI.CanvasTabContentView.prototype._removeCanvas):
(WI.CanvasTabContentView.prototype._addRecording): Added.
(WI.CanvasTabContentView.prototype._recordingImportedOrStopped):
(WI.CanvasTabContentView.prototype._recordingAdded): Deleted.

  • UserInterface/Controllers/CanvasManager.js:

(WI.CanvasManager):
(WI.CanvasManager.prototype.get importedRecordings): Added.
(WI.CanvasManager.prototype.importRecording):
Drive-by: store imported recordings on WI.CanvasManager so that if the Canvas tab is
closed we can still show the list of imported recordings.

LayoutTests:

  • inspector/canvas/recording-2d-expected.txt:
  • inspector/canvas/recording-2d.html:
  • inspector/canvas/resources/recording-utilities.js:

(TestPage.registerInitializer):
(TestPage.registerInitializer.async.logRecording): Added.
(TestPage.registerInitializer.logRecording): Deleted.

  • inspector/model/recording-expected.txt:
  • inspector/model/recording.html:
12:16 PM Changeset in webkit [237197] by keith_miller@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

isASTErroneous in offlineasm should de-macroify before looking for Errors
https://bugs.webkit.org/show_bug.cgi?id=190634

Reviewed by Mark Lam.

If a macro isn't usable in a configuration it might still cause us to
think the ast is invalid. This change runs the de-macroifier before
looking for errors.

Also, it adds a missing include to Printer.h.

  • assembler/Printer.h:
  • offlineasm/settings.rb:
12:13 PM Changeset in webkit [237196] by Devin Rousso
  • 5 edits in trunk/Source/WebInspectorUI

Web Inspector: Canvas recording sidebar scroll position lost after switching tabs
https://bugs.webkit.org/show_bug.cgi?id=190482

Reviewed by Joseph Pecoraro.

  • UserInterface/Views/Sidebar.js:

(WI.Sidebar.prototype.removeSidebarPanel):
(WI.Sidebar.prototype.set selectedSidebarPanel):
Call hidden before setting selected to false, as that sets display: none; on the
element, which sets the scrollTop to 0.

  • UserInterface/Views/SidebarPanel.js:

(WI.SidebarPanel.prototype.shown):
(WI.SidebarPanel.prototype.hidden):
(WI.SidebarPanel.prototype.get scrollElement): Added.
Allow subclasses to specify the scrolling element for saving/restoring the scroll position.

  • UserInterface/Views/CanvasSidebarPanel.js:

(WI.CanvasSidebarPanel.prototype.get scrollElement): Added.

  • UserInterface/Views/RecordingStateDetailsSidebarPanel.js:

(WI.RecordingStateDetailsSidebarPanel.prototype.get scrollElement): Added.

12:09 PM Changeset in webkit [237195] by Devin Rousso
  • 10 edits in trunk/Source/WebInspectorUI

Web Inspector: Should be a way to go directly from an event in the overview view to the specialized timeline for that event
https://bugs.webkit.org/show_bug.cgi?id=135307
<rdar://problem/17273966>

Reviewed by Joseph Pecoraro.

When a WI.TimelineRecordBar is clicked, call up the delegate chain to the overview and
adjust the currently selected WI.TimelineRecordBar among the WI.TimelineOverviewGraphs.
Similarly, selecting a WI.DataGridNode in any WI.TimelineView subclass will use the same
logic to select the corresponding WI.TimelineRecordBar.

  • UserInterface/Views/TimelineOverview.js:

(WI.TimelineOverview):
(WI.TimelineOverview.prototype.reset):
(WI.TimelineOverview.prototype._recordSelected):

  • UserInterface/Views/TimelineOverviewGraph.js:

(WI.TimelineOverviewGraph):
(WI.TimelineOverviewGraph.prototype.set selectedRecord):
(WI.TimelineOverviewGraph.prototype.get selectedRecordBar): Added.
(WI.TimelineOverviewGraph.prototype.set selectedRecordBar): Added.
(WI.TimelineOverviewGraph.prototype.timelineRecordBarClicked): Added.
(WI.TimelineOverviewGraph.prototype._needsSelectedRecordLayout):

  • UserInterface/Views/TimelineRecordBar.js:

(WI.TimelineRecordBar):
(WI.TimelineRecordBar.prototype.get selected): Added.
(WI.TimelineRecordBar.prototype.set selected): Added.
(WI.TimelineRecordBar.prototype._handleClick): Added.

  • UserInterface/Views/TimelineRecordBar.css:

(.timeline-record-bar.selected > .segment): Added.
Add a delegate that is notified whenever the element is clicked.

  • UserInterface/Views/TimelineDataGridNode.js:

(WI.TimelineDataGridNode.prototype.refreshGraph.createBar):

  • UserInterface/Views/LayoutTimelineOverviewGraph.js:

(WI.LayoutTimelineOverviewGraph.prototype.updateSelectedRecord):
(WI.LayoutTimelineOverviewGraph.prototype._updateRowLayout.createBar):

  • UserInterface/Views/NetworkTimelineOverviewGraph.js:

(WI.NetworkTimelineOverviewGraph.prototype.layout.createBar):

  • UserInterface/Views/ScriptTimelineOverviewGraph.js:

(WI.ScriptTimelineOverviewGraph.prototype.layout.createBar):
(WI.ScriptTimelineOverviewGraph.prototype.updateSelectedRecord):

  • UserInterface/Views/TimelineRecordingContentView.js:

(WI.TimelineRecordingContentView.prototype.showTimelineViewForTimeline):

11:57 AM Changeset in webkit [237194] by Ryan Haddad
  • 2 edits in trunk/Source/WebKitLegacy/win

Unreviewed attempt to fix the Windows build after r237112.

  • Plugins/PluginView.cpp:

(WebCore::PluginView::performRequest):

11:28 AM Changeset in webkit [237193] by Alan Coon
  • 7 edits in branches/safari-606-branch/Source

Versioning.

11:04 AM Changeset in webkit [237192] by commit-queue@webkit.org
  • 32 edits
    5 copies
    9 adds in trunk

Implement feature flag and bindings for CSS Painting API
https://bugs.webkit.org/show_bug.cgi?id=190237

Patch by Justin Michaud <justin_michaud@apple.com> on 2018-10-16
Reviewed by Ryosuke Niwa.

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

Add feature flag and bindings for CSS Painting API. This adds a new property,
CSS.paintWorkletGlobalScope, which will be a temporary way to access the paint
worklet global scope untill CSS.paintWorklet is implemented.

There are a few small changes, mostly adding headers and "using" declarations,
that were required to get this to build. This is probably related to unified sources.

Tests: fast/css-custom-paint/basic.html

fast/css-custom-paint/registerPaintBindings.html

  • CMakeLists.txt:
  • Configurations/FeatureDefines.xcconfig:
  • DerivedSources.make:
  • Sources.txt:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSCSSPaintWorkletGlobalScopeCustom.cpp: Added.

(WebCore::throwInvalidModificationError):
(WebCore::JSCSSPaintWorkletGlobalScope::registerPaint):

  • bindings/js/JSEventListener.cpp:
  • bindings/js/JSRemoteDOMWindowCustom.cpp:
  • bindings/js/JSWebMetalRenderPassAttachmentDescriptorCustom.cpp:
  • bindings/js/WebCoreBuiltinNames.h:
  • css/CSSPaintCallback.h: Copied from Source/WebCore/css/MediaQueryParserContext.cpp.

(WebCore::CSSPaintCallback::~CSSPaintCallback):

  • css/CSSPaintCallback.idl: Added.
  • css/CSSPaintWorkletGlobalScope.cpp: Copied from Source/WebCore/css/MediaQueryParserContext.cpp.

(WebCore::CSSPaintWorkletGlobalScope::create):
(WebCore::CSSPaintWorkletGlobalScope::CSSPaintWorkletGlobalScope):
(WebCore::CSSPaintWorkletGlobalScope::devicePixelRatio):
(WebCore::CSSPaintWorkletGlobalScope::addRegisteredPaint):

  • css/CSSPaintWorkletGlobalScope.h: Copied from Source/WebCore/css/MediaQueryParserContext.cpp.

(WebCore::CSSPaintWorkletGlobalScope::paintDefinitionMap):

  • css/CSSPaintWorkletGlobalScope.idl: Added.
  • css/DOMCSSPaintWorklet.cpp: Copied from Source/WebCore/css/MediaQueryParserContext.cpp.

(WebCore::DOMCSSPaintWorklet::ensurePaintWorkletGlobalScope):
(WebCore::DOMCSSPaintWorklet::from):
(WebCore::DOMCSSPaintWorklet::supplementName):

  • css/DOMCSSPaintWorklet.h: Copied from Source/WebCore/css/MediaQueryParserContext.cpp.
  • css/DOMCSSPaintWorklet.idl: Added.
  • css/MediaQueryParserContext.cpp:
  • css/StyleBuilder.h:
  • dom/Document.cpp:

(WebCore::Document::ensureCSSPaintWorkletGlobalScope):

  • dom/Document.h:
  • features.json:
  • page/RuntimeEnabledFeatures.h:

(WebCore::RuntimeEnabledFeatures::setCSSPaintingAPIEnabled):
(WebCore::RuntimeEnabledFeatures::cssPaintingAPIEnabled const):

Source/WebCore/PAL:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit:

  • Configurations/FeatureDefines.xcconfig:
  • Shared/WebPreferences.yaml:
  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner):

Source/WebKitLegacy/mac:

  • Configurations/FeatureDefines.xcconfig:

Tools:

  • TestWebKitAPI/Configurations/FeatureDefines.xcconfig:

LayoutTests:

Add basic tests for the CSS Painting API registerPaint function,
and test the custom bindings.

  • fast/css-custom-paint/basic-expected.txt: Added.
  • fast/css-custom-paint/basic.html: Added.
  • fast/css-custom-paint/registerPaintBindings-expected.txt: Added.
  • fast/css-custom-paint/registerPaintBindings.html: Added.
  • platform/ios-wk1/TestExpectations:
  • platform/mac-wk1/TestExpectations:
  • platform/win/TestExpectations:
10:57 AM WebKitGTK/2.22.x edited by Philippe Normand
(diff)
10:54 AM Changeset in webkit [237191] by Philippe Normand
  • 4 edits in trunk/Source/WebKit

[GLib] Build error with RemoteInspector disabled
https://bugs.webkit.org/show_bug.cgi?id=190623

Reviewed by Michael Catanzaro.

Compilation guards added to ensure the build still works when the
Remote WebInspector has been disabled.

  • UIProcess/API/glib/WebKitAutomationSession.cpp:
  • UIProcess/API/glib/WebKitAutomationSessionPrivate.h:
  • UIProcess/RemoteWebInspectorProxy.cpp:
10:52 AM Changeset in webkit [237190] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit

[GTK][WPE] Fix sandbox on distros with suid bubblewrap
https://bugs.webkit.org/show_bug.cgi?id=190616

Patch by Patrick Griffis <Patrick Griffis> on 2018-10-16
Reviewed by Michael Catanzaro.

  • UIProcess/Launcher/glib/BubblewrapLauncher.cpp:

(WebKit::bubblewrapSpawn):

10:49 AM Changeset in webkit [237189] by keith_miller@apple.com
  • 1 edit
    2 adds in trunk/Source/JavaScriptCore

Unreviewed, forgot to add untracked files.

  • llint/LLIntSettingsExtractor.cpp: Added.

(main):

  • offlineasm/generate_settings_extractor.rb: Added.
10:44 AM Changeset in webkit [237188] by keith_miller@apple.com
  • 7 edits in trunk/Source/JavaScriptCore

Unreviewed, reland https://bugs.webkit.org/show_bug.cgi?id=189708 with build fix.

  • CMakeLists.txt:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • llint/LLIntOffsetsExtractor.cpp:

(JSC::LLIntOffsetsExtractor::dummy):

  • offlineasm/generate_offset_extractor.rb:
  • offlineasm/offsets.rb:
  • offlineasm/settings.rb:
10:29 AM Changeset in webkit [237187] by pvollan@apple.com
  • 14 edits
    4 adds in trunk

[WebVTT] Support inline WebVTT styles
https://bugs.webkit.org/show_bug.cgi?id=190369

Reviewed by Eric Carlson.

Source/WebCore:

Add support for inline WebVTT styles, see https://w3c.github.io/webvtt/#styling. The parsed
style strings from the VTT file are added to an optional vector of style strings in the
TextTrack class. These styles are then added as HTMLStyleElement children to the parent of
the cue span element.

Test: media/track/track-cue-css.html

  • html/track/InbandGenericTextTrack.cpp:

(WebCore::InbandGenericTextTrack::newStyleSheetsParsed):

  • html/track/InbandGenericTextTrack.h:
  • html/track/InbandWebVTTTextTrack.cpp:

(WebCore::InbandWebVTTTextTrack::newStyleSheetsParsed):

  • html/track/InbandWebVTTTextTrack.h:
  • html/track/LoadableTextTrack.cpp:

(WebCore::LoadableTextTrack::newStyleSheetsAvailable):

  • html/track/LoadableTextTrack.h:
  • html/track/TextTrack.h:

(WebCore::TextTrack::styleSheets const):

  • html/track/VTTCue.cpp:

(WebCore::VTTCue::getDisplayTree):

  • html/track/WebVTTParser.cpp:

(WebCore::WebVTTParser::getNewCues):
(WebCore::WebVTTParser::getStyleSheets):
(WebCore::WebVTTParser::parse):
(WebCore::WebVTTParser::collectWebVTTBlock):
(WebCore::WebVTTParser::collectStyleSheet):
(WebCore::WebVTTParser::checkStyleSheet):
(WebCore::WebVTTParser::checkAndStoreStyleSheet):

  • html/track/WebVTTParser.h:
  • loader/TextTrackLoader.cpp:

(WebCore::TextTrackLoader::newStyleSheetsParsed):
(WebCore::TextTrackLoader::getNewStyleSheets):

  • loader/TextTrackLoader.h:

LayoutTests:

  • media/track/captions-webvtt/css-styling.vtt: Added.
  • media/track/captions-webvtt/no-css-styling.vtt: Added.
  • media/track/track-cue-css-expected.html: Added.
  • media/track/track-cue-css.html: Added.
9:47 AM Changeset in webkit [237186] by Devin Rousso
  • 3 edits in trunk/Source/WebInspectorUI

Web Inspector: sequences of spaces longer than 16 don't show a dot
https://bugs.webkit.org/show_bug.cgi?id=190528

Reviewed by Matt Baker.

  • UserInterface/Views/CodeMirrorAdditions.js:

Create a new CSS rule and add it to a unique <style> whenever a whitespace sequence with
a length is seen for the first time.

  • UserInterface/Views/CodeMirrorOverrides.css:

(.show-whitespace-characters .CodeMirror .cm-whitespace-1::before): Deleted.
(.show-whitespace-characters .CodeMirror .cm-whitespace-2::before): Deleted.
(.show-whitespace-characters .CodeMirror .cm-whitespace-3::before): Deleted.
(.show-whitespace-characters .CodeMirror .cm-whitespace-4::before): Deleted.
(.show-whitespace-characters .CodeMirror .cm-whitespace-5::before): Deleted.
(.show-whitespace-characters .CodeMirror .cm-whitespace-6::before): Deleted.
(.show-whitespace-characters .CodeMirror .cm-whitespace-7::before): Deleted.
(.show-whitespace-characters .CodeMirror .cm-whitespace-8::before): Deleted.
(.show-whitespace-characters .CodeMirror .cm-whitespace-9::before): Deleted.
(.show-whitespace-characters .CodeMirror .cm-whitespace-10::before): Deleted.
(.show-whitespace-characters .CodeMirror .cm-whitespace-11::before): Deleted.
(.show-whitespace-characters .CodeMirror .cm-whitespace-12::before): Deleted.
(.show-whitespace-characters .CodeMirror .cm-whitespace-13::before): Deleted.
(.show-whitespace-characters .CodeMirror .cm-whitespace-14::before): Deleted.
(.show-whitespace-characters .CodeMirror .cm-whitespace-15::before): Deleted.
(.show-whitespace-characters .CodeMirror .cm-whitespace-16::before): Deleted.

9:24 AM Changeset in webkit [237185] by Chris Dumez
  • 19 edits in trunk

window.navigator should not become null after the window loses its browsing context
https://bugs.webkit.org/show_bug.cgi?id=190595

Reviewed by Ryosuke Niwa.

LayoutTests/imported/w3c:

Rebaseline test which is not failing differently. The last check of this test is checking that
navigator.serviceWorker returns null after the frame has been detached. The test has been written
this way because this is how Chromium behaves. However, Firefox keeps returning the
ServiceWorkerContainer, as we do. Also, the specification indicates the the attribute cannot
return null (since the attribute is not nullable):

  • web-platform-tests/service-workers/service-worker/detached-context.https-expected.txt:

Source/WebCore:

window.navigator should not become null after the window loses its browsing context.
This does not match the HTML specification or the behavior of other browsers.

No new tests, updated existing tests.

  • Modules/geolocation/NavigatorGeolocation.cpp:

(WebCore::NavigatorGeolocation::geolocation const):

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::navigator):

  • page/Navigator.cpp:

(WebCore::Navigator::Navigator):

  • page/Navigator.h:
  • page/NavigatorBase.cpp:

(WebCore::NavigatorBase::NavigatorBase):

  • page/NavigatorBase.h:
  • page/WorkerNavigator.cpp:

(WebCore::WorkerNavigator::WorkerNavigator):

  • workers/service/ServiceWorkerContainer.cpp:

(WebCore::ServiceWorkerContainer::ServiceWorkerContainer):

  • workers/service/ServiceWorkerContainer.h:

LayoutTests:

Extend layout test coverage.

  • fast/frames/detached-frame-property-expected.txt:
  • fast/frames/detached-frame-property.html:
  • http/tests/dom/cross-origin-detached-window-properties-expected.txt:
  • http/tests/dom/cross-origin-detached-window-properties.html:
  • http/tests/dom/same-origin-detached-window-properties-expected.txt:
  • http/tests/dom/same-origin-detached-window-properties.html:
8:58 AM Changeset in webkit [237184] by achristensen@apple.com
  • 24 edits in trunk/Source

Replace HistoryItem* with HistoryItem& where possible
https://bugs.webkit.org/show_bug.cgi?id=190617

Reviewed by Chris Dumez.

Source/WebCore:

  • history/BackForwardClient.h:
  • history/BackForwardController.cpp:

(WebCore::BackForwardController::setCurrentItem):

  • history/BackForwardController.h:
  • history/HistoryItem.cpp:

(WebCore::defaultNotifyHistoryItemChanged):
(WebCore::HistoryItem::setAlternateTitle):
(WebCore::HistoryItem::setURLString):
(WebCore::HistoryItem::setOriginalURLString):
(WebCore::HistoryItem::setReferrer):
(WebCore::HistoryItem::setTitle):
(WebCore::HistoryItem::setTarget):
(WebCore::HistoryItem::setShouldRestoreScrollPosition):
(WebCore::HistoryItem::setStateObject):
(WebCore::HistoryItem::notifyChanged):

  • history/HistoryItem.h:
  • loader/EmptyClients.cpp:
  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::checkLoadCompleteForThisFrame):
(WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
(WebCore::FrameLoader::loadSameDocumentItem):

  • loader/HistoryController.cpp:

(WebCore::HistoryController::goToItem):
(WebCore::HistoryController::updateForCommit):
(WebCore::HistoryController::recursiveUpdateForCommit):
(WebCore::HistoryController::recursiveUpdateForSameDocumentNavigation):
(WebCore::HistoryController::setCurrentItem):
(WebCore::HistoryController::createItem):
(WebCore::HistoryController::itemsAreClones const):
(WebCore::HistoryController::currentFramesMatchItem const):

  • loader/HistoryController.h:

Source/WebKit:

  • WebProcess/WebCoreSupport/SessionStateConversion.h:
  • WebProcess/WebPage/WebBackForwardListProxy.cpp:

(WebKit::WK2NotifyHistoryItemChanged):
(WebKit::WebBackForwardListProxy::goToItem):

  • WebProcess/WebPage/WebBackForwardListProxy.h:

Source/WebKitLegacy/mac:

  • History/BackForwardList.h:
  • History/BackForwardList.mm:

(BackForwardList::goToItem):

  • History/WebBackForwardList.mm:

(-[WebBackForwardList goToItem:]):

  • History/WebHistoryItem.mm:

(WKNotifyHistoryItemChanged):

  • History/WebHistoryItemInternal.h:

Source/WebKitLegacy/win:

  • BackForwardList.cpp:

(BackForwardList::goToItem):

  • BackForwardList.h:
  • WebBackForwardList.cpp:

(WebBackForwardList::goToItem):

8:49 AM Changeset in webkit [237183] by cturner@igalia.com
  • 1 edit
    14 adds in trunk/LayoutTests/imported/w3c

[EME] Add some ClearKey baselines for passing tests
https://bugs.webkit.org/show_bug.cgi?id=190579

Reviewed by Unreviewed test gardening.

  • web-platform-tests/encrypted-media/clearkey-check-initdata-type.https-expected.txt: Added.
  • web-platform-tests/encrypted-media/clearkey-events-session-closed-event.https-expected.txt: Added.
  • web-platform-tests/encrypted-media/clearkey-events.https-expected.txt: Added.
  • web-platform-tests/encrypted-media/clearkey-invalid-license.https-expected.txt: Added.
  • web-platform-tests/encrypted-media/clearkey-keystatuses-multiple-sessions.https-expected.txt: Added.
  • web-platform-tests/encrypted-media/clearkey-keystatuses.https-expected.txt: Added.
  • web-platform-tests/encrypted-media/clearkey-mp4-setmediakeys-at-same-time.https-expected.txt: Added.
  • web-platform-tests/encrypted-media/clearkey-mp4-setmediakeys-multiple-times-with-the-same-mediakeys.https-expected.txt: Added.
  • web-platform-tests/encrypted-media/clearkey-mp4-setmediakeys-to-multiple-video-elements.https-expected.txt: Added.
  • web-platform-tests/encrypted-media/clearkey-mp4-setmediakeys.https-expected.txt: Added.
  • web-platform-tests/encrypted-media/clearkey-mp4-syntax-mediakeysession.https-expected.txt: Added.
  • web-platform-tests/encrypted-media/clearkey-mp4-syntax-mediakeysystemaccess.https-expected.txt: Added.
  • web-platform-tests/encrypted-media/clearkey-not-callable-after-createsession.https-expected.txt: Added.
  • web-platform-tests/encrypted-media/clearkey-update-non-ascii-input.https-expected.txt: Added.
8:39 AM Changeset in webkit [237182] by achristensen@apple.com
  • 6 edits in trunk/Source

Remove unused WebHistoryItem._transientPropertyForKey
https://bugs.webkit.org/show_bug.cgi?id=190606

Reviewed by Chris Dumez.

Source/WebCore:

This is unnecessary complexity in HistoryItem.

  • history/HistoryItem.h:
  • history/mac/HistoryItemMac.mm:

(WebCore::HistoryItem::getTransientProperty const): Deleted.
(WebCore::HistoryItem::setTransientProperty): Deleted.

Source/WebKitLegacy/mac:

  • History/WebHistoryItem.mm:
  • History/WebHistoryItemPrivate.h:
8:21 AM Changeset in webkit [237181] by Basuke Suzuki
  • 4 edits
    1 add in trunk/Source/WebCore

[Curl] Separate SSL Class for platform dependent way of setup.
https://bugs.webkit.org/show_bug.cgi?id=190597

Reviewed by Alex Christensen.

SSL setup is very platform dependent. This patch separate the class to allow
platform-dependent setup at the SSL handle instantiation.

No new tests because there's no behaviro changes.

  • PlatformWinCairo.cmake:
  • platform/network/curl/CurlSSLHandle.cpp:

(WebCore::CurlSSLHandle::CurlSSLHandle):
(WebCore::CurlSSLHandle::getCACertPathEnv): Moved.

  • platform/network/curl/CurlSSLHandle.h:
  • platform/network/win/CurlSSLHandleWin.cpp:

(WebCore::getCACertPathEnv):
(WebCore::CurlSSLHandle::platformInitialize):

7:54 AM Changeset in webkit [237180] by cturner@igalia.com
  • 2 edits in trunk/LayoutTests

[EME] Multiple ClearKey tests crashing in gst_qtdemux_request_protection_context
https://bugs.webkit.org/show_bug.cgi?id=190577

Reviewed by Michael Catanzaro.

  • platform/gtk/TestExpectations:
4:01 AM Changeset in webkit [237179] by Philippe Normand
  • 2 edits in trunk/Tools

Unreviewed, GTK Ubuntu LTS Jhbuild prospective build fix

  • gstreamer/jhbuild.modules:
3:04 AM Changeset in webkit [237178] by Philippe Normand
  • 2 edits in trunk/Tools

[GTK][JHBuild] Disable libmount support in glib

Rubber-stamped by Alejandro G. Castro.

This feature doesn't seem required for our setup.

  • gtk/jhbuild.modules:
2:44 AM Changeset in webkit [237177] by Philippe Normand
  • 2 edits in trunk/Source/WebKit

Unreviewed, another GTK build fix after r237146

  • UIProcess/gtk/RemoteWebInspectorProxyGtk.cpp:

(WebKit::RemoteWebInspectorProxy::platformCreateFrontendPageAndWindow):

1:47 AM Changeset in webkit [237176] by Philippe Normand
  • 2 edits in trunk

Unreviewed, GTK bots build fix

  • Source/cmake/OptionsGTK.cmake: Disable Sandbox support until the

bots have all the needed dependencies installed.

12:52 AM Changeset in webkit [237175] by keith_miller@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Unreviewed, add missing include.

  • runtime/BasicBlockLocation.h:
12:39 AM Changeset in webkit [237174] by commit-queue@webkit.org
  • 2 edits
    1 add in trunk/Source/ThirdParty/libwebrtc

[GTK][WPE] Make libwebrtc compile using the system opus library
https://bugs.webkit.org/show_bug.cgi?id=190573

Patch by Alejandro G. Castro <alex@igalia.com> on 2018-10-16
Reviewed by Philippe Normand.

We found some situations where gstreamer gets confused when it
tries to use opus because it finds opus symbols compiled for
liwebrtc. We are going to try the option to use the system opus
library also for libwebrtc.

  • CMakeLists.txt: Added opus dependency.
  • cmake/FindOpus.cmake: Added the hints to find the opus library

in the compilation.

12:19 AM Changeset in webkit [237173] by keith_miller@apple.com
  • 57 edits in trunk/Source

Support arm64 CPUs with a 32-bit address space
https://bugs.webkit.org/show_bug.cgi?id=190273

Reviewed by Michael Saboff.

Source/JavaScriptCore:

This patch adds support for arm64_32 in the LLInt. In order to
make this work we needed to add a new type that reflects the size
of a cpu register. This type is called CPURegister or UCPURegister
for the unsigned version. Most places that used void* or intptr_t
to refer to a register have been changed to use this new type.

  • JavaScriptCore.xcodeproj/project.pbxproj:
  • assembler/ARM64Assembler.h:

(JSC::isInt):
(JSC::is4ByteAligned):
(JSC::PairPostIndex::PairPostIndex):
(JSC::PairPreIndex::PairPreIndex):
(JSC::ARM64Assembler::readPointer):
(JSC::ARM64Assembler::readCallTarget):
(JSC::ARM64Assembler::computeJumpType):
(JSC::ARM64Assembler::linkCompareAndBranch):
(JSC::ARM64Assembler::linkConditionalBranch):
(JSC::ARM64Assembler::linkTestAndBranch):
(JSC::ARM64Assembler::loadRegisterLiteral):
(JSC::ARM64Assembler::loadStoreRegisterPairPostIndex):
(JSC::ARM64Assembler::loadStoreRegisterPairPreIndex):
(JSC::ARM64Assembler::loadStoreRegisterPairOffset):
(JSC::ARM64Assembler::loadStoreRegisterPairNonTemporal):
(JSC::isInt7): Deleted.
(JSC::isInt11): Deleted.

  • assembler/CPU.h:

(JSC::isAddress64Bit):
(JSC::isAddress32Bit):

  • assembler/MacroAssembler.h:

(JSC::MacroAssembler::shouldBlind):

  • assembler/MacroAssemblerARM64.cpp:

(JSC::MacroAssemblerARM64::collectCPUFeatures):

  • assembler/MacroAssemblerARM64.h:

(JSC::MacroAssemblerARM64::load):
(JSC::MacroAssemblerARM64::store):
(JSC::MacroAssemblerARM64::isInIntRange): Deleted.

  • assembler/Printer.h:
  • assembler/ProbeContext.h:

(JSC::Probe::CPUState::gpr):
(JSC::Probe::CPUState::spr):
(JSC::Probe::Context::gpr):
(JSC::Probe::Context::spr):

  • b3/B3ConstPtrValue.h:
  • b3/B3StackmapSpecial.cpp:

(JSC::B3::StackmapSpecial::isArgValidForRep):

  • b3/air/AirArg.h:

(JSC::B3::Air::Arg::stackSlot const):
(JSC::B3::Air::Arg::special const):

  • b3/air/testair.cpp:
  • b3/testb3.cpp:

(JSC::B3::testStoreConstantPtr):
(JSC::B3::testInterpreter):
(JSC::B3::testAddShl32):
(JSC::B3::testLoadBaseIndexShift32):

  • bindings/ScriptFunctionCall.cpp:

(Deprecated::ScriptCallArgumentHandler::appendArgument):

  • bindings/ScriptFunctionCall.h:
  • bytecode/CodeBlock.cpp:

(JSC::roundCalleeSaveSpaceAsVirtualRegisters):

  • dfg/DFGOSRExit.cpp:

(JSC::DFG::restoreCalleeSavesFor):
(JSC::DFG::saveCalleeSavesFor):
(JSC::DFG::restoreCalleeSavesFromVMEntryFrameCalleeSavesBuffer):
(JSC::DFG::copyCalleeSavesToVMEntryFrameCalleeSavesBuffer):

  • dfg/DFGOSRExitCompilerCommon.cpp:

(JSC::DFG::reifyInlinedCallFrames):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • disassembler/UDis86Disassembler.cpp:

(JSC::tryToDisassembleWithUDis86):

  • ftl/FTLLowerDFGToB3.cpp:

(JSC::FTL::DFG::LowerDFGToB3::compileWeakMapGet):

  • heap/MachineStackMarker.cpp:

(JSC::copyMemory):

  • interpreter/CallFrame.h:

(JSC::ExecState::returnPC const):
(JSC::ExecState::hasReturnPC const):
(JSC::ExecState::clearReturnPC):
(JSC::ExecState::returnPCOffset):
(JSC::ExecState::isGlobalExec const):
(JSC::ExecState::setReturnPC):

  • interpreter/CalleeBits.h:

(JSC::CalleeBits::boxWasm):
(JSC::CalleeBits::isWasm const):
(JSC::CalleeBits::asWasmCallee const):

  • interpreter/Interpreter.cpp:

(JSC::UnwindFunctor::copyCalleeSavesToEntryFrameCalleeSavesBuffer const):

  • interpreter/VMEntryRecord.h:
  • jit/AssemblyHelpers.h:

(JSC::AssemblyHelpers::clearStackFrame):

  • jit/RegisterAtOffset.h:

(JSC::RegisterAtOffset::offsetAsIndex const):

  • jit/RegisterAtOffsetList.cpp:

(JSC::RegisterAtOffsetList::RegisterAtOffsetList):

  • llint/LLIntData.cpp:

(JSC::LLInt::Data::performAssertions):

  • llint/LLIntOfflineAsmConfig.h:
  • llint/LowLevelInterpreter.asm:
  • llint/LowLevelInterpreter64.asm:
  • offlineasm/arm64.rb:
  • offlineasm/asm.rb:
  • offlineasm/ast.rb:
  • offlineasm/backends.rb:
  • offlineasm/parser.rb:
  • offlineasm/x86.rb:
  • runtime/BasicBlockLocation.cpp:

(JSC::BasicBlockLocation::dumpData const):
(JSC::BasicBlockLocation::emitExecuteCode const):

  • runtime/BasicBlockLocation.h:
  • runtime/HasOwnPropertyCache.h:
  • runtime/JSBigInt.cpp:

(JSC::JSBigInt::inplaceMultiplyAdd):
(JSC::JSBigInt::digitDiv):

  • runtime/JSBigInt.h:
  • runtime/JSObject.h:
  • runtime/Options.cpp:

(JSC::jitEnabledByDefault):

  • runtime/Options.h:
  • runtime/RegExp.cpp:

(JSC::RegExp::printTraceData):

  • runtime/SamplingProfiler.cpp:

(JSC::CFrameWalker::walk):

  • runtime/SlowPathReturnType.h:

(JSC::encodeResult):
(JSC::decodeResult):

  • tools/SigillCrashAnalyzer.cpp:

(JSC::SigillCrashAnalyzer::dumpCodeBlock):

Source/WebCore:

Fix missing namespace annotation.

  • cssjit/SelectorCompiler.cpp:

(WebCore::SelectorCompiler::SelectorCodeGenerator::generateAddStyleRelation):

Source/WTF:

Use WTF_CPU_ADDRESS64/32 to decide if the system is running on arm64_32.

  • wtf/MathExtras.h:

(getLSBSet):

  • wtf/Platform.h:
Note: See TracTimeline for information about the timeline view.