Add support for the frames() timing function
[WebKit-https.git] / Source / WebKit / ChangeLog
index ea85fcb..3d9beb5 100644 (file)
-2017-12-14  Chris Dumez  <cdumez@apple.com>
+2018-01-12  Antoine Quint  <graouts@apple.com>
 
-        Enable Service Workers on iOS
-        https://bugs.webkit.org/show_bug.cgi?id=180836
+        Add support for the frames() timing function
+        https://bugs.webkit.org/show_bug.cgi?id=181585
+        <rdar://problem/36463317>
 
-        Reviewed by Alex Christensen.
-
-        * Shared/WebPreferencesDefaultValues.h:
-        * UIProcess/WebProcessPool.cpp:
-        Enable Service Workers on iOS.
-
-        (WebKit::WebProcessPool::ensureNetworkProcess):
-        Fall back to defaultCacheStorageDirectory() instead of the empty string
-        for the cache storage directory, when we do not have a store.
+        Reviewed by Dean.
 
-2017-12-14  Chris Dumez  <cdumez@apple.com>
+        Add the ability to endode and decode the frames() timing function.
 
-        Service worker script fetching currently always uses the network cache
-        https://bugs.webkit.org/show_bug.cgi?id=180816
+        * Shared/WebCoreArgumentCoders.cpp:
+        (IPC::ArgumentCoder<FramesTimingFunction>::encode):
+        (IPC::ArgumentCoder<FramesTimingFunction>::decode):
+        * Shared/WebCoreArgumentCoders.h:
+        * WebProcess/WebPage/RemoteLayerTree/PlatformCAAnimationRemote.mm:
+        (WebKit::PlatformCAAnimationRemote::Properties::encode const):
+        (WebKit::PlatformCAAnimationRemote::Properties::decode):
 
-        Reviewed by Alex Christensen.
+2018-01-11  Keith Miller  <keith_miller@apple.com>
 
-        * StorageProcess/ServiceWorker/WebSWServerConnection.cpp:
-        (WebKit::WebSWServerConnection::startScriptFetchInClient):
-        * StorageProcess/ServiceWorker/WebSWServerConnection.h:
-        * WebProcess/Storage/WebSWClientConnection.messages.in:
+        Rename ENABLE_ASYNC_ITERATION to ENABLE_JS_ASYNC_ITERATION
+        https://bugs.webkit.org/show_bug.cgi?id=181573
 
-2017-12-14  Chris Dumez  <cdumez@apple.com>
+        Reviewed by Simon Fraser.
 
-        StorageProcess::deleteWebsiteData() should ensure there is a SWServer for the given sessionID
-        https://bugs.webkit.org/show_bug.cgi?id=180784
+        * Configurations/FeatureDefines.xcconfig:
 
-        Reviewed by Youenn Fablet.
+2018-01-11  Brent Fulgham  <bfulgham@apple.com>
 
-        StorageProcess::deleteWebsiteData() should ensure there is a SWServer for the given sessionID
-        instead of not clearing anything when no such SWServer exists.
+        REGRESSION(r219530): ResourceLoadStatisticsPersistentStorage should be read-only in ephemeral sessions
+        https://bugs.webkit.org/show_bug.cgi?id=181136
+        <rdar://problem/36116604>
 
-        This will be useful on iOS once <rdar://problem/36034667> is fully fixed.
+        Reviewed by Chris Dumez.
 
-        * StorageProcess/StorageProcess.cpp:
-        (WebKit::StorageProcess::deleteWebsiteData):
-        (WebKit::StorageProcess::deleteWebsiteDataForOrigins):
-        * UIProcess/API/APIProcessPoolConfiguration.cpp:
-        (API::ProcessPoolConfiguration::createWithWebsiteDataStoreConfiguration):
+        Some uses of WebKit involve running a UIProcess as an ephemeral session for the life of the process. In this
+        case, we do not initialize the data path for the set of load statistics triggering an assertion.
 
-2017-12-14  Chris Dumez  <cdumez@apple.com>
+        We actually intended ephemeral sessions to consume the existing resource load data (presumably captured during
+        non-ephemeral browsing). This would be a read-only mode, where it would not add new entries to the load
+        statistics, but would take advantage of existing observations. Currently that does not happen (for this type
+        of WebKit embed), which forces each run as an ephemeral session to build up in-memory browsing data until it has
+        enough observations to begin modifying loads.
 
-        WebsiteDataStore::defaultDataStoreConfiguration() fails to set default value for serviceWorkerRegistrationDirectory
-        https://bugs.webkit.org/show_bug.cgi?id=180794
-        <rdar://problem/36034667>
+        We need to set the ResourceLoadStatisticsPersistentStorage object to a "read only" mode in this case, so
+        that it read (but does not write) from this database.
 
-        Reviewed by Youenn Fablet.
+        Tested by ephemeral website data TestWebKitAPI tests.
 
-        Set the default IndexedDB and ServiceWorker database paths in WebsiteDataStore::defaultDataStoreConfiguration().
-        Without this, the client is forced to set the expected path.
+        * UIProcess/ResourceLoadStatisticsPersistentStorage.cpp:
+        (WebKit::ResourceLoadStatisticsPersistentStorage::create): Added to allow creation of the right style of
+        Persistent Storage.
+        (WebKit::ResourceLoadStatisticsPersistentStorage::ResourceLoadStatisticsPersistentStorage): Initialize the
+        new data member.
+        (WebKit::ResourceLoadStatisticsPersistentStorage::asyncWriteTimerFired): RELEASE_ASSERT that we never run
+        this method when in "read only" mode.
+        (WebKit::ResourceLoadStatisticsPersistentStorage::writeMemoryStoreToDisk): Ditto.
+        (WebKit::ResourceLoadStatisticsPersistentStorage::scheduleOrWriteMemoryStore): Return early if asked to
+        schedule a write operation for a "read only" persistent store.
+        (WebKit::ResourceLoadStatisticsPersistentStorage::finishAllPendingWorkSynchronously): RELEASE_ASSERT if we
+        ever shut down in "read only" mode with an active write timer.
+        * UIProcess/ResourceLoadStatisticsPersistentStorage.h:
+        * UIProcess/WebResourceLoadStatisticsStore.cpp:
+        (WebKit::WebResourceLoadStatisticsStore::WebResourceLoadStatisticsStore): Pass a flag indicating whether the
+        storage session is ephemeral or not.
+        * UIProcess/WebResourceLoadStatisticsStore.h:
 
-        * UIProcess/API/Cocoa/APIWebsiteDataStoreCocoa.mm:
-        (API::WebsiteDataStore::defaultDataStoreConfiguration):
-        * UIProcess/API/glib/APIWebsiteDataStoreGLib.cpp:
-        (API::WebsiteDataStore::defaultDataStoreConfiguration):
+2018-01-11  Keith Rollin  <krollin@apple.com>
 
-2017-12-14  Joseph Pecoraro  <pecoraro@apple.com>
+        Add optional logging of ITP-related user interaction information
+        https://bugs.webkit.org/show_bug.cgi?id=181556
 
-        Web Inspector: Cmd-Option-R in docked inspector causes the inspector to reload instead of the inspected page
-        https://bugs.webkit.org/show_bug.cgi?id=180775
-        <rdar://problem/35964592>
+        Reviewed by Brent Fulgham.
 
-        Reviewed by Brian Burg.
+        In order to support the tracking of the efficacy of Intelligent
+        Tracking Protection, add some logging indicating when the user
+        interacts with a page in a way that affects cookie partitioning. This
+        logging is off by default, and is enabled with `defaults write -g
+        WebKitLogCookieInformation -bool true`.
 
-        * WebKit.xcodeproj/project.pbxproj:
-        Remove old files add new files.
-
-        * PlatformMac.cmake:
-        * UIProcess/mac/WKWebInspectorWKWebView.h: Removed.
-        * UIProcess/mac/WKWebInspectorWKWebView.mm: Removed.
-        Remove unused WKWebInspectorWKWebView.
-
-        * UIProcess/API/Cocoa/_WKRemoteWebInspectorViewController.mm:
-        * UIProcess/mac/WKInspectorViewController.mm:
-        (-[WKInspectorViewController dealloc]):
-        (-[WKInspectorViewController webView]):
-        (-[WKInspectorViewController inspectorWKWebViewReload:]):
-        (-[WKInspectorViewController inspectorWKWebViewReloadFromOrigin:]):
-        Handle WKWebView IBActions sent to the inspector frontend WKWebView.
-
-        * UIProcess/mac/WKInspectorWKWebView.h:
-        * UIProcess/mac/WKInspectorWKWebView.mm:
-        (-[WKInspectorWKWebView tag]):
-        (-[WKInspectorWKWebView inspectorWKWebViewDelegate]):
-        (-[WKInspectorWKWebView setInspectorWKWebViewDelegate:]):
-        (-[WKInspectorWKWebView reload:]):
-        (-[WKInspectorWKWebView reloadFromOrigin:]):
-        Move WKInspectorWKWebView into its own file. Include a delegate
-        to handle reload IBActions that will want to override.
-
-2017-12-13  Chris Dumez  <cdumez@apple.com>
-
-        Fix copy/paste error in ProcessPoolConfiguration::createWithWebsiteDataStoreConfiguration()
-        https://bugs.webkit.org/show_bug.cgi?id=180782
+        * Shared/WebProcessCreationParameters.cpp:
+        (WebKit::WebProcessCreationParameters::encode const):
+        (WebKit::WebProcessCreationParameters::decode):
+        * Shared/WebProcessCreationParameters.h:
+        * UIProcess/Cocoa/WebProcessPoolCocoa.mm:
+        (WebKit::WebProcessPool::platformInitializeWebProcess):
+        * WebProcess/WebProcess.cpp:
+        (WebKit::WebProcess::initializeWebProcess):
 
-        Reviewed by Youenn Fablet.
+2018-01-11  Megan Gardner  <megan_gardner@apple.com>
 
-        * UIProcess/API/APIProcessPoolConfiguration.cpp:
-        (API::ProcessPoolConfiguration::createWithWebsiteDataStoreConfiguration):
+        Implement MultiDocument protocol for restoring focus to a WKWebView
+        https://bugs.webkit.org/show_bug.cgi?id=181510
 
-2017-12-13  Daniel Bates  <dabates@apple.com>
+        Reviewed by Dan Bernstein.
 
-        Add more auto fill button types
-        https://bugs.webkit.org/show_bug.cgi?id=180651
-        <rdar://problem/35891125>
-        And
-        <rdar://problem/35977943>
+        Support the UIKit protocol for restoring focus to a what previously had focus.
+        WebKit already has a method to silently remove and replace focus, without telling the
+        web process about the unfocus and refocusing, so we're just using that.
 
-        Reviewed by Brent Fulgham.
+        * Platform/spi/ios/UIKitSPI.h:
+        * UIProcess/ios/WKContentViewInteraction.h:
+        * UIProcess/ios/WKContentViewInteraction.mm:
+        (-[WKContentView _restoreFocusWithToken:]):
+        (-[WKContentView _preserveFocusWithToken:destructively:]):
 
-        Adds enumerators for the new auto fill button types.
 
-        * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInNodeHandle.mm:
-        (toAutoFillButtonType):
-        * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInNodeHandlePrivate.h:
-        * WebProcess/InjectedBundle/API/c/WKBundleNodeHandle.cpp:
-        (toAutoFillButtonType):
-        * WebProcess/InjectedBundle/API/c/WKBundleNodeHandlePrivate.h:
+2018-01-11  Wenson Hsieh  <wenson_hsieh@apple.com>
 
-2017-12-13  Matt Lewis  <jlewis3@apple.com>
+        Don't load inline data when requesting info for an attachment element backed by a file path
+        https://bugs.webkit.org/show_bug.cgi?id=181550
 
-        Unreviewed, rolling out r225864.
+        Reviewed by Tim Horton
 
-        This caused the Layout test step to crash out on Debug testers
+        See WebCore/ChangeLog for more information.
 
-        Reverted changeset:
+        * UIProcess/API/Cocoa/_WKAttachment.mm:
+        (-[_WKAttachmentInfo initWithInfo:]):
+        (-[_WKAttachmentInfo fileLoadingError]):
+        (-[_WKAttachment requestInfo:]):
 
-        "REGRESSION (r225789): API tests
-        WKProcessPool.InitialWarmedProcessUsed and
-        WebKit.WebsiteDataStoreCustomPaths are failing."
-        https://bugs.webkit.org/show_bug.cgi?id=180722
-        https://trac.webkit.org/changeset/225864
+2018-01-11  Commit Queue  <commit-queue@webkit.org>
 
-2017-12-13  Brady Eidson  <beidson@apple.com>
+        Unreviewed, rolling out r226789 and r226794.
+        https://bugs.webkit.org/show_bug.cgi?id=181564
 
-        REGRESSION (r225789): API tests WKProcessPool.InitialWarmedProcessUsed and WebKit.WebsiteDataStoreCustomPaths are failing.
-        https://bugs.webkit.org/show_bug.cgi?id=180722
+        broke API tests (Requested by alexchristensen on #webkit).
 
-        Reviewed by Chris Dumez.
+        Reverted changesets:
 
-        - Add a test-only accessor to get the number of WebProcesses hosting WebPages
-        - Have WebsiteDataStore keep track of all instances so they can be looked up by SessionID
-        - When the StorageProcess needs to establish a SW context connection on behalf of a specific SessionID,
-          the UI process will now prefer using the WebsiteDataStore associated with that SessionID. This allows
-          us to continue deferring creation of the default data store if it's not needed.
+        "Merge sync and async code paths for getting context menus"
+        https://bugs.webkit.org/show_bug.cgi?id=181423
+        https://trac.webkit.org/changeset/226789
 
-        * StorageProcess/StorageProcess.cpp:
-        (WebKit::StorageProcess::connectionToContextProcessWasClosed):
-        (WebKit::StorageProcess::createServerToContextConnection):
-        * StorageProcess/StorageProcess.h:
+        "Revert changes accidentally committed with r226789."
+        https://bugs.webkit.org/show_bug.cgi?id=181423
+        https://trac.webkit.org/changeset/226794
 
-        * StorageProcess/StorageToWebProcessConnection.cpp:
-        (WebKit::StorageToWebProcessConnection::establishSWServerConnection):
+2018-01-11  Wenson Hsieh  <wenson_hsieh@apple.com>
 
-        * UIProcess/API/Cocoa/WKProcessPool.mm:
-        (-[WKProcessPool _webPageContentProcessCount]):
-        * UIProcess/API/Cocoa/WKProcessPoolPrivate.h:
+        Send PromisedBlobInfo to the client through DragItem instead of DragClient::prepareToDragPromisedBlob
+        https://bugs.webkit.org/show_bug.cgi?id=181497
 
-        * UIProcess/Storage/StorageProcessProxy.cpp:
-        (WebKit::StorageProcessProxy::establishWorkerContextConnectionToStorageProcess):
-        (WebKit::StorageProcessProxy::establishWorkerContextConnectionToStorageProcessForExplicitSession):
-        * UIProcess/Storage/StorageProcessProxy.h:
-        * UIProcess/Storage/StorageProcessProxy.messages.in:
+        Reviewed by Tim Horton.
 
-        * UIProcess/WebProcessPool.cpp:
-        (WebKit::WebProcessPool::establishWorkerContextConnectionToStorageProcess):
-        * UIProcess/WebProcessPool.h:
+        Refactor drag and drop support for promised blob data, so that blob info is shipped across to the client layer
+        via DragItem in the DragClient::startDrag codepath, rather than via a separate prepareToDragPromisedBlob client
+        codepath that stages promised blob info.
 
-        * UIProcess/WebsiteData/WebsiteDataStore.cpp:
-        (WebKit::WebsiteDataStore::WebsiteDataStore):
-        (WebKit::WebsiteDataStore::~WebsiteDataStore):
-        (WebKit::WebsiteDataStore::existingDataStoreForSessionID):
-        * UIProcess/WebsiteData/WebsiteDataStore.h:
+        * UIProcess/Cocoa/WebViewImpl.h:
+        * UIProcess/Cocoa/WebViewImpl.mm:
+        (WebKit::WebViewImpl::prepareToDragPromisedBlob): Deleted.
+        * UIProcess/PageClient.h:
+        (WebKit::PageClient::prepareToDragPromisedBlob): Deleted.
+        * UIProcess/WebPageProxy.cpp:
+        (WebKit::WebPageProxy::prepareToDragPromisedBlob): Deleted.
+        * UIProcess/WebPageProxy.h:
+        * UIProcess/WebPageProxy.messages.in:
+        * UIProcess/ios/PageClientImplIOS.h:
+        * UIProcess/ios/PageClientImplIOS.mm:
+        (WebKit::PageClientImpl::prepareToDragPromisedBlob): Deleted.
+        * UIProcess/ios/WKContentViewInteraction.h:
+        * UIProcess/ios/WKContentViewInteraction.mm:
+        (-[WKContentView _startDrag:item:]):
+        * UIProcess/mac/PageClientImplMac.h:
+        * UIProcess/mac/PageClientImplMac.mm:
+        (WebKit::PageClientImpl::prepareToDragPromisedBlob): Deleted.
+        * WebProcess/WebCoreSupport/WebDragClient.cpp:
+        (WebKit::WebDragClient::prepareToDragPromisedBlob): Deleted.
+        * WebProcess/WebCoreSupport/WebDragClient.h:
+        * WebProcess/WebPage/WebPage.cpp:
+        (WebKit::WebPage::prepareToDragPromisedBlob): Deleted.
+        * WebProcess/WebPage/WebPage.h:
 
-2017-12-13  Per Arne Vollan  <pvollan@apple.com>
+2018-01-09  Per Arne Vollan  <pvollan@apple.com>
 
-        REGRESSION(225597): Can't select a text box or web view on a page when VO is on.
-        https://bugs.webkit.org/show_bug.cgi?id=180756
-        <rdar://problem/35996158>
+        VoiceOver does not work when the WebContent process is using NSRunLoop.
+        https://bugs.webkit.org/show_bug.cgi?id=181331
+        <rdar://problem/36408004>
 
         Reviewed by Brent Fulgham.
 
-        * Platform/IPC/mac/ConnectionMac.mm:
-        (IPC::AccessibilityProcessSuspendedNotification):
-        * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
-        (WebKit::shouldLeakBoost):
-        * WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-OSX.plist:
-        * WebProcess/WebProcess.cpp:
-        (WebKit::WebProcess::initializeProcess):
-
-2017-12-13  Brent Fulgham  <bfulgham@apple.com>
-
-        [iOS] Further Trim WebContent Process sandbox
-        https://bugs.webkit.org/show_bug.cgi?id=180727
-        <rdar://problem/18899506>
-
-        Reviewed by Eric Carlson.
+        When the WebContent process is using NSRunLoop instead of the NSApplication run loop,
+        accessibility must be initialized for VoiceOver to work. This patch also switches to
+        using NSRunLoop in the WebContent process.
 
-        Take another pass over the contents of the file and remove addition items that
-        don't have call sites in WebKit.
+        * Configurations/WebContentService.xcconfig:
+        * Platform/IPC/mac/ConnectionMac.mm:
+        (IPC::AccessibilityProcessSuspendedNotification): Remove unneccessary workaround.
+        * WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-OSX.plist: Switch to NSRunLoop.
+        * WebProcess/cocoa/WebProcessCocoa.mm:
+        (WebKit::WebProcess::platformInitializeProcess): Initialize accessibility.
 
-        * Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:
+2018-01-11  Don Olmstead  <don.olmstead@sony.com>
 
-2017-12-13  Daniel Bates  <dabates@apple.com>
+        WebContextMenuListenerProxy.cpp not including config on first line
+        https://bugs.webkit.org/show_bug.cgi?id=181552
 
-        Move out-parameter in API::FormClient::willBeginInputSession() to the end of the parameter list
-        https://bugs.webkit.org/show_bug.cgi?id=180754
+        Reviewed by Alex Christensen.
 
-        Reviewed by Wenson Hsieh.
+        * UIProcess/WebContextMenuListenerProxy.cpp:
 
-        Group all in-parameters in the signature of API::FormClient::willBeginInputSession() at
-        the front of the parameter list instead of interspersing in- and out- parameters.
+2018-01-11  Youenn Fablet  <youenn@apple.com>
 
-        No functionality changed. So, no new tests.
+        Redirected iframe loading with Request.redirect=follow should fail
+        https://bugs.webkit.org/show_bug.cgi?id=181491
 
-        * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
-        (-[WKWebProcessPlugInBrowserContextController _setFormDelegate:]):
-        * WebProcess/InjectedBundle/APIInjectedBundleFormClient.h:
-        (API::InjectedBundle::FormClient::willBeginInputSession):
-        * WebProcess/WebPage/WebPage.cpp:
-        (WebKit::WebPage::elementDidFocus):
+        Reviewed by Alex Christensen.
 
-2017-12-13  Chris Dumez  <cdumez@apple.com>
+        * WebProcess/Storage/ServiceWorkerClientFetch.cpp:
+        (WebKit::ServiceWorkerClientFetch::validateResponse):
 
-        [iOS] Take process assertion to prevent the service worker process from getting suspended
-        https://bugs.webkit.org/show_bug.cgi?id=180735
+2018-01-11  Youenn Fablet  <youenn@apple.com>
 
-        Reviewed by Brady Eidson.
+        Replace WebRTCLegacyAPIDisabled by WebRTCLegacyAPIEnabled and switch off WebRTC legacy flag by default
+        https://bugs.webkit.org/show_bug.cgi?id=181480
 
-        Take process assertion to prevent the service worker process from getting suspended while
-        it is still needed. We use the same policy as for the network process, meaning that
-        unsuspended WebContent processes prevent the service worker process from getting suspended.
+        Reviewed by Eric Carlson.
 
-        This patch still does not enable service workers on iOS. The demo at https://mdn.github.io/sw-test/
-        appears to work. However, things are not working as expected for mobile.twitter.com where I
-        see the fetches intercepted by the service worker fail when offline for some reason (unrelated
-        to process suspension).
+        Renaming preference to WebRTCLegacyAPIEnabled for simplification and removing it from experimental feature.
+        Set it to off by default.
 
+        * Shared/WebPreferences.yaml:
+        * UIProcess/API/C/WKPreferences.cpp:
+        (WKPreferencesSetWebRTCLegacyAPIEnabled):
+        (WKPreferencesGetWebRTCLegacyAPIEnabled):
+        * UIProcess/API/Cocoa/WKPreferences.mm:
+        (-[WKPreferences _webRTCLegacyAPIEnabled]):
+        (-[WKPreferences _setWebRTCLegacyAPIEnabled:]):
         * UIProcess/WebProcessPool.cpp:
-        (WebKit::m_foregroundWebProcessCounter):
-        (WebKit::m_backgroundWebProcessCounter):
         (WebKit::WebProcessPool::ensureNetworkProcess):
-        (WebKit::WebProcessPool::establishWorkerContextConnectionToStorageProcess):
-        (WebKit::WebProcessPool::disconnectProcess):
-        (WebKit::WebProcessPool::updateProcessAssertions):
-        (WebKit::WebProcessPool::reinstateNetworkProcessAssertionState):
-        * UIProcess/WebProcessPool.h:
-        * UIProcess/WebProcessProxy.cpp:
-        (WebKit::WebProcessProxy::didSetAssertionState):
-        * UIProcess/WebProcessProxy.h:
-
-2017-12-13  Carlos Garcia Campos  <cgarcia@igalia.com>
-
-        Unreviewed. Update OptionsGTK.cmake and NEWS for 2.19.3 release.
-
-        * gtk/NEWS: Add release notes for 2.19.3.
-
-2017-12-12  Daniel Bates  <dabates@apple.com>
-
-        [WK] Add modern WebKit SPI to set auto fill button type and query if the auto fill button is enabled
-        https://bugs.webkit.org/show_bug.cgi?id=180686
+        * WebProcess/WebPage/WebPage.cpp:
+        (WebKit::WebPage::updatePreferences):
 
-        Reviewed by Alex Christensen.
+2018-01-11  Alex Christensen  <achristensen@webkit.org>
 
-        * WebKit.xcodeproj/project.pbxproj:
-        * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInNodeHandle.mm:
-        (-[WKWebProcessPlugInNodeHandle isHTMLInputElementAutoFillButtonEnabled]):
-        (toAutoFillButtonType):
-        (-[WKWebProcessPlugInNodeHandle setHTMLInputElementAutoFillButtonEnabledWithButtonType:]):
-        * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInNodeHandleInternal.h:
-        * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInNodeHandlePrivate.h:
+        Merge sync and async code paths for getting context menus
+        https://bugs.webkit.org/show_bug.cgi?id=181423
 
-2017-12-12  John Wilander  <wilander@apple.com>
+        Reviewed by Joseph Pecoraro.
 
-        Storage Access API: Implement frame-specific access in the network storage session layer
-        https://bugs.webkit.org/show_bug.cgi?id=180679
-        <rdar://problem/35982116>
+        What a mess.  We had a code path for asynchronous context menu generation and a different one for synchronous context menu generation.
+        This makes it so there is just one.  At the API level we see if there is an asynchronous delegate to call, then synchronous.
+        There is a subtle theoretical change in behaviour because m_page.contextMenuClient().showContextMenu is now called for the asynchronous
+        case and it wasn't before, but the one C API client that uses this has nullptr as it's WKPageShowContextMenuCallback, so we won't break anything!
 
-        Reviewed by Alex Christensen.
+        * UIProcess/API/APIContextMenuClient.h:
+        (API::ContextMenuClient::getContextMenuFromProposedMenu):
+        (API::ContextMenuClient::getContextMenuFromProposedMenuAsync): Deleted.
+        * UIProcess/API/C/WKPage.cpp:
+        (WKPageSetPageContextMenuClient):
+        * UIProcess/API/glib/WebKitContextMenuClient.cpp:
+        * UIProcess/WebContextMenuProxy.h:
+        * UIProcess/gtk/WebContextMenuProxyGtk.cpp:
+        (WebKit::WebContextMenuProxyGtk::show):
+        (WebKit::WebContextMenuProxyGtk::showContextMenuWithItems):
+        * UIProcess/gtk/WebContextMenuProxyGtk.h:
+        * UIProcess/mac/WebContextMenuProxyMac.h:
+        * UIProcess/mac/WebContextMenuProxyMac.mm:
+        (WebKit::WebContextMenuProxyMac::showContextMenuWithItems):
+        (WebKit::WebContextMenuProxyMac::showContextMenu):
+        * UIProcess/wpe/WebContextMenuProxyWPE.h:
 
-        This changes adds frameID and pageID to what is communicated for
-        storage access and also stored in the network process' table of
-        partitioning exceptions.
+2018-01-11  Wenson Hsieh  <wenson_hsieh@apple.com>
 
-        * NetworkProcess/NetworkDataTask.cpp:
-        (WebKit::NetworkDataTask::create):
-            Now stores frameID and pageID for the task for easy retrieval
-            in the HSTS checks.
-        * NetworkProcess/NetworkProcess.cpp:
-        (WebKit::NetworkProcess::updateStorageAccessForPrevalentDomains):
-        * NetworkProcess/NetworkProcess.h:
-        * NetworkProcess/NetworkProcess.messages.in:
-        * NetworkProcess/cocoa/NetworkDataTaskCocoa.h:
-        * NetworkProcess/cocoa/NetworkDataTaskCocoa.mm:
-        (WebKit::NetworkDataTaskCocoa::NetworkDataTaskCocoa):
-        (WebKit::NetworkDataTaskCocoa::willPerformHTTPRedirection):
-            These two methods now submit frameID and pageID to the
-            partitioning query call.
-        * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
-        (-[WKNetworkSessionDelegate URLSession:task:willPerformHTTPRedirection:newRequest:completionHandler:]):
-        (-[WKNetworkSessionDelegate URLSession:task:_schemeUpgraded:completionHandler:]):
-            These two methods now submit frameID and pageID to the
-            partitioning query call.
-        * UIProcess/Network/NetworkProcessProxy.cpp:
-        (WebKit::NetworkProcessProxy::updateStorageAccessForPrevalentDomains):
-        * UIProcess/Network/NetworkProcessProxy.h:
-        * UIProcess/WebPageProxy.cpp:
-        (WebKit::WebPageProxy::requestStorageAccess):
-        * UIProcess/WebPageProxy.h:
-        * UIProcess/WebPageProxy.messages.in:
-        * UIProcess/WebResourceLoadStatisticsStore.cpp:
-        (WebKit::WebResourceLoadStatisticsStore::requestStorageAccess):
-        * UIProcess/WebResourceLoadStatisticsStore.h:
-        * UIProcess/WebsiteData/WebsiteDataStore.cpp:
-        (WebKit::WebsiteDataStore::updateStorageAccessForPrevalentDomainsHandler):
-        (WebKit::WebsiteDataStore::enableResourceLoadStatisticsAndSetTestingCallback):
-        (WebKit::WebsiteDataStore::requestStorageAccess):
-        * UIProcess/WebsiteData/WebsiteDataStore.h:
-        * WebProcess/WebCoreSupport/WebChromeClient.cpp:
-        (WebKit::WebChromeClient::requestStorageAccess):
-        * WebProcess/WebCoreSupport/WebChromeClient.h:
-        * WebProcess/WebPage/WebPage.cpp:
-        (WebKit::WebPage::requestStorageAccess):
-        * WebProcess/WebPage/WebPage.h:
+        [Attachment Support] Support dragging attachment elements out as files on iOS
+        https://bugs.webkit.org/show_bug.cgi?id=181199
+        <rdar://problem/36299316>
 
-2017-12-12  Alex Christensen  <achristensen@webkit.org>
+        Reviewed by Tim Horton, Andy Estes and Joseph Pecoraro.
 
-        Modernize WebsiteDataStoreParameters and SandboxExtension::Handle decoding
-        https://bugs.webkit.org/show_bug.cgi?id=180621
+        Implement support for registering and beginning a drag with promised blob info. See below for more detail.
 
-        Reviewed by Youenn Fablet.
+        * UIProcess/ios/WKContentViewInteraction.mm:
+        (-[WKDragSessionContext addTemporaryDirectory:]):
+        (-[WKDragSessionContext cleanUpTemporaryDirectories]):
 
-        * NetworkProcess/NetworkProcessCreationParameters.cpp:
-        (WebKit::NetworkProcessCreationParameters::decode):
-        * NetworkProcess/NetworkResourceLoadParameters.cpp:
-        (WebKit::NetworkResourceLoadParameters::decode):
-        * Shared/LoadParameters.cpp:
-        (WebKit::LoadParameters::decode):
-        * Shared/SandboxExtension.h:
-        (WebKit::decode):
-        (WebKit::SandboxExtension::Handle::decode): Deleted.
-        * Shared/Storage/StorageProcessCreationParameters.cpp:
-        (WebKit::StorageProcessCreationParameters::decode):
-        * Shared/WebProcessCreationParameters.cpp:
-        (WebKit::WebProcessCreationParameters::decode):
-        * Shared/WebsiteDataStoreParameters.cpp:
-        (WebKit::WebsiteDataStoreParameters::decode):
-        * Shared/WebsiteDataStoreParameters.h:
-        * Shared/mac/SandboxExtensionMac.mm:
-        (WebKit::SandboxExtension::Handle::decode):
-        (WebKit::SandboxExtension::HandleArray::HandleArray):
-        (WebKit::SandboxExtension::HandleArray::encode const):
-        (WebKit::SandboxExtension::HandleArray::decode):
-        (WebKit::SandboxExtension::SandboxExtension):
-
-2017-12-12  John Wilander  <wilander@apple.com>
-
-        Dispatch resource load statistics telemetry on the main thread
-        https://bugs.webkit.org/show_bug.cgi?id=180602
-        <rdar://problem/35942205>
+        Introduce WKDragSessionContext, which represents the localContext of a UIDragSession initiated in WebKit. The
+        blob promise dragging codepath uses this to register temporary directories when saving blob data to a location
+        on disk; when all data transfers are finished, or if the drag interaction is being reset, we then use
+        -cleanUpTemporaryDirectories to remove each temporary directory.
 
-        Reviewed by Brent Fulgham.
+        (existingLocalDragSessionContext):
+        (ensureLocalDragSessionContext):
 
-        * UIProcess/WebResourceLoadStatisticsTelemetry.cpp:
-        (WebKit::WebResourceLoadStatisticsTelemetry::calculateAndSubmit):
-            Now switches to the main thread for the telemetry submission
-            through a webpage proxy. The reason is that the webpage we
-            use may go away while we're still using it. This kind of
-            telemetry isn't associated with a specific webpage but the
-            infrastructure requires a webpage proxy.
+        Helper methods to set the UIDragSession's localContext to a WKDragSessionContext and query for any existing
+        context.
 
-2017-12-12  Myles C. Maxfield  <mmaxfield@apple.com>
+        (-[WKContentView cleanupInteraction]):
 
-        IPC code doesn't understand NSDictionaries with non-NSString keys
-        https://bugs.webkit.org/show_bug.cgi?id=180307
-        <rdar://problem/35812382>
+        Before the content view's UIDragInteraction goes away, clean up any temporary directories added to the
+        UIDragSession.
 
-        Reviewed by Alex Christensen.
+        (-[WKContentView _prepareToDragPromisedBlob:]):
 
-        Variable fonts have a dictionary inside its descriptor which represents the values
-        of all the axes of the variable font. Our IPC code wasn't expecting this.
+        When dragging with a promised blob, register a new item provider on the pasteboard representing the blob data,
+        along with any additional metadata associated with the blob. For the promise callback, call out to the network
+        process to write the blob data to a temporary path; when done, call the NSItemProvider's completion handler with
+        the temporary blob data location.
 
-        * Shared/mac/ArgumentCodersMac.mm:
-        (IPC::encode):
-        (IPC::decode):
+        (-[WKContentView _itemsForBeginningOrAddingToSessionWithRegistrationList:stagedDragSource:]):
+        (-[WKContentView dragInteraction:sessionDidTransferItems:]):
 
-2017-12-12  Brent Fulgham  <bfulgham@apple.com>
+        Use this delegate hook as an opportunity to remove any temporary directories created when promised blob data is
+        requested upon drop. Since we know the drag session that has finished transferring data, we simply ask its local
+        context (a WKDragSessionContext) to remove any temporary filepaths it has created.
 
-        Unreviewed build fix after r225763.
+2018-01-10  Jeff Miller  <jeffm@apple.com>
 
-        Remove dangling close-parentheses character.
+        -[WKWebView _web_gestureEventWasNotHandledByWebCore:] should call -_gestureEventWasNotHandledByWebCore:
+        https://bugs.webkit.org/show_bug.cgi?id=181498
 
-        * Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:
+        Reviewed by Alex Christensen.
 
-2017-12-12  Zach Li  <zachli@apple.com>
+        WKView's API contract allows clients to override -_gestureEventWasNotHandledByWebCore:, and -[WKView
+        _web_gestureEventWasNotHandledByWebCore:] calls -_gestureEventWasNotHandledByWebCore: instead of
+        invoking WebViewImpl::gestureEventWasNotHandledByWebCoreFromViewOnly() directly. WKWebView should do
+        the same thing.
 
-        [WK2] Expose image via WKBundleHitTestResult API.
-        https://bugs.webkit.org/show_bug.cgi?id=180552.
-        rdar://problem/23951521
+        * UIProcess/API/Cocoa/WKWebView.mm:
+        (-[WKWebView _web_gestureEventWasNotHandledByWebCore:]):
+        Call -_gestureEventWasNotHandledByWebCore:, which will call gestureEventWasNotHandledByWebCoreFromViewOnly().
 
-        Reviewed by Simon Fraser.
+2018-01-10  Wenson Hsieh  <wenson_hsieh@apple.com>
 
-        * WebProcess/InjectedBundle/API/c/WKBundleHitTestResult.cpp:
-        (WKBundleHitTestResultGetImage):
-        * WebProcess/InjectedBundle/API/c/WKBundleHitTestResult.h:
+        REGRESSION(r222507): Composition highlight doesn't render when using IME
+        https://bugs.webkit.org/show_bug.cgi?id=181485
+        <rdar://problem/35896516>
 
-        * WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp:
-        (WebKit::InjectedBundleHitTestResult::image const):
-        Convert from WebCore::Image to WebImage by creating a WebImage
-        and paint the WebCore::Image into its graphics context. For now,
-        only handle bitmap images.
-        * WebProcess/InjectedBundle/InjectedBundleHitTestResult.h:
+        Reviewed by Ryosuke Niwa.
 
-2017-12-12  Simon Fraser  <simon.fraser@apple.com>
+        Add plumbing for a `suppressUnderline` argument when setting marked text.
 
-        Remove ColorSpaceDeviceRGB and most users of the obsolete deviceRGB colorspace
-        https://bugs.webkit.org/show_bug.cgi?id=180689
+        * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
+        (WKBundlePageSetComposition):
+        * WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h:
+        * WebProcess/WebPage/WebPage.cpp:
+        (WebKit::WebPage::setCompositionForTesting):
+        * WebProcess/WebPage/WebPage.h:
 
-        Reviewed by Tim Horton.
+2018-01-10  Tim Horton  <timothy_horton@apple.com>
 
-        Remove encoding of ColorSpaceDeviceRGB.
+        REGRESSION (r213590): Swipe from edge to go to previous page is significantly slower than tapping back button on Twitter
+        https://bugs.webkit.org/show_bug.cgi?id=181269
+        <rdar://problem/35110344>
 
-        * Shared/WebCoreArgumentCoders.h:
+        Reviewed by Simon Fraser.
 
-2017-12-12  Brent Fulgham  <bfulgham@apple.com>
+        * UIProcess/API/Cocoa/WKWebView.mm:
+        (-[WKWebView _processDidExit]):
+        (-[WKWebView _didCommitLayerTree:]):
+        When swiping to a page that set history.scrollRestoration = "manual",
+        we will never restore the scroll position. We will still restore
+        "state", but won't have a location. Currently, the code assumes that
+        it should wait to remove the swipe snapshot until the scroll position
+        is restored. Instead, wait until the "state" is restored, whether
+        or not that includes a scroll position/center point restoration.
+
+        Do this by making _firstTransactionIDAfterPageRestore an optional,
+        and reset it after it fires, so that we only run the restoration code
+        in _didCommitLayerTree for the first commit after state restoration,
+        not all subsequent commits. Then, tell ViewGestureController that
+        the scroll position has been restored even if the page opted out.
+
+        The reason that this is specific to pushState is that normal,
+        non-same-document loads bail from waiting for the scroll position
+        restoration in VGC::didReachMainFrameLoadTerminalState() (see the long
+        comment there for an explanation).
+
+        (-[WKWebView _beginBackSwipeForTesting]):
+        (-[WKWebView _completeBackSwipeForTesting]):
+        * Platform/spi/ios/UIKitSPI.h:
+        * UIProcess/API/Cocoa/WKWebViewPrivate.h:
+        * UIProcess/Cocoa/ViewGestureController.h:
+        * UIProcess/ios/ViewGestureControllerIOS.mm:
+        (-[WKSwipeTransitionController transitionForDirection:]):
+        (WebKit::ViewGestureController::beginSimulatedSwipeInDirectionForTesting):
+        (WebKit::ViewGestureController::completeSimulatedSwipeInDirectionForTesting):
+        * UIProcess/mac/ViewGestureControllerMac.mm:
+        (WebKit::ViewGestureController::beginSimulatedSwipeInDirectionForTesting):
+        (WebKit::ViewGestureController::completeSimulatedSwipeInDirectionForTesting):
+        Add a mechanism to forcefully test swipe back. Instead of simulating
+        events like on Mac, we just talk to the UIKit internals and force
+        the interaction to start, pause, and then complete when we want.
 
-        REGRESSION(r216941): Plugin Process can't access AppStore Plugin Service
-        https://bugs.webkit.org/show_bug.cgi?id=180701
-        <rdar://problem/35940948>
+2018-01-10  Brent Fulgham  <bfulgham@apple.com>
 
-        Reviewed by Daniel Bates.
+        Use protectedThis for the 'updatePrevalentDomainsToPartitionOrBlockCookies' lambda
+        https://bugs.webkit.org/show_bug.cgi?id=181452
+        <rdar://problem/36416912>
+        
+        Reviewed by Chris Dumez.
 
-        The PluginProcess needs access to the AppStore Plugin XPC service.
+        We forgot to use a 'protectedThis' back in r225006 for one of the lambdas used by
+        the WebsiteDataStore for processing.
 
-        * PluginProcess/mac/com.apple.WebKit.plugin-common.sb.in:
+        * UIProcess/WebsiteData/WebsiteDataStore.cpp:
+        (WebKit::WebsiteDataStore::enableResourceLoadStatisticsAndSetTestingCallback):
 
-2017-12-12  Brady Eidson  <beidson@apple.com>
+2018-01-09  John Wilander  <wilander@apple.com>
 
-        Make ServiceWorkers follow the DEFAULT_EXPERIMENTAL_FEATURES_ENABLED flag on Mac.
-        <rdar://problem/35978311> and https://bugs.webkit.org/show_bug.cgi?id=180697
+        Storage Access API: Turn feature on by default in WebPreferences.yaml
+        https://bugs.webkit.org/show_bug.cgi?id=181458
 
-        Reviewed by Chris Dumez.
+        Reviewed by Brent Fulgham.
 
         * Shared/WebPreferences.yaml:
-        * Shared/WebPreferencesDefaultValues.h:
-
-2017-12-12  Chris Dumez  <cdumez@apple.com>
-
-        Simplify IPC code between WebProcess and StorageProcess for serviceWorker.postMessage()
-        https://bugs.webkit.org/show_bug.cgi?id=180683
-
-        Reviewed by Brady Eidson.
-
-        Merge the 2 code paths from calling postMessage() from a ServiceWorkerClient and from
-        a ServiceWorker. Also, postMessage() now only IPCs an identifier from the WebContent
-        process to the StorageProcess. The ServiceWorkerClientData is looked up on Storage
-        process side from the identifier before being sent to the context process.
 
-        * Scripts/webkit/messages.py:
-        (forward_declarations_and_headers):
-        (headers_for_type):
-        * Shared/WebCoreArgumentCoders.cpp:
-        (IPC::ArgumentCoder<ServiceWorkerOrClientIdentifier>::encode):
-        (IPC::ArgumentCoder<ServiceWorkerOrClientIdentifier>::decode):
-        * Shared/WebCoreArgumentCoders.h:
-        * StorageProcess/ServiceWorker/WebSWServerConnection.cpp:
-        (WebKit::WebSWServerConnection::postMessageToServiceWorker):
-        * StorageProcess/ServiceWorker/WebSWServerConnection.h:
-        * StorageProcess/ServiceWorker/WebSWServerConnection.messages.in:
-        * WebProcess/Storage/WebSWClientConnection.cpp:
-        (WebKit::WebSWClientConnection::postMessageToServiceWorker):
-        * WebProcess/Storage/WebSWClientConnection.h:
+2018-01-09  Alex Christensen  <achristensen@webkit.org>
 
-2017-12-12  Yusuke Suzuki  <utatane.tea@gmail.com>
+        WKOpenPanelParameters SPI should return autoreleased objects
+        https://bugs.webkit.org/show_bug.cgi?id=181457
+        <rdar://problem/35884960>
 
-        [WTF] Thread::create should have Thread::tryCreate
-        https://bugs.webkit.org/show_bug.cgi?id=180333
+        Reviewed by Tim Horton.
 
-        Reviewed by Darin Adler.
+        In r226607 I made a mistake by returning an object that has been released.
+        I instead follow a pattern of leaking and autoreleasing that we use elsewhere in the ObjC API.
 
-        * UIProcess/API/glib/IconDatabase.cpp:
-        (WebKit::IconDatabase::open):
-        * UIProcess/linux/MemoryPressureMonitor.cpp:
-        (WebKit::MemoryPressureMonitor::MemoryPressureMonitor):
+        * UIProcess/API/Cocoa/WKOpenPanelParameters.mm:
+        (-[WKOpenPanelParameters _acceptedMIMETypes]):
+        (-[WKOpenPanelParameters _acceptedFileExtensions]):
 
-2017-12-11  Zan Dobersek  <zdobersek@igalia.com>
+2018-01-09  Dan Bernstein  <mitz@apple.com>
 
-        [CoordGraphics] Move UpdateAtlas, AreaAllocator into the platform layer
-        https://bugs.webkit.org/show_bug.cgi?id=180641
+        Removed some empty directories that were left behind
 
-        Reviewed by Michael Catanzaro.
+        * WebProcess/Cookies/cf: Removed.
+        * WebProcess/ios: Removed.
 
-        Move the UpdateAtlas and AreaAllocator classes into the platform layer,
-        moving over build targets and adjust UpdateAtlas class references in
-        CompositingCoordinator.
+2018-01-09  Paul Knight  <pknight@apple.com>
 
-        * PlatformGTK.cmake:
-        * PlatformWPE.cmake:
-        * PlatformWin.cmake:
-        * WebProcess/WebPage/CoordinatedGraphics/CompositingCoordinator.h:
+        Don't record dynamic spelling corrections while in an ephemeral browsing session
+        https://bugs.webkit.org/show_bug.cgi?id=181417
+        <rdar://problem/33309104>
 
-2017-12-11  Alex Christensen  <achristensen@webkit.org>
+        Dynamic spelling correction responses are kept on disk. Avoid recording
+        these responses when in an ephemeral session.
 
-        Add a WKPageGroupRef setter in WKWebViewConfiguration
-        https://bugs.webkit.org/show_bug.cgi?id=180674
-        <rdar://problem/35920392>
+        Reviewed by Tim Horton and Wenson Hsieh.
 
-        Reviewed by Brady Eidson.
+        * UIProcess/mac/CorrectionPanel.h:
+        * UIProcess/mac/CorrectionPanel.mm:
+        (WebKit::CorrectionPanel::recordAutocorrectionResponse):
+            Add a WebViewImpl parameter so we can query the current session.
+            Return early before recording the response if the session is
+            ephemeral.
+        (WebKit::CorrectionPanel::handleAcceptedReplacement):
+            Update a caller to include the new parameter.
+        * UIProcess/mac/PageClientImplMac.mm:
+        (WebKit::PageClientImpl::recordAutocorrectionResponse):
+            Ditto.
 
-        There is a Mac app trying to transition to WKWebView, and it uses WKPageGroupRef extensively.
-        To help it transition, we are temporarily giving it an ObjC way to use this organization for
-        its UserContentControllers to be united per PageGroup before it transitions away from SPIs like
-        WKBundleAddUserScript.  Make it Mac-only to indicate that this should be transitioned away from,
-        rather than adopted on iOS.
-        
-        No change in behavior for apps not using the new WKWebViewConfiguration._pageGroup SPI.
+2018-01-09  Carlos Garcia Campos  <cgarcia@igalia.com>
 
-        * UIProcess/API/Cocoa/WKWebView.mm:
-        (-[WKWebView _initializeWithConfiguration:]):
-        * UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
-        (-[WKWebViewConfiguration copyWithZone:]):
-        (-[WKWebViewConfiguration _pageGroup]):
-        (-[WKWebViewConfiguration _setPageGroup:]):
-        * UIProcess/API/Cocoa/WKWebViewConfigurationPrivate.h:
+        Unreviewed. Update OptionsGTK.cmake and NEWS for 2.19.5 release.
 
-2017-12-11  Brent Fulgham  <bfulgham@apple.com>
+        * gtk/NEWS: Add release notes for 2.19.5.
 
-        [iOS] Remove unused services from WebContent Process sandbox
-        https://bugs.webkit.org/show_bug.cgi?id=180670
+2018-01-09  Carlos Garcia Campos  <cgarcia@igalia.com>
 
-        Reviewed by Eric Carlson.
+        [GTK] Missing symbols exported in 2.19.4
+        https://bugs.webkit.org/show_bug.cgi?id=181433
 
-        Pare down the set of sandbox exceptions in the iOS WebContent process sandbox to just
-        those services actually in use:
-        1. Remove unused code.
-        2. Instead of defining a 'UIKit-app' function and calling it, just declare the individual sandbox
-        commands inline. This will allow them to be more easily consolidated with other parts of the
-        sandbox in a future step.
+        Reviewed by Michael Catanzaro.
 
-        This update should not change behavior.
+        Add missing WEBKIT_API to webkit_dom_dom_window_webkit_message_handlers_post_message().
 
-        * Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:
+        * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMWindow.h:
+        * webkitglib-symbols.map: Remove webkit_media_player_debug from local.
 
-2017-12-11  Chris Dumez  <cdumez@apple.com>
+2018-01-09  Youenn Fablet  <youenn@apple.com>
 
-        Merge ServiceWorkerClientIdentifier into ServiceWorkerClientData
-        https://bugs.webkit.org/show_bug.cgi?id=180669
+        SWClientConnection should not keep references to service worker jobs
+        https://bugs.webkit.org/show_bug.cgi?id=181381
 
-        Reviewed by Youenn Fablet.
+        Reviewed by Chris Dumez.
 
-        Merge ServiceWorkerClientIdentifier into ServiceWorkerClientData, for consistency with
-        ServiceWorkerIdentifier / ServiceWorkerData, and start simplifying the postMessage() code.
+        Updated IPC handling based on WebCore refactoring.
 
         * Scripts/webkit/messages.py:
         (forward_declarations_and_headers):
         (headers_for_type):
-        * Shared/WebCoreArgumentCoders.cpp:
-        (IPC::ArgumentCoder<ServiceWorkerOrClientData>::encode):
-        (IPC::ArgumentCoder<ServiceWorkerOrClientData>::decode):
-        * Shared/WebCoreArgumentCoders.h:
         * StorageProcess/ServiceWorker/WebSWServerConnection.cpp:
-        (WebKit::WebSWServerConnection::~WebSWServerConnection):
-        (WebKit::WebSWServerConnection::postMessageToServiceWorkerFromClient):
-        (WebKit::WebSWServerConnection::postMessageToServiceWorkerFromServiceWorker):
-        (WebKit::WebSWServerConnection::registerServiceWorkerClient):
-        (WebKit::WebSWServerConnection::unregisterServiceWorkerClient):
+        (WebKit::WebSWServerConnection::rejectJobInClient):
+        (WebKit::WebSWServerConnection::resolveRegistrationJobInClient):
+        (WebKit::WebSWServerConnection::resolveUnregistrationJobInClient):
+        (WebKit::WebSWServerConnection::startScriptFetchInClient):
         * StorageProcess/ServiceWorker/WebSWServerConnection.h:
-        * StorageProcess/ServiceWorker/WebSWServerConnection.messages.in:
-        * StorageProcess/ServiceWorker/WebSWServerToContextConnection.cpp:
-        (WebKit::WebSWServerToContextConnection::matchAllCompleted):
-        * StorageProcess/ServiceWorker/WebSWServerToContextConnection.h:
-        * WebProcess/Storage/WebSWClientConnection.cpp:
-        (WebKit::WebSWClientConnection::registerServiceWorkerClient):
-        (WebKit::WebSWClientConnection::unregisterServiceWorkerClient):
-        * WebProcess/Storage/WebSWClientConnection.h:
-        * WebProcess/Storage/WebSWContextManagerConnection.cpp:
-        (WebKit::WebSWContextManagerConnection::postMessageToServiceWorker):
-        (WebKit::WebSWContextManagerConnection::matchAllCompleted):
-        * WebProcess/Storage/WebSWContextManagerConnection.h:
-        * WebProcess/Storage/WebSWContextManagerConnection.messages.in:
+        * WebProcess/Storage/WebSWClientConnection.messages.in:
 
-2017-12-11  Youenn Fablet  <youenn@apple.com>
+2018-01-09  Carlos Garcia Campos  <cgarcia@igalia.com>
 
-        RTCPacketOptions::packet_id should be encoded as 32 bits integer.
-        https://bugs.webkit.org/show_bug.cgi?id=180654
+        Unreviewed. Update OptionsGTK.cmake and NEWS for 2.19.4 release.
 
-        Reviewed by Eric Carlson.
+        * gtk/NEWS: Add release notes for 2.19.4.
 
-        packet_id is a 16 bit unsigned integer, but it can also take -1 if its value is not set.
-        Before the patch, it was IPC encoded as a 16 bit signed integer which is not large enough.
+2018-01-09  Ali Juma  <ajuma@chromium.org>
 
-        * Shared/RTCPacketOptions.cpp:
-        (WebKit::RTCPacketOptions::encode const):
-        (WebKit::RTCPacketOptions::decode):
+        Implement VisualViewport API events
+        https://bugs.webkit.org/show_bug.cgi?id=179386
 
-2017-12-11  Chris Dumez  <cdumez@apple.com>
+        Reviewed by Frédéric Wang.
 
-        Layout Test http/tests/workers/service/postmessage-after-sw-process-crash.https.html is flaky
-        https://bugs.webkit.org/show_bug.cgi?id=180659
+        Change the default value of the VisualViewportAPI experimental feature flag to
+        DEFAULT_EXPERIMENTAL_FEATURES_ENABLED. This patch completes the implementation
+        of this feature as specified by https://wicg.github.io/visual-viewport/, so this
+        feature is now ready for wider testing.
 
-        Reviewed by Youenn Fablet.
+        * Shared/WebPreferences.yaml:
 
-        Fix flaky crash due to capturing an IPC::DataReference in a lambda, which would point to invalid
-        memory when the lambda is called asynchronously.
+2018-01-08  Alex Christensen  <achristensen@webkit.org>
 
-        * StorageProcess/ServiceWorker/WebSWServerConnection.cpp:
-        (WebKit::WebSWServerConnection::postMessageToServiceWorkerFromClient):
-        (WebKit::WebSWServerConnection::postMessageToServiceWorkerFromServiceWorker):
+        Add WKNavigationDelegate SPI exposing WebProcess crash reason
+        https://bugs.webkit.org/show_bug.cgi?id=181410
+        <rdar://problem/36167199>
 
-2017-12-11  Brent Fulgham  <bfulgham@apple.com>
+        Reviewed by Wenson Hsieh.
 
-        [iOS] Don't import 'UIKit-apps.sb' to the WebContent process sandbox
-        https://bugs.webkit.org/show_bug.cgi?id=180610
-        <rdar://problem/18899506>
+        We exposed it in the C SPI.
 
-        Reviewed by Dean Jackson.
+        * UIProcess/API/Cocoa/WKNavigationDelegatePrivate.h:
+        * UIProcess/Cocoa/NavigationState.h:
+        * UIProcess/Cocoa/NavigationState.mm:
+        (WebKit::NavigationState::setNavigationDelegate):
+        (WebKit::toWKProcessTerminationReason):
+        (WebKit::NavigationState::NavigationClient::processDidTerminate):
 
-        Stop including 'system.sb', and just include the portions of that sandbox that we
-        actually use in WebContent Process. This is the first step in some further sandbox
-        tightening.
+2018-01-08  Alex Christensen  <achristensen@webkit.org>
 
-        * Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:
+        Make ObjC SPI equivalent to WKPageNavigationClient.decidePolicyForPluginLoad
+        https://bugs.webkit.org/show_bug.cgi?id=181413
+        <rdar://problem/36169005>
 
-2017-12-11  Yusuke Suzuki  <utatane.tea@gmail.com>
+        Reviewed by Wenson Hsieh.
 
-        [WTF] Add Converter traits to StringHasher instead of function pointer
-        https://bugs.webkit.org/show_bug.cgi?id=180656
+        * UIProcess/API/APINavigationClient.h:
+        (API::NavigationClient::decidePolicyForPluginLoad):
+        * UIProcess/API/C/WKPage.cpp:
+        (WKPageSetPageNavigationClient):
+        * UIProcess/API/Cocoa/WKNavigationDelegatePrivate.h:
+        * UIProcess/Cocoa/NavigationState.h:
+        * UIProcess/Cocoa/NavigationState.mm:
+        (WebKit::NavigationState::setNavigationDelegate):
+        (WebKit::toPluginModuleLoadPolicy):
+        (WebKit::toWKPluginModuleLoadPolicy):
+        (WebKit::NavigationState::NavigationClient::decidePolicyForPluginLoad):
+        * UIProcess/WebPageProxy.cpp:
+        (WebKit::WebPageProxy::findPlugin):
 
-        Reviewed by JF Bastien.
+2018-01-08  Ryosuke Niwa  <rniwa@webkit.org>
 
-        * WebProcess/WebProcess.cpp:
-        (WebKit::addCaseFoldedCharacters):
+        iOS build fix attempt after r226602.
 
-2017-12-11  David Quesada  <david_quesada@apple.com>
+        * UIProcess/API/C/WKContextMenuListener.cpp:
+        (WKContextMenuListenerUseContextMenuItems):
 
-        Turn on ENABLE_APPLICATION_MANIFEST
-        https://bugs.webkit.org/show_bug.cgi?id=180562
-        rdar://problem/35924737
+2018-01-08  Alex Christensen  <achristensen@webkit.org>
 
-        Reviewed by Geoffrey Garen.
+        Add SPI for WKOpenPanelParameters._acceptedMIMETypes and _acceptedFileExtensions
+        https://bugs.webkit.org/show_bug.cgi?id=181408
+        <rdar://problem/35884960>
 
-        * Configurations/FeatureDefines.xcconfig:
+        Reviewed by Tim Horton.
 
-2017-12-11  Dean Jackson  <dino@apple.com>
+        * UIProcess/API/Cocoa/WKOpenPanelParameters.mm:
+        (-[WKOpenPanelParameters _acceptedMIMETypes]):
+        (-[WKOpenPanelParameters _acceptedFileExtensions]):
+        * UIProcess/API/Cocoa/WKOpenPanelParametersInternal.h:
+        * UIProcess/API/Cocoa/WKOpenPanelParametersPrivate.h: Added.
+        * WebKit.xcodeproj/project.pbxproj:
 
-        Add a runtime feature flag for ImageBitmap and OffscreenCanvas
-        https://bugs.webkit.org/show_bug.cgi?id=180652
-        <rdar://problem/35969611>
+2018-01-08  Commit Queue  <commit-queue@webkit.org>
 
-        Reviewed by Antoine Quint.
+        Unreviewed, rolling out r226532 and r226540.
+        https://bugs.webkit.org/show_bug.cgi?id=181422
 
-        Add an experimental feature flag for these interfaces.
+        jessie says basic browsing does not seem to work (Requested by
+        alexchristensen on #webkit).
 
-        * Shared/WebPreferences.yaml:
+        Reverted changesets:
 
-2017-12-10  Stephan Szabo  <stephan.szabo@sony.com>
+        "Add CSP support to service workers"
+        https://bugs.webkit.org/show_bug.cgi?id=181385
+        https://trac.webkit.org/changeset/226532
 
-        APIClient.h uses things from <tuple> without including it explicitly
-        https://bugs.webkit.org/show_bug.cgi?id=180609
+        "SWClientConnection should not keep references to service
+        worker jobs"
+        https://bugs.webkit.org/show_bug.cgi?id=181381
+        https://trac.webkit.org/changeset/226540
 
-        Reviewed by Darin Adler.
+2018-01-08  Wenson Hsieh  <wenson_hsieh@apple.com>
 
-        * Shared/API/APIClient.h:
+        [Attachment Support] Expose file name and content type of WKAttachment
+        https://bugs.webkit.org/show_bug.cgi?id=181390
+        <rdar://problem/36336837>
 
-2017-12-08  Youenn Fablet  <youenn@apple.com>
+        Reviewed by Tim Horton.
 
-        Service Worker should use a correct user agent
-        https://bugs.webkit.org/show_bug.cgi?id=180566
-        <rdar://problem/35926295>
+        Add support for -[_WKAttachment requestInfo:], which fetches a snapshot of the attachment's state. This API is
+        meant to be a replacement for -requestData: that provides additional metadata about the attachment.
 
-        Reviewed by Chris Dumez.
+        * Scripts/webkit/messages.py:
+        (headers_for_type):
+        * Shared/WebCoreArgumentCoders.cpp:
+        (IPC::ArgumentCoder<AttachmentInfo>::encode):
+        (IPC::ArgumentCoder<AttachmentInfo>::decode):
+        * Shared/WebCoreArgumentCoders.h:
 
-        Addendum to landed patch.
-        This change was removed from the last version of the patch but proves to be needed by Safari.
+        Add IPC support for AttachmentInfo. Note that instead of using (encode|decode)SharedBuffer, we send and receive
+        data references to the shared buffer.
 
-        * UIProcess/WebProcessPool.cpp:
-        (WebKit::WebProcessPool::establishWorkerContextConnectionToStorageProcess):
-        Added back setting the user agent at start of service worker in case a page is already created.
+        * UIProcess/API/APIAttachment.cpp:
+        (API::Attachment::requestInfo):
+        (API::Attachment::requestData): Deleted.
+        * UIProcess/API/APIAttachment.h:
 
-2017-12-08  Brady Eidson  <beidson@apple.com>
+        Change requestData to requestInfo.
 
-        Delay some service worker operations until after the database import completes.
-        https://bugs.webkit.org/show_bug.cgi?id=180573
+        * UIProcess/API/Cocoa/_WKAttachment.h:
+        * UIProcess/API/Cocoa/_WKAttachment.mm:
+        (-[_WKAttachmentInfo initWithInfo:]):
+        (-[_WKAttachmentInfo data]):
+        (-[_WKAttachmentInfo name]):
+        (-[_WKAttachmentInfo filePath]):
+        (-[_WKAttachmentInfo contentType]):
+        (-[_WKAttachment requestInfo:]):
+        (-[_WKAttachment requestData:]):
 
-        Reviewed by Chris Dumez.
+        Implement -requestInfo: by calling into APIAttachment, and reimplement -requestData: in terms of -requestInfo:.
 
-        * StorageProcess/ServiceWorker/WebSWOriginStore.cpp:
-        (WebKit::WebSWOriginStore::importComplete): Tell the Origin Table on all connects that
-          the import is complete.
-        (WebKit::WebSWOriginStore::registerSWServerConnection):
-        * StorageProcess/ServiceWorker/WebSWOriginStore.h:
-
-        * WebProcess/Storage/WebSWClientConnection.cpp:
-        (WebKit::WebSWClientConnection::mayHaveServiceWorkerRegisteredForOrigin const):
-        (WebKit::WebSWClientConnection::setSWOriginTableIsImported): Run deferred tasks!
-        (WebKit::WebSWClientConnection::matchRegistration): If the import isn't complete yet, delay
-          the match registration task until later.
-        (WebKit::WebSWClientConnection::runOrDelayTask): Either send the message now or save off
-          the task to wait until the import is complete.
-        (WebKit::WebSWClientConnection::getRegistrations): If the import isn't complete yet, delay
-          the get registrations task until later.
-        (WebKit::WebSWClientConnection::initializeSWOriginTableAsEmpty): Deleted.
-        * WebProcess/Storage/WebSWClientConnection.h:
-        * WebProcess/Storage/WebSWClientConnection.messages.in:
+        * UIProcess/WebPageProxy.cpp:
+        (WebKit::WebPageProxy::attachmentInfoCallback):
+        (WebKit::WebPageProxy::requestAttachmentInfo):
+        (WebKit::WebPageProxy::sharedBufferCallback): Deleted.
+        (WebKit::WebPageProxy::requestAttachmentData): Deleted.
+        * UIProcess/WebPageProxy.h:
+        * UIProcess/WebPageProxy.messages.in:
 
-        * WebProcess/Storage/WebSWOriginTable.cpp:
-        (WebKit::WebSWOriginTable::setSharedMemory):
-        * WebProcess/Storage/WebSWOriginTable.h:
-        (WebKit::WebSWOriginTable::isImported const):
-        (WebKit::WebSWOriginTable::setIsImported):
-        (WebKit::WebSWOriginTable::isInitialized const): Deleted.
-        (WebKit::WebSWOriginTable::initializeAsEmpty): Deleted.
+        Rename the SharedBufferCallback IPC message to AttachmentInfoCallback, and make it conditional on
+        ATTACHMENT_ELEMENT. Rename requestAttachmentData to requestAttachmentInfo.
 
-2017-12-08  Youenn Fablet  <youenn@apple.com>
+        * WebProcess/WebPage/WebPage.cpp:
+        (WebKit::WebPage::requestAttachmentInfo):
+        (WebKit::WebPage::invokeSharedBufferCallback): Deleted.
+        (WebKit::WebPage::requestAttachmentData): Deleted.
 
-        Service Worker should use a correct user agent
-        https://bugs.webkit.org/show_bug.cgi?id=180566
-        <rdar://problem/35926295>
+        Rename requestAttachmentData to requestAttachmentInfo and adopt HTMLAttachmentElement::requestInfo.
 
-        Reviewed by Chris Dumez.
+        * WebProcess/WebPage/WebPage.h:
+        * WebProcess/WebPage/WebPage.messages.in:
 
-        Add support to set service worker user agent from UIProcess to service worker process.
-        One user agent is currently supported per service worker process and it can be changed at any given time.
-        Only new service worker will use the new value.
-        Once a service worker is launched, it will stay with the same user agent value.
+2018-01-08  Alex Christensen  <achristensen@webkit.org>
 
-        This sets both navigator.userAgent and User-Agent header name used for fetch within a service worker.
-        Compute the service worker process user agent by picking the last user agent set for a web page.
-
-        * UIProcess/ServiceWorkerProcessProxy.cpp:
-        (WebKit::ServiceWorkerProcessProxy::start):
-        (WebKit::ServiceWorkerProcessProxy::setUserAgent):
-        * UIProcess/ServiceWorkerProcessProxy.h:
-        * UIProcess/WebPageProxy.cpp:
-        (WebKit::WebPageProxy::setApplicationNameForUserAgent):
-        * UIProcess/WebProcessPool.cpp:
-        (WebKit::WebProcessPool::establishWorkerContextConnectionToStorageProcess):
-        (WebKit::WebProcessPool::createWebPage):
-        (WebKit::WebProcessPool::updateServiceWorkerUserAgent):
-        * UIProcess/WebProcessPool.h:
-        * WebProcess/Storage/WebSWContextManagerConnection.cpp:
-        (WebKit::WebSWContextManagerConnection::installServiceWorker):
-        (WebKit::WebSWContextManagerConnection::setUserAgent):
-        (WebKit::WebSWContextManagerConnection::removeFrameLoaderClient):
-        * WebProcess/Storage/WebSWContextManagerConnection.h:
-        * WebProcess/Storage/WebSWContextManagerConnection.messages.in:
-
-2017-12-07  Simon Fraser  <simon.fraser@apple.com>
-
-        Wrong caret position for input field inside a fixed position parent on iOS 11
-        https://bugs.webkit.org/show_bug.cgi?id=176896
-        rdar://problem/33726145
+        Pass around Vector<Ref<WebContextMenuItem>> instead of WKArrayRef or Vector<WebContextMenuItemData>
+        https://bugs.webkit.org/show_bug.cgi?id=181419
 
         Reviewed by Tim Horton.
 
-        In r219668 I added code to compute a layout viewport rect in the web process, so that
-        after programmatic scrolling, getBoundingClientRect() would return the correct values.
-        However, that computation sometimes used a different visual viewport than the UI process,
-        resulting in a different layout viewport being set. This would happen when the keyboard
-        was visible, and the combination of this and zooming when focusing an input would result
-        in a state where the scrolling tree contained notes computed with the bad layout viewport.
-        This could cause apparently offset fixed elements, and bad caret positioning if those fixed
-        elements contained the focused input.
-
-        Fix by passing to the web process the same visual viewport rect that the UI process is using,
-        namely "unobscuredContentRectRespectingInputViewBounds". This was already being set in
-        VisibleContentRectUpdateInfo but wasn't encoded/decoded, so fix that. Set it as an optional<>
-        on FrameView when different from the normal visual viewport, and return it from
-        visualViewportRect().
-
-        Some other minor logging changes.
-
-        * Shared/VisibleContentRectUpdateInfo.cpp:
-        (WebKit::VisibleContentRectUpdateInfo::encode const):
-        (WebKit::VisibleContentRectUpdateInfo::decode):
-        (WebKit::operator<<):
-        * Shared/VisibleContentRectUpdateInfo.h:
-        (WebKit::VisibleContentRectUpdateInfo::VisibleContentRectUpdateInfo):
-        * WebProcess/WebPage/ios/WebPageIOS.mm:
-        (WebKit::WebPage::updateVisibleContentRects):
-
-2017-12-06  Simon Fraser  <simon.fraser@apple.com>
-
-        When the iPhone keyboard is up, sometimes we never commit a stable update and re-show the caret
-        https://bugs.webkit.org/show_bug.cgi?id=180498
+        Passing a WKArrayRef to an API object is messy and was preventing me from moving things around and making ObjC SPI.
+        No change in behavior.  Just using different layering abstractions for the same data.
 
-        Reviewed by Tim Horton.
+        * UIProcess/API/C/WKContextMenuListener.cpp:
+        (WKContextMenuListenerUseContextMenuItems):
+        * UIProcess/WebContextMenuListenerProxy.cpp:
+        (WebKit::WebContextMenuListenerProxy::useContextMenuItems):
+        * UIProcess/WebContextMenuListenerProxy.h:
+        * UIProcess/WebContextMenuProxy.h:
+        * UIProcess/mac/WebContextMenuProxyMac.h:
+        * UIProcess/mac/WebContextMenuProxyMac.mm:
+        (WebKit::WebContextMenuProxyMac::showContextMenuWithItems):
+        (WebKit::WebContextMenuProxyMac::showContextMenu):
 
-        When the keyboard is showing, we would think that the page was in a rubber-banding state
-        because contentOffsetBoundedInValidRange() would always clamp the content offset to a different
-        value.
+2018-01-08  John Wilander  <wilander@apple.com>
 
-        This happened because scrollView.contentInset don't change when the keyboard is showing,
-        but UIKit actually consults scrollView.adjustedContentInset, which does. If we use
-        scrollView.adjustedContentInset in this computation, we'll get a correct answer.
+        Storage Access API: Remove access for all frames under a page when the page is closed
+        https://bugs.webkit.org/show_bug.cgi?id=181398
+        <rdar://problem/36357879>
 
-        Also rewrote the clamping logic to be more similar to what UIKit does internally when computing
-        min/max content offset.
+        Reviewed by Alex Christensen.
 
-        * UIProcess/API/Cocoa/WKWebView.mm:
-        (contentOffsetBoundedInValidRange):
+        * NetworkProcess/NetworkConnectionToWebProcess.cpp:
+        (WebKit::NetworkConnectionToWebProcess::removeStorageAccessForAllFramesOnPage):
+        * NetworkProcess/NetworkConnectionToWebProcess.h:
+        * NetworkProcess/NetworkConnectionToWebProcess.messages.in:
+        * WebProcess/WebPage/WebPage.cpp:
+        (WebKit::WebPage::close):
 
-2017-12-08  Chris Dumez  <cdumez@apple.com>
+2018-01-08  Youenn Fablet  <youenn@apple.com>
 
-        Clearing all Website Data should remove service worker registrations on disk
-        https://bugs.webkit.org/show_bug.cgi?id=180558
+        SWClientConnection should not keep references to service worker jobs
+        https://bugs.webkit.org/show_bug.cgi?id=181381
 
-        Reviewed by Youenn Fablet.
+        Reviewed by Chris Dumez.
 
-        * StorageProcess/StorageProcess.cpp:
-        (WebKit::StorageProcess::deleteWebsiteData):
-        (WebKit::StorageProcess::deleteWebsiteDataForOrigins):
+        Updated IPC handling based on WebCore refactoring.
 
-2017-12-08  Youenn Fablet  <youenn@apple.com>
+        * Scripts/webkit/messages.py:
+        (forward_declarations_and_headers):
+        (headers_for_type):
+        * StorageProcess/ServiceWorker/WebSWServerConnection.cpp:
+        (WebKit::WebSWServerConnection::rejectJobInClient):
+        (WebKit::WebSWServerConnection::resolveRegistrationJobInClient):
+        (WebKit::WebSWServerConnection::resolveUnregistrationJobInClient):
+        (WebKit::WebSWServerConnection::startScriptFetchInClient):
+        * StorageProcess/ServiceWorker/WebSWServerConnection.h:
+        * WebProcess/Storage/WebSWClientConnection.messages.in:
 
-        WebServiceWorkerProvider should use Cancellation error to notify DTL that it cannot handle a fetch
-        https://bugs.webkit.org/show_bug.cgi?id=180584
+2018-01-08  Joseph Pecoraro  <pecoraro@apple.com>
 
-        Reviewed by Alex Christensen.
+        [Cocoa] Web Inspector: Provide a way for clients to check if an NSWindow is a Web Inspector window
+        https://bugs.webkit.org/show_bug.cgi?id=181361
+        <rdar://problem/36332865>
 
-        * WebProcess/Network/WebLoaderStrategy.cpp:
-        (WebKit::WebLoaderStrategy::scheduleLoad):
+        Reviewed by Darin Adler.
 
-2017-12-08  Youenn Fablet  <youenn@apple.com>
+        * WebKit.xcodeproj/project.pbxproj:
+        New files.
 
-        Service Worker should use a correct SessionID
-        https://bugs.webkit.org/show_bug.cgi?id=180585
+        * Shared/API/Cocoa/_WKNSWindowExtras.h: Added.
+        * Shared/API/Cocoa/_WKNSWindowExtras.mm: Added.
+        (-[NSWindow _web_isWebInspectorWindow]):
+        Method to determing if a window is being used for Web Inspector content.
 
-        Reviewed by Alex Christensen.
+        * UIProcess/mac/WKInspectorWindow.h: Added.
+        * UIProcess/mac/WKInspectorWindow.mm: Added.
+        Named subclass so we can use isKindOfClass.
 
-        Store SessionID in SWServer and send it as part of service worker instantiation.
-        Use it when creating service worker thread in service worker process.
+        * UIProcess/mac/WebInspectorProxyMac.mm:
+        (WebKit::WebInspectorProxy::createFrontendWindow):
+        Use the named subclass.
 
-        * StorageProcess/ServiceWorker/WebSWServerToContextConnection.cpp:
-        (WebKit::WebSWServerToContextConnection::installServiceWorkerContext):
-        * StorageProcess/ServiceWorker/WebSWServerToContextConnection.h:
-        * StorageProcess/StorageProcess.cpp:
-        (WebKit::StorageProcess::swServerForSession):
-        * WebProcess/Storage/WebSWContextManagerConnection.cpp:
-        (WebKit::WebSWContextManagerConnection::installServiceWorker):
-        * WebProcess/Storage/WebSWContextManagerConnection.h:
-        * WebProcess/Storage/WebSWContextManagerConnection.messages.in:
+2018-01-08  Tim Horton  <timothy_horton@apple.com>
 
-2017-12-08  Youenn Fablet  <youenn@apple.com>
+        Build fix for WKPDFView
+        https://bugs.webkit.org/show_bug.cgi?id=181399
+        <rdar://problem/36311915>
 
-        FetchResponse should keep unfiltered ResourceResponse so that it can be used in Service Worker
-        https://bugs.webkit.org/show_bug.cgi?id=179641
-        <rdar://problem/35923570>
+        Reviewed by Simon Fraser.
 
-        Reviewed by Alex Christensen.
+        * UIProcess/ios/WKPDFView.mm:
+        Disable deprecation warnings in this whole file.
 
-        * WebProcess/Storage/ServiceWorkerClientFetch.cpp:
-        (WebKit::ServiceWorkerClientFetch::didReceiveResponse): In case of opaque redirected response, handle it as a regular response.
+2018-01-08  Youenn Fablet  <youenn@apple.com>
 
-2017-12-08  Alex Christensen  <achristensen@webkit.org>
+        Caches::writeCachesToDisk should assert that it is initialized
+        https://bugs.webkit.org/show_bug.cgi?id=181383
 
-        Remove unused code in WebPageGroup
-        https://bugs.webkit.org/show_bug.cgi?id=180604
+        Reviewed by Alex Christensen.
 
-        Reviewed by Youenn Fablet.
+        Add assertion to ensure caches is initialized
 
-        * UIProcess/WebPageGroup.cpp:
-        (WebKit::WebPageGroup::userContentController):
-        (WebKit::WebPageGroup::createNonNull): Deleted.
-        (WebKit::WebPageGroup::preferencesDidChange): Deleted.
-        * UIProcess/WebPageGroup.h:
-        * UIProcess/WebProcessPool.cpp:
-        (WebKit::WebProcessPool::WebProcessPool):
+        * NetworkProcess/cache/CacheStorageEngineCaches.cpp:
+        (WebKit::CacheStorage::Caches::writeCachesToDisk):
 
-2017-12-08  Alex Christensen  <achristensen@webkit.org>
+2018-01-08  Youenn Fablet  <youenn@apple.com>
 
-        Modernize APIWebsiteDataStore.h and WebProcessPool.h
-        https://bugs.webkit.org/show_bug.cgi?id=180588
+        WebProcessPool::terminateServiceWorkerProcess should protect itself in debug builds
+        https://bugs.webkit.org/show_bug.cgi?id=181384
 
         Reviewed by Chris Dumez.
 
-        pragma once, Ref instead of RefPtr, initializer list in header instead of literals in constructor.
-
-        * UIProcess/API/APIWebsiteDataStore.h:
         * UIProcess/WebProcessPool.cpp:
-        (WebKit::WebProcessPool::WebProcessPool):
-        * UIProcess/WebProcessPool.h:
-
-2017-12-08  Yusuke Suzuki  <utatane.tea@gmail.com>
+        (WebKit::WebProcessPool::terminateServiceWorkerProcess):
 
-        Remove pthread_once in favor of dispatch_once
-        https://bugs.webkit.org/show_bug.cgi?id=180591
+2018-01-08  Frederic Wang  <fwang@igalia.com>
 
-        Reviewed by Saam Barati.
+        Unreviewed build fix after r226211.
 
-        * PluginProcess/mac/PluginProcessMac.mm:
-        (WebKit::shouldCallRealDebugger):
-        (WebKit::initShouldCallRealDebugger): Deleted.
+        * UIProcess/API/Cocoa/WKPreferencesPrivate.h: Use WK_IOS_TBA for iOS.
 
-2017-12-08  Chris Dumez  <cdumez@apple.com>
+2018-01-08  Youenn Fablet  <youenn@apple.com>
 
-        ProcessPoolConfiguration::copy() fails to copy the service worker path
-        https://bugs.webkit.org/show_bug.cgi?id=180595
+        navigator.onLine does not work inside service workers
+        https://bugs.webkit.org/show_bug.cgi?id=181079
+        <rdar://problem/36178606>
 
-        Reviewed by Brady Eidson.
+        Reviewed by Darin Adler.
 
-        * UIProcess/API/APIProcessPoolConfiguration.cpp:
-        (API::ProcessPoolConfiguration::copy):
+        Added support for a callback called for each service worker proxy creation.
+        Callback is used by WTR to inject a self.internals object used for testing.
 
-2017-12-08  Chris Dumez  <cdumez@apple.com>
+        * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
+        (WKBundleSetServiceWorkerProxyCreationCallback):
+        * WebProcess/InjectedBundle/API/c/WKBundle.h:
+        * WebProcess/InjectedBundle/InjectedBundle.cpp:
+        (WebKit::InjectedBundle::setServiceWorkerProxyCreationCallback):
+        * WebProcess/InjectedBundle/InjectedBundle.h:
 
-        Different WebKitTestRunner instances should use different service worker registrations databases
-        https://bugs.webkit.org/show_bug.cgi?id=180589
+2018-01-07  David Kilzer  <ddkilzer@apple.com>
 
-        Reviewed by Brady Eidson.
+        Enable -Wcast-qual for WebInspectorUI, WebKitLegacy, WebKit projects
+        <https://webkit.org/b/181256>
+        <rdar://problem/36281730>
 
-        * UIProcess/API/C/WKContextConfigurationRef.cpp:
-        (WKContextConfigurationCopyServiceWorkerDatabaseDirectory):
-        (WKContextConfigurationSetServiceWorkerDatabaseDirectory):
-        * UIProcess/API/C/WKContextConfigurationRef.h:
+        Reviewed by Darin Adler.
 
-2017-12-08  Alex Christensen  <achristensen@webkit.org>
+        * Configurations/Base.xcconfig:
+        (WARNING_CFLAGS): Add -Wcast-qual.
+        * NetworkProcess/cache/NetworkCacheCodersCocoa.cpp:
+        (WTF::Persistence::encodeCertificateChain): Include
+        TypeCastsCF.h from WTF, and use
+        checked_cf_cast<SecCertificateRef>() to fix warning.
+        * Platform/cocoa/WKCrashReporter.mm:
+        (WebKit::setCrashReportApplicationSpecificInformation):
+        - Move `oldMessage` check above nullptr check to fix a leak when
+          passing in nullptr after previously setting the crash string.
+        - Change C-style cast to const_cast<char*>() to fix warning.
+        * PluginProcess/mac/PluginProcessShim.mm:
+        (WebKit::shim_shmat): Change C-style cast to
+        const_cast<void*>() to fix warning.
+        * Shared/Authentication/mac/AuthenticationManager.mac.mm:
+        (WebKit::leafCertificate): Include TypeCastsCF.h from
+        WTF, and use checked_cf_cast<SecCertificateRef>() to fix
+        warning.
+        * Shared/cf/ArgumentCodersCF.cpp:
+        (IPC::encode): Use static_cast<>(const_cast<void*>() to
+        fix warnings since the CFTypeID has already been
+        checked.
+        * Shared/mac/WebCoreArgumentCodersMac.mm:
+        (IPC::decodeNSError): Use an `auto` variable to hold the
+        CFMutableDictionaryRef, then WTFMove() to assign it back to
+        `userInfo`.
+        * UIProcess/Cocoa/WebViewImpl.mm:
+        (WebKit::takeWindowSnapshot): Include TypeCastsCF.h from
+        WTF, and use checked_cf_cast<CGImageRef>() to fix
+        warning.
 
-        Pass std::optional<WebsitePolicies> instead of WebsitePolicies
-        https://bugs.webkit.org/show_bug.cgi?id=180563
+2018-01-07  Konstantin Tokarev  <annulen@yandex.ru>
 
-        Reviewed by Andy Estes.
+        [cmake] Unset CMAKE_REQUIRED_LIBRARIES after check_function_exists test
+        https://bugs.webkit.org/show_bug.cgi?id=181371
 
-        WebsitePolicies are only passed along when a decidePolicyForNavigationAction SPI completion handler
-        is called with a valid _WKWebsitePolicies object.  In other cases, we don't have one.  Rather than
-        making WebsitePolicies have a default value for everything that won't change policies, pass
-        a std::optional<WebsitePolicies> which indicates better when we don't have new policies.
+        Reviewed by Michael Catanzaro.
 
-        No change in behavior, but this will enable me to add things to WebsitePolicies that have no default value.
+        This variable is used by check_function_exists internally, its value
+        should be never used for anything else.
 
-        * Shared/WebsitePolicies.h:
-        Make WebsitePolicies a class with public members because the IPC code generators don't understand std::optional<struct type>
-        * UIProcess/API/C/WKAPICast.h:
-        * UIProcess/Cocoa/NavigationState.mm:
-        (WebKit::tryAppLink):
-        (WebKit::NavigationState::NavigationClient::decidePolicyForNavigationAction):
-        * UIProcess/WebFrameListenerProxy.cpp:
-        (WebKit::WebFrameListenerProxy::receivedPolicyDecision):
-        * UIProcess/WebFrameListenerProxy.h:
-        * UIProcess/WebFramePolicyListenerProxy.cpp:
-        (WebKit::WebFramePolicyListenerProxy::use):
-        * UIProcess/WebFramePolicyListenerProxy.h:
-        * UIProcess/WebFrameProxy.cpp:
-        (WebKit::WebFrameProxy::receivedPolicyDecision):
-        * UIProcess/WebFrameProxy.h:
-        * UIProcess/WebPageProxy.cpp:
-        (WebKit::WebPageProxy::receivedPolicyDecision):
-        (WebKit::WebPageProxy::decidePolicyForNavigationAction):
-        * UIProcess/WebPageProxy.h:
-        * UIProcess/WebPageProxy.messages.in:
-        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
-        (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
-        * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
-        * WebProcess/WebPage/WebFrame.cpp:
-        (WebKit::WebFrame::didReceivePolicyDecision):
-        * WebProcess/WebPage/WebFrame.h:
-        * WebProcess/WebPage/WebPage.cpp:
-        (WebKit::WebPage::didReceivePolicyDecision):
-        * WebProcess/WebPage/WebPage.h:
-        * WebProcess/WebPage/WebPage.messages.in:
+        * CMakeLists.txt:
 
-2017-12-08  Yusuke Suzuki  <utatane.tea@gmail.com>
+2018-01-05  Dan Bernstein  <mitz@apple.com>
 
-        [WTF] Remove remaining use of Mutex
-        https://bugs.webkit.org/show_bug.cgi?id=180579
+        REGRESSION (r226218): iOS-only assets are installed on macOS
+        https://bugs.webkit.org/show_bug.cgi?id=181362
 
-        Reviewed by Alex Christensen.
+        Reviewed by Anders Carlsson.
 
-        Remove unused "BinarySemaphore.h".
+        * Configurations/WebKit.xcconfig: Exclude everything under Resources/ios when not targeting
+          iOS.
 
-        * Platform/IPC/win/ConnectionWin.cpp:
+        * Resources/ios: Added.
+        * Resources/ios/iOS.xcassets: Moved from Source/WebKit/WebKit.xcassets.
+        * Resources/ios/iOS.xcassets/LockMini.imageset/NavigationBarLockMini@2x.pdf: Set the
+          svn:mime-type property.
+        * Resources/ios/iOS.xcassets/LockMini.imageset/NavigationBarLockMini@3x.pdf: Ditto.
 
-2017-12-08  Michael Catanzaro  <mcatanzaro@igalia.com>
+        * Resources/mac: Added.
+        * Resources/mac/mediaIcon.pdf: Moved here…
+        * Resources/mediaIcon.pdf: …from here.
 
-        [GTK] WebInspectorProxyClient needs a virtual destructor
-        https://bugs.webkit.org/show_bug.cgi?id=180533
+        * WebKit.xcassets: Moved under Resources/ios.
 
-        Reviewed by Carlos Garcia Campos.
+        * WebKit.xcodeproj/project.pbxproj: Created an ios group under the Resources group, and
+          cleaned up the mac group. Removed the Recovered References group.
 
-        Otherwise the derived class portion of the object, WebKitInspectorClient, is not destroyed.
+2018-01-05  John Wilander  <wilander@apple.com>
 
-        * UIProcess/gtk/WebInspectorProxyClient.h:
+        Storage Access API: Refactor to make naming accurate and explicit, simplify access table, and prepare for access removal for page
+        https://bugs.webkit.org/show_bug.cgi?id=181357
+        <rdar://problem/36331031>
 
-2017-12-07  Yousuke Kimoto  <yousuke.kimoto@sony.com>
+        Reviewed by Alex Christensen.
 
-        [WinCairo] Fix ResourceError handling in ArgumentCoder for wincairo webkit
-        https://bugs.webkit.org/show_bug.cgi?id=180483
+        This change does the following:
+        - Changes function and message names to reflect how this feature
+          was eventually implemented, i.e. access per frame.
+        - Makes it explicit that the UI process is only involved in
+          granting storage access and not removing storage access.
+          The latter is done directly by the web process.
+        - Simplifies the network process' entry map since only needs to
+          be able to give access to one domain in one frame at a time.
+          Access goes away on frame navigation so there can only be one
+          domain at a time per frame. Also, the map now uses pageIDs as
+          main keys to prepare for efficient access removal for all
+          frames under a page.
+        - Fixes a bug in so that a cross-origin iframe with the same
+          partition as the top frame correctly is handled as already
+          having access.
 
-        Reviewed by Alex Christensen.
+        * NetworkProcess/NetworkConnectionToWebProcess.cpp:
+        (WebKit::NetworkConnectionToWebProcess::removeStorageAccessForFrame):
+        (WebKit::NetworkConnectionToWebProcess::removeStorageAccess): Deleted.
+        * NetworkProcess/NetworkConnectionToWebProcess.h:
+        * NetworkProcess/NetworkConnectionToWebProcess.messages.in:
+        * NetworkProcess/NetworkProcess.cpp:
+        (WebKit::NetworkProcess::hasStorageAccessForFrame):
+        (WebKit::NetworkProcess::grantStorageAccessForFrame):
+        (WebKit::NetworkProcess::hasStorageAccessForPrevalentDomains): Deleted.
+        (WebKit::NetworkProcess::updateStorageAccessForPrevalentDomains): Deleted.
+        * NetworkProcess/NetworkProcess.h:
+        * NetworkProcess/NetworkProcess.messages.in:
+        * UIProcess/Network/NetworkProcessProxy.cpp:
+        (WebKit::NetworkProcessProxy::hasStorageAccessForFrame):
+        (WebKit::NetworkProcessProxy::grantStorageAccessForFrame):
+        (WebKit::NetworkProcessProxy::hasStorageAccessForPrevalentDomains): Deleted.
+        (WebKit::NetworkProcessProxy::updateStorageAccessForPrevalentDomains): Deleted.
+        * UIProcess/Network/NetworkProcessProxy.h:
+        * UIProcess/WebResourceLoadStatisticsStore.cpp:
+        (WebKit::WebResourceLoadStatisticsStore::WebResourceLoadStatisticsStore):
+        (WebKit::WebResourceLoadStatisticsStore::hasStorageAccess):
+        (WebKit::WebResourceLoadStatisticsStore::requestStorageAccess):
+        * UIProcess/WebResourceLoadStatisticsStore.h:
+        * UIProcess/WebsiteData/WebsiteDataStore.cpp:
+        (WebKit::WebsiteDataStore::hasStorageAccessForFrameHandler):
+        (WebKit::WebsiteDataStore::grantStorageAccessForFrameHandler):
+        (WebKit::WebsiteDataStore::enableResourceLoadStatisticsAndSetTestingCallback):
+        (WebKit::WebsiteDataStore::hasStorageAccessForPrevalentDomainsHandler): Deleted.
+        (WebKit::WebsiteDataStore::updateStorageAccessForPrevalentDomainsHandler): Deleted.
+        * UIProcess/WebsiteData/WebsiteDataStore.h:
+        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
+        (WebKit::WebFrameLoaderClient::detachedFromParent2):
+        (WebKit::WebFrameLoaderClient::dispatchWillChangeDocument):
 
-        * Shared/curl/WebCoreArgumentCodersCurl.cpp:
-        (IPC::ArgumentCoder<ResourceError>::encodePlatformData):
-        (IPC::ArgumentCoder<ResourceError>::decodePlatformData):
+2018-01-05  Youenn Fablet  <youenn@apple.com>
 
-2017-12-07  Youenn Fablet  <youenn@apple.com>
+        Implement Cache API partitioning based on ClientOrigin
+        https://bugs.webkit.org/show_bug.cgi?id=181240
 
-        StartFetch should take a ServiceWorkerIdentifier
-        https://bugs.webkit.org/show_bug.cgi?id=180478
+        Reviewed by Alex Christensen.
 
-        Reviewed by Brady Eidson.
+        open and retrieveCaches now take a ClientOrigin instead of a String.
+        Updated cache filesystem path computation to take both client origin and top origin.
 
-        Before the patch, StartFetch was taking an optional ServiceWorkerIdentifier.
-        Now that every navigation fetch is querying its matching registration, it can no longer be optional.
+        When clearing an origin, caches whose client origin or top origin matches the origin are cleared.
+        Caches are added to the web site data of their client origin with their corresponding cache size.
+        Caches are added to the web site data of their top origin with a size equal to 0.
 
-        In the case there is a problem in running the service worker at start fetch time,
-        answer to the WebProcess to go to network so that the request does not get stalled.
+        Updated memory representation dumping used for test to include both top and client origins.
 
-        * StorageProcess/ServiceWorker/WebSWServerConnection.cpp:
-        (WebKit::WebSWServerConnection::startFetch):
-        * StorageProcess/ServiceWorker/WebSWServerConnection.h:
-        * StorageProcess/ServiceWorker/WebSWServerConnection.messages.in:
-        * WebProcess/Storage/WebSWClientConnection.cpp:
-        (WebKit::WebSWClientConnection::startFetch):
-        * WebProcess/Storage/WebSWContextManagerConnection.cpp:
-        (WebKit::WebSWContextManagerConnection::startFetch):
-        * WebProcess/Storage/WebSWContextManagerConnection.h:
-        * WebProcess/Storage/WebSWContextManagerConnection.messages.in:
+        * NetworkProcess/NetworkProcess.cpp:
+        (WebKit::NetworkProcess::deleteWebsiteDataForOrigins):
+        * NetworkProcess/cache/CacheStorageEngine.cpp:
+        (WebKit::CacheStorage::Engine::cachesRootPath):
+        (WebKit::CacheStorage::Engine::open):
+        (WebKit::CacheStorage::Engine::remove):
+        (WebKit::CacheStorage::Engine::retrieveCaches):
+        (WebKit::CacheStorage::Engine::readCachesFromDisk):
+        (WebKit::CacheStorage::Engine::removeCaches):
+        (WebKit::CacheStorage::Engine::fetchEntries):
+        (WebKit::CacheStorage::Engine::clearCachesForOrigin):
+        (WebKit::CacheStorage::Engine::clearMemoryRepresentation):
+        (WebKit::CacheStorage::Engine::representation):
+        * NetworkProcess/cache/CacheStorageEngine.h:
+        * NetworkProcess/cache/CacheStorageEngineCache.cpp:
+        (WebKit::CacheStorage::Cache::Cache):
+        * NetworkProcess/cache/CacheStorageEngineCaches.cpp:
+        (WebKit::CacheStorage::Caches::retrieveOriginFromDirectory):
+        (WebKit::CacheStorage::Caches::Caches):
+        (WebKit::CacheStorage::Caches::storeOrigin):
+        (WebKit::CacheStorage::Caches::readOrigin):
+        (WebKit::CacheStorage::Caches::open):
+        * NetworkProcess/cache/CacheStorageEngineCaches.h:
+        (WebKit::CacheStorage::Caches::create):
+        (WebKit::CacheStorage::Caches::origin const):
+        * NetworkProcess/cache/CacheStorageEngineConnection.cpp:
+        (WebKit::CacheStorageEngineConnection::open):
+        (WebKit::CacheStorageEngineConnection::caches):
+        (WebKit::CacheStorageEngineConnection::clearMemoryRepresentation):
+        * NetworkProcess/cache/CacheStorageEngineConnection.h:
+        * NetworkProcess/cache/CacheStorageEngineConnection.messages.in:
+        * WebProcess/Cache/WebCacheStorageConnection.cpp:
+        (WebKit::WebCacheStorageConnection::doOpen):
+        (WebKit::WebCacheStorageConnection::doRetrieveCaches):
+        (WebKit::WebCacheStorageConnection::clearMemoryRepresentation):
+        * WebProcess/Cache/WebCacheStorageConnection.h:
 
-2017-12-07  Saam Barati  <sbarati@apple.com>
+2018-01-05  Megan Gardner  <megan_gardner@apple.com>
 
-        We need to grab the JSLock in InjectedBundle::createWebDataFromUint8Array
-        https://bugs.webkit.org/show_bug.cgi?id=180492
+        Show Keyboard when re-launching WKWebView with a previously focused element
+        https://bugs.webkit.org/show_bug.cgi?id=181353
 
-        Reviewed by Alex Christensen.
+        Reviewed by Tim Horton.
 
-        InjectedBundle::createWebDataFromUint8Array calls into WebCore APIs that allocate
-        out of the JS heap. It's only legal to allocate out of the JS heap when holding the JS lock.
+        When relaunching an app with a WKWebView, restore the keyboard if there was a previously
+        focused element that was being assisted. The element was already being tracked, we just
+        needed to not bail on showing the keyboard for instances where it was a state change that
+        caused the element to be refocused.
 
-        * WebProcess/InjectedBundle/InjectedBundle.cpp:
-        (WebKit::InjectedBundle::createWebDataFromUint8Array):
+        * UIProcess/PageClient.h:
+        * UIProcess/WebPageProxy.h:
+        * UIProcess/WebPageProxy.messages.in:
+        * UIProcess/ios/PageClientImplIOS.h:
+        * UIProcess/ios/PageClientImplIOS.mm:
+        (WebKit::PageClientImpl::startAssistingNode):
+        * UIProcess/ios/WKContentView.h:
+        * UIProcess/ios/WKContentViewInteraction.h:
+        * UIProcess/ios/WKContentViewInteraction.mm:
+        (-[WKContentView _startAssistingNode:userIsInteracting:blurPreviousNode:changingActivityState:userObject:]):
+        (-[WKContentView _startAssistingNode:userIsInteracting:blurPreviousNode:userObject:]): Deleted.
+        * UIProcess/ios/WebPageProxyIOS.mm:
+        (WebKit::WebPageProxy::startAutoscrollAtPosition):
+        (WebKit::WebPageProxy::startAssistingNode):
+        * WebProcess/WebPage/WebPage.cpp:
+        (WebKit::WebPage::setActivityState):
+        (WebKit::WebPage::elementDidFocus):
+        * WebProcess/WebPage/WebPage.h:
 
-2017-12-07  Simon Fraser  <simon.fraser@apple.com>
+2018-01-05  Alex Christensen  <achristensen@webkit.org>
 
-        Propagate WebKit2Logging channels to the Web Process
-        https://bugs.webkit.org/show_bug.cgi?id=180517
+        Restrict navigation-time WKWebsiteDataStore swapping to main frame navigations
+        https://bugs.webkit.org/show_bug.cgi?id=181217
 
         Reviewed by Tim Horton.
 
-        If you set WebKit2Logging, you want those channels active in both the UI process and
-        the web process, but without tricky 'defaults' gyrations, setting them in the web process
-        was hard.
+        If we swap during an iframe navigation, then we get a page in a strange state.
+        The intent of the main frame navigation WKWebsiteDataStore swap is that
+        that is a time when we can change storages without a page in an inconsistent state.
 
-        Instead, send them through to the process via WebProcessCreationParameters, as we do
-        for WebCoreLogging channels.
+        * UIProcess/Cocoa/NavigationState.mm:
+        (WebKit::NavigationState::NavigationClient::decidePolicyForNavigationAction):
 
-        * Platform/LogInitialization.h:
-        * Platform/Logging.cpp:
-        (WebKit::initializeLogChannelsIfNecessary):
-        * Shared/WebProcessCreationParameters.cpp:
-        (WebKit::WebProcessCreationParameters::encode const):
-        (WebKit::WebProcessCreationParameters::decode):
-        * Shared/WebProcessCreationParameters.h:
-        * UIProcess/Cocoa/WebProcessPoolCocoa.mm:
-        (WebKit::WebProcessPool::platformInitializeWebProcess):
-        * WebProcess/cocoa/WebProcessCocoa.mm:
-        (WebKit::WebProcess::platformInitializeWebProcess):
+2018-01-05  Alex Christensen  <achristensen@webkit.org>
 
-2017-12-07  Simon Fraser  <simon.fraser@apple.com>
+        Add WKBundleFrameCreateFrameHandle
+        https://bugs.webkit.org/show_bug.cgi?id=181232
+        <rdar://problem/35926696>
 
-        Add logging for EditorState in RemoteLayerTree transactions
-        https://bugs.webkit.org/show_bug.cgi?id=180515
+        Reviewed by Tim Horton.
 
-        Reviewed by Wenson Hsieh.
-       
-        Make EditorState TextStream-able, and dump it in layer tree transactions.
+        InjectedBundle clients wanting to sent a _WKFrameHandle cannot without this function.
+        Before, they would just send the WKBundleFrameRef which would be changed into a WKFrameRef
+        in the UIProcess by WebProcessProxy::transformHandlesToObjects, but there is no ObjC equivalent
+        of WKFrameRef, so we were just getting a WKObject when we wanted a _WKFrameHandle.
+        We can't change WebProcessProxy::transformHandlesToObjects without being incompatible with the 
+        existing C API, so let's add a way for clients to say "I want a _WKFrameHandle".
 
-        * Shared/EditorState.cpp:
-        (WebKit::operator<<):
-        * Shared/EditorState.h:
-        * Shared/RemoteLayerTree/RemoteLayerTreeTransaction.mm:
-        (WebKit::RemoteLayerTreeTransaction::description const):
+        * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
+        (WKBundleFrameCreateFrameHandle):
+        * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
 
-2017-12-07  Youenn Fablet  <youenn@apple.com>
+2018-01-05  Wenson Hsieh  <wenson_hsieh@apple.com>
 
-        CacheStorage Cache should not remove any disk entry when clearing its memory representation
-        https://bugs.webkit.org/show_bug.cgi?id=180546
+        [Attachment Support] Add a way to write blob data to a file URL from the UI process
+        https://bugs.webkit.org/show_bug.cgi?id=181236
 
         Reviewed by Brady Eidson.
 
-        * NetworkProcess/cache/CacheStorageEngineCache.cpp:
-        (WebKit::CacheStorage::Cache::clearMemoryRepresentation):
+        Add support for writing a blob to a designated file path. In WebKit, this is mainly plumbing writeBlobToFilePath
+        through WebPageProxy to the network process.
 
-2017-12-07  Myles C. Maxfield  <mmaxfield@apple.com>
+        * NetworkProcess/FileAPI/NetworkBlobRegistry.cpp:
+        (WebKit::NetworkBlobRegistry::writeBlobToFilePath):
 
-        [Cocoa] Add SPI to disallow user-installed fonts
-        https://bugs.webkit.org/show_bug.cgi?id=180062
-        <rdar://problem/35042408>
+        Call out to the BlobRegistryImpl to write blobs to the file path. Additionally grant sandbox extensions for any
+        file-backed blob parts corresponding to the given blob URL.
 
-        Reviewed by Simon Fraser.
+        (WebKit::NetworkBlobRegistry::filesInBlob):
 
-        * Shared/WebPreferences.yaml:
-        * UIProcess/API/C/WKPreferences.cpp:
-        (WKPreferencesSetShouldDisallowUserInstalledFonts):
-        (WKPreferencesGetShouldDisallowUserInstalledFonts):
-        * UIProcess/API/C/WKPreferencesRefPrivate.h:
-        * UIProcess/API/Cocoa/WKPreferences.mm:
-        (-[WKPreferences _shouldDisallowUserInstalledFonts]):
-        (-[WKPreferences _setShouldDisallowUserInstalledFonts:]):
-        * UIProcess/API/Cocoa/WKPreferencesPrivate.h:
+        Introduce a version of filesInBlob that doesn't check against the NetworkConnectionToWebProcess. This is used
+        when the UI process is the driver for writing a blob.
+
+        * NetworkProcess/FileAPI/NetworkBlobRegistry.h:
+        * NetworkProcess/NetworkProcess.cpp:
+        (WebKit::NetworkProcess::writeBlobToFilePath):
 
-2017-12-07  David Quesada  <david_quesada@apple.com>
+        Temporarily grant sandbox access to the given file path.
 
-        [Web App Manifest] Support display-mode media feature
-        https://bugs.webkit.org/show_bug.cgi?id=180376
-        rdar://problem/35837993
+        * NetworkProcess/NetworkProcess.h:
+        * NetworkProcess/NetworkProcess.messages.in:
+        * Shared/WebCoreArgumentCoders.cpp:
+        (IPC::ArgumentCoder<PromisedBlobInfo>::encode):
+        (IPC::ArgumentCoder<PromisedBlobInfo>::decode):
+        (IPC::ArgumentCoder<PromisedBlobData>::encode): Deleted.
+        (IPC::ArgumentCoder<PromisedBlobData>::decode): Deleted.
 
-        Reviewed by Geoffrey Garen.
+        Remove PromisedBlobData (see WebCore/ChangeLog for more information).
 
-        * UIProcess/API/Cocoa/_WKApplicationManifest.h:
-        * UIProcess/API/Cocoa/_WKApplicationManifest.mm:
-        (-[_WKApplicationManifest initWithCoder:]):
-        (-[_WKApplicationManifest encodeWithCoder:]):
-        (-[_WKApplicationManifest displayMode]):
+        * Shared/WebCoreArgumentCoders.h:
+        * UIProcess/Network/NetworkProcessProxy.cpp:
+        (WebKit::NetworkProcessProxy::didClose):
 
-2017-12-07  Chris Dumez  <cdumez@apple.com>
+        If the network process is terminated, flush any pending callbacks in m_writeBlobToFilePathCallbackMap, passing
+        in a failure result (success := false) and clearing the callback map.
 
-        Unreviewed build fix after r225622.
+        (WebKit::NetworkProcessProxy::writeBlobToFilePath):
+        (WebKit::NetworkProcessProxy::didWriteBlobToFilePath):
+        * UIProcess/Network/NetworkProcessProxy.h:
+        * UIProcess/Network/NetworkProcessProxy.messages.in:
+        * UIProcess/WebPageProxy.cpp:
+        (WebKit::WebPageProxy::writeBlobToFilePath):
+        * UIProcess/WebPageProxy.h:
 
-        * StorageProcess/ServiceWorker/WebSWServerConnection.cpp:
-        (WebKit::WebSWServerConnection::postMessageToServiceWorkerFromServiceWorker):
+2018-01-05  Dan Bernstein  <mitz@apple.com>
 
-2017-12-06  Chris Dumez  <cdumez@apple.com>
+        Add injected bundle equivalents of DOMHTMLDocument (DOMHTMLDocumentExtensions)
+        https://bugs.webkit.org/show_bug.cgi?id=181345
 
-        We should be able to recover after a Service Worker process crash
-        https://bugs.webkit.org/show_bug.cgi?id=180477
+        Reviewed by Tim Horton.
 
-        Reviewed by Brady Eidson and Youenn Fablet.
+        * WebProcess/InjectedBundle/API/mac/WKDOMDocument.h: Declared new methods.
+        * WebProcess/InjectedBundle/API/mac/WKDOMDocument.mm:
+        (-[WKDOMDocument createDocumentFragmentWithMarkupString:baseURL:]): Added. Calls WebCore’s
+          createFragmentFromMarkup.
+        (-[WKDOMDocument createDocumentFragmentWithText:]): Added. Calls WebCore’s
+          createFragmentFromText.
 
-        * StorageProcess/ServiceWorker/WebSWServerConnection.cpp:
-        (WebKit::WebSWServerConnection::startFetch):
-        (WebKit::WebSWServerConnection::postMessageToServiceWorkerFromClient):
-        (WebKit::WebSWServerConnection::postMessageToServiceWorkerFromServiceWorker):
-        Update calls to SWServer::runServiceWorkerIfNecessary() that that it is asynchronous
-        and takes in a lambda.
+2018-01-05  Don Olmstead  <don.olmstead@sony.com>
 
-        * StorageProcess/ServiceWorker/WebSWServerConnection.h:
-        (WebKit::WebSWServerConnection::ipcConnection const):
-        Add getter for the underlying IPC connection.
+        [Curl] Add implementation stubs for Network Cache
+        https://bugs.webkit.org/show_bug.cgi?id=181343
 
-        * StorageProcess/StorageProcess.cpp:
-        (WebKit::StorageProcess::didClose):
-        (WebKit::StorageProcess::connectionToContextProcessWasClosed):
-        Move some code to connectionToContextProcessWasClosed() to avoid duplication.
-        Also, relaunch the Service Worker process if it has exited but we still
-        have SWServer connections to regular Web Processes.
+        Reviewed by Alex Christensen.
 
-        (WebKit::StorageProcess::needsServerToContextConnection const):
-        Utility function to determine if we still need the service worker process.
-        The current rule is that we need the service worker (aka "context") process
-        if we still have SWServer connections to regular Web Processes.
+        * NetworkProcess/cache/NetworkCacheCodersCurl.cpp: Added.
+        (WTF::Persistence::Coder<WebCore::CertificateInfo>::encode):
+        (WTF::Persistence::Coder<WebCore::CertificateInfo>::decode):
+        * NetworkProcess/cache/NetworkCacheDataCurl.cpp: Added.
+        (WebKit::NetworkCache::Data::Data):
+        (WebKit::NetworkCache::Data::empty):
+        (WebKit::NetworkCache::Data::data const):
+        (WebKit::NetworkCache::Data::isNull const):
+        (WebKit::NetworkCache::Data::apply const):
+        (WebKit::NetworkCache::Data::subrange const):
+        (WebKit::NetworkCache::concatenate):
+        (WebKit::NetworkCache::Data::adoptMap):
+        * NetworkProcess/cache/NetworkCacheIOChannelCurl.cpp: Added.
+        (WebKit::NetworkCache::IOChannel::IOChannel):
+        (WebKit::NetworkCache::IOChannel::~IOChannel):
+        (WebKit::NetworkCache::IOChannel::open):
+        (WebKit::NetworkCache::IOChannel::read):
+        (WebKit::NetworkCache::IOChannel::write):
+        * PlatformWin.cmake:
 
-        * StorageProcess/StorageProcess.h:
+2018-01-05  Don Olmstead  <don.olmstead@sony.com>
 
-        * StorageProcess/StorageToWebProcessConnection.cpp:
-        (WebKit::StorageToWebProcessConnection::didClose):
-        If didClose() is called for the connection to the service worker context,
-        let the StorageProcess know so that it can clear its state and relaunch
-        the process if necessary.
+        [Curl] Update method declarations in WebKit
+        https://bugs.webkit.org/show_bug.cgi?id=181342
 
-        * UIProcess/API/C/WKContext.cpp:
-        (WKContextTerminateServiceWorkerProcess):
-        * UIProcess/API/C/WKContextPrivate.h:
-        * UIProcess/API/Cocoa/WKProcessPool.mm:
-        (-[WKProcessPool _terminateServiceWorkerProcess]):
-        * UIProcess/API/Cocoa/WKProcessPoolPrivate.h:
-        Add SPI to terminate the service worker process.
+        Reviewed by Alex Christensen.
 
-        * UIProcess/WebProcessPool.cpp:
-        (WebKit::m_serviceWorkerProcessTerminationTimer):
-        (WebKit::WebProcessPool::createNewWebProcess):
-        (WebKit::WebProcessPool::disconnectProcess):
-        (WebKit::WebProcessPool::terminateServiceWorkerProcess):
-        * UIProcess/WebProcessPool.h:
-        We used to shutdown the ServiceWorker process right away as soon as the last regular
-        WebProcess was gone. We now give it a grace period of 5 seconds in case a new
-        WebProcess gets launched shortly after.
+        * NetworkProcess/Downloads/curl/DownloadCurl.cpp:
+        (WebKit::Download::resume):
+        * NetworkProcess/curl/RemoteNetworkingContextCurl.cpp:
+        (WebKit::RemoteNetworkingContext::ensurePrivateBrowsingSession): Deleted.
+        (WebKit::RemoteNetworkingContext::blockedError const): Deleted.
 
-2017-12-02  Darin Adler  <darin@apple.com>
+2018-01-05  Don Olmstead  <don.olmstead@sony.com>
 
-        Modernize some aspects of text codecs, eliminate WebKit use of strcasecmp
-        https://bugs.webkit.org/show_bug.cgi?id=180009
+        WebFullScreenManager should compile when ENABLE(VIDEO) is off
+        https://bugs.webkit.org/show_bug.cgi?id=181338
 
         Reviewed by Alex Christensen.
 
-        * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
-        (WebKit::initializeProtectionSpace): Use equalLettersIgnoringASCIICase instead
-        of strcasecmp.
-
-2017-12-06  David Quesada  <david_quesada@apple.com>
+        * WebProcess/FullScreen/WebFullScreenManager.cpp:
+        (WebKit::WebFullScreenManager::didEnterFullScreen):
+        (WebKit::WebFullScreenManager::willExitFullScreen):
+        * WebProcess/FullScreen/WebFullScreenManager.h:
 
-        [Web App Manifest] Add SPI for applying a manifest to a top-level browsing context
-        https://bugs.webkit.org/show_bug.cgi?id=180368
-        rdar://problem/34748067
+2018-01-05  Andy Estes  <aestes@apple.com>
 
-        Reviewed by Geoffrey Garen.
+        [Apple Pay] Disable Apple Pay on platforms that don't have PassKit.framework
+        https://bugs.webkit.org/show_bug.cgi?id=181335
+        <rdar://problem/36311296>
 
-        Add a new property WKWebViewConfiguration._applicationManifest to specify manifest
-        to apply to application contexts (aka. top-level browsing contexts, i.e. web views).
-        The manifest is ultimately stored on the MainFrame of the Pages created from the
-        web view configuration.
+        Reviewed by Brady Eidson.
 
-        No new tests, no change in behavior.
+        When Safari is running in the macOS Base System, PassKit.framework is not available.
+        If we fail to dlopen PassKit, we should disable Apple Pay.
 
-        * Shared/WebPageCreationParameters.cpp:
-        (WebKit::WebPageCreationParameters::encode const):
-        (WebKit::WebPageCreationParameters::decode):
-        * Shared/WebPageCreationParameters.h:
-        * UIProcess/API/APIPageConfiguration.cpp:
-        (API::PageConfiguration::copy const):
-        (API::PageConfiguration::applicationManifest const):
-        (API::PageConfiguration::setApplicationManifest):
-        * UIProcess/API/APIPageConfiguration.h:
+        * UIProcess/API/C/WKPreferences.cpp:
+        (WKPreferencesSetApplePayEnabled):
         * UIProcess/API/Cocoa/WKWebView.mm:
         (-[WKWebView _initializeWithConfiguration:]):
-        * UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
-        (-[WKWebViewConfiguration copyWithZone:]):
-        (-[WKWebViewConfiguration _applicationManifest]):
-        (-[WKWebViewConfiguration _setApplicationManifest:]):
-        * UIProcess/API/Cocoa/WKWebViewConfigurationPrivate.h:
-        * UIProcess/API/Cocoa/_WKApplicationManifestInternal.h:
-        * UIProcess/WebPageProxy.cpp:
-        (WebKit::WebPageProxy::creationParameters):
-        * WebProcess/WebPage/WebPage.cpp:
-        (WebKit::m_cpuLimit):
-
-2017-12-06  Jeff Miller  <jeffm@apple.com>
-
-        -[WKWebViewConfiguration copyWithZone] doesn't copy _groupIdentifier
-        https://bugs.webkit.org/show_bug.cgi?id=180504
-
-        Reviewed by Geoffrey Garen.
+        * UIProcess/ApplePay/WebPaymentCoordinatorProxy.h:
+        * UIProcess/ApplePay/cocoa/WebPaymentCoordinatorProxyCocoa.mm:
+        (WebKit::WebPaymentCoordinatorProxy::availablePaymentNetworks):
+        (WebKit::WebPaymentCoordinatorProxy::platformSupportsPayments):
 
-        * UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
-        (-[WKWebViewConfiguration copyWithZone:]):
-        Copy _groupIdentifier.
+2018-01-05  Dan Bernstein  <mitz@apple.com>
 
-2017-12-06  David Quesada  <david_quesada@apple.com>
+        Fixed the build following AppKit API deprecations in a recent SDKs
 
-        [Web App Manifest] Add SPI for fetching the manifest
-        https://bugs.webkit.org/show_bug.cgi?id=180294
-        rdar://problem/34747968
+        * UIProcess/mac/WKFullScreenWindowController.mm:
+        (-[WKFullScreenWindowController enterFullScreen:]): Suppressed deprecation warnings.
+        (-[WKFullScreenWindowController finishedEnterFullScreenAnimation:]): Ditto.
+        (-[WKFullScreenWindowController exitFullScreen]): Ditto.
+        (-[WKFullScreenWindowController finishedExitFullScreenAnimation:]): Ditto.
+        (-[WKFullScreenWindowController completeFinishExitFullScreenAnimationAfterRepaint]): Ditto.
+        (-[WKFullScreenWindowController _startEnterFullScreenAnimationWithDuration:]): Ditto.
+        (-[WKFullScreenWindowController _startExitFullScreenAnimationWithDuration:]): Ditto.
+        * UIProcess/mac/WKPrintingView.mm:
+        (-[WKPrintingView _setAutodisplay:]): Ditto.
 
-        Reviewed by Geoffrey Garen.
+2018-01-05  Matt Lewis  <jlewis3@apple.com>
 
-        Add a new method -[WKWebView _getApplicationManifestWithCompletionHandler:] to request
-        the manifest associated with the current page.
+        Unreviewed, rolling out r226401.
 
-        * Shared/API/APIObject.h:
-        * Shared/Cocoa/APIObject.mm:
-        (API::Object::newObject):
-        * UIProcess/API/APIApplicationManifest.h: Copied from Source/WebCore/Modules/applicationmanifest/ApplicationManifest.h.
-            Add a new API object type for application manifests.
-        * UIProcess/API/C/WKPage.cpp:
-        (WKPageGetApplicationManifest_b):
-            Add a C version of this SPI for WebKitTestRunner.
-        * UIProcess/API/C/WKPagePrivate.h:
-        * UIProcess/API/Cocoa/WKWebView.mm:
-        (-[WKWebView _getApplicationManifestWithCompletionHandler:]):
-        * UIProcess/API/Cocoa/WKWebViewPrivate.h:
-        * UIProcess/API/Cocoa/_WKApplicationManifest.h: Copied from Source/WebCore/Modules/applicationmanifest/ApplicationManifest.h.
-        * UIProcess/API/Cocoa/_WKApplicationManifest.mm: Added.
-        (-[_WKApplicationManifest initWithCoder:]):
-        (-[_WKApplicationManifest encodeWithCoder:]):
-        (+[_WKApplicationManifest applicationManifestFromJSON:manifestURL:documentURL:]):
-        (-[_WKApplicationManifest _apiObject]):
-        (nullableNSString):
-        (-[_WKApplicationManifest name]):
-        (-[_WKApplicationManifest shortName]):
-        (-[_WKApplicationManifest applicationDescription]):
-        (-[_WKApplicationManifest scope]):
-        (-[_WKApplicationManifest startURL]):
-        * UIProcess/API/Cocoa/_WKApplicationManifestInternal.h: Copied from Source/WebCore/Modules/applicationmanifest/ApplicationManifest.h.
-        (API::wrapper):
-        * UIProcess/WebPageProxy.cpp:
-        (WebKit::WebPageProxy::applicationManifestCallback):
-        (WebKit::WebPageProxy::getApplicationManifest):
-        * UIProcess/WebPageProxy.h:
-        * UIProcess/WebPageProxy.messages.in:
-        * WebKit.xcodeproj/project.pbxproj:
-        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
-        (WebKit::WebFrameLoaderClient::finishedLoadingApplicationManifest):
-        * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
-        * WebProcess/WebPage/WebPage.cpp:
-        (WebKit::WebPage::getApplicationManifest):
-        (WebKit::WebPage::didFinishLoadingApplicationManifest):
-        * WebProcess/WebPage/WebPage.h:
-        * WebProcess/WebPage/WebPage.messages.in:
+        This caused timeouts on multiple platforms.
 
-2017-12-06  Per Arne Vollan  <pvollan@apple.com>
+        Reverted changeset:
 
-        The WebProcess should use the NSRunLoop runloop type.
-        https://bugs.webkit.org/show_bug.cgi?id=179804
-        <rdar://problem/14012823>
+        "Implement Cache API partitioning based on ClientOrigin"
+        https://bugs.webkit.org/show_bug.cgi?id=181240
+        https://trac.webkit.org/changeset/226401
 
-        Reviewed by Brent Fulgham.
+2018-01-05  Joseph Pecoraro  <pecoraro@apple.com>
 
-        * Platform/IPC/mac/ConnectionMac.mm:
-        (IPC::AccessibilityProcessSuspendedNotification):
-        * Shared/ChildProcess.h:
-        * Shared/mac/ChildProcessMac.mm:
-        (WebKit::ChildProcess::launchServicesCheckIn):
-        * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
-        (WebKit::shouldLeakBoost):
-        * WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-OSX.plist:
-        * WebProcess/WebProcess.cpp:
-        (WebKit::WebProcess::initializeProcess):
+        ServiceWorkers: Enable UserTiming / ResourceTiming
+        https://bugs.webkit.org/show_bug.cgi?id=181297
+        <rdar://problem/36307306>
 
-2017-12-06  Nan Wang  <n_wang@apple.com>
+        Reviewed by Youenn Fablet.
 
-        AX: [iOS] Post accessibility notification when a web process changes its suspended state
-        https://bugs.webkit.org/show_bug.cgi?id=180458
-        <rdar://problem/35869115>
+        * WebProcess/Storage/WebSWContextManagerConnection.cpp:
+        (WebKit::WebSWContextManagerConnection::updatePreferencesStore):
+        Enable Resource Timing / User Timing for the ServiceWorker process.
 
-        Reviewed by Chris Dumez.
+2018-01-04  Zan Dobersek  <zdobersek@igalia.com>
 
-        Post accessibility notification with the pid information when a web process
-        becomes suspended or resumes running.
+        Unreviewed GTK+ build fix.
 
-        * WebProcess/WebProcess.cpp:
-        (WebKit::WebProcess::actualPrepareToSuspend):
-        (WebKit::WebProcess::processDidResume):
-        * WebProcess/WebProcess.h:
-        * WebProcess/cocoa/WebProcessCocoa.mm:
-        (WebKit::WebProcess::accessibilityProcessSuspendedNotification):
+        * UIProcess/API/glib/WebKitUserMediaPermissionRequest.cpp:
+        (webkit_user_media_permission_is_for_audio_device):
+        Call UserMediaPermissionRequestProxy::requiresAudioCapture().
+        (webkit_user_media_permission_is_for_video_device):
+        Call UserMediaPermissionRequestProxy::requiresVideoCapture().
 
-2017-12-06  Ryan Haddad  <ryanhaddad@apple.com>
+2018-01-04  Don Olmstead  <don.olmstead@sony.com>
 
-        Unreviewed build fix, removed unused lambda capture.
+        [Curl] Fix compilation error in WebFrameNetworkingContext
+        https://bugs.webkit.org/show_bug.cgi?id=181312
 
-        * NetworkProcess/cache/CacheStorageEngineConnection.cpp:
-        (WebKit::CacheStorageEngineConnection::open):
+        Reviewed by Alex Christensen.
 
-2017-12-06  John Wilander  <wilander@apple.com>
+        * WebProcess/WebCoreSupport/curl/WebFrameNetworkingContext.cpp:
+        (WebKit::WebFrameNetworkingContext::ensureWebsiteDataStoreSession):
 
-        Storage Access API: Make document.hasStorageAccess a function and always allow access for same-origin iframes
-        https://bugs.webkit.org/show_bug.cgi?id=176944
-        <rdar://problem/34440658>
+2018-01-04  Tim Horton  <timothy_horton@apple.com>
 
-        Reviewed by Brent Fulgham.
+        WKWebView loses minimum layout size overrides that happen while the process is terminated
+        https://bugs.webkit.org/show_bug.cgi?id=181306
+        <rdar://problem/34398288>
 
-        This change introduces document.hasStorageAccess() as a function which
-        returns a promise instead of being a property. Since cookie access can
-        be due to both a granted request and recent user interaction as first
-        party, the WebKit::WebResourceLoadStatisticsStore needs to be consulted.
+        Reviewed by Dan Bernstein.
 
+        * Shared/WebPageCreationParameters.cpp:
+        (WebKit::WebPageCreationParameters::encode const):
+        (WebKit::WebPageCreationParameters::decode):
+        * Shared/WebPageCreationParameters.h:
+        * UIProcess/API/Cocoa/WKWebView.mm:
+        (-[WKWebView _didRelaunchProcess]): Deleted.
+        * UIProcess/API/Cocoa/WKWebViewPrivate.h:
         * UIProcess/WebPageProxy.cpp:
-        (WebKit::WebPageProxy::hasStorageAccess):
+        (WebKit::WebPageProxy::creationParameters):
         * UIProcess/WebPageProxy.h:
-        * UIProcess/WebPageProxy.messages.in:
-        * UIProcess/WebResourceLoadStatisticsStore.cpp:
-        (WebKit::WebResourceLoadStatisticsStore::hasStorageAccess):
-        (WebKit::WebResourceLoadStatisticsStore::requestStorageAccess):
-            Now adds an entry for granted access. A bug found through testing.
-            Switched from WTF::Function to WTF::CompletionHandler.
-        * UIProcess/WebResourceLoadStatisticsStore.h:
-        * UIProcess/WebsiteData/WebsiteDataStore.cpp:
-        (WebKit::WebsiteDataStore::hasStorageAccess):
-        (WebKit::WebsiteDataStore::requestStorageAccess):
-            Switched from WTF::Function to WTF::CompletionHandler.
-        * UIProcess/WebsiteData/WebsiteDataStore.h:
-        * WebProcess/WebCoreSupport/WebChromeClient.cpp:
-        (WebKit::WebChromeClient::hasStorageAccess):
-        (WebKit::WebChromeClient::requestStorageAccess):
-            Switched from WTF::Function to WTF::CompletionHandler.
-        * WebProcess/WebCoreSupport/WebChromeClient.h:
-        * WebProcess/WebPage/WebPage.cpp:
-        (WebKit::WebPage::hasStorageAccess):
-        (WebKit::WebPage::requestStorageAccess):
-            Switched from WTF::Function to WTF::CompletionHandler.
-        * WebProcess/WebPage/WebPage.h:
-
-2017-12-06  Youenn Fablet  <youenn@apple.com>
-
-        CacheStorageEngineConnection should protect its IPC Connection when doing asynchronous tasks
-        https://bugs.webkit.org/show_bug.cgi?id=180461
-
-        Reviewed by Chris Dumez.
-
-        Protecting the IPC connection instead of the CacheStorageEngineConnection
-        since CacheStorageEngineConnection only keeps a reference to the NetworkConnectionToWebProcess.
-
-        * NetworkProcess/cache/CacheStorageEngineConnection.cpp:
-        (WebKit::CacheStorageEngineConnection::open):
-        (WebKit::CacheStorageEngineConnection::remove):
-        (WebKit::CacheStorageEngineConnection::caches):
-        (WebKit::CacheStorageEngineConnection::retrieveRecords):
-        (WebKit::CacheStorageEngineConnection::deleteMatchingRecords):
-        (WebKit::CacheStorageEngineConnection::putRecords):
-        (WebKit::CacheStorageEngineConnection::clearMemoryRepresentation):
-
-2017-12-06  Zan Dobersek  <zdobersek@igalia.com>
-
-        [CoordGraphics] Introduce Nicosia::PaintingContext, add Cairo implementation
-        https://bugs.webkit.org/show_bug.cgi?id=180239
-
-        Reviewed by Michael Catanzaro.
-
-        With Nicosia::Buffer now only providing the memory area into which the
-        tile content was rasterized, we can simplify the BitmapTexture update
-        greatly -- we don't have to create a BitmapImage anymore and retrieve
-        memory pointer from the contained cairo_surface_t object. Instead, we
-        just copy to GPU the memory that Nicosia::Buffer controls.
-
-        * Shared/CoordinatedGraphics/CoordinatedBackingStore.cpp:
-        (WebKit::CoordinatedBackingStoreTile::swapBuffers):
-
-2017-12-05  Brent Fulgham  <bfulgham@apple.com>
-
-        Limit user agent versioning to an upper bound
-        https://bugs.webkit.org/show_bug.cgi?id=180365
-        <rdar://problem/34550617>
-
-        Reviewed by Joseph Pecoraro.
-
+        * UIProcess/ios/PageClientImplIOS.mm:
+        (WebKit::PageClientImpl::didRelaunchProcess):
         * UIProcess/ios/WebPageProxyIOS.mm:
-        (WebKit::WebPageProxy::standardUserAgent): Don't pass the WebKit bundle version when
-        creatin the User Agent string.
-        (WebKit::webKitBundleVersionString): Deleted.
-        * UIProcess/mac/WebPageProxyMac.mm:
-        (WebKit::WebPageProxy::standardUserAgent): Ditto.
-        (WebKit::webKitBundleVersionString): Deleted.
-
-2017-12-05  Alex Christensen  <achristensen@webkit.org>
-
-        Fix crash when loading a file URL that does not have a fileSystemPath representation
-        https://bugs.webkit.org/show_bug.cgi?id=180448
-        <rdar://problem/22805921>
-
-        Reviewed by Chris Dumez.
-
-        * UIProcess/WebProcessProxy.cpp:
-        (WebKit::WebProcessProxy::assumeReadAccessToBaseURL):
-        Check if a String is null before adding it to a HashSet.
-
-2017-12-05  Youenn Fablet  <youenn@apple.com>
-
-        Implement https://w3c.github.io/ServiceWorker/#clients-claim
-        https://bugs.webkit.org/show_bug.cgi?id=180261
-
-        Reviewed by Chris Dumez.
-
-        Add IPC plumbery for clients claim between ServiceWorker process and Storage process.
-
-        * StorageProcess/ServiceWorker/WebSWServerToContextConnection.cpp:
-        (WebKit::WebSWServerToContextConnection::claimCompleted):
-        * StorageProcess/ServiceWorker/WebSWServerToContextConnection.h:
-        * StorageProcess/ServiceWorker/WebSWServerToContextConnection.messages.in:
-        * WebProcess/Storage/WebSWContextManagerConnection.cpp:
-        (WebKit::WebSWContextManagerConnection::claim):
-        (WebKit::WebSWContextManagerConnection::claimCompleted):
-        * WebProcess/Storage/WebSWContextManagerConnection.h:
-        * WebProcess/Storage/WebSWContextManagerConnection.messages.in:
-
-2017-12-05  Chris Dumez  <cdumez@apple.com>
-
-        Add support for ServiceWorkerContainer.prototype.ready
-        https://bugs.webkit.org/show_bug.cgi?id=180383
+        (WebKit::WebPageProxy::setViewportConfigurationMinimumLayoutSize):
+        (WebKit::WebPageProxy::setForceAlwaysUserScalable):
+        (WebKit::WebPageProxy::setMaximumUnobscuredSize):
+        * WebProcess/WebPage/WebPage.cpp:
+        (WebKit::WebPage::WebPage):
+        Pass the current viewport minimum layout size and maximum unobscured size
+        in the WebPageCreationParameters instead of re-sending them in _didRelaunchProcess.
 
-        Reviewed by Youenn Fablet.
+        The previous approach was problematic when _dispatchSetMinimumLayoutSize:
+        was changed to not re-send identical updates, because if the client calls 
+        _overrideLayoutParametersWithMinimumLayoutSize before the Web Content process
+        is re-launched (after terminating), we would cache the size, attempt to send it,
+        fail silently (because the process is not launched), and then in _didRelaunchProcess
+        we would choose not to re-send (after the process is successfully relaunched)
+        because we think we already sent the new value.
 
-        * StorageProcess/ServiceWorker/WebSWServerConnection.cpp:
-        (WebKit::WebSWServerConnection::whenRegistrationReady):
-        (WebKit::WebSWServerConnection::resolveRegistrationReadyRequests):
-        * StorageProcess/ServiceWorker/WebSWServerConnection.h:
-        * StorageProcess/ServiceWorker/WebSWServerConnection.messages.in:
-        * WebProcess/Storage/WebSWClientConnection.cpp:
-        (WebKit::WebSWClientConnection::matchRegistration):
-        (WebKit::WebSWClientConnection::whenRegistrationReady):
-        (WebKit::WebSWClientConnection::registrationReady):
-        (WebKit::WebSWClientConnection::getRegistrations):
-        * WebProcess/Storage/WebSWClientConnection.h:
-        * WebProcess/Storage/WebSWClientConnection.messages.in:
+        Add isValid() checks to our message sends. Ideally send() would assert
+        if the process is not alive to avoid problems like this, but it doesn't (yet).
 
-2017-12-05  Youenn Fablet  <youenn@apple.com>
+        Get rid of WKWebView's _didRelaunchProcess, because it does nothing now.
 
-        Implement setting of service worker to client in SWServer without going to WebProcess
-        https://bugs.webkit.org/show_bug.cgi?id=180382
+2018-01-04  Stephan Szabo  <stephan.szabo@sony.com>
 
-        Reviewed by Chris Dumez.
+        NetworkProcess cache files use functions from unistd.h without explicitly including it
+        https://bugs.webkit.org/show_bug.cgi?id=181261
 
-        * StorageProcess/ServiceWorker/WebSWServerConnection.messages.in:
-        * StorageProcess/ServiceWorker/WebSWServerConnection.cpp:
-        (WebKit::WebSWServerConnection::registerServiceWorkerClient):
-        * StorageProcess/ServiceWorker/WebSWServerConnection.h:
-        * StorageProcess/ServiceWorker/WebSWServerConnection.messages.in:
-        * WebProcess/Storage/WebSWClientConnection.cpp:
-        (WebKit::WebSWClientConnection::registerServiceWorkerClient):
-        (WebKit::WebSWClientConnection::serviceWorkerStartedControllingClient): Deleted.
-        (WebKit::WebSWClientConnection::serviceWorkerStoppedControllingClient): Deleted.
-        * WebProcess/Storage/WebSWClientConnection.h:
+        Reviewed by Alex Christensen.
 
-2017-12-04  Chris Dumez  <cdumez@apple.com>
+        * NetworkProcess/cache/NetworkCacheBlobStorage.cpp:
+        * NetworkProcess/cache/NetworkCacheData.cpp:
 
-        Support container.getRegistration() / getRegistrations() inside service workers
-        https://bugs.webkit.org/show_bug.cgi?id=180360
+2018-01-04  Keith Rollin  <krollin@apple.com>
 
-        Reviewed by Youenn Fablet.
+        Add commas
+        https://bugs.webkit.org/show_bug.cgi?id=181295
+        <rdar://problem/35802295>
 
-        * WebProcess/Storage/WebSWClientConnection.cpp:
-        (WebKit::WebSWClientConnection::didMatchRegistration):
-        (WebKit::WebSWClientConnection::didGetRegistrations):
-        (WebKit::WebSWClientConnection::matchRegistration):
-        (WebKit::WebSWClientConnection::getRegistrations):
+        Reviewed by Brent Fulgham.
 
-2017-12-04  Brady Eidson  <beidson@apple.com>
+        Fix a problem introduced in r226226 where the emitted JSON didn't
+        include some required commas.
 
-        Followup to:
-        Get a directory path to SWServers for storing ServiceWorker registrations
-        https://bugs.webkit.org/show_bug.cgi?id=180362
+        * NetworkProcess/NetworkResourceLoader.cpp:
+        (WebKit::NetworkResourceLoader::logCookieInformation const):
 
-        Unreviewed.
+2018-01-04  Eric Carlson  <eric.carlson@apple.com>
 
-        * StorageProcess/StorageProcess.cpp:
-        (WebKit::StorageProcess::swServerForSession): Change this ASSERT which is invalid in private browsing sessions.
+        [MediaStream] Add Mock screen capture source
+        https://bugs.webkit.org/show_bug.cgi?id=181291
+        <rdar://problem/36298164>
 
-2017-12-04  Simon Fraser  <simon.fraser@apple.com>
+        Reviewed by Dean Jackson.
 
-        Minor DisplayRefreshMonitor-related cleanup
-        https://bugs.webkit.org/show_bug.cgi?id=179802
+        * Shared/WebCoreArgumentCoders.cpp:
+        (IPC::ArgumentCoder<MediaConstraints>::decode):
+        (IPC::ArgumentCoder<CaptureDevice>::encode): Deleted, moved to CaptureDevice.h
+        (IPC::ArgumentCoder<CaptureDevice>::decode): Ditto.
+        * Shared/WebCoreArgumentCoders.h:
 
-        Reviewed by Sam Weinig.
+        * UIProcess/API/Cocoa/WKWebViewPrivate.h: Add _WKCaptureDeviceDisplay.
+        * UIProcess/Cocoa/UIDelegate.mm:
+        (WebKit::requestUserMediaAuthorizationForDevices): Deal with display capture.
+        (WebKit::UIDelegate::UIClient::decidePolicyForUserMediaPermissionRequest): Ditto.
 
-        Use RunLoopObserver::WellKnownRunLoopOrders. We want to fire before layer flushing.
+        * UIProcess/UserMediaPermissionRequestManagerProxy.cpp:
+        (WebKit::UserMediaPermissionRequestManagerProxy::userMediaAccessWasDenied): requiresAudio -> requiresAudioCapture.
+        (WebKit::UserMediaPermissionRequestManagerProxy::searchForGrantedRequest const): Never reuse
+        a previously granted display capture request.
 
-        * UIProcess/WebPageProxy.cpp:
-        (WebKit::m_configurationPreferenceValues):
+        * UIProcess/UserMediaPermissionRequestProxy.cpp:
+        (WebKit::UserMediaPermissionRequestProxy::allow): Search the eligible devices instead of asking
+        the source center to find devices.
+        * UIProcess/UserMediaPermissionRequestProxy.h:
+        (WebKit::UserMediaPermissionRequestProxy::requiresAudioCapture const): Renamed.
+        (WebKit::UserMediaPermissionRequestProxy::requiresVideoCapture const): Ditto.
+        (WebKit::UserMediaPermissionRequestProxy::requiresDisplayCapture const): New.
+        (WebKit::UserMediaPermissionRequestProxy::requiresAudio const): Deleted.
+        (WebKit::UserMediaPermissionRequestProxy::requiresVideo const): Deleted.
 
-2017-12-04  Brent Fulgham  <bfulgham@apple.com>
+2018-01-04  Youenn Fablet  <youenn@apple.com>
 
-        Don't force creation of process pool when enabling resource load statistics
-        https://bugs.webkit.org/show_bug.cgi?id=180374
-        <rdar://problem/35545639>
+        FetchResponse should set its internal response text encoding name
+        https://bugs.webkit.org/show_bug.cgi?id=181284
 
         Reviewed by Alex Christensen.
 
-        Pass appropriate arguments to the 'processPool' accessor so that we only get the
-        set of existing process pools. We don't want to pay the cost of launching new
-        process pools just to set this flag. The flag will be properly set when the pools
-        are created as soon as a WebView is instantiated.
-
-        * UIProcess/WebsiteData/WebsiteDataStore.cpp:
-        (WebKit::WebsiteDataStore::setResourceLoadStatisticsEnabled):
-
-2017-12-04  David Quesada  <david_quesada@apple.com>
-
-        Add a class for parsing application manifests
-        https://bugs.webkit.org/show_bug.cgi?id=177973
-        rdar://problem/34747949
-
-        Reviewed by Geoffrey Garen.
-
-        * Configurations/FeatureDefines.xcconfig: Add ENABLE_APPLICATION_MANIFEST feature flag.
-
-2017-12-04  Wenson Hsieh  <wenson_hsieh@apple.com>
-
-        Rename a static helper in TouchBarMenuItemData.cpp to match style guidelines.
-        https://bugs.webkit.org/show_bug.cgi?id=180305
-
-        Reviewed by Andy Estes.
-
-        Style guidelines state that we should use bare words for getters, so getItemType should just be
-        itemType. Since this collides with the itemType member variable, this patch also renames that
-        member variable to the more concise "type".
-
-        No change in behavior.
-
-        * Shared/TouchBarMenuItemData.cpp:
-        (WebKit::itemType):
-        (WebKit::TouchBarMenuItemData::TouchBarMenuItemData):
-        (WebKit::TouchBarMenuItemData::encode const):
-        (WebKit::TouchBarMenuItemData::decode):
-        (WebKit::getItemType): Deleted.
-        * Shared/TouchBarMenuItemData.h:
-        (WebKit::operator==):
-
-2017-12-04  Brian Burg  <bburg@apple.com>
-
-        Web Automation: add flag to preserve legacy page screenshot behavior
-        https://bugs.webkit.org/show_bug.cgi?id=180313
-        <rdar://problem/34379930>
-
-        Reviewed by Joseph Pecoraro.
+        * WebProcess/Storage/ServiceWorkerClientFetch.cpp:
+        (WebKit::ServiceWorkerClientFetch::didReceiveResponse): Set default encoding to UTF-8.
 
-        For compatibility with JSON Wire Protocol implemented by Safari,
-        we need to retain the ability to perform whole page contents
-        snapshots using Automation.takeScreenshot. Add an extra flag,
-        clipToViewport, which can be used by W3C-conforming drivers.
+2018-01-04  Youenn Fablet  <youenn@apple.com>
 
-        * UIProcess/Automation/Automation.json: Add new flag.
-        * UIProcess/Automation/WebAutomationSession.h:
-        * UIProcess/Automation/WebAutomationSession.cpp:
-        (WebKit::WebAutomationSession::takeScreenshot):
-        * WebProcess/Automation/WebAutomationSessionProxy.h:
-        * WebProcess/Automation/WebAutomationSessionProxy.messages.in:
-        * WebProcess/Automation/WebAutomationSessionProxy.cpp:
-        (WebKit::snapshotRectForScreenshot):
-        (WebKit::WebAutomationSessionProxy::takeScreenshot):
-        If the flag is false, take a screenshot of the whole page contents.
+        Implement Cache API partitioning based on ClientOrigin
+        https://bugs.webkit.org/show_bug.cgi?id=181240
 
-2017-12-04  JF Bastien  <jfbastien@apple.com>
+        Reviewed by Alex Christensen.
 
-        Update std::expected to match libc++ coding style
-        https://bugs.webkit.org/show_bug.cgi?id=180264
+        open and retrieveCaches now take a ClientOrigin instead of a String.
+        Updated cache filesystem path computation to take both client origin and top origin.
 
-        Reviewed by Alex Christensen.
+        When clearing an origin, caches whose client origin or top origin matches the origin are cleared.
+        Caches are added to the web site data of their client origin with their corresponding cache size.
+        Caches are added to the web site data of their top origin with a size equal to 0.
 
-        Update various uses of Expected, mostly renaming valueOr and
-        hasValue to the STL naming convention.
+        Updated memory representation dumping used for test to include both top and client origins.
 
+        * NetworkProcess/NetworkProcess.cpp:
+        (WebKit::NetworkProcess::deleteWebsiteDataForOrigins):
         * NetworkProcess/cache/CacheStorageEngine.cpp:
+        (WebKit::CacheStorage::Engine::cachesRootPath):
         (WebKit::CacheStorage::Engine::open):
+        (WebKit::CacheStorage::Engine::remove):
         (WebKit::CacheStorage::Engine::retrieveCaches):
-        (WebKit::CacheStorage::Engine::retrieveRecords):
-        (WebKit::CacheStorage::Engine::putRecords):
-        (WebKit::CacheStorage::Engine::deleteMatchingRecords):
+        (WebKit::CacheStorage::Engine::readCachesFromDisk):
+        (WebKit::CacheStorage::Engine::removeCaches):
         (WebKit::CacheStorage::Engine::fetchEntries):
+        (WebKit::CacheStorage::Engine::clearCachesForOrigin):
         (WebKit::CacheStorage::Engine::clearMemoryRepresentation):
+        (WebKit::CacheStorage::Engine::representation):
+        * NetworkProcess/cache/CacheStorageEngine.h:
         * NetworkProcess/cache/CacheStorageEngineCache.cpp:
-        (WebKit::CacheStorage::ReadRecordTaskCounter::appendRecord):
-        (WebKit::CacheStorage::Cache::updateRecordToDisk):
+        (WebKit::CacheStorage::Cache::Cache):
         * NetworkProcess/cache/CacheStorageEngineCaches.cpp:
-        (WebKit::CacheStorage::Caches::initialize):
-        (WebKit::CacheStorage::Caches::readCachesFromDisk):
-        * NetworkProcess/webrtc/NetworkRTCProvider.cpp:
-        (WebKit::NetworkRTCProvider::createResolver):
-        * Platform/IPC/ArgumentCoders.h:
-
-2017-12-04  Brady Eidson  <beidson@apple.com>
-
-        Get a directory path to SWServers for storing ServiceWorker registrations.
-        https://bugs.webkit.org/show_bug.cgi?id=180362
-
-        Reviewed by Chris Dumez.
-
-        This gets all of the plumbing in place for specifying a ServiceWorker registration storage path
-        in a particular WebsiteDataStore.
-
-        * Shared/Storage/StorageProcessCreationParameters.cpp:
-        (WebKit::StorageProcessCreationParameters::encode const):
-        (WebKit::StorageProcessCreationParameters::decode):
-        * Shared/Storage/StorageProcessCreationParameters.h:
-
-        * StorageProcess/StorageProcess.cpp:
-        (WebKit::StorageProcess::initializeWebsiteDataStore):
-        (WebKit::StorageProcess::swServerForSession):
-        * StorageProcess/StorageProcess.h:
-
-        * UIProcess/API/APIProcessPoolConfiguration.cpp:
-        (API::ProcessPoolConfiguration::createWithLegacyOptions):
-        (API::ProcessPoolConfiguration::createWithWebsiteDataStoreConfiguration):
-        (API::ProcessPoolConfiguration::ProcessPoolConfiguration):
-        * UIProcess/API/APIProcessPoolConfiguration.h:
-
-        * UIProcess/API/APIWebsiteDataStore.h:
-        * UIProcess/API/Cocoa/APIWebsiteDataStoreCocoa.mm:
-        (API::WebsiteDataStore::defaultServiceWorkerRegistrationDirectory):
-        * UIProcess/API/glib/APIWebsiteDataStoreGLib.cpp:
-        (API::WebsiteDataStore::defaultServiceWorkerRegistrationDirectory):
-
-        * UIProcess/Cocoa/WebProcessPoolCocoa.mm:
-        (WebKit::WebProcessPool::legacyPlatformDefaultIndexedDBDatabaseDirectory):
-        (WebKit::WebProcessPool::legacyPlatformDefaultServiceWorkerRegistrationDirectory):
-        * UIProcess/WebProcessPool.cpp:
-        (WebKit::WebProcessPool::ensureStorageProcessAndWebsiteDataStore):
-        * UIProcess/WebProcessPool.h:
-
-        * UIProcess/WebsiteData/WebsiteDataStore.cpp:
-        (WebKit::WebsiteDataStore::resolveDirectoriesIfNecessary):
-        (WebKit::WebsiteDataStore::storageProcessParameters):
-        * UIProcess/WebsiteData/WebsiteDataStore.h:
-        (WebKit::WebsiteDataStore::resolvedServiceWorkerRegistrationDirectory const):
-
-        * UIProcess/gtk/WebProcessPoolGtk.cpp:
-        (WebKit::WebProcessPool::legacyPlatformDefaultServiceWorkerRegistrationDirectory):
-
-        * UIProcess/wpe/WebProcessPoolWPE.cpp:
-        (WebKit::WebProcessPool::legacyPlatformDefaultServiceWorkerRegistrationDirectory):
-
-2017-12-04  Frederic Wang  <fwang@igalia.com>
-
-        Make ScrollingTreeNode::enclosingFrameNode return the node itself for frame nodes
-        https://bugs.webkit.org/show_bug.cgi?id=180353
-
-        Reviewed by Antonio Gomes.
-
-        This function was introduced in bug 175135 to solve a rendering bug with fixed positioned
-        nodes in overflow nodes. For a frame node, the reference frame to use for fixed nodes is
-        actually the frame node itself or otherwise we will get the same rendering bug. This patch
-        makes enclosingFrameNode return the node itself when it is a frame node and renames it to
-        clarify this behavior. Currently, enclosingFrameNode is not used for frame nodes so the
-        behavior is unchanged.
-
-        * UIProcess/RemoteLayerTree/ios/ScrollingTreeScrollingNodeDelegateIOS.mm:
-        (WebKit::ScrollingTreeScrollingNodeDelegateIOS::updateChildNodesAfterScroll): Use auto* and
-        the new function name.
-
-2017-12-04  Michael Catanzaro  <mcatanzaro@igalia.com>
+        (WebKit::CacheStorage::Caches::retrieveOriginFromDirectory):
+        (WebKit::CacheStorage::Caches::Caches):
+        (WebKit::CacheStorage::Caches::storeOrigin):
+        (WebKit::CacheStorage::Caches::readOrigin):
+        (WebKit::CacheStorage::Caches::open):
+        * NetworkProcess/cache/CacheStorageEngineCaches.h:
+        (WebKit::CacheStorage::Caches::create):
+        (WebKit::CacheStorage::Caches::origin const):
+        * NetworkProcess/cache/CacheStorageEngineConnection.cpp:
+        (WebKit::CacheStorageEngineConnection::open):
+        (WebKit::CacheStorageEngineConnection::caches):
+        (WebKit::CacheStorageEngineConnection::clearMemoryRepresentation):
+        * NetworkProcess/cache/CacheStorageEngineConnection.h:
+        * NetworkProcess/cache/CacheStorageEngineConnection.messages.in:
+        * WebProcess/Cache/WebCacheStorageConnection.cpp:
+        (WebKit::WebCacheStorageConnection::doOpen):
+        (WebKit::WebCacheStorageConnection::doRetrieveCaches):
+        (WebKit::WebCacheStorageConnection::clearMemoryRepresentation):
+        * WebProcess/Cache/WebCacheStorageConnection.h:
 
-        [GTK] Implement PAL::SleepDisabler
-        https://bugs.webkit.org/show_bug.cgi?id=178485
+2018-01-04  Youenn Fablet  <youenn@apple.com>
 
-        Reviewed by Carlos Garcia Campos.
+        Service Worker should expose redirect mode for navigation loads as manual
+        https://bugs.webkit.org/show_bug.cgi?id=181067
 
-        * UIProcess/API/gtk/WebKitWebViewBase.cpp:
-        (webkitWebViewBaseDispose):
-        (webkitWebViewBaseEnterFullScreen):
-        (webkitWebViewBaseExitFullScreen):
-        (screenSaverInhibitedCallback): Deleted.
-        (webkitWebViewBaseSendInhibitMessageToScreenSaver): Deleted.
-        (screenSaverProxyCreatedCallback): Deleted.
-        (webkitWebViewBaseInhibitScreenSaver): Deleted.
-        (webkitWebViewBaseUninhibitScreenSaver): Deleted.
+        Reviewed by Alex Christensen.
 
-2017-12-03  Yusuke Suzuki  <utatane.tea@gmail.com>
+        * WebProcess/Storage/ServiceWorkerClientFetch.cpp:
+        (WebKit::ServiceWorkerClientFetch::didReceiveResponse):
 
-        WTF shouldn't have both Thread and ThreadIdentifier
-        https://bugs.webkit.org/show_bug.cgi?id=180308
+2018-01-03  Wenson Hsieh  <wenson_hsieh@apple.com>
 
-        Reviewed by Darin Adler.
+        [Attachment Support] Create attachment elements when dropping files on iOS
+        https://bugs.webkit.org/show_bug.cgi?id=181192
+        <rdar://problem/36280945>
 
-        * UIProcess/API/glib/IconDatabase.cpp:
-        * UIProcess/GenericCallback.h:
-        (WebKit::GenericCallback::~GenericCallback):
-        (WebKit::GenericCallback::performCallbackWithReturnValue):
+        Reviewed by Tim Horton.
 
-2017-12-03  Chris Dumez  <cdumez@apple.com>
+        Make some minor adjustments for changes to the pasteboard in WebCore. See WebCore/ChangeLog for more detail.
+        Teaches WebPasteboardProxy et. al. to plumb PasteboardItemInfo from the UI process to the web process via the
+        new `InformationForItemAtIndex` codepath.
 
-        Support serviceWorker.postMessage() inside service workers
-        https://bugs.webkit.org/show_bug.cgi?id=180328
+        * UIProcess/Cocoa/WebPasteboardProxyCocoa.mm:
+        (WebKit::WebPasteboardProxy::informationForItemAtIndex):
+        (WebKit::WebPasteboardProxy::getFilenamesForDataInteraction): Deleted.
+        * UIProcess/WebPasteboardProxy.h:
+        * UIProcess/WebPasteboardProxy.messages.in:
+        * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
+        (WebKit::WebPlatformStrategies::informationForItemAtIndex):
+        (WebKit::WebPlatformStrategies::getFilenamesForDataInteraction): Deleted.
+        * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
 
-        Reviewed by Darin Adler.
+2018-01-03  Ting-Wei Lan  <lantw44@gmail.com>
 
-        Support serviceWorker.postMessage() inside service workers.
+        Replace hard-coded paths in shebangs with #!/usr/bin/env
+        https://bugs.webkit.org/show_bug.cgi?id=181040
 
-        * StorageProcess/ServiceWorker/WebSWServerConnection.cpp:
-        (WebKit::WebSWServerConnection::postMessageToServiceWorkerFromClient):
-        (WebKit::WebSWServerConnection::postMessageToServiceWorkerFromServiceWorker):
-        * StorageProcess/ServiceWorker/WebSWServerConnection.h:
-        * StorageProcess/ServiceWorker/WebSWServerConnection.messages.in:
-        * WebProcess/Storage/WebSWClientConnection.cpp:
-        (WebKit::WebSWClientConnection::postMessageToServiceWorker):
-        * WebProcess/Storage/WebSWClientConnection.h:
-        * WebProcess/Storage/WebSWContextManagerConnection.cpp:
-        (WebKit::WebSWContextManagerConnection::postMessageToServiceWorkerFromClient):
-        (WebKit::WebSWContextManagerConnection::postMessageToServiceWorkerFromServiceWorker):
-        * WebProcess/Storage/WebSWContextManagerConnection.h:
-        * WebProcess/Storage/WebSWContextManagerConnection.messages.in:
+        Reviewed by Alex Christensen.
 
-2017-12-03  Chris Dumez  <cdumez@apple.com>
+        * Scripts/generate-forwarding-headers.pl:
 
-        Implement self.skipWaiting() inside service workers
-        https://bugs.webkit.org/show_bug.cgi?id=180329
+2018-01-03  Wenson Hsieh  <wenson_hsieh@apple.com>
 
-        Reviewed by Darin Adler.
+        [Attachment Support] Add plumbing for starting a drag with promised blob data
+        https://bugs.webkit.org/show_bug.cgi?id=181201
 
-        * StorageProcess/ServiceWorker/WebSWServerToContextConnection.cpp:
-        (WebKit::WebSWServerToContextConnection::didFinishSkipWaiting):
-        * StorageProcess/ServiceWorker/WebSWServerToContextConnection.h:
-        * StorageProcess/ServiceWorker/WebSWServerToContextConnection.messages.in:
-        * WebProcess/Storage/WebSWContextManagerConnection.cpp:
-        (WebKit::WebSWContextManagerConnection::skipWaiting):
-        (WebKit::WebSWContextManagerConnection::didFinishSkipWaiting):
-        * WebProcess/Storage/WebSWContextManagerConnection.h:
-        * WebProcess/Storage/WebSWContextManagerConnection.messages.in:
+        Reviewed by Tim Horton.
 
-2017-12-02  Youenn Fablet  <youenn@apple.com>
+        Add boilerplate plumbing for PrepareToDragPromisedBlob, which delivers blob promises to the UI process when
+        dragging, respectively.
 
-        Implement https://w3c.github.io/ServiceWorker/#clients-getall
-        https://bugs.webkit.org/show_bug.cgi?id=180276
+        * Scripts/webkit/messages.py:
+        (headers_for_type):
+        * Shared/WebCoreArgumentCoders.cpp:
+        (IPC::encodeTypesAndData):
+        (IPC::decodeTypesAndData):
+        (IPC::ArgumentCoder<PasteboardWebContent>::encode):
+        (IPC::ArgumentCoder<PasteboardWebContent>::decode):
+        (IPC::ArgumentCoder<PasteboardImage>::encode):
+        (IPC::ArgumentCoder<PasteboardImage>::decode):
+        (IPC::ArgumentCoder<PromisedBlobInfo>::encode):
+        (IPC::ArgumentCoder<PromisedBlobInfo>::decode):
 
-        Reviewed by Chris Dumez.
+        Add IPC support PromisedBlobInfo's additionalTypes and additionalData.
 
-        Add IPC plumbery for clients.matchAll between ServiceWorker process and Storage process.
+        (IPC::encodeClientTypesAndData): Deleted.
+        (IPC::decodeClientTypesAndData): Deleted.
 
-        * StorageProcess/ServiceWorker/WebSWServerToContextConnection.cpp:
-        (WebKit::WebSWServerToContextConnection::matchAllCompleted):
-        * StorageProcess/ServiceWorker/WebSWServerToContextConnection.h:
-        * StorageProcess/ServiceWorker/WebSWServerToContextConnection.messages.in:
-        * WebProcess/Storage/WebSWContextManagerConnection.cpp:
-        (WebKit::WebSWContextManagerConnection::matchAll):
-        (WebKit::WebSWContextManagerConnection::matchAllCompleted):
-        * WebProcess/Storage/WebSWContextManagerConnection.h:
-        * WebProcess/Storage/WebSWContextManagerConnection.messages.in:
+        Rename these helper functions and move them to the top of the file.
 
-2017-12-02  Joseph Pecoraro  <pecoraro@apple.com>
+        * UIProcess/Cocoa/WebViewImpl.h:
+        * UIProcess/Cocoa/WebViewImpl.mm:
+        (WebKit::WebViewImpl::prepareToDragPromisedBlob):
+        * UIProcess/PageClient.h:
+        (WebKit::PageClient::prepareToDragPromisedBlob):
+        * UIProcess/WebPageProxy.cpp:
+        (WebKit::WebPageProxy::prepareToDragPromisedBlob):
+        * UIProcess/WebPageProxy.h:
+        * UIProcess/WebPageProxy.messages.in:
+        * UIProcess/ios/PageClientImplIOS.h:
+        * UIProcess/ios/PageClientImplIOS.mm:
+        (WebKit::PageClientImpl::prepareToDragPromisedBlob):
+        * UIProcess/ios/WKContentViewInteraction.h:
+        * UIProcess/ios/WKContentViewInteraction.mm:
+        (-[WKContentView _prepareToDragPromisedBlob:]):
+        * UIProcess/mac/PageClientImplMac.h:
+        * UIProcess/mac/PageClientImplMac.mm:
+        (WebKit::PageClientImpl::prepareToDragPromisedBlob):
+        * WebProcess/WebCoreSupport/WebDragClient.cpp:
+        (WebKit::WebDragClient::prepareToDragPromisedBlob):
+        * WebProcess/WebCoreSupport/WebDragClient.h:
+        * WebProcess/WebPage/WebPage.cpp:
+        (WebKit::WebPage::prepareToDragPromisedBlob):
+        * WebProcess/WebPage/WebPage.h:
 
-        Remote Web Inspector window always shows up at the default size
-        https://bugs.webkit.org/show_bug.cgi?id=180284
-        <rdar://problem/35430255>
+2018-01-03  David Kilzer  <ddkilzer@apple.com>
 
-        Reviewed by Brian Burg.
+        REGRESSION (r212929): WKSnapshotConfiguration may leak an NSNumber when deallocated
+        <https://webkit.org/b/181274>
 
-        * UIProcess/mac/RemoteWebInspectorProxyMac.mm:
-        (WebKit::RemoteWebInspectorProxy::platformCreateFrontendPageAndWindow):
-        Give remote web inspector windows an autosave name so that their frame can
-        be automatically saved and restored by the system.
+        Reviewed by Joseph Pecoraro.
 
-2017-12-02  Simon Fraser  <simon.fraser@apple.com>
+        * UIProcess/API/Cocoa/WKSnapshotConfiguration.mm:
+        (-[WKSnapshotConfiguration dealloc]): Implement method and
+        release _snapshotWidth.
 
-        Add a log channel for viewports
-        https://bugs.webkit.org/show_bug.cgi?id=180295
+2018-01-03  John Wilander  <wilander@apple.com>
 
-        Reviewed by Zalan Bujtas.
+        Storage Access API: Refactor XPC for access removal to go straight from the web process to the network process
+        https://bugs.webkit.org/show_bug.cgi?id=181270
+        <rdar://problem/36289544>
 
-        Add a "Viewports" log channel to log viewport scaling information, and enhance the
-        WebKit "VisibleRects" channel to log additional data for the same reason.
+        Reviewed by Alex Christensen.
 
-        * UIProcess/API/Cocoa/WKWebView.mm:
-        (-[WKWebView _didCommitLayerTree:]):
-        (-[WKWebView _dynamicViewportUpdateChangedTargetToScale:position:nextValidLayerTreeTransactionID:]):
-        (-[WKWebView _dispatchSetMinimumLayoutSize:]):
-        (-[WKWebView _endAnimatedResize]):
-        (-[WKWebView _resizeWhileHidingContentWithUpdates:]):
-        * WebProcess/WebPage/WebPage.cpp:
-        (WebKit::WebPage::setFixedLayoutSize):
-        (WebKit::WebPage::mainFrameDidLayout):
-        (WebKit::WebPage::didCommitLoad):
-        * WebProcess/WebPage/ios/WebPageIOS.mm:
-        (WebKit::scaleAfterViewportWidthChange):
-        (WebKit::WebPage::setViewportConfigurationMinimumLayoutSize):
-        (WebKit::WebPage::dynamicViewportSizeUpdate):
-        (WebKit::WebPage::resetViewportDefaultConfiguration):
-        (WebKit::WebPage::viewportConfigurationChanged):
-        (WebKit::WebPage::updateVisibleContentRects):
+        This change refactors how the web process tells the network process
+        to remove storage access. Previously, this was done over the UI process
+        just like requests for storage access. But since no further reasoning
+        is needed, the message should go straight from the web process to the
+        network process for performance reasons and to minimize the risk of a
+        race.
 
-2017-12-02  Carlos Garcia Campos  <cgarcia@igalia.com>
+        As a consequence, the XPC code for storage access removal in the UI
+        process is deleted.
 
-        WebDriver: handle user prompts shown while executing scripts
-        https://bugs.webkit.org/show_bug.cgi?id=179979
+        * NetworkProcess/NetworkConnectionToWebProcess.cpp:
+        (WebKit::NetworkConnectionToWebProcess::removeStorageAccess):
+        * NetworkProcess/NetworkConnectionToWebProcess.h:
+        * NetworkProcess/NetworkConnectionToWebProcess.messages.in:
+        * NetworkProcess/NetworkProcess.cpp:
+        (WebKit::NetworkProcess::removeStorageAccess): Deleted.
+        * NetworkProcess/NetworkProcess.h:
+        * NetworkProcess/NetworkProcess.messages.in:
+        * UIProcess/Network/NetworkProcessProxy.cpp:
+        (WebKit::NetworkProcessProxy::removeStorageAccess): Deleted.
+        * UIProcess/Network/NetworkProcessProxy.h:
+        * UIProcess/WebPageProxy.cpp:
+        (WebKit::WebPageProxy::requestStorageAccess):
+        (WebKit::WebPageProxy::removeStorageAccess): Deleted.
+        * UIProcess/WebPageProxy.h:
+        * UIProcess/WebPageProxy.messages.in:
+        * UIProcess/WebsiteData/WebsiteDataStore.cpp:
+        (WebKit::WebsiteDataStore::requestStorageAccess):
+        (WebKit::WebsiteDataStore::removeStorageAccess): Deleted.
+        * UIProcess/WebsiteData/WebsiteDataStore.h:
+        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
+        (WebKit::WebFrameLoaderClient::detachedFromParent2):
+        (WebKit::WebFrameLoaderClient::dispatchWillChangeDocument):
 
-        Reviewed by Brian Burg.
+2018-01-03  David Kilzer  <ddkilzer@apple.com>
 
-        * UIProcess/Automation/Automation.json: Add UnexpectedAlertOpen error.
-        * UIProcess/Automation/WebAutomationSession.cpp:
-        (WebKit::WebAutomationSession::willShowJavaScriptDialog): Finish pending evaluateJavaScriptFunction operations
-        with UnexpectedAlertOpen error.
+        com.apple.WebKit.Networking crash in com.apple.Foundation: -[__NSOperationInternal _start:]
+        <https://webkit.org/b/181272>
+        <rdar://problem/35657310>
 
-2017-12-02  Wenson Hsieh  <wenson_hsieh@apple.com>
+        Reviewed by Alex Christensen.
 
-        Make some minor adjustments to TouchBarMenuData and TouchBarMenuItemData
-        https://bugs.webkit.org/show_bug.cgi?id=180305
+        * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
+        (downgradeRequest): Remove unnecessary -autorelease.
 
-        Reviewed by Joseph Pecoraro.
+2018-01-03  Brent Fulgham  <bfulgham@apple.com>
 
-        Mark some methods and parameters as const, use the default constructor in more places, and also remove a few
-        extraneous imported headers.
+        [macOS] Constant frame dropping during Flash video playback
+        https://bugs.webkit.org/show_bug.cgi?id=181249
+        <rdar://problem/34843448>
 
-        * Shared/TouchBarMenuData.cpp:
-        (WebKit::TouchBarMenuData::TouchBarMenuData):
+        Reviewed by Eric Carlson.
 
-        Add a FIXME regarding the use of the 'id' attribute.
+        Review of logs during jerky flash video playback shows a few IOKit properties are being blocked by the sandbox,
+        which prevents some high-efficiency codecs from being used. Add 'AppleGVAKeyDoesNotExist', 'IODVDBundleName', and
+        'IOGVA*Encode' to the whitelist.
 
-        (WebKit::TouchBarMenuData::decode):
-        * Shared/TouchBarMenuData.h:
-        (WebKit::TouchBarMenuData::items const):
-        (WebKit::TouchBarMenuData::setID):
-        (WebKit::TouchBarMenuData::isPageCustomized const):
-        (WebKit::TouchBarMenuData::items): Deleted.
-        (WebKit::TouchBarMenuData::isPageCustomized): Deleted.
-        * Shared/TouchBarMenuItemData.cpp:
-        (WebKit::getItemType):
+        * PluginProcess/mac/com.apple.WebKit.plugin-common.sb.in:
 
-        Change a helper method from a static class function to a static function in the implementation file.
+2018-01-03  Michael Catanzaro  <mcatanzaro@igalia.com>
 
-        (WebKit::TouchBarMenuItemData::TouchBarMenuItemData):
-        (WebKit::TouchBarMenuItemData::encode const):
-        (WebKit::TouchBarMenuItemData::decode):
-        (WebKit::TouchBarMenuItemData::getItemType): Deleted.
-        * Shared/TouchBarMenuItemData.h:
-        (WebKit::operator==):
+        [GTK] Add web process API to detect when form is submitted via JavaScript
+        https://bugs.webkit.org/show_bug.cgi?id=173915
 
-        Remove the commandName member variable, since it doesn't make sense to propagate an event handler
-        attribute from WebCore to the client layer.
+        Reviewed by Carlos Garcia Campos.
 
-        * UIProcess/WebPageProxy.messages.in:
+        Epiphany relies on the DOM submit event to detect when a form has been submitted. However,
+        for historical reasons, the submit event is not emitted when a form is submitted by
+        JavaScript. It is therefore not currently possible for a web browser to reliably detect form
+        submission and not possible to implement a robust password storage feature. In order to
+        avoid this problem, this patch adds a new WebKitWebPage signal, will-submit-form, that
+        browsers can use in preference to a DOM event listener.
 
-2017-12-01  Zan Dobersek  <zdobersek@igalia.com>
+        Unfortunately, this signal is not available for WPE because it depends on the DOM API.
 
-        Unreviewed GTK+ debug build fix. Replace ASSERT_UNUSED() with UNUSED_PARAM()
-        in WebKit::WebPage methods that used to operate on HTMLMenuElement pointer
-        values (which have been converted to references).
+        There are two submission events, WEBKIT_FORM_SUBMISSION_WILL_SEND_DOM_EVENT and
+        WEBKIT_FORM_SUBMISSION_WILL_COMPLETE. WEBKIT_FORM_SUBMISSION_WILL_SEND_DOM_EVENT
+        occurs earlier than WEBKIT_FORM_SUBMISSION_WILL_COMPLETE and can be used to retrieve form
+        values before websites receive the DOM submit event. This is useful as some websites like
+        to delete form values right before a submit would normally happen in order to attempt to
+        defeat browser password managers. There are two tricks to note: JavaScript can cancel form
+        submission immediately after this event occurs (by returning false in an onsubmit handler),
+        and, for historical reasons, this event will not occur at all when form submission is
+        triggered by JavaScript. WEBKIT_FORM_SUBMISSION_WILL_COMPLETE occurs next, and is more
+        straightforward: it is always emitted when a form is about to be submitted, when it is too
+        late to cancel.
 
-        * WebProcess/WebPage/WebPage.cpp:
-        (WebKit::WebPage::didInsertMenuElement):
-        (WebKit::WebPage::didRemoveMenuElement):
-        (WebKit::WebPage::didInsertMenuItemElement):
-        (WebKit::WebPage::didRemoveMenuItemElement):
+        The recommended way to reliably retrieve password form values would be to watch for both
+        events, use the form value detected in WEBKIT_FORM_SUBMISSION_WILL_SEND_DOM_EVENT
+        if that event is emitted, and use the value detected later in
+        WEBKIT_FORM_SUBMISSION_WILL_COMPLETE otherwise.
 
-2017-12-01  Simon Fraser  <simon.fraser@apple.com>
+        Since one of the signal arguments is an enum, we now have to run glib-mkenums for the web
+        process API. And that has resulted in this patch also adding GType goo for
+        WebKitConsoleMessageLevel and WebKitConsoleMessageSource that was previously missing. Any
+        applications that for some unlikely reason want to use these enums in properties or signals
+        will be happy.
 
-        Reduce the number of calls to ViewportConfiguration::updateConfiguration()
-        https://bugs.webkit.org/show_bug.cgi?id=180299
+        * PlatformGTK.cmake:
+        * UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt:
+        * WebProcess/InjectedBundle/API/glib/WebKitWebPage.cpp:
+        (webkit_web_page_class_init):
+        * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.h:
+        * WebProcess/InjectedBundle/API/gtk/WebKitWebProcessEnumTypes.cpp.template: Added.
+        * WebProcess/InjectedBundle/API/gtk/WebKitWebProcessEnumTypes.h.template: Added.
 
-        Reviewed by Zalan Bujtas.
+2018-01-03  Carlos Garcia Campos  <cgarcia@igalia.com>
 
-        There are several calls to ViewportConfiguration::setDefaultConfiguration() during loading
-        with the same arguments. We can avoid unnecessary calls to updateConfiguration() by returning
-        early if the configuration hasn't changed.
+        Unreviewed. Really fix plugin process after r226327.
 
-        Also move the fetching of ViewportConfiguration::xhtmlMobileParameters() from didReceiveMobileDocType()
-        into resetViewportDefaultConfiguration() where we grab all the other default configs.
+        * PluginProcess/unix/PluginProcessMainUnix.cpp:
 
-        * WebProcess/WebPage/WebPage.h:
-        * WebProcess/WebPage/ios/WebPageIOS.mm:
-        (WebKit::WebPage::didReceiveMobileDocType):
-        (WebKit::WebPage::resetViewportDefaultConfiguration):
+2018-01-02  Brent Fulgham  <bfulgham@apple.com>
 
-2017-12-01  Aishwarya Nirmal  <anirmal@apple.com>
+        [macOS, iOS] Adopt new secure coding APIs in WebKit
+        https://bugs.webkit.org/show_bug.cgi?id=181085
+        <rdar://problem/34837397>
 
-        [Touch Bar Web API] Object representing Touch Bar Menu to send between Web and UI Processes
-        https://bugs.webkit.org/show_bug.cgi?id=179714
+        Reviewed by Tim Horton.
 
-        Reviewed by Wenson Hsieh.
+        Update WebKit code to use NSSecureCoding when the underlying operating system supports it. Use new
+        wrapper functions so the same code can be built on all supported OS releases, while enabling
+        seure coding when possible.
 
-        These changes define the TouchBarMenuData and TouchBarMenuItemData objects which draw information
-        from touch bar HTMLMenuElement and HTMLMenuItemElement. These objects represent the contents of
-        the page-customized touch bar. Changes to the html elements representing the touch bar are sent 
-        to the UI process.
-
-        * Shared/TouchBarMenuData.cpp: Copied from Source/WebCore/html/HTMLMenuItemElement.cpp.
-        (WebKit::TouchBarMenuData::TouchBarMenuData):
-        (WebKit::TouchBarMenuData::addMenuItem):
-        (WebKit::TouchBarMenuData::removeMenuItem):
-        (WebKit::TouchBarMenuData::encode const):
-        (WebKit::TouchBarMenuData::decode):
-        * Shared/TouchBarMenuData.h: Copied from Source/WebCore/html/HTMLMenuItemElement.h.
-        (WebKit::TouchBarMenuData::items):
-        (WebKit::TouchBarMenuData::isPageCustomized):
-        (WebKit::TouchBarMenuData::setIsPageCustomized):
-        * Shared/TouchBarMenuItemData.cpp: Added.
-        (WebKit::TouchBarMenuItemData::getItemType):
-        (WebKit::TouchBarMenuItemData::TouchBarMenuItemData):
-        (WebKit::TouchBarMenuItemData::encode const):
-        (WebKit::TouchBarMenuItemData::decode):
-        * Shared/TouchBarMenuItemData.h: Added.
-        (WebKit::operator<):
-        (WebKit::operator>):
-        (WebKit::operator<=):
-        (WebKit::operator>=):
-        (WebKit::operator==):
-        (WebKit::operator!=):
-        * UIProcess/WebPageProxy.cpp:
-        (WebKit::WebPageProxy::touchBarMenuDataChanged):
-        (WebKit::WebPageProxy::touchBarMenuItemDataAdded):
-        (WebKit::WebPageProxy::touchBarMenuItemDataRemoved):
-        * UIProcess/WebPageProxy.h:
-        (WebKit::WebPageProxy::touchBarMenuData const):
-        * UIProcess/WebPageProxy.messages.in:
-        * WebKit.xcodeproj/project.pbxproj:
-        * WebProcess/WebCoreSupport/WebChromeClient.cpp:
-        (WebKit::WebChromeClient::didInsertMenuElement):
-        (WebKit::WebChromeClient::didRemoveMenuElement):
-        (WebKit::WebChromeClient::didInsertMenuItemElement):
-        (WebKit::WebChromeClient::didRemoveMenuItemElement):
-        * WebProcess/WebCoreSupport/WebChromeClient.h:
-        * WebProcess/WebPage/WebPage.cpp:
-        (WebKit::WebPage::didInsertMenuElement):
-        (WebKit::WebPage::didRemoveMenuElement):
-        (WebKit::WebPage::didInsertMenuItemElement):
-        (WebKit::WebPage::didRemoveMenuItemElement):
-        (WebKit::WebPage::sendTouchBarMenuDataRemovedUpdate):
-        (WebKit::WebPage::sendTouchBarMenuDataAddedUpdate):
-        (WebKit::WebPage::sendTouchBarMenuItemDataAddedUpdate):
-        (WebKit::WebPage::sendTouchBarMenuItemDataRemovedUpdate):
-        * WebProcess/WebPage/WebPage.h:
+        Note that NSView-based classes cannot be migrated at present due to AppKit not supporting NSSecureCoding
+        in its class hierarchy.
 
-2017-12-01  Daniel Bates  <dabates@apple.com>
+        Tested by exising TestWebKitAPI tests for Coding and data transfer.
 
-        Alternative Presentation Button: Provide a way to query for the replaced elements
-        https://bugs.webkit.org/show_bug.cgi?id=180114
-        <rdar://problem/35710539>
+        * Platform/ios/AccessibilityIOS.mm:
+        (WebKit::newAccessibilityRemoteToken): Encode using NSSecureCoding.
+        * UIProcess/API/Cocoa/WKPreferences.h:
+        * UIProcess/API/Cocoa/WKPreferences.mm:
+        (+[WKPreferences supportsSecureCoding]): Added to enable NSSecureCoding.
+        * UIProcess/API/Cocoa/WKProcessPool.h:
+        * UIProcess/API/Cocoa/WKProcessPool.mm:
+        (+[WKProcessPool supportsSecureCoding]): Ditto.
+        * UIProcess/API/Cocoa/WKUserContentController.h:
+        * UIProcess/API/Cocoa/WKUserContentController.mm:
+        (+[WKUserContentController supportsSecureCoding]): Ditto.
+        * UIProcess/API/Cocoa/WKWebView.mm:
+        (-[WKWebView initWithCoder:]): Use coding initialization that supports secure coding if
+        it is available in the supplied class.
+        * UIProcess/API/Cocoa/WKWebViewConfiguration.h:
+        * UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
+        (+[WKWebViewConfiguration supportsSecureCoding]): Added to enable NSSecureCoding.
+        (-[WKWebViewConfiguration initWithCoder:]): Use secure coding when possible.
+        * UIProcess/API/Cocoa/WKWebsiteDataStore.h:
+        * UIProcess/API/Cocoa/WKWebsiteDataStore.mm:
+        (+[WKWebsiteDataStore supportsSecureCoding]): Added to enable NSSecureCoding.
+        * UIProcess/API/Cocoa/_WKApplicationManifest.h:
+        * UIProcess/API/Cocoa/_WKApplicationManifest.mm:
+        (+[_WKApplicationManifest supportsSecureCoding]): Added to enable NSSecureCoding.
+        (-[_WKApplicationManifest initWithCoder:]): Use secure coding when possible.
 
-        Reviewed by Tim Horton.
+2017-12-28  Yusuke Suzuki  <utatane.tea@gmail.com>
 
-        Add SPI to query for the elements that were replaced by an Alternative Presentation Button.
+        Remove std::chrono completely
+        https://bugs.webkit.org/show_bug.cgi?id=181186
 
-        * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFrame.mm:
-        (-[WKWebProcessPlugInFrame elementsReplacedByAlternativePresentationButtonWithIdentifier:]): Added.
-        * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFramePrivate.h:
-        * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
-        (WKBundleElementsReplacedByAlternativePresentationButton): Added.
-        * WebProcess/InjectedBundle/API/c/WKBundleFramePrivate.h:
+        Reviewed by Alex Christensen.
 
-2017-12-01  Youenn Fablet  <youenn@apple.com>
+        Use MonotonicTime, WallTime, and Seconds instead.
+        Changes are mechanical ones.
 
-        Implement https://w3c.github.io/ServiceWorker/#clients-get
-        https://bugs.webkit.org/show_bug.cgi?id=180167
-
-        Reviewed by Chris Dumez.
-
-        Add IPC plumbery for clientFromId between ServiceWorker process and Storage process.
-
-        * StorageProcess/ServiceWorker/WebSWServerToContextConnection.cpp:
-        (WebKit::WebSWServerToContextConnection::clientFromIdCompleted):
-        * StorageProcess/ServiceWorker/WebSWServerToContextConnection.h:
-        * StorageProcess/ServiceWorker/WebSWServerToContextConnection.messages.in:
-        * WebProcess/Storage/WebSWContextManagerConnection.cpp:
-        (WebKit::WebSWContextManagerConnection::findClientByIdentifier):
-        (WebKit::WebSWContextManagerConnection::findClientByIdentifierCompleted):
-        * WebProcess/Storage/WebSWContextManagerConnection.h:
-        * WebProcess/Storage/WebSWContextManagerConnection.messages.in:
-
-2017-12-01  Brian Burg  <bburg@apple.com>
-
-        Web Inspector: move Inspector::Protocol::Array<T> to JSON namespace
-        https://bugs.webkit.org/show_bug.cgi?id=173662
-
-        Reviewed by Joseph Pecoraro.
-
-        Adopt new type names.
-
-        * UIProcess/Automation/WebAutomationSession.cpp:
-        (WebKit::WebAutomationSession::getNextContext):
-        (WebKit::WebAutomationSession::getBrowsingContexts):
-        (WebKit::buildArrayForCookies):
-        (WebKit::WebAutomationSession::getSessionPermissions):
-        * UIProcess/Automation/WebAutomationSession.h:
+        * NetworkProcess/NetworkProcess.cpp:
+        (WebKit::NetworkProcess::deleteWebsiteData):
+        * NetworkProcess/NetworkProcess.h:
+        * NetworkProcess/NetworkProcess.messages.in:
+        * NetworkProcess/cache/CacheStorageEngineCaches.cpp:
+        (WebKit::CacheStorage::Caches::clear):
+        * NetworkProcess/cache/NetworkCache.cpp:
+        (WebKit::NetworkCache::responseHasExpired):
+        (WebKit::NetworkCache::responseNeedsRevalidation):
+        (WebKit::NetworkCache::makeStoreDecision):
+        (WebKit::NetworkCache::Cache::clear):
+        (WebKit::NetworkCache::Cache::storeData):
+        * NetworkProcess/cache/NetworkCache.h:
+        * NetworkProcess/cache/NetworkCacheEntry.cpp:
+        (WebKit::NetworkCache::Entry::Entry):
+        (WebKit::NetworkCache::Entry::asJSON const):
+        * NetworkProcess/cache/NetworkCacheEntry.h:
+        (WebKit::NetworkCache::Entry::timeStamp const):
+        * NetworkProcess/cache/NetworkCacheFileSystem.cpp:
+        (WebKit::NetworkCache::fileTimes):
+        (WebKit::NetworkCache::updateFileModificationTimeIfNeeded):
+        * NetworkProcess/cache/NetworkCacheFileSystem.h:
+        * NetworkProcess/cache/NetworkCacheIOChannelSoup.cpp:
+        (WebKit::NetworkCache::IOChannel::IOChannel):
+        * NetworkProcess/cache/NetworkCacheSpeculativeLoadManager.cpp:
+        (WebKit::NetworkCache::responseNeedsRevalidation):
+        (WebKit::NetworkCache::canRevalidate):
+        * NetworkProcess/cache/NetworkCacheStorage.cpp:
+        (WebKit::NetworkCache::Storage::readRecord):
+        (WebKit::NetworkCache::Storage::clear):
+        (WebKit::NetworkCache::computeRecordWorth):
+        * NetworkProcess/cache/NetworkCacheStorage.h:
+        Bump the cache version. We now change the data in persistent cache.
+        * NetworkProcess/cache/NetworkCacheSubresourcesEntry.cpp:
+        (WebKit::NetworkCache::SubresourceInfo::SubresourceInfo):
+        (WebKit::NetworkCache::SubresourcesEntry::SubresourcesEntry):
+        * NetworkProcess/cache/NetworkCacheSubresourcesEntry.h:
+        (WebKit::NetworkCache::SubresourceInfo::lastSeen const):
+        (WebKit::NetworkCache::SubresourceInfo::firstSeen const):
+        (WebKit::NetworkCache::SubresourcesEntry::timeStamp const):
+        * NetworkProcess/cocoa/NetworkProcessCocoa.mm:
+        (WebKit::NetworkProcess::clearHSTSCache):
+        (WebKit::clearNSURLCache):
+        (WebKit::NetworkProcess::clearDiskCache):
+        * NetworkProcess/curl/NetworkProcessCurl.cpp:
+        (WebKit::NetworkProcess::clearDiskCache):
+        * NetworkProcess/mac/NetworkProcessMac.mm:
+        (WebKit::NetworkProcess::clearCacheForAllOrigins):
+        * NetworkProcess/soup/NetworkProcessSoup.cpp:
+        (WebKit::NetworkProcess::clearCacheForAllOrigins):
+        (WebKit::NetworkProcess::clearDiskCache):
+        * Platform/IPC/ArgumentCoders.cpp:
+        (IPC::ArgumentCoder<WallTime>::encode):
+        (IPC::ArgumentCoder<WallTime>::decode):
+        (IPC::ArgumentCoder<std::chrono::system_clock::time_point>::encode): Deleted.
+        (IPC::ArgumentCoder<std::chrono::system_clock::time_point>::decode): Deleted.
+        * Platform/IPC/ArgumentCoders.h:
+        * PluginProcess/PluginProcess.cpp:
+        (WebKit::PluginProcess::deleteWebsiteData):
+        * PluginProcess/PluginProcess.h:
+        * PluginProcess/PluginProcess.messages.in:
+        * Scripts/webkit/messages.py:
+        (headers_for_type):
+        * Shared/RemoteLayerTree/RemoteLayerBackingStore.h:
+        (WebKit::RemoteLayerBackingStore::lastDisplayTime const):
+        * Shared/RemoteLayerTree/RemoteLayerBackingStore.mm:
+        (WebKit::RemoteLayerBackingStore::RemoteLayerBackingStore):
+        (WebKit::RemoteLayerBackingStore::display):
+        * Shared/RemoteLayerTree/RemoteLayerBackingStoreCollection.h:
+        * Shared/RemoteLayerTree/RemoteLayerBackingStoreCollection.mm:
+        (WebKit::RemoteLayerBackingStoreCollection::markBackingStoreVolatile):
+        (WebKit::RemoteLayerBackingStoreCollection::volatilityTimerFired):
+        * Shared/WebCoreArgumentCoders.cpp:
+        (IPC::ArgumentCoder<RecentSearch>::decode):
+        (IPC::ArgumentCoder<WallTime>::encode): Deleted.
+        (IPC::ArgumentCoder<WallTime>::decode): Deleted.
+        * Shared/WebCoreArgumentCoders.h:
+        * StorageProcess/StorageProcess.cpp:
+        (WebKit::StorageProcess::deleteWebsiteData):
+        * StorageProcess/StorageProcess.h:
+        * StorageProcess/StorageProcess.messages.in:
+        * UIProcess/API/C/WKApplicationCacheManager.cpp:
+        (WKApplicationCacheManagerDeleteAllEntries):
+        * UIProcess/API/C/WKCookieManager.cpp:
+        (WKCookieManagerDeleteAllCookiesModifiedAfterDate):
+        * UIProcess/API/C/WKKeyValueStorageManager.cpp:
+        (WKKeyValueStorageManagerDeleteAllEntries):
+        * UIProcess/API/C/WKResourceCacheManager.cpp:
+        (WKResourceCacheManagerClearCacheForAllOrigins):
+        * UIProcess/API/C/WKWebsiteDataStoreRef.cpp:
+        (WKWebsiteDataStoreStatisticsClearInMemoryAndPersistentStoreModifiedSinceHours):
+        (WKWebsiteDataStoreStatisticsClearThroughWebsiteDataRemoval):
+        (WKWebsiteDataStoreRemoveAllFetchCaches):
+        (WKWebsiteDataStoreRemoveAllIndexedDatabases):
+        (WKWebsiteDataStoreRemoveAllServiceWorkerRegistrations):
+        * UIProcess/API/Cocoa/WKWebsiteDataStore.mm:
+        (toSystemClockTime):
+        (-[WKWebsiteDataStore _resourceLoadStatisticsClearInMemoryAndPersistentStoreModifiedSinceHours:]):
+        * UIProcess/API/glib/WebKitWebContext.cpp:
+        (webkit_web_context_clear_cache):
+        * UIProcess/API/glib/WebKitWebsiteDataManager.cpp:
+        (webkit_website_data_manager_clear):
+        * UIProcess/DrawingAreaProxy.h:
+        * UIProcess/Network/NetworkProcessProxy.cpp:
+        (WebKit::NetworkProcessProxy::deleteWebsiteData):
+        * UIProcess/Network/NetworkProcessProxy.h:
+        * UIProcess/Plugins/PluginProcessManager.cpp:
+        (WebKit::PluginProcessManager::deleteWebsiteData):
+        * UIProcess/Plugins/PluginProcessManager.h:
+        * UIProcess/Plugins/PluginProcessProxy.cpp:
+        (WebKit::PluginProcessProxy::deleteWebsiteData):
+        * UIProcess/Plugins/PluginProcessProxy.h:
+        * UIProcess/Storage/StorageProcessProxy.cpp:
+        (WebKit::StorageProcessProxy::deleteWebsiteData):
+        * UIProcess/Storage/StorageProcessProxy.h:
+        * UIProcess/WebCookieManagerProxy.cpp:
+        (WebKit::WebCookieManagerProxy::deleteAllCookiesModifiedSince):
+        * UIProcess/WebCookieManagerProxy.h:
+        * UIProcess/WebProcessProxy.cpp:
+        (WebKit::WebProcessProxy::deleteWebsiteData):
+        * UIProcess/WebProcessProxy.h:
+        * UIProcess/WebResourceLoadStatisticsStore.cpp:
+        (WebKit::WebResourceLoadStatisticsStore::scheduleClearInMemoryAndPersistent):
+        * UIProcess/WebResourceLoadStatisticsStore.h:
+        * UIProcess/WebStorage/LocalStorageDatabaseTracker.cpp:
+        (WebKit::LocalStorageDatabaseTracker::deleteDatabasesModifiedSince):
+        * UIProcess/WebStorage/LocalStorageDatabaseTracker.h:
+        * UIProcess/WebStorage/StorageManager.cpp:
+        (WebKit::StorageManager::deleteLocalStorageOriginsModifiedSince):
+        * UIProcess/WebStorage/StorageManager.h:
+        * UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm:
+        (WebKit::WebsiteDataStore::platformRemoveRecentSearches):
+        * UIProcess/WebsiteData/WebsiteDataStore.cpp:
+        (WebKit::WebsiteDataStore::removeData):
+        (WebKit::WebsiteDataStore::removeMediaKeys):
+        * UIProcess/WebsiteData/WebsiteDataStore.h:
+        * UIProcess/gtk/WebPageProxyGtk.cpp:
+        (WebKit::WebsiteDataStore::platformRemoveRecentSearches):
+        * UIProcess/wpe/WebPageProxyWPE.cpp:
+        (WebKit::WebsiteDataStore::platformRemoveRecentSearches):
+        * WebProcess/Cookies/WebCookieManager.cpp:
+        (WebKit::WebCookieManager::deleteAllCookiesModifiedSince):
+        * WebProcess/Cookies/WebCookieManager.h:
+        * WebProcess/Cookies/WebCookieManager.messages.in:
+        * WebProcess/Plugins/PluginView.cpp:
+        (WebKit::lastModifiedDateMS):
+        * WebProcess/WebProcess.cpp:
+        (WebKit::WebProcess::deleteWebsiteData):
+        * WebProcess/WebProcess.h:
+        * WebProcess/WebProcess.messages.in:
 
-2017-12-01  Wenson Hsieh  <wenson_hsieh@apple.com>
+2018-01-02  Wenson Hsieh  <wenson_hsieh@apple.com>
 
-        [Attachment Support] Implement SPI for clients to update a given attachment's data
-        https://bugs.webkit.org/show_bug.cgi?id=180184
-        <rdar://problem/35355731>
+        [Attachment Support] Introduce data structures and IPC support for writing promised blobs
+        https://bugs.webkit.org/show_bug.cgi?id=181189
 
         Reviewed by Tim Horton.
 
-        Add plumbing to the web process for setting the attachment data (and optionally, the content type and/or file
-        name) of a given attachment. See WebCore ChangeLog for more detail. Changes covered by new API tests.
-
-        * UIProcess/API/APIAttachment.cpp:
-        (API::Attachment::setDataAndContentType):
-        * UIProcess/API/APIAttachment.h:
-        * UIProcess/API/Cocoa/_WKAttachment.h:
-
-        Add nullability annotations around _WKAttachment SPI methods.
-
-        * UIProcess/API/Cocoa/_WKAttachment.mm:
-        (-[_WKAttachment setData:newContentType:newFilename:completion:]):
-        * UIProcess/WebPageProxy.cpp:
-        (WebKit::WebPageProxy::setAttachmentDataAndContentType):
-        * UIProcess/WebPageProxy.h:
-        * WebProcess/WebPage/WebPage.cpp:
-        (WebKit::WebPage::setAttachmentDataAndContentType):
-        * WebProcess/WebPage/WebPage.h:
-        * WebProcess/WebPage/WebPage.messages.in:
-
-2017-12-01  Brady Eidson  <beidson@apple.com>
-
-        Add Internals.terminateServiceWorker, and the ability to restart service workers for postMessage.
-        https://bugs.webkit.org/show_bug.cgi?id=180170
-
-        Reviewed by Chris Dumez.
-
-        * StorageProcess/ServiceWorker/WebSWServerConnection.cpp:
-        (WebKit::WebSWServerConnection::startFetch):
-        (WebKit::WebSWServerConnection::postMessageToServiceWorkerGlobalScope):
-        * StorageProcess/ServiceWorker/WebSWServerConnection.h:
-        * StorageProcess/ServiceWorker/WebSWServerConnection.messages.in:
+        Add IPC support for PromisedBlobInfo and PromisedBlobData. See WebCore/ChangeLog for more detail.
 
-        * StorageProcess/ServiceWorker/WebSWServerToContextConnection.cpp:
-        (WebKit::WebSWServerToContextConnection::syncTerminateWorker):
-        * StorageProcess/ServiceWorker/WebSWServerToContextConnection.h:
-
-        * StorageProcess/StorageToWebProcessConnection.cpp:
-        (WebKit::StorageToWebProcessConnection::didReceiveSyncMessage):
-
-        * WebProcess/Storage/WebSWClientConnection.cpp:
-        (WebKit::WebSWClientConnection::syncTerminateWorker):
-        * WebProcess/Storage/WebSWClientConnection.h:
-
-        * WebProcess/Storage/WebSWContextManagerConnection.cpp:
-        (WebKit::WebSWContextManagerConnection::terminateWorker):
-        (WebKit::WebSWContextManagerConnection::syncTerminateWorker):
-        * WebProcess/Storage/WebSWContextManagerConnection.h:
-        * WebProcess/Storage/WebSWContextManagerConnection.messages.in:
+        * Shared/WebCoreArgumentCoders.cpp:
+        (IPC::ArgumentCoder<PromisedBlobData>::encode):
+        (IPC::ArgumentCoder<PromisedBlobData>::decode):
+        (IPC::ArgumentCoder<PromisedBlobInfo>::encode):
+        (IPC::ArgumentCoder<PromisedBlobInfo>::decode):
+        * Shared/WebCoreArgumentCoders.h:
 
-        * WebProcess/Storage/WebToStorageProcessConnection.cpp:
-        (WebKit::WebToStorageProcessConnection::didReceiveSyncMessage):
-        * WebProcess/Storage/WebToStorageProcessConnection.h:
+2018-01-02  Michael Catanzaro  <mcatanzaro@igalia.com>
 
-2017-12-01  Youenn Fablet  <youenn@apple.com>
+        REGRESSION(r223253): Broke ResourceLoadStatistics layout tests for non-Cocoa ports
+        https://bugs.webkit.org/show_bug.cgi?id=181231
 
-        Clear WebSWClientConnection in case storage process IPC connection is closing
-        https://bugs.webkit.org/show_bug.cgi?id=180210
+        Reviewed by Alex Christensen.
 
-        Reviewed by Chris Dumez.
+        Add new C API for use by WebKitTestRunner.
 
-        Clear the sw connection maps when connection is closing.
-        Call related completion handlers for each connection.
+        * UIProcess/API/C/WKWebsiteDataStoreRef.cpp:
+        (WKWebsiteDataStoreIsStatisticsRegisteredAsSubFrameUnder):
+        (WKWebsiteDataStoreIsStatisticsRegisteredAsRedirectingTo):
+        * UIProcess/API/C/WKWebsiteDataStoreRef.h:
 
-        * WebProcess/Storage/WebSWClientConnection.cpp:
-        (WebKit::WebSWClientConnection::connectionToServerLost):
-        * WebProcess/Storage/WebSWClientConnection.h:
-        * WebProcess/Storage/WebToStorageProcessConnection.cpp:
-        (WebKit::WebToStorageProcessConnection::didClose):
-        (WebKit::WebToStorageProcessConnection::idbConnectionToServerForSession):
-        (WebKit::WebToStorageProcessConnection::serviceWorkerConnectionForSession):
-        * WebProcess/Storage/WebToStorageProcessConnection.h:
+2018-01-02  Jiewen Tan  <jiewen_tan@apple.com>
 
-2017-12-01  Eric Carlson  <eric.carlson@apple.com>
+        Add a WebAuthentication runtime feature flag
+        https://bugs.webkit.org/show_bug.cgi?id=181220
+        <rdar://problem/36055305>
 
-        [MediaStream] Use CaptureDevice instead of device ID to identify devices
-        https://bugs.webkit.org/show_bug.cgi?id=180206
-        <rdar://problem/35775758>
+        Reviewed by Brent Fulgham.
 
-        Reviewed by Youenn Fablet.
+        Renames the CredentialManagement runtime feature flag into WebAuthentication.
 
-        * UIProcess/Cocoa/UserMediaCaptureManagerProxy.cpp:
-        (WebKit::UserMediaCaptureManagerProxy::createMediaSourceForCaptureDeviceWithConstraints):
-        * UIProcess/Cocoa/UserMediaCaptureManagerProxy.h:
-        * UIProcess/Cocoa/UserMediaCaptureManagerProxy.messages.in:
-        * UIProcess/UserMediaPermissionRequestManagerProxy.cpp:
-        (WebKit::UserMediaPermissionRequestManagerProxy::userMediaAccessWasGranted):
-        (WebKit::UserMediaPermissionRequestManagerProxy::grantAccess):
-        (WebKit::UserMediaPermissionRequestManagerProxy::requestUserMediaPermissionForFrame):
-        * UIProcess/UserMediaPermissionRequestManagerProxy.h:
-        * UIProcess/UserMediaPermissionRequestProxy.cpp:
-        (WebKit::UserMediaPermissionRequestProxy::allow):
-        * WebProcess/MediaStream/UserMediaPermissionRequestManager.cpp:
-        (WebKit::UserMediaPermissionRequestManager::userMediaAccessWasGranted):
-        * WebProcess/MediaStream/UserMediaPermissionRequestManager.h:
+        * Shared/WebPreferences.yaml:
+        * UIProcess/API/C/WKPreferences.cpp:
+        (WKPreferencesSetWebAuthenticationEnabled):
+        (WKPreferencesGetWebAuthenticationEnabled):
+        (WKPreferencesSetCredentialManagementEnabled): Deleted.
+        (WKPreferencesGetCredentialManagementEnabled): Deleted.
+        * UIProcess/API/C/WKPreferencesRefPrivate.h:
         * WebProcess/WebPage/WebPage.cpp:
-        (WebKit::WebPage::userMediaAccessWasGranted):
-        * WebProcess/WebPage/WebPage.h:
-        * WebProcess/WebPage/WebPage.messages.in:
-        * WebProcess/cocoa/UserMediaCaptureManager.cpp:
-        (WebKit::UserMediaCaptureManager::createCaptureSource):
-        * WebProcess/cocoa/UserMediaCaptureManager.h:
-
-2017-12-01  Carlos Garcia Campos  <cgarcia@igalia.com>
-
-        WebDriver: link and partial links queries don't work in xhtml documents
-        https://bugs.webkit.org/show_bug.cgi?id=180191
-
-        Reviewed by Brian Burg.
-
-        We convert the queries to use xpath, which works for html documents, but it doesn't work for xhtml. In case of
-        xhtml we would need to provide a namespace resolver and elements would need to be prefixed with 'xhtml:'. It's
-        easier to simply iterate the link elements and compare the text.
-
-        Fixes: imported/w3c/webdriver/tests/retrieval/find_element_from_element.py::test_xhtml_namespace[link text-full link text]
-               imported/w3c/webdriver/tests/retrieval/find_element_from_element.py::test_xhtml_namespace[partial link text-link text]
-               imported/w3c/webdriver/tests/retrieval/find_element_from_elements.py::test_xhtml_namespace[link text-full link text]
-               imported/w3c/webdriver/tests/retrieval/find_element_from_elements.py::test_xhtml_namespace[partial link text-link text]
-               imported/w3c/webdriver/tests/retrieval/find_element.py::test_xhtml_namespace[link text-full link text]
-               imported/w3c/webdriver/tests/retrieval/find_element.py::test_xhtml_namespace[partial link text-link text]
-               imported/w3c/webdriver/tests/retrieval/find_elements.py::test_xhtml_namespace[link text-full link text]
-               imported/w3c/webdriver/tests/retrieval/find_elements.py::test_xhtml_namespace[partial link text-link text]
-
-        * UIProcess/Automation/atoms/FindNodes.js:
-        (switch):
-        (tryToFindNode):
-
-2017-11-30  Alex Christensen  <achristensen@webkit.org>
-
-        REGRESSION (r224791): cookies are shared between ephemeral sessions in the same process pool
-        https://bugs.webkit.org/show_bug.cgi?id=180235
-
-        Reviewed by Joseph Pecoraro.
-
-        In r224791 I assumed that uiProcessCookieStorageIdentifier would be empty in the ephemeral session initialization message.
-        This is not the case.  We did not catch this because almost all of our ephemeral session testing uses the legacyPrivateSessionID.
-        I add checks for if the SessionID is ephemeral like we already have in WebFrameNetworkingContext::ensureWebsiteDataStoreSession.
-        I also add an API test that makes sure cookies are not shared between ephemeral sessions the way they are made through the API.
-
-        * NetworkProcess/mac/RemoteNetworkingContext.mm:
-        (WebKit::RemoteNetworkingContext::ensureWebsiteDataStoreSession):
-
-2017-11-30  Stephan Szabo  <stephan.szabo@sony.com>
-
-        Make LegacyCustomProtocolManager optional for network process
-        https://bugs.webkit.org/show_bug.cgi?id=176230
-
-        Reviewed by Alex Christensen.
+        (WebKit::WebPage::updatePreferences):
 
-        * CMakeLists.txt:
-        * Configurations/FeatureDefines.xcconfig:
-        * NetworkProcess/NetworkProcess.cpp:
-        (WebKit::NetworkProcess::NetworkProcess):
-        (WebKit::NetworkProcess::initializeNetworkProcess):
-        * PlatformGTK.cmake:
-        * PlatformMac.cmake:
-        * PlatformWPE.cmake:
-        * UIProcess/Network/NetworkProcessProxy.cpp:
-        (WebKit::NetworkProcessProxy::NetworkProcessProxy):
-        (WebKit::NetworkProcessProxy::didClose):
-        * UIProcess/Network/NetworkProcessProxy.h:
-        * UIProcess/WebProcessPool.cpp:
-        (WebKit::WebProcessPool::setLegacyCustomProtocolManagerClient):
-        (WebKit::WebProcessPool::registerSchemeForCustomProtocol):
-        (WebKit::WebProcessPool::unregisterSchemeForCustomProtocol):
+2018-01-02  Michael Catanzaro  <mcatanzaro@igalia.com>
 
-2017-11-30  Ryan Haddad  <ryanhaddad@apple.com>
+        REGRESSION(r226327): [GTK] Plugin process is broken
+        https://bugs.webkit.org/show_bug.cgi?id=181187
 
-        Unreviewed build fix, suppress deprecation warnings.
+        Unreviewed, fix PluginProcessMainUnix after r226327.
 
-        * Shared/mac/SandboxExtensionMac.mm:
-        (WebKit::SandboxExtensionImpl::sandboxExtensionForType):
+        * PluginProcess/unix/PluginProcessMainUnix.cpp:
 
-2017-11-30  Daniel Bates  <dabates@apple.com>
+2018-01-02  Tim Horton  <timothy_horton@apple.com>
 
-        Expose SPI didClickAlternativePresentationButtonWithUserInfo on iOS
-        https://bugs.webkit.org/show_bug.cgi?id=180218
-        <rdar://problem/35782555>
+        Fix the build on platforms where UICurrentUserInterfaceIdiomIsPad is defined to false
+        https://bugs.webkit.org/show_bug.cgi?id=181218
 
         Reviewed by Alex Christensen.
 
-        We want to support the SPI didClickAlternativePresentationButtonWithUserInfo on Cocoa platforms.
-
-        * UIProcess/API/Cocoa/WKUIDelegatePrivate.h:
-        * UIProcess/Cocoa/UIDelegate.h:
-        * UIProcess/Cocoa/UIDelegate.mm:
-        (WebKit::UIDelegate::setDelegate):
-        (WebKit::UIDelegate::UIClient::didClickAlternativePresentationButton):
-
-2017-11-30  Joseph Pecoraro  <pecoraro@apple.com>
+        * Platform/spi/ios/UIKitSPI.h:
+        (currentUserInterfaceIdiomIsPad):
+        * UIProcess/ios/SmartMagnificationController.mm:
+        (WebKit::SmartMagnificationController::didCollectGeometryForSmartMagnificationGesture):
+        * UIProcess/ios/WKContentViewInteraction.mm:
+        (-[WKFormInputSession setAccessoryViewCustomButtonTitle:]):
+        (-[WKContentView _requiresKeyboardWhenFirstResponder]):
+        (-[WKContentView _displayFormNodeInputView]):
+        (-[WKContentView requiresAccessoryView]):
+        (-[WKContentView _updateAccessory]):
+        * UIProcess/ios/forms/WKAirPlayRoutePicker.mm:
+        (-[WKAirPlayRoutePicker show:fromRect:]):
+        * UIProcess/ios/forms/WKFileUploadPanel.mm:
+        (-[WKFileUploadPanel _showPhotoPickerWithSourceType:]):
+        (-[WKFileUploadPanel _presentMenuOptionForCurrentInterfaceIdiom:]):
+        * UIProcess/ios/forms/WKFormInputControl.mm:
+        (-[WKDateTimePicker initWithView:datePickerMode:]):
+        (-[WKFormInputControl initWithView:]):
+        * UIProcess/ios/forms/WKFormSelectControl.mm:
+        (-[WKFormSelectControl initWithView:]):
+        On platforms where UICurrentUserInterfaceIdiomIsPad is defined to false,
+        blocks that conditionally execute based on its value are unreachable.
+        This causes the compiler to complain. Hide it away inside an inline function
+        and make use of that everywhere we used to use the macro.
 
-        [Cocoa] Web Automation: _WKAutomationSessionConfiguration leak
-        https://bugs.webkit.org/show_bug.cgi?id=180222
+2018-01-02  Alex Christensen  <achristensen@webkit.org>
 
-        Reviewed by Brian Burg.
+        Remove SVN file accidentally added in r226160
+        https://bugs.webkit.org/show_bug.cgi?id=180934
 
-        * UIProcess/Cocoa/AutomationClient.mm:
-        (WebKit::AutomationClient::requestAutomationSessionWithCapabilities):
+        * UIProcess/WebPageProxy.cpp.orig: Removed.
 
-2017-11-30  Joseph Pecoraro  <pecoraro@apple.com>
+2018-01-02  Alex Christensen  <achristensen@webkit.org>
 
-        Fix some NSOperationQueue leaks
-        https://bugs.webkit.org/show_bug.cgi?id=180221
+        Use BlockPtrs and lambdas instead of new/delete to pass parameters to blocks in WebViewImpl::performDragOperation
+        https://bugs.webkit.org/show_bug.cgi?id=180795
 
-        Reviewed by Wenson Hsieh.
+        Reviewed by Brent Fulgham.
 
         * UIProcess/Cocoa/WebViewImpl.mm:
         (WebKit::WebViewImpl::performDragOperation):
 
-2017-11-30  Brian Burg  <bburg@apple.com>
-
-        Web Automation: computeElementLayout does not correctly translate iframe client coordinates to main frame coordinates
-        https://bugs.webkit.org/show_bug.cgi?id=180213
-        <rdar://problem/30260141>
-
-        Reviewed by Simon Fraser.
-
-        The current implementation computes points in terms of the frame in which the element is located.
-        However, WebDriver expects coordinates to be relative to the top-level document since
-        these coordinates are used for generating click events, among other things.
+2018-01-02  Michael Catanzaro  <mcatanzaro@igalia.com>
 
-        To convert from frame client coordinates to main frame client coordinates, round-trip
-        both inViewCenterPoint and elementBounds to root view coordinates and back
-        to the main frame's contents/client coordinates. Then convert this to page coordinates if needed.
+        [WPE][GTK] Implement the assignment of ProcessIdentifiers to child processes
+        https://bugs.webkit.org/show_bug.cgi?id=181187
 
-        This progresses several tests in the Selenium Python test suite:
-
-         - event_firing_webdriver_tests.py::test_should_fire_navigation_events
-         - frame_switching_tests.py::testShouldBeAbleToClickInAFrameThatRewritesTopWindowLocation
-         - frame_switching_tests.py::testShouldBeAbleToSwitchToTheTopIfTheFrameIsDeletedFromUnderUs
-         - frame_switching_tests.py::testShouldBeAbleToSwitchToTheTopIfTheFrameIsDeletedFromUnderUsWithFrameIndex
-         - frame_switching_tests.py::testShouldBeAbleToSwitchToTheTopIfTheFrameIsDeletedFromUnderUsWithWebelement
-         - frame_switching_tests.py::testShouldNotBeAbleToDoAnythingTheFrameIsDeletedFromUnderUs
-         - position_and_size_tests.py::testShouldGetCoordinatesOfAnInvisibleElement
-
-        * WebProcess/Automation/WebAutomationSessionProxy.cpp:
-        (WebKit::WebAutomationSessionProxy::computeElementLayout):
-        Get both the frame and main frame FrameViews and convert coordinates to the root view.
-        This is somewhat lossy as clientToDocument* deals with FloatPoints but contentsToRootView
-        deals with IntPoints. For the purposes of WebDriver, lossiness is not a problem since
-        integer values are expected anyway.
+        Reviewed by Brady Eidson.
 
-        The imperative nature of the coordinate calculations is difficult to debug, so I converted
-        this function to only assign to each variable once.
+        * Shared/ChildProcess.cpp: Make the ProcessIdentifier mandatory.
+        (WebKit::ChildProcess::initialize):
+        * Shared/unix/ChildProcessMain.cpp: Initialize ChildProcessInitializationParameters with the
+        ProcessIdentifier.
+        (WebKit::ChildProcessMainBase::parseCommandLine):
+        * UIProcess/Launcher/glib/ProcessLauncherGLib.cpp: Copy the ProcessIdentifier from
+        LaunchOptions into argv.
+        (WebKit::ProcessLauncher::launchProcess):
+        * WebProcess/wpe/WebProcessMainWPE.cpp: Expect the WPE socket ID later in the command line.
 
-2017-11-30  Alex Christensen  <achristensen@webkit.org>
+2018-01-02  Alex Christensen  <achristensen@webkit.org>
 
-        WKURLSchemeHandler.request should include HTTPBody
-        https://bugs.webkit.org/show_bug.cgi?id=180220
+        Use new WebsiteDataStore passed in through decidePolicyForNavigation SPI
+        https://bugs.webkit.org/show_bug.cgi?id=180897
+        <rdar://problem/35535328>
 
-        Reviewed by Brady Eidson.
+        Reviewed by Brent Fulgham.
 
-        * Shared/URLSchemeTaskParameters.cpp: Added.
-        (WebKit::URLSchemeTaskParameters::encode const):
-        (WebKit::URLSchemeTaskParameters::decode):
-        * Shared/URLSchemeTaskParameters.h: Added.
-        * UIProcess/API/Cocoa/WKURLSchemeTask.mm:
-        (-[WKURLSchemeTaskImpl request]):
+        * Shared/WebsitePoliciesData.cpp:
+        (WebKit::WebsitePoliciesData::applyToDocumentLoader):
+        * UIProcess/Cocoa/NavigationState.mm:
+        (WebKit::NavigationState::NavigationClient::decidePolicyForNavigationAction):
         * UIProcess/WebPageProxy.cpp:
-        (WebKit::WebPageProxy::startURLSchemeTask):
+        (WebKit::WebPageProxy::changeWebsiteDataStore):
         * UIProcess/WebPageProxy.h:
-        * UIProcess/WebPageProxy.messages.in:
-        * UIProcess/WebURLSchemeHandler.cpp:
-        (WebKit::WebURLSchemeHandler::startTask):
-        * UIProcess/WebURLSchemeHandler.h:
-        * UIProcess/WebURLSchemeTask.cpp:
-        (WebKit::WebURLSchemeTask::create):
-        (WebKit::WebURLSchemeTask::WebURLSchemeTask):
-        * UIProcess/WebURLSchemeTask.h:
-        * WebKit.xcodeproj/project.pbxproj:
-        * WebProcess/WebPage/WebURLSchemeTaskProxy.cpp:
-        (WebKit::WebURLSchemeTaskProxy::startLoading):
-
-2017-11-30  Darin Adler  <darin@apple.com>
-
-        [Mac] remove unneeded RetainPtr use introduced in r225142
-        https://bugs.webkit.org/show_bug.cgi?id=180202
-
-        Reviewed by Tim Horton.
-
-        * WebProcess/Plugins/PDF/PDFPlugin.h: Got rid of unnecessary RetainPtr.
-        * WebProcess/Plugins/PDF/PDFPlugin.mm:
-        (WebKit::PDFPlugin::lookupTextAtLocation const): Ditto.
-        * WebProcess/WebPage/WebPage.h: Ditto.
-        * WebProcess/WebPage/mac/WebPageMac.mm:
-        (WebKit::WebPage::performDictionaryLookupAtLocation): Ditto.
-        (WebKit::WebPage::performDictionaryLookupForSelection): Ditto.
-        (WebKit::WebPage::performImmediateActionHitTestAtLocation): Ditto.
-        (WebKit::WebPage::lookupTextAtLocation): Ditto.
-
-2017-11-30  Zan Dobersek  <zdobersek@igalia.com>
-
-        [CoordGraphics] Move CoordinatedGraphicsLayer painting behind Nicosia::PaintingEngine
-        https://bugs.webkit.org/show_bug.cgi?id=180141
-
-        Reviewed by Carlos Garcia Campos.
-
-        CompositingCoordinator must implement the paintingEngine() method now
-        that the method's been added to the CoordinatedGraphicsLayerClient
-        interface. The CompositingCoordinator manages the Nicosia::PaintingEngine
-        object through the new m_paintingEngine member variable, and returns the
-        reference to this object in the paintingEngine() method.
-
-        * WebProcess/WebPage/CoordinatedGraphics/CompositingCoordinator.cpp:
-        (WebKit::CompositingCoordinator::CompositingCoordinator):
-        (WebKit::CompositingCoordinator::paintingEngine):
-        * WebProcess/WebPage/CoordinatedGraphics/CompositingCoordinator.h:
-        Drop unnecessary typedefs.
+        * UIProcess/WebProcessPool.cpp:
+        (WebKit::WebProcessPool::pageBeginUsingWebsiteDataStore):
+        (WebKit::WebProcessPool::pageEndUsingWebsiteDataStore):
+        (WebKit::WebProcessPool::pageAddedToProcess): Deleted.
+        (WebKit::WebProcessPool::pageRemovedFromProcess): Deleted.
+        * UIProcess/WebProcessPool.h:
+        * UIProcess/WebProcessProxy.cpp:
+        (WebKit::WebProcessProxy::addExistingWebPage):
+        (WebKit::WebProcessProxy::removeWebPage):
+        * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
+        (WebKit::WebFrameNetworkingContext::ensureWebsiteDataStoreSession):
 
-2017-11-29  Wenson Hsieh  <wenson_hsieh@apple.com>
+2018-01-02  Alex Christensen  <achristensen@webkit.org>
 
-        [Attachment Support] Implement SPI for clients to make an attachment element display in-place
-        https://bugs.webkit.org/show_bug.cgi?id=180153
-        <rdar://problem/35735252>
+        Only use CookieStorageShim when we aren't using NetworkSession
+        https://bugs.webkit.org/show_bug.cgi?id=180766
 
-        Reviewed by Tim Horton.
+        Reviewed by Brent Fulgham.
 
-        Add new WebKit SPI, -[_WKAttachment setDisplayOptions:completion:], and add plumbing for attachment display
-        options to the web content process. Changes covered by 4 new API tests.
+        * Shared/mac/CookieStorageShim.h:
+        * Shared/mac/CookieStorageShim.mm:
+        * WebProcess/WebProcess.cpp:
+        (WebKit::WebProcess::initializeWebProcess):
 
-        * Scripts/webkit/messages.py:
-        (headers_for_type):
-        * UIProcess/API/APIAttachment.cpp:
-        (API::Attachment::setDisplayOptions):
-        * UIProcess/API/APIAttachment.h:
-        * UIProcess/API/Cocoa/WKWebView.mm:
-        (-[WKWebView _insertAttachmentWithFilename:contentType:data:options:completion:]):
+2018-01-02  Alex Christensen  <achristensen@webkit.org>
 
-        Respect given display options when inserting a new attachment.
+        Clean up context menu code
+        https://bugs.webkit.org/show_bug.cgi?id=181074
 
-        * UIProcess/API/Cocoa/_WKAttachment.h:
-        * UIProcess/API/Cocoa/_WKAttachment.mm:
-        (-[_WKAttachmentDisplayOptions coreDisplayOptions]):
+        Reviewed by Brent Fulgham.
 
-        Introduce a helper to convert from the Cocoa _WKAttachmentDisplayOptions object to platform-agnostic
-        AttachmentDisplayOptions.
+        Use Ref instead of RefPtr where possible.
+        Use move semantics instead of copying from const references when possible.
+        Remove dead iOS code.  Reduce allocations.  Add stub for WPE.
 
-        (-[_WKAttachment setDisplayOptions:completion:]):
-        (WebKit::if): Deleted.
-        * UIProcess/API/Cocoa/_WKAttachmentInternal.h:
+        * UIProcess/API/APIContextMenuClient.h:
+        (API::ContextMenuClient::getContextMenuFromProposedMenu):
+        (API::ContextMenuClient::getContextMenuFromProposedMenuAsync):
+        (API::ContextMenuClient::showContextMenu):
+        * UIProcess/API/C/WKPage.cpp:
+        (WKPageSetPageContextMenuClient):
+        * UIProcess/API/gtk/PageClientImpl.cpp:
+        (WebKit::PageClientImpl::createContextMenuProxy):
+        * UIProcess/API/gtk/PageClientImpl.h:
+        * UIProcess/PageClient.h:
+        * UIProcess/WebContextMenuListenerProxy.cpp:
+        (WebKit::WebContextMenuListenerProxy::useContextMenuItems):
+        * UIProcess/WebContextMenuProxy.cpp:
+        (WebKit::WebContextMenuProxy::WebContextMenuProxy):
+        * UIProcess/WebContextMenuProxy.h:
         * UIProcess/WebPageProxy.cpp:
-        (WebKit::WebPageProxy::insertAttachment):
-        (WebKit::WebPageProxy::setAttachmentDisplayOptions):
+        (WebKit::WebPageProxy::showContextMenu):
+        (WebKit::WebPageProxy::internalShowContextMenu): Deleted.
         * UIProcess/WebPageProxy.h:
-        * WebProcess/WebPage/WebPage.cpp:
-        (WebKit::WebPage::insertAttachment):
-        (WebKit::WebPage::requestAttachmentData):
-        (WebKit::WebPage::setAttachmentDisplayOptions):
-        (WebKit::WebPage::attachmentElementWithIdentifier const):
-
-        Pull common logic to retrieve an attachment element matching a given identifier out into a helper.
-
-        * WebProcess/WebPage/WebPage.h:
-        * WebProcess/WebPage/WebPage.messages.in:
-
-2017-11-29  Brent Fulgham  <bfulgham@apple.com>
-
-        Part 2: Adopt updated NSKeyed[Un]Archiver API when available
-        https://bugs.webkit.org/show_bug.cgi?id=180127
-        <rdar://problem/35710738>
-
-        Reviewed by Simon Fraser.
-
-        The API that accepts a user-allocated NSMutableData is deprecated. Switch (for macOS 10.12 and newer)
-        to the modern API. Use the original API for macOS builds prior to 10.12.
-
-        * Shared/Cocoa/DataDetectionResult.mm:
-        (WebKit::DataDetectionResult::encode const):
-        * Shared/Cocoa/WebCoreArgumentCodersCocoa.mm:
-        (IPC::ArgumentCoder<WebCore::Payment>::encode):
-        (IPC::ArgumentCoder<WebCore::PaymentContact>::encode):
-        (IPC::ArgumentCoder<WebCore::PaymentMerchantSession>::encode):
-        (IPC::ArgumentCoder<WebCore::PaymentMethod>::encode):
-        * Shared/ios/InteractionInformationAtPosition.mm:
-        (WebKit::InteractionInformationAtPosition::encode const):
-        * Shared/mac/WebCoreArgumentCodersMac.mm:
-        (IPC::ArgumentCoder<ProtectionSpace>::encodePlatformData):
-        (IPC::ArgumentCoder<Credential>::encodePlatformData):
-        (IPC::ArgumentCoder<ContentFilterUnblockHandler>::encode):
-        (IPC::ArgumentCoder<MediaPlaybackTargetContext>::encodePlatformData):
-        * Shared/mac/WebHitTestResultData.mm:
-        (WebKit::WebHitTestResultData::platformEncode const):
-        * UIProcess/API/Cocoa/WKProcessPool.mm:
-        (-[WKProcessPool _setObject:forBundleParameter:]):
-        (-[WKProcessPool _setObjectsForBundleParametersWithDictionary:]):
-        * UIProcess/Cocoa/WebProcessPoolCocoa.mm:
-        (WebKit::WebProcessPool::platformInitializeWebProcess):
-        * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
-        (-[WKWebProcessPlugInBrowserContextController _setFormDelegate:]):
-
-2017-11-29  Brady Eidson  <beidson@apple.com>
-
-        When managing context startups, make ServiceWorkerJobDataIdentifier's optional.
-        https://bugs.webkit.org/show_bug.cgi?id=180166
-
-        Reviewed by Chris Dumez.
-
-        * StorageProcess/ServiceWorker/WebSWServerToContextConnection.messages.in:
-
-        * WebProcess/Storage/WebSWContextManagerConnection.cpp:
-        (WebKit::WebSWContextManagerConnection::serviceWorkerStartedWithMessage):
-        (WebKit::WebSWContextManagerConnection::didFinishInstall):
-        * WebProcess/Storage/WebSWContextManagerConnection.h:
-
-2017-11-29  Youenn Fablet  <youenn@apple.com>
-
-        Add support for service worker generated redirections
-        https://bugs.webkit.org/show_bug.cgi?id=179498
-
-        Reviewed by Darin Adler.
-
-        Small refactoring to allow a service worker redirected fetch to follow the redirection through the service worker.
-
-        * WebProcess/Network/WebLoaderStrategy.cpp:
-        (WebKit::WebLoaderStrategy::scheduleLoad): Make use of the loader request in case a network load is needed after a service worker redirection.
-        * WebProcess/Storage/ServiceWorkerClientFetch.cpp:
-        (WebKit::ServiceWorkerClientFetch::create):
-        (WebKit::ServiceWorkerClientFetch::~ServiceWorkerClientFetch):
-        (WebKit::ServiceWorkerClientFetch::ServiceWorkerClientFetch):
-        (WebKit::ServiceWorkerClientFetch::start):
-        (WebKit::ServiceWorkerClientFetch::didReceiveResponse): Check for response.
-        Generate redirected request if needed and call loader callback to process the redirection.
-        Adding some states so that if didFinish is called before the willSendRequest callback, redirection is followed.
-        (WebKit::ServiceWorkerClientFetch::didFinish):
-        In case redirection should be followed, wait for didFinish to follow it.
-        This simplifies the model although introducing some limited latency.
-        * WebProcess/Storage/ServiceWorkerClientFetch.h:
-        * WebProcess/Storage/WebSWClientConnection.cpp:
-        (WebKit::WebSWClientConnection::startFetch):
-        * WebProcess/Storage/WebSWClientConnection.h:
-        * WebProcess/Storage/WebServiceWorkerProvider.cpp:
-        (WebKit::WebServiceWorkerProvider::handleFetch):
-
-2017-11-29  Youenn Fablet  <youenn@apple.com>
-
-        Add support for FetchEvent.clientId
-        https://bugs.webkit.org/show_bug.cgi?id=180052
-
-        Reviewed by Chris Dumez.
-
-        Using FetchOption persistency coders for cache API and modernizing IPC FetchOptions decoding.
-
-        * WebKit/Shared/WebCoreArgumentCoders.cpp:
-        * NetworkProcess/cache/CacheStorageEngineCache.cpp:
-        (WebKit::CacheStorage::Cache::encode):
-        (WebKit::CacheStorage::Cache::decodeRecordHeader):
-        * WebProcess/Storage/WebSWContextManagerConnection.cpp:
-        (WebKit::WebSWContextManagerConnection::startFetch):
-        * WebProcess/Storage/WebSWContextManagerConnection.cpp:
-        (WebKit::WebSWContextManagerConnection::startFetch):
-
-2017-11-29  Alex Christensen  <achristensen@webkit.org>
-
-        Make WebFrameLoaderClient more robust against null pointer dereferencing
-        https://bugs.webkit.org/show_bug.cgi?id=180157
-        <rdar://problem/34895616>
-
-        Reviewed by Tim Horton.
-
-        There has always been rare null pointer crashes in this code, but they have become more common
-        now that we are waiting for completion handlers for redirects, which makes it more likely that
-        we are hitting this code after we have detached from the core frame.
-
-        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
-        (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse):
-        (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
-        (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
-        * WebProcess/WebPage/WebFrame.cpp:
-        (WebKit::WebFrame::page const):
-
-2017-11-29  Alex Christensen  <achristensen@webkit.org>
-
-        Fix Mac CMake build.
-
-        * PlatformMac.cmake:
-
-2017-11-29  Chris Dumez  <cdumez@apple.com>
-
-        StorageToWebProcessConnection & WebSWServerToContextConnection should use the same underlying IPC::Connection
-        https://bugs.webkit.org/show_bug.cgi?id=180147
-
-        Reviewed by Brady Eidson.
-
-        StorageToWebProcessConnection & WebSWServerToContextConnection should use the same underlying IPC::Connection.
-        Otherwise, we have with 2 IPC::Connections between the StorageProcess and the ServiceWorker (aka Context) process,
-        which makes synchronization of IPC messages difficult.
-
-        * StorageProcess/StorageProcess.cpp:
-        (WebKit::StorageProcess::createStorageToWebProcessConnection):
-        (WebKit::StorageProcess::createServerToContextConnection):
-        * StorageProcess/StorageProcess.h:
-        * StorageProcess/StorageProcess.messages.in:
-        * StorageProcess/StorageToWebProcessConnection.cpp:
-        (WebKit::StorageToWebProcessConnection::didReceiveMessage):
-        * UIProcess/ServiceWorkerProcessProxy.cpp:
-        (WebKit::ServiceWorkerProcessProxy::start):
-        * UIProcess/ServiceWorkerProcessProxy.h:
-        * UIProcess/Storage/StorageProcessProxy.cpp:
-        (WebKit::StorageProcessProxy::getStorageProcessConnection):
-        (WebKit::StorageProcessProxy::didFinishLaunching):
-        (WebKit::StorageProcessProxy::establishWorkerContextConnectionToStorageProcess):
-        * UIProcess/Storage/StorageProcessProxy.h:
-        * UIProcess/Storage/StorageProcessProxy.messages.in:
-        * UIProcess/WebProcessPool.cpp:
-        (WebKit::WebProcessPool::getStorageProcessConnection):
-        (WebKit::WebProcessPool::establishWorkerContextConnectionToStorageProcess):
-        * UIProcess/WebProcessPool.h:
-        * UIProcess/WebProcessProxy.cpp:
-        (WebKit::WebProcessProxy::getStorageProcessConnection):
-        * UIProcess/WebProcessProxy.h:
-        (WebKit::WebProcessProxy::isServiceWorkerProcess const):
-        * UIProcess/WebProcessProxy.messages.in:
-        * WebProcess/Storage/WebToStorageProcessConnection.cpp:
-        (WebKit::WebToStorageProcessConnection::didReceiveMessage):
-        * WebProcess/WebProcess.cpp:
-        (WebKit::WebProcess::didReceiveMessage):
-        (WebKit::WebProcess::establishWorkerContextConnectionToStorageProcess):
-        * WebProcess/WebProcess.h:
-        * WebProcess/WebProcess.messages.in:
-
-2017-11-29  Chris Dumez  <cdumez@apple.com>
-
-        ensure*Connection() methods on WebProcess should return a reference
-        https://bugs.webkit.org/show_bug.cgi?id=180149
-
-        Reviewed by Alex Christensen.
-
-        ensure*Connection() methods on WebProcess should return a reference instead of not returning
-        anything. Also get rid of the non-ensure variants which called "ensure" internally and are
-        no longer needed.
-
-        * Shared/mac/CookieStorageShim.mm:
-        (WebKit::webKitCookieStorageCopyRequestHeaderFieldsForURL):
-        * WebProcess/Cache/WebCacheStorageConnection.cpp:
-        (WebKit::WebCacheStorageConnection::connection):
-        * WebProcess/Databases/IndexedDB/WebIDBConnectionToServer.cpp:
-        (WebKit::WebIDBConnectionToServer::messageSenderConnection):
-        (WebKit::preregisterSandboxExtensionsIfNecessary):
-        * WebProcess/Databases/WebDatabaseProvider.cpp:
-        (WebKit::WebDatabaseProvider::idbConnectionToServerForSession):
-        * WebProcess/FileAPI/BlobRegistryProxy.cpp:
-        (WebKit::BlobRegistryProxy::registerFileBlobURL):
-        (WebKit::BlobRegistryProxy::registerBlobURL):
-        (WebKit::BlobRegistryProxy::registerBlobURLOptionallyFileBacked):
-        (WebKit::BlobRegistryProxy::unregisterBlobURL):
-        (WebKit::BlobRegistryProxy::registerBlobURLForSlice):
-        (WebKit::BlobRegistryProxy::blobSize):
-        (WebKit::BlobRegistryProxy::writeBlobsToTemporaryFiles):
-        * WebProcess/Network/NetworkProcessConnection.cpp:
-        (WebKit::NetworkProcessConnection::writeBlobsToTemporaryFiles):
-        * WebProcess/Network/WebLoaderStrategy.cpp:
-        (WebKit::WebLoaderStrategy::scheduleLoadFromNetworkProcess):
-        (WebKit::WebLoaderStrategy::remove):
-        (WebKit::WebLoaderStrategy::setDefersLoading):
-        (WebKit::WebLoaderStrategy::loadResourceSynchronously):
-        (WebKit::WebLoaderStrategy::startPingLoad):
-        (WebKit::WebLoaderStrategy::preconnectTo):
-        (WebKit::WebLoaderStrategy::storeDerivedDataToCache):
-        (WebKit::WebLoaderStrategy::setCaptureExtraNetworkLoadMetricsEnabled):
-        * WebProcess/Network/WebResourceLoader.cpp:
-        (WebKit::WebResourceLoader::messageSenderConnection):
-        * WebProcess/Network/WebSocketStream.cpp:
-        (WebKit::WebSocketStream::WebSocketStream):
-        (WebKit::WebSocketStream::messageSenderConnection):
-        * WebProcess/Network/webrtc/LibWebRTCResolver.cpp:
-        (WebKit::sendOnMainThread):
-        * WebProcess/Network/webrtc/LibWebRTCSocket.cpp:
-        (WebKit::sendOnMainThread):
-        * WebProcess/Network/webrtc/LibWebRTCSocketFactory.cpp:
-        (WebKit::LibWebRTCSocketFactory::CreateServerTcpSocket):
-        (WebKit::LibWebRTCSocketFactory::CreateUdpSocket):
-        (WebKit::LibWebRTCSocketFactory::CreateClientTcpSocket):
-        (WebKit::LibWebRTCSocketFactory::createNewConnectionSocket):
-        * WebProcess/Network/webrtc/WebRTCMonitor.cpp:
-        (WebKit::sendOnMainThread):
-        * WebProcess/Storage/WebServiceWorkerProvider.cpp:
-        (WebKit::WebServiceWorkerProvider::serviceWorkerConnectionForSession):
-        (WebKit::WebServiceWorkerProvider::handleFetch):
-        * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
-        (WebKit::WebPlatformStrategies::cookiesForDOM):
-        (WebKit::WebPlatformStrategies::setCookiesFromDOM):
-        (WebKit::WebPlatformStrategies::cookiesEnabled):
-        (WebKit::WebPlatformStrategies::cookieRequestHeaderFieldValue):
-        (WebKit::WebPlatformStrategies::getRawCookies):
-        (WebKit::WebPlatformStrategies::deleteCookie):
-        * WebProcess/WebPage/WebFrame.cpp:
-        (WebKit::WebFrame::startDownload):
-        (WebKit::WebFrame::convertMainResourceLoadToDownload):
-        * WebProcess/WebProcess.cpp:
-        (WebKit::WebProcess::ensureLegacyPrivateBrowsingSessionInNetworkProcess):
-        (WebKit::WebProcess::ensureNetworkProcessConnection):
-        (WebKit::WebProcess::ensureWebToStorageProcessConnection):
-        (WebKit::WebProcess::prefetchDNS):
-        * WebProcess/WebProcess.h:
-
-2017-11-29  Alex Christensen  <achristensen@webkit.org>
-
-        Modernize API::SerializedScriptValue
-        https://bugs.webkit.org/show_bug.cgi?id=180115
-
-        Reviewed by Brady Eidson.
-
-        Also remove some SPI that hasn't been used anywhere since Mountain Lion.
-
-        * Shared/API/APISerializedScriptValue.h:
-        (API::SerializedScriptValue::create):
-        (API::SerializedScriptValue::internalRepresentation):
-        (API::SerializedScriptValue::SerializedScriptValue):
-        * Shared/API/c/WKSerializedScriptValue.cpp:
-        (WKSerializedScriptValueDeserialize):
-        (WKSerializedScriptValueCreateWithInternalRepresentation): Deleted.
-        (WKSerializedScriptValueGetInternalRepresentation): Deleted.
-        * Shared/API/c/WKSerializedScriptValuePrivate.h: Removed.
-        * UIProcess/API/Cocoa/WKWebView.mm:
-        (-[WKWebView _evaluateJavaScript:forceUserGesture:completionHandler:]):
-        * WebKit.xcodeproj/project.pbxproj:
-
-2017-11-29  Michael Catanzaro  <mcatanzaro@igalia.com>
-
-        REGRESSION(r218064): [GTK] Broke entering fullscreen mode in debug builds
-        https://bugs.webkit.org/show_bug.cgi?id=180120
-
-        Reviewed by Carlos Garcia Campos.
-
-        These assertions need to be swapped. Fixes /webkit2/WebKitWebView/fullscreen in debug mode.
-
-        * UIProcess/API/gtk/WebKitWebViewBase.cpp:
-        (webkitWebViewBaseEnterFullScreen):
-        (webkitWebViewBaseExitFullScreen):
-
-2017-11-29  Zan Dobersek  <zdobersek@igalia.com>
-
-        [CoordGraphics] Rename CoordinatedBuffer to Nicosia::Buffer
-        https://bugs.webkit.org/show_bug.cgi?id=180135
-
-        Reviewed by Carlos Garcia Campos.
-
-        Adjust code to the CoordinatedBuffer -> Nicosia::Buffer transition.
-
-        * Shared/CoordinatedGraphics/CoordinatedBackingStore.cpp:
-        (WebKit::CoordinatedBackingStoreTile::setBackBuffer):
-        (WebKit::CoordinatedBackingStore::updateTile):
-        * Shared/CoordinatedGraphics/CoordinatedBackingStore.h:
-        * Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp:
-        (WebKit::CoordinatedGraphicsScene::createUpdateAtlas):
-        (WebKit::CoordinatedGraphicsScene::updateImageBacking):
-        * Shared/CoordinatedGraphics/CoordinatedGraphicsScene.h:
-        * WebProcess/WebPage/CoordinatedGraphics/CompositingCoordinator.cpp:
-        (WebKit::CompositingCoordinator::updateImageBacking):
-        (WebKit::CompositingCoordinator::createUpdateAtlas):
-        (WebKit::CompositingCoordinator::getCoordinatedBuffer):
-        * WebProcess/WebPage/CoordinatedGraphics/CompositingCoordinator.h:
-        * WebProcess/WebPage/CoordinatedGraphics/UpdateAtlas.cpp:
-        (WebKit::UpdateAtlas::UpdateAtlas):
-        (WebKit::UpdateAtlas::getCoordinatedBuffer):
-        * WebProcess/WebPage/CoordinatedGraphics/UpdateAtlas.h:
-
-2017-11-28  Brent Fulgham  <bfulgham@apple.com>
-
-        Adopt updated NSKeyed[Un]Archiver API when available
-        https://bugs.webkit.org/show_bug.cgi?id=180127
-        <rdar://problem/35710738>
-
-        Reviewed by Alex Christensen.
-
-        Switch to new NSKeyed[Un]Archiver methods when available. We do not attempt
-        to adopt secure coding in places we were not under the original API.
-
-        * Platform/ios/AccessibilityIOS.mm:
-        (WebKit::newAccessibilityRemoteToken): Use secure-by-default API.
-        * Shared/Cocoa/DataDetectionResult.mm:
-        (WebKit::DataDetectionResult::encode const): Ditto.
-        (WebKit::DataDetectionResult::decode): Ditto.
-        * Shared/Cocoa/WebCoreArgumentCodersCocoa.mm:
-        (IPC::ArgumentCoder<WebCore::Payment>::encode): Ditto.
-        (IPC::ArgumentCoder<WebCore::Payment>::decode): Ditto.
-        (IPC::ArgumentCoder<WebCore::PaymentContact>::encode): Ditto.
-        (IPC::ArgumentCoder<WebCore::PaymentContact>::decode): Ditto.
-        (IPC::ArgumentCoder<WebCore::PaymentMerchantSession>::encode): Ditto.
-        (IPC::ArgumentCoder<WebCore::PaymentMerchantSession>::decode): Ditto.
-        (IPC::ArgumentCoder<WebCore::PaymentMethod>::encode): Ditto.
-        (IPC::ArgumentCoder<WebCore::PaymentMethod>::decode): Ditto.
-        * Shared/ios/InteractionInformationAtPosition.mm:
-        (WebKit::InteractionInformationAtPosition::encode const): Ditto.
-        (WebKit::InteractionInformationAtPosition::decode): Ditto.
-        * Shared/mac/WebCoreArgumentCodersMac.mm:
-        (IPC::ArgumentCoder<ProtectionSpace>::encodePlatformData): Ditto.
-        (IPC::ArgumentCoder<ProtectionSpace>::decodePlatformData): Ditto.
-        (IPC::ArgumentCoder<Credential>::encodePlatformData): Ditto.
-        (IPC::ArgumentCoder<Credential>::decodePlatformData): Ditto.
-        (IPC::ArgumentCoder<ContentFilterUnblockHandler>::encode): Ditto.
-        (IPC::ArgumentCoder<ContentFilterUnblockHandler>::decode): Ditto.
-        (IPC::ArgumentCoder<MediaPlaybackTargetContext>::encodePlatformData): Ditto.
-        (IPC::ArgumentCoder<MediaPlaybackTargetContext>::decodePlatformData): Ditto.
-        * Shared/mac/WebHitTestResultData.mm:
-        (WebKit::WebHitTestResultData::platformEncode const): Ditto.
-        (WebKit::WebHitTestResultData::platformDecode): Ditto.
-        * UIProcess/API/Cocoa/WKProcessPool.mm:
-        (-[WKProcessPool _setObject:forBundleParameter:]): Ditto.
-        (-[WKProcessPool _setObjectsForBundleParametersWithDictionary:]): Ditto.
-        * UIProcess/API/Cocoa/WKWebView.mm:
-        (-[WKWebView _setInputDelegate:]): Ditto.
-        * UIProcess/Cocoa/WebProcessPoolCocoa.mm:
-        (WebKit::WebProcessPool::platformInitializeWebProcess): Ditto.
+        * UIProcess/gtk/WebContextMenuProxyGtk.cpp:
+        (WebKit::WebContextMenuProxyGtk::showContextMenuWithItems):
+        (WebKit::WebContextMenuProxyGtk::WebContextMenuProxyGtk):
+        * UIProcess/gtk/WebContextMenuProxyGtk.h:
+        (WebKit::WebContextMenuProxyGtk::create):
+        * UIProcess/ios/PageClientImplIOS.h:
         * UIProcess/ios/PageClientImplIOS.mm:
-        (WebKit::PageClientImpl::startAssistingNode): Ditto.
-        * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
-        (-[WKWebProcessPlugInBrowserContextController _setFormDelegate:]): Ditto.
-        * WebProcess/InjectedBundle/mac/InjectedBundleMac.mm:
-        (WebKit::InjectedBundle::initialize): Ditto.
-        (WebKit::InjectedBundle::setBundleParameter): Ditto.
-        (WebKit::InjectedBundle::setBundleParameters): Ditto.
-
-2017-11-28  Youenn Fablet  <youenn@apple.com>
-
-        NetworkCache::Storage should protect itself when removing operations from its maps
-        https://bugs.webkit.org/show_bug.cgi?id=180118
-
-        Reviewed by Antti Koivisto.
-
-        The operations can contain ref to the Storage object and removing them from the map may destroy the Storage object
-
-        * NetworkProcess/cache/NetworkCacheStorage.cpp:
-        (WebKit::NetworkCache::Storage::remove):
-        (WebKit::NetworkCache::Storage::finishReadOperation):
-        (WebKit::NetworkCache::Storage::finishWriteOperation):
-        (WebKit::NetworkCache::Storage::traverse):
-
-2017-11-28  Youenn Fablet  <youenn@apple.com>
-
-        Register Documents as ServiceWorker clients to the StorageProcess
-        https://bugs.webkit.org/show_bug.cgi?id=180047
-
-        Reviewed by Brady Eidson.
-
-        Adding IPC to register/unregister clients to the storage process.
-        This will be used to enable service worker termination, and implementation of Clients API.
-
-        WebSWServerConnection keeps a hash map of all its related clients.
-        This allows unregistering these clients if the corresponding web process crashes.
-
-        * StorageProcess/ServiceWorker/WebSWServerConnection.cpp:
-        (WebKit::WebSWServerConnection::~WebSWServerConnection):
-        (WebKit::WebSWServerConnection::registerServiceWorkerClient):
-        (WebKit::WebSWServerConnection::unregisterServiceWorkerClient):
-        * StorageProcess/ServiceWorker/WebSWServerConnection.h:
-        * StorageProcess/ServiceWorker/WebSWServerConnection.messages.in:
-        * StorageProcess/ServiceWorker/WebSWServerToContextConnection.h:
-        * WebProcess/Storage/WebSWClientConnection.cpp:
-        (WebKit::WebSWClientConnection::registerServiceWorkerClient):
-        (WebKit::WebSWClientConnection::unregisterServiceWorkerClient):
-        * WebProcess/Storage/WebSWClientConnection.h:
-
-2017-11-28  Said Abou-Hallawa  <sabouhallawa@apple.com>
-
-        [CG] PostScript images should be supported if they are sub-resource images
-        https://bugs.webkit.org/show_bug.cgi?id=178502
-        <rdar://problem/35102988>
-
-        Reviewed by Simon Fraser.
-
-        Make convertPostScriptDataToPDF() be as static function of PDFDocumentImage
-        in WebCore.
-
-        * WebProcess/Plugins/PDF/PDFPlugin.mm:
-        (WebKit::PDFPlugin::convertPostScriptDataIfNeeded):
-        (WebKit::convertPostScriptDataToPDF): Deleted.
-
-2017-11-28  Alex Christensen  <achristensen@webkit.org>
-
-        Add SPI for adding strings directly to a _WKVisitedLinkStore
-        https://bugs.webkit.org/show_bug.cgi?id=180100
-
-        Reviewed by Geoffrey Garen.
-
-        * UIProcess/API/Cocoa/_WKVisitedLinkStore.h:
-        * UIProcess/API/Cocoa/_WKVisitedLinkStore.mm:
-        (-[_WKVisitedLinkStore addVisitedLinkWithString:]):
-        This is a performance optimization for rdar://problem/16321391
-
-2017-11-28  Joseph Pecoraro  <pecoraro@apple.com>
-
-        REGRESSION: Web Inspector: context menu actions "Download Image" and "Open Image in New Window" don't work
-        https://bugs.webkit.org/show_bug.cgi?id=178808
-        <rdar://problem/35176608>
-
-        Reviewed by Brian Burg.
-
-        * UIProcess/mac/WKInspectorViewController.mm:
-        (-[WKInspectorViewController _webView:contextMenu:forElement:]):
-        Continue to hide the image context menu actions like we used to.
-        Investigating making these context menus work can be done as a
-        follow-up task.
-
-        * UIProcess/mac/WKWebInspectorWKWebView.mm:
-        (-[WKWebInspectorWKWebView initWithFrame:configuration:]):
-        Use nullptr instead of 0.
-
-2017-11-14  Carlos Garcia Campos  <cgarcia@igalia.com>
-
-        Move JSONValues to WTF and convert uses of InspectorValues.h to JSONValues.h
-        https://bugs.webkit.org/show_bug.cgi?id=173793
-
-        Reviewed by Joseph Pecocaro.
-
-        Based on patch by Brian Burg.
-
-        * UIProcess/Automation/WebAutomationSession.cpp:
-        (WebKit::WebAutomationSession::resizeWindowOfBrowsingContext):
-        (WebKit::WebAutomationSession::moveWindowOfBrowsingContext):
-        (WebKit::WebAutomationSession::waitForNavigationToCompleteOnPage):
-        (WebKit::WebAutomationSession::waitForNavigationToCompleteOnFrame):
-        (WebKit::WebAutomationSession::respondToPendingPageNavigationCallbacksWithTimeout):
-        (WebKit::WebAutomationSession::respondToPendingFrameNavigationCallbacksWithTimeout):
-        (WebKit::WebAutomationSession::navigationOccurredForFrame):
-        (WebKit::WebAutomationSession::documentLoadedForFrame):
-        (WebKit::WebAutomationSession::inspectorFrontendLoaded):
-        (WebKit::WebAutomationSession::keyboardEventsFlushedForPage):
-        (WebKit::WebAutomationSession::evaluateJavaScriptFunction):
-        (WebKit::WebAutomationSession::setFilesToSelectForFileUpload):
-        (WebKit::WebAutomationSession::addSingleCookie):
-        (WebKit::WebAutomationSession::setSessionPermissions):
-        (WebKit::WebAutomationSession::performMouseInteraction):
-        (WebKit::WebAutomationSession::performKeyboardInteractions):
-        * UIProcess/Automation/WebAutomationSession.h:
-
-2017-11-28  Daniel Bates  <dabates@apple.com>
-
-        [Cocoa] First pass at implementing alternative presentation button element
-        https://bugs.webkit.org/show_bug.cgi?id=179785
-        Part of <rdar://problem/34917108>
-
-        Reviewed by Brent Fulgham.
-
-        Expose SPI to substitute the alternative presentation button for one or more elements
-        and remove the alternative presentation button. Add a private delegate callback when
-        the alternative presentation button is clicked.
-
-        * UIProcess/API/APIUIClient.h:
-        (API::UIClient::didClickAlternativePresentationButton): Added.
-        * UIProcess/API/C/WKPageUIClient.h:
-        * UIProcess/API/Cocoa/WKUIDelegatePrivate.h:
-        * UIProcess/Cocoa/UIDelegate.h:
-        * UIProcess/Cocoa/UIDelegate.mm:
-        (WebKit::UIDelegate::setDelegate): Wired up delegate callback.
-        (WebKit::UIDelegate::UIClient::didClickAlternativePresentationButton): Added.
-        * UIProcess/WebPageProxy.cpp:
-        (WebKit::WebPageProxy::handleAlternativePresentationButtonClick): Added.
-        * UIProcess/WebPageProxy.h:
-        * UIProcess/WebPageProxy.messages.in:
-        * WebProcess/InjectedBundle/API/APIInjectedBundlePageUIClient.h:
-        (API::InjectedBundle::PageUIClient::didClickAlternativePresentationButton): Added.
-        * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFrame.h:
-        * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFrame.mm:
-        (-[WKWebProcessPlugInFrame substituteElements:withAlternativePresentationButtonWithIdentifier:]): Added.
-        (-[WKWebProcessPlugInFrame removeAlternativePresentationButton:]): Added.
-        * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFramePrivate.h:
-        * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
-        (WKBundleSubstituteWithAlternativePresentationButton): Added.
-        (WKBundleRemoveAlternativePresentationButton): Added.
-        * WebProcess/InjectedBundle/API/c/WKBundleFramePrivate.h:
-        * WebProcess/InjectedBundle/API/c/WKBundlePageUIClient.h:
-        * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
-        (WebKit::InjectedBundlePageUIClient::didClickAlternativePresentationButton): Added.
-        * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
-        * WebProcess/WebCoreSupport/WebChromeClient.cpp:
-        (WebKit::WebChromeClient::handleAlternativePresentationButtonClick): Added.
-        * WebProcess/WebCoreSupport/WebChromeClient.h:
-
-2017-11-27  Chris Dumez  <cdumez@apple.com>
-
-        ASSERTION FAILED: addResult.isNewEntry WebCore::SWServerRegistration::addClientUsingRegistration(WebCore::ServiceWorkerClientIdentifier const&) + 141
-        https://bugs.webkit.org/show_bug.cgi?id=180049
-
-        Reviewed by Brady Eidson.
-
-        * StorageProcess/ServiceWorker/WebSWServerConnection.messages.in:
-        * WebProcess/Storage/WebSWClientConnection.cpp:
-        (WebKit::WebSWClientConnection::addServiceWorkerRegistrationInServer):
-        (WebKit::WebSWClientConnection::removeServiceWorkerRegistrationInServer):
-        (WebKit::WebSWClientConnection::serviceWorkerStartedControllingClient):
-        (WebKit::WebSWClientConnection::serviceWorkerStoppedControllingClient):
-        * WebProcess/Storage/WebSWClientConnection.h:
-
-2017-11-27  Jeremy Jones  <jeremyj@apple.com>
-
-        downcast to WebKit::FullscreenClient can sometimes fail.
-        https://bugs.webkit.org/show_bug.cgi?id=179849
-
-        Reviewed by Darin Adler.
-
-        There are cases during teardown where fullscreenClient() has been cleared back to an API::FullscreenClient.
-        Because those cases, WKWebView should test before downcasting to WebKit::FullscreenClient.
-
-        This is causing a crash when fullscreen delegate is cleared after a page is closed.
-
-        * UIProcess/API/Cocoa/WKWebView.mm:
-        (-[WKWebView _setFullscreenDelegate:]):
-        (-[WKWebView _fullscreenDelegate]):
-
-2017-11-27  Chris Dumez  <cdumez@apple.com>
-
-        Give Document a strongly typed identifier instead of a uint64_t
-        https://bugs.webkit.org/show_bug.cgi?id=180041
-
-        Reviewed by Youenn Fablet.
-
-        Give Document a strongly typed identifier instead of a uint64_t, for clarity.
-
-        * Platform/IPC/ArgumentCoders.h:
-        * Scripts/webkit/messages.py:
-        (forward_declarations_and_headers):
-        * StorageProcess/ServiceWorker/WebSWServerConnection.cpp:
-        (WebKit::WebSWServerConnection::notifyClientsOfControllerChange):
-        (WebKit::WebSWServerConnection::postMessageToServiceWorkerGlobalScope):
-        (WebKit::WebSWServerConnection::postMessageToServiceWorkerClient):
-        * StorageProcess/ServiceWorker/WebSWServerConnection.h:
-        * StorageProcess/ServiceWorker/WebSWServerConnection.messages.in:
-        * StorageProcess/StorageProcess.cpp:
-        (WebKit::StorageProcess::postMessageToServiceWorkerClient):
-        * WebProcess/Storage/WebSWClientConnection.cpp:
-        (WebKit::WebSWClientConnection::postMessageToServiceWorkerGlobalScope):
-        (WebKit::WebSWClientConnection::serviceWorkerStartedControllingClient):
-        (WebKit::WebSWClientConnection::serviceWorkerStoppedControllingClient):
-        (WebKit::WebSWClientConnection::postMessageToServiceWorkerClient):
-        * WebProcess/Storage/WebSWClientConnection.h:
-        * WebProcess/Storage/WebSWClientConnection.messages.in:
-
-2017-11-27  Yacine Bandou  <yacine.bandou_ext@softathome.com>
-
-        [GTK][WPE] Add "enable-encrypted-media" property to WebKitWebSettings
-        https://bugs.webkit.org/show_bug.cgi?id=18005
-
-        Reviewed by Michael Catanzaro.
-
-        EncryptedMedia is an experimental JavaScript API for playing encrypted media in HTML.
-        This property will only work as intended if the EncryptedMedia feature is enabled at build time
-        with the ENABLE_ENCRYPTED_MEDIA flag.
-
-        * UIProcess/API/glib/WebKitSettings.cpp:
-        (webKitSettingsSetProperty):
-        (webKitSettingsGetProperty):
-        (webkit_settings_class_init):
-        (webkit_settings_get_enable_encrypted_media):
-        (webkit_settings_set_enable_encrypted_media):
-        * UIProcess/API/gtk/WebKitSettings.h:
-        * UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt:
-        * UIProcess/API/wpe/WebKitSettings.h:
-
-2017-11-27  Tim Horton  <timothy_horton@apple.com>
-
-        One too many zeroes in macOS version number in FeatureDefines
-        https://bugs.webkit.org/show_bug.cgi?id=180011
-
-        Reviewed by Dan Bernstein.
-
-        * Configurations/FeatureDefines.xcconfig:
-
-2017-11-27  Zan Dobersek  <zdobersek@igalia.com>
-
-        [CoordGraphics] Prettify ID value handling in UpdateAtlas and UpdateAtlas::Client
-        https://bugs.webkit.org/show_bug.cgi?id=180038
-
-        Reviewed by Carlos Garcia Campos.
-
-        In the UpdateAtlas class, provide an ID type that aliases to uint32_t.
-        The m_id member variable (ex-m_ID) uses this type, and it's also now
-        used in the Client interface.
-
-        While poking around, the header is modified to use '#pragma once',
-        and m_id is moved to the more logical first position among member
-        variables.
-
-        The static ID variable is modified to use the new type, and renamed
-        to s_nextID. Comment alongside the namespace scope closure is fixed
-        to use the appropriate name.
-
-        createUpdateAtlas() and removeUpdateAtlas() methods in the
-        CompositingCoordinator class are modified to use the UpdateAtlas::ID
-        type, and the former has the second parameter changed from RefPtr<>
-        to Ref<>.
-
-        * WebProcess/WebPage/CoordinatedGraphics/CompositingCoordinator.cpp:
-        (WebKit::CompositingCoordinator::createUpdateAtlas):
-        (WebKit::CompositingCoordinator::removeUpdateAtlas):
-        * WebProcess/WebPage/CoordinatedGraphics/CompositingCoordinator.h:
-        * WebProcess/WebPage/CoordinatedGraphics/UpdateAtlas.cpp:
-        (WebKit::UpdateAtlas::UpdateAtlas):
-        (WebKit::UpdateAtlas::~UpdateAtlas):
-        (WebKit::UpdateAtlas::getCoordinatedBuffer):
-        * WebProcess/WebPage/CoordinatedGraphics/UpdateAtlas.h:
-
-2017-11-27  Zan Dobersek  <zdobersek@igalia.com>
-
-        [CoordGraphics] CompositingCoordinator: clean up Client vtable, GraphicsLayerClient overrides
-        https://bugs.webkit.org/show_bug.cgi?id=180037
-
-        Reviewed by Carlos Garcia Campos.
-
-        Remove the CompositingCoordinator::Client::paintLayerContents() method since
-        the only implementation in CoordinatedLayerTreeHost was empty.
-
-        Subsequently, the CompositingCoordinator::paintContents() override of the
-        GraphicsLayerClient method can also be removed. The notifyAnimationStarted()
-        override is empty, just like the base method, so it's removed as well.
-
-        * WebProcess/WebPage/CoordinatedGraphics/CompositingCoordinator.cpp:
-        (WebKit::CompositingCoordinator::deviceScaleFactor const): Bring method up
-        to the notifyFlushRequired() code, since both are overrides of the
-        GraphicsLayerClient-inherited methods.
-        (WebKit::CompositingCoordinator::pageScaleFactor const): Ditto.
-        (WebKit::CompositingCoordinator::notifyAnimationStarted): Deleted.
-        (WebKit::CompositingCoordinator::paintContents): Deleted.
-        * WebProcess/WebPage/CoordinatedGraphics/CompositingCoordinator.h:
-        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
-        (WebKit::CoordinatedLayerTreeHost::paintLayerContents): Deleted.
-        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
-
-2017-11-27  Carlos Garcia Campos  <cgarcia@igalia.com>
-
-        REGRESSION(r223073): disk cache directory is no longer copied in ProcessPoolConfiguration::copy()
-        https://bugs.webkit.org/show_bug.cgi?id=180031
-
-        Reviewed by Youenn Fablet.
-
-        This has caused GTK/WPE test /webkit2/WebKitWebsiteData/configuration to fail, and the wrong directory is used
-        by the network process. I think it was removed by mistake in r223073.
-
-        * UIProcess/API/APIProcessPoolConfiguration.cpp:
-        (API::ProcessPoolConfiguration::copy): Copy m_diskCacheDirectory too.
-
-2017-11-27  Adrian Perez de Castro  <aperez@igalia.com>
-
-        [WPE][GTK] Improve contents of pkg-config .pc files
-        https://bugs.webkit.org/show_bug.cgi?id=180032
-
-        Reviewed by Carlos Garcia Campos.
-
-        * gtk/webkit2gtk-web-extension.pc.in: Add URL, edit Name and Description.
-        * gtk/webkit2gtk.pc.in: Add URL, edit Name.
-        * wpe/wpe-webkit.pc.in: Add URL, edit Name and Description.
-
-2017-11-23  Darin Adler  <darin@apple.com>
-
-        Fix dictionary leak in lookup, convert FindOptions to OptionSet, tweak code style nearby
-        https://bugs.webkit.org/show_bug.cgi?id=179981
-
-        Reviewed by Sam Weinig.
-
-        * WebProcess/Plugins/PDF/PDFPlugin.h: Use some references instead of pointers. Made more
-        things final and private. Changed functions with multiple return values to use tuples
-        instead of out arguments for clarity, especially because some were using pointers and it
-        was ambiguous whether the pointers could be nullptr. Tweaked formatting. Moved initialization
-        of data members into the class definition.
-
-        * WebProcess/Plugins/PDF/PDFPlugin.mm:
-        (WebKit::PDFPlugin::create): Take a reference.
-        (WebKit::PDFPlugin::PDFPlugin): Ditto. Also moved some initialization to the class definition.
-        (WebKit::PDFPlugin::countFindMatches): Added comment about ignored maxMatchCount argument.
-        (WebKit::PDFPlugin::findString): Use contains instead of & to check bits in options.
-        Simplified slightly confusing match count code that was doing some unnecessary comparisons
-        with the maximum match count. Use auto a bit.
-        (WebKit::coreCursor): Renamed from pdfLayerControllerCursorTypeToCursor since this is C++
-        and overloading works based on the argument type.
-        (WebKit::PDFPlugin::notifyCursorChanged): Updated for name change.
-        (WebKit::PDFPlugin::lookupTextAtLocation const): Return a tuple instead of using two out
-        arguments and use a RetainPtr so we don't leak the options dictionary.
-
-        * WebProcess/Plugins/PluginProxy.h: Removed unneeded include of FindOptions.h.
-
-        * WebProcess/WebCoreSupport/mac/WebContextMenuClientMac.mm:
-        (WebKit::WebContextMenuClient::lookUpInDictionary): Pass a reference.
-
-        * WebProcess/WebPage/FindController.cpp:
-        (WebKit::core): Use |= instead of | to build up a FindOptions.
-        (WebKit::FindController::FindController): Initialize data members in the class definition.
-        (WebKit::pluginViewForFrame): Deleted. Callers now use WebPage::pluginViewForFrame.
-        (WebKit::FindController::updateFindUIAfterPageScroll): Added a FIXME about some peculiar code.
-        (WebKit::FindController::findString): Use |= rather than | to add in an option.
-        (WebKit::FindController::hideFindUI): Use { } rather than 0 for no options.
-        * WebProcess/WebPage/FindController.h: Moved initialization to the header. Exported the core
-        function that converts WebKit::FindOptions to WebCore::FindOptions.
-
-        * WebProcess/WebPage/WebFrame.cpp:
-        (WebKit::WebFrame::handlesPageScaleGesture const): Use WebPage::pluginViewForFrame.
-        (WebKit::WebFrame::requiresUnifiedScaleFactor const): Use WebPage::pluginViewForFrame.
-
-        * WebProcess/WebPage/WebPage.cpp:
-        (WebKit::WebPage::createPlugin): Removed unneeded local variable and UNUSED_PARAM.
-        (WebKit::WebPage::focusedPluginViewForFrame): Use pluginViewForFrame.
-        (WebKit::WebPage::pluginViewForFrame): Added a null check since this takes a pointer.
-        Use is/downcast insteadof more ad hoc coding style.
-        (WebKit::WebPage::findStringFromInjectedBundle): Call core to convert WebKit::FindOptions
-        to WebCore::FindOptions. Before, this was accidentally relying on the bits from the two
-        enumrations matching! The stricter type checking of OptionSet helps us catch mistakes
-        like this.
-
-        * WebProcess/WebPage/WebPage.h: Updated for the above. Also flattened out nested #if
-        statements, made forward declarations unconditional, and re-sorted them. Changed the
-        Mac-specific lookupTextAtLocation to return a tuple (see below).
-
-        * WebProcess/WebPage/ios/WebPageIOS.mm:
-        (WebKit::WebPage::performDictionaryLookupForSelection): Take a reference instead of a pointer.
-        (WebKit::WebPage::performDictionaryLookupForRange): Ditto.
-        (WebKit::rangeNearPositionMatchesText): Use { } rather than 0 for no options.
-
-        * WebProcess/WebPage/mac/WebPageMac.mm:
-        (WebKit::WebPage::performDictionaryLookupAtLocation): Use RetainPtr<NSDictionary> to fix
-        code that used to leak.
-        (WebKit::WebPage::performDictionaryLookupForSelection): Ditto.
-        (WebKit::WebPage::performDictionaryLookupOfCurrentSelection): Use a reference.
-        (WebKit::WebPage::dictionaryPopupInfoForRange): Updated for changed argument types.
-        (WebKit::WebPage::dictionaryPopupInfoForSelectionInPDFPlugin): Ditto.
-        (WebKit::WebPage::performDictionaryLookupForRange): Ditto.
-        (WebKit::WebPage::performImmediateActionHitTestAtLocation): Updated to handle the
-        tuple result from the lookupTextAtLocation functions.
-        (WebKit::WebPage::lookupTextAtLocation): Changed to return a tuple and use RetainPtr
-        for the NSDictionary to help fix the leak.
-
-2017-11-24  Zan Dobersek  <zdobersek@igalia.com>
-
-        [CoordGraphics] CoordinatedGraphicsLayer::updateContentBuffers() should always assume a non-null CoordinatedBuffer
-        https://bugs.webkit.org/show_bug.cgi?id=179977
-
-        Reviewed by Carlos Garcia Campos.
-
-        Make CompositingCoordinator::getCoordinatedBuffer() return a Ref<CoordinatedBuffer>
-        value. In case an UpdateAtlas with enough free area is found, its CoordinatedBuffer
-        is dereferenced into the return value. In case a new UpdateAtlas is created, the
-        returned CoordinatedBuffer pointer is asserted to be non-null and dereferenced.
-
-        The retrieved CoordinatedBuffer pointer on a newly-created UpdateAtlas should never
-        be null since the tiles are smaller in size than the UpdateAtlas area. The assert
-        is done in release configurations as well since the code in CoordinatedGraphicsLayer
-        assumes the returned pointer will be non-null, so it's just a matter of where to
-        crash first in case somehow a null value is returned.
-
-        * WebProcess/WebPage/CoordinatedGraphics/CompositingCoordinator.cpp:
-        (WebKit::CompositingCoordinator::getCoordinatedBuffer):
-        * WebProcess/WebPage/CoordinatedGraphics/CompositingCoordinator.h:
-
-2017-11-24  Zan Dobersek  <zdobersek@igalia.com>
-
-        [CoordGraphics] UpdateAtlas constructor should receive an IntSize, not a dimension value
-        https://bugs.webkit.org/show_bug.cgi?id=179976
-
-        Reviewed by Carlos Garcia Campos.
-
-        Have the UpdateAtlas constructor receive an IntSize object that specifies
-        the desired size for the CoordinatedBuffer. Passing in a dimension doesn't
-        really make sense since this value isn't dynamically configurable, and
-        the only value that is passed in is already a power-of-two.
-
-        * WebProcess/WebPage/CoordinatedGraphics/CompositingCoordinator.cpp:
-        (WebKit::CompositingCoordinator::getCoordinatedBuffer):
-        * WebProcess/WebPage/CoordinatedGraphics/UpdateAtlas.cpp:
-        (WebKit::UpdateAtlas::UpdateAtlas):
-        * WebProcess/WebPage/CoordinatedGraphics/UpdateAtlas.h:
-
-2017-11-23  Sam Weinig  <sam@webkit.org>
-
-        Remove unneeded ScriptController::processingUserGesture() forwarding functions
-        https://bugs.webkit.org/show_bug.cgi?id=179954
-
-        Reviewed by Darin Adler.
-
-        Replace ScriptController::processingUserGesture() and ScriptController::processingUserGestureForMedia()
-        with direct calls to the corresponding UserGestureIndicator functions.
-
-        * WebProcess/InjectedBundle/InjectedBundle.cpp:
-        (WebKit::InjectedBundle::isProcessingUserGesture):
-        * WebProcess/WebPage/WebPage.cpp:
-        (WebKit::WebPage::addResourceRequest):
-
-2017-11-23  Chris Dumez  <cdumez@apple.com>
-
-        WebSWServerConnection should register/unregister itself with the StorageProcess
-        https://bugs.webkit.org/show_bug.cgi?id=179965
-
-        Reviewed by Darin Adler.
-
-        WebSWServerConnection should register/unregister itself with the StorageProcess instead of relying
-        on StorageToWebProcessConnection to do so on its behalf. This is less error-prone.
-
-        * StorageProcess/ServiceWorker/WebSWServerConnection.cpp:
-        (WebKit::WebSWServerConnection::WebSWServerConnection):
-        (WebKit::WebSWServerConnection::~WebSWServerConnection):
-        * StorageProcess/StorageToWebProcessConnection.cpp:
-        (WebKit::StorageToWebProcessConnection::~StorageToWebProcessConnection):
-        (WebKit::StorageToWebProcessConnection::establishSWServerConnection):
-        (WebKit::StorageToWebProcessConnection::removeSWServerConnection):
-
-2017-11-23  Darin Adler  <darin@apple.com>
-
-        Reduce WTF::String operations that do unnecessary Unicode operations instead of ASCII
-        https://bugs.webkit.org/show_bug.cgi?id=179907
-
-        Reviewed by Sam Weinig.
-
-        * NetworkProcess/cache/NetworkCache.cpp:
-        (WebKit::NetworkCache::isMediaMIMEType): Use startsWithLettersIgnoringASCIICase.
-        * NetworkProcess/cache/NetworkCacheKey.cpp:
-        (WebKit::NetworkCache::hashString): Use isAllASCII..
-        * UIProcess/API/C/WKWebsitePolicies.cpp:
-        (WKWebsitePoliciesSetCustomHeaderFields): Use startsWithLettersIgnoringASCIICase..
-        * UIProcess/API/Cocoa/_WKWebsitePolicies.mm:
-        (-[_WKWebsitePolicies setCustomHeaderFields:]): Ditto.
-        * UIProcess/WebPageProxy.cpp:
-        (WebKit::WebPageProxy::savePDFToFileInDownloadsFolder): Use endsWithIgnoringASCIICase.
-        * UIProcess/WebPreferences.cpp:
-        (WebKit::WebPreferences::WebPreferences): Initialize m_identifier explicitly. Somehow
-        changing the String default constructor to be "= default" led to a warning that we
-        otherwise did not get about not initializing m_identifier. Arguably a compiler bug,
-        but legitimately strange that the copy constructor does not copy m_identifier and so
-        nice to be explicit about it, I guess.
-        * UIProcess/mac/WebPageProxyMac.mm:
-        (WebKit::WebPageProxy::savePDFToTemporaryFolderAndOpenWithNativeApplicationRaw): Use
-        endsWithIgnoringASCIICase.
-        (WebKit::WebPageProxy::openPDFFromTemporaryFolderWithNativeApplication): Ditto.
-        * WebProcess/WebPage/WebPage.cpp:
-        (WebKit::WebPage::createPlugin): Ditto.
-        * WebProcess/WebPage/ios/WebPageIOS.mm:
-        (WebKit::WebPage::platformEditorState const): Use isAllSpecialCharacters<isHTMLSpace>.
-
-2017-11-23  Zan Dobersek  <zdobersek@igalia.com>
-
-        [CoordGraphics] Simplify CoordinatedGraphicsLayer's content buffer updates
-        https://bugs.webkit.org/show_bug.cgi?id=179972
-
-        Reviewed by Carlos Garcia Campos.
-
-        In CompositingCoordinator, add the getCoordinatedBuffer() method, replacing
-        paintToSurface(). The new method traverses the list of UpdateAtlases and
-        returns any CoordinatedBuffer object that was free to use. If none exist,
-        a new UpdateAtlas object is created, and its CoordinatedBuffer is returned.
-
-        In  UpdateAtlas, the paintOnAvailableBuffer() method is replaced with
-        getCoordinatedBuffer(). The latter allocates the necessary area but then
-        returns a reference to the CoordinatedBuffer buffer, along with the atlas ID
-        and the allocated rectangle information, and does not invoke any painting
-        operation like paintOnAvailableBuffer() did.
-
-        * WebProcess/WebPage/CoordinatedGraphics/CompositingCoordinator.cpp:
-        (WebKit::CompositingCoordinator::getCoordinatedBuffer):
-        (WebKit::CompositingCoordinator::paintToSurface): Deleted.
-        * WebProcess/WebPage/CoordinatedGraphics/CompositingCoordinator.h:
-        * WebProcess/WebPage/CoordinatedGraphics/UpdateAtlas.cpp:
-        (WebKit::UpdateAtlas::getCoordinatedBuffer):
-        (WebKit::UpdateAtlas::paintOnAvailableBuffer): Deleted.
-        * WebProcess/WebPage/CoordinatedGraphics/UpdateAtlas.h:
-
-2017-11-23  Zan Dobersek  <zdobersek@igalia.com>
-
-        [CoordGraphics] Remove relay CoordinatedBuffer::Client implementations
-        https://bugs.webkit.org/show_bug.cgi?id=179970
-
-        Reviewed by Carlos Garcia Campos.
-
-        Drop the helper UpdateAtlasSurfaceClient class and instead directly use
-        the CoordinatedBuffer's GraphicsContext to perform clip and translation
-        operations based on the allocated rectangle, to pre-fill the target rect
-        with transparent color in case the alpha channel is supported, and to
-        then invoke CoordinatedBuffer::Client::paintToSurfaceContext() method,
-        passing the GraphicsContext as the argument.
-
-        * WebProcess/WebPage/CoordinatedGraphics/UpdateAtlas.cpp:
-        (WebKit::UpdateAtlas::paintOnAvailableBuffer):
-        (): Deleted.
-
-2017-11-23  Zan Dobersek  <zdobersek@igalia.com>
-
-        [CoordGraphics] Replace CoordinatedSurface, ThreadSafeCoordinatedSurface with CoordinatedBuffer
-        https://bugs.webkit.org/show_bug.cgi?id=179967
-
-        Reviewed by Carlos Garcia Campos.
-
-        Replace uses of CoordinatedSurface class with CoordinatedBuffer. The
-        ThreadSafeCoordinatedSurface class is removed, along with the code in
-        CoordinatedLayerTreeHost that established a CoordinatedSurface factory.
-
-        * PlatformGTK.cmake:
-        * PlatformWPE.cmake:
-        * Shared/CoordinatedGraphics/CoordinatedBackingStore.cpp:
-        (WebKit::CoordinatedBackingStoreTile::swapBuffers):
-        (WebKit::CoordinatedBackingStoreTile::setBackBuffer):
-        (WebKit::CoordinatedBackingStore::updateTile):
-        * Shared/CoordinatedGraphics/CoordinatedBackingStore.h:
-        Rename m_surface to m_buffer, m_surfaceOffset to m_bufferOffset.
-        * Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp:
-        (WebKit::CoordinatedGraphicsScene::createUpdateAtlas):
-        (WebKit::CoordinatedGraphicsScene::updateImageBacking):
-        * Shared/CoordinatedGraphics/CoordinatedGraphicsScene.h:
-        * Shared/CoordinatedGraphics/threadedcompositor/ThreadSafeCoordinatedSurface.cpp: Removed.
-        * Shared/CoordinatedGraphics/threadedcompositor/ThreadSafeCoordinatedSurface.h: Removed.
-        * WebProcess/WebPage/CoordinatedGraphics/CompositingCoordinator.cpp:
-        (WebKit::CompositingCoordinator::updateImageBacking):
-        (WebKit::CompositingCoordinator::createUpdateAtlas):
-        (WebKit::CompositingCoordinator::paintToSurface):
-        * WebProcess/WebPage/CoordinatedGraphics/CompositingCoordinator.h:
-        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
-        (WebKit::CoordinatedLayerTreeHost::CoordinatedLayerTreeHost):
-        (WebKit::CoordinatedLayerTreeHost::createCoordinatedSurface): Deleted.
-        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
-        * WebProcess/WebPage/CoordinatedGraphics/UpdateAtlas.cpp:
-        (WebKit::UpdateAtlas::UpdateAtlas):
-        (WebKit::UpdateAtlas::~UpdateAtlas):
-        (WebKit::UpdateAtlas::paintOnAvailableBuffer):
-        * WebProcess/WebPage/CoordinatedGraphics/UpdateAtlas.h:
-        Rename m_surface to m_buffer.
-        (WebKit::UpdateAtlas::size const):
-        (WebKit::UpdateAtlas::supportsAlpha const):
-
-2017-11-22  Ali Juma  <ajuma@chromium.org>
-
-        Implement VisualViewport API attributes
-        https://bugs.webkit.org/show_bug.cgi?id=179385
-
-        Reviewed by Frédéric Wang.
-
-        Add a VisualViewportAPI experimental feature.
-
-        * Shared/WebPreferences.yaml:
-
-2017-11-22  Tim Horton <timothy_horton@apple.com> and Michael Catanzaro <mcatanzaro@igalia.com>
-
-        Remove build-webkit's notion of feature flags having a default value
-        https://bugs.webkit.org/show_bug.cgi?id=177338
-
-        Reviewed by Carlos Alberto Lopez Perez.
-
-        Use ENABLE_EXPERIMENTAL_FEATURES instead of ENABLE_DEVELOPER_MODE to enable runtime
-        experimental features.
-
-        * Shared/WebPreferencesDefaultValues.h:
-
-2017-11-22  Commit Queue  <commit-queue@webkit.org>
-
-        Unreviewed, rolling out r225093.
-        https://bugs.webkit.org/show_bug.cgi?id=179938
-
-        Compilation failed on WinCairo 64-bit Release (Requested by
-        fredw on #webkit).
-
-        Reverted changeset:
-
-        "Implement VisualViewport API attributes"
-        https://bugs.webkit.org/show_bug.cgi?id=179385
-        https://trac.webkit.org/changeset/225093
-
-2017-11-21  Ali Juma  <ajuma@chromium.org>
-
-        Implement VisualViewport API attributes
-        https://bugs.webkit.org/show_bug.cgi?id=179385
-
-        Reviewed by Frédéric Wang.
-
-        Add a VisualViewportAPI experimental feature.
-
-        * Shared/WebPreferences.yaml:
-
-2017-11-21  Christopher Reid  <chris.reid@sony.com>
-
-        [PAL] Remove FileSystem's dependency on WebCoreNSStringExtras
-        https://bugs.webkit.org/show_bug.cgi?id=179504
-
-        Reviewed by Darin Adler.
-
-        * UIProcess/Cocoa/WebViewImpl.mm:
-        * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
-        * UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
-
-2017-11-21  Carlos Garcia Campos  <cgarcia@igalia.com>
-
-        [WPE] WPEWebProcess: Couldn't find current GLX or EGL context
-        https://bugs.webkit.org/show_bug.cgi?id=179883
-
-        Reviewed by Žan Doberšek.
-
-        I'm seeing that message quite often when running the unit tests. The problem seems to be that some tests run so
-        fast that the web process never renders the first frame, so the context is created but never made current. I've
-        checked with apitrace that there are calls to eglQueryContext with null display, causing a EGL_BAD_DISPLAY, but
-        I don't know where those calls are originated. Making the context current right after it's created fixes the
-        problem.
-
-        * Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp:
-        (WebKit::ThreadedCompositor::createGLContext): Always call makeContextCurrent() right after the context is created.
-
-2017-11-20  Carlos Garcia Campos  <cgarcia@igalia.com>
-
-        Unreviewed. Update OptionsGTK.cmake and NEWS for 2.19.2 release.
-
-        * gtk/NEWS: Add release notes for 2.19.2.
-
-2017-11-20  Don Olmstead  <don.olmstead@sony.com>
-
-        Add declspec within WebKit API
-        https://bugs.webkit.org/show_bug.cgi?id=179893
-
-        Reviewed by Darin Adler.
-
-        * Shared/API/c/WKDeclarationSpecifiers.h:
-
-2017-11-20  Mario Sanchez Prada  <mario@endlessm.com>
-
-        [GTK] New API to add, retrieve and delete cookies via WebKitCookieManager
-        https://bugs.webkit.org/show_bug.cgi?id=177932
-
-        Reviewed by Carlos Garcia Campos.
-
-        Added new API to WebKitCookieManager to add, retrieve and delete complete
-        cookies into/out-of a running session, and updated documentation sections.
-
-        * UIProcess/API/glib/WebKitCookieManager.cpp:
-        (webkit_cookie_manager_add_cookie): New function.
-        (webkit_cookie_manager_add_cookie_finish): Ditto.
-        (webkit_cookie_manager_get_cookies): Ditto.
-        (webkit_cookie_manager_get_cookies_finish): Ditto.
-        (webkit_cookie_manager_delete_cookie): Ditto.
-        (webkit_cookie_manager_delete_cookie_finish): Ditto.
-        * UIProcess/API/gtk/WebKitCookieManager.h: Added new functions.
-        * UIProcess/API/wpe/WebKitCookieManager.h: Ditto.
-        * UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt: Ditto.
-
-2017-11-20  Carlos Garcia Campos  <cgarcia@igalia.com>
-
-        [WPE] webkit_web_view_new() should enable specifying wpe_view_backend object
-        https://bugs.webkit.org/show_bug.cgi?id=178655
-
-        Reviewed by Michael Catanzaro.
-
-        Update all WebKitWebView constructors to receive a WebKitWebViewBackend as argument. It's now required to
-        provide a backend to create a web view, but it can be NULL to use the default one. WebKitWebViewBackend is a
-        boxed type wrapping a struct wpe_view_backend* used as construct only property of WebKitWebView. The view always
-        takes the ownership of the WebKitWebViewBackend which owns the struct wpe_view_backend*. An optional
-        GDestroyNotify and user data pointer can be passed to the WebKitWebViewBackend constructor to provide a custom
-        deleter for the backend. In the C API the struct wpe_view_backend* is also mandatory now, but it can't be NULL
-        and it's owned by the caller, not the view.
-
-        * PlatformWPE.cmake:
-        * UIProcess/API/C/wpe/WKView.cpp:
-        (WKViewCreate):
-        * UIProcess/API/C/wpe/WKView.h:
-        * UIProcess/API/glib/WebKitWebView.cpp:
-        (_WebKitWebViewPrivate::~_WebKitWebViewPrivate):
-        (webkitWebViewConstructed):
-        (webkitWebViewSetProperty):
-        (webkitWebViewGetProperty):
-        (webkit_web_view_class_init):
-        (webkitWebViewCreatePage):
-        (webkit_web_view_get_backend):
-        * UIProcess/API/wpe/WPEView.cpp:
-        (WKWPE::m_backend):
-        (WKWPE::View::~View):
-        * UIProcess/API/wpe/WebKitWebView.h:
-        * UIProcess/API/wpe/WebKitWebViewBackend.cpp: Added.
-        (_WebKitWebViewBackend::_WebKitWebViewBackend):
-        (_WebKitWebViewBackend::~_WebKitWebViewBackend):
-        (webkitWebViewBackendRef):
-        (webkitWebViewBackendUnref):
-        (webkitWebViewBackendCreateDefault):
-        (webkit_web_view_backend_new):
-        (webkit_web_view_backend_get_wpe_backend):
-        * UIProcess/API/wpe/WebKitWebViewBackend.h: Added.
-        * UIProcess/API/wpe/WebKitWebViewBackendPrivate.h: Added.
-        * UIProcess/API/wpe/WebKitWebViewWPE.cpp:
-        (webkit_web_view_new):
-        (webkit_web_view_new_with_context):
-        (webkit_web_view_new_with_related_view):
-        (webkit_web_view_new_with_settings):
-        (webkit_web_view_new_with_user_content_manager):
-        * UIProcess/API/wpe/webkit.h:
-
-2017-11-20  Carlos Garcia Campos  <cgarcia@igalia.com>
-
-        [GTK][WPE] webkit_cookie_manager_delete_all_cookies doesn't delete the cookies if called before a web process is running
-        https://bugs.webkit.org/show_bug.cgi?id=175265
-
-        Reviewed by Michael Catanzaro.
-
-        This is what happens:
-
-        1- We create our WebKitWebContext that creates its WebProcessPool.
-        2- We set a persistent cookies storage.
-        3- We ask the website data store to delete all cookies, but since website data store is a web process observer
-           and we haven't spawned any web process yet, it creates a new WebProcessPool with the default configuration
-           (no persistent cookies) and sends the message to delete the cookies there.
-        4- The network process of the second process pool does nothing because it doesn't have cookies at all.
-
-        We need to set the primary data store of the WebProcessPool when WebKitWebContext is constructed to ensure that
-        one is used before the web process is launched.
-
-        * UIProcess/API/glib/WebKitWebContext.cpp:
-        (webkitWebContextConstructed):
-
-2017-11-19  Tim Horton  <timothy_horton@apple.com>
-
-        Remove unused TOUCH_ICON_LOADING feature flag
-        https://bugs.webkit.org/show_bug.cgi?id=179873
-
-        Reviewed by Simon Fraser.
-
-        * Configurations/FeatureDefines.xcconfig:
-
-2017-11-19  Tim Horton  <timothy_horton@apple.com>
-
-        Remove unused LEGACY_VENDOR_PREFIXES feature flag
-        https://bugs.webkit.org/show_bug.cgi?id=179872
-
-        Reviewed by Darin Adler.
-
-        * Configurations/FeatureDefines.xcconfig:
-
-2017-11-18  Chris Dumez  <cdumez@apple.com>
-
-        ASSERTION FAILED: registration in WebCore::SWServerJobQueue::scriptContextStarted(ServiceWorkerIdentifier)
-        https://bugs.webkit.org/show_bug.cgi?id=179846
-
-        Reviewed by Darin Adler.
-
-        * StorageProcess/ServiceWorker/WebSWServerConnection.cpp:
-        (WebKit::WebSWServerConnection::rejectJobInClient):
-        (WebKit::WebSWServerConnection::resolveRegistrationJobInClient):
-        (WebKit::WebSWServerConnection::resolveUnregistrationJobInClient):
-        (WebKit::WebSWServerConnection::startScriptFetchInClient):
-        * StorageProcess/ServiceWorker/WebSWServerConnection.h:
-        * StorageProcess/ServiceWorker/WebSWServerToContextConnection.messages.in:
-        * WebProcess/Storage/WebSWClientConnection.messages.in:
-        * WebProcess/Storage/WebSWContextManagerConnection.cpp:
-        (WebKit::WebSWContextManagerConnection::serviceWorkerStartedWithMessage):
-        (WebKit::WebSWContextManagerConnection::didFinishInstall):
-        * WebProcess/Storage/WebSWContextManagerConnection.h:
-
-2017-11-18  Tim Horton  <timothy_horton@apple.com>
-
-        Rename some Network Capture debugging defines
-        https://bugs.webkit.org/show_bug.cgi?id=179870
-
-        Reviewed by Darin Adler.
-
-        * NetworkProcess/capture/NetworkCaptureLogging.h:
-        * NetworkProcess/capture/NetworkCaptureManager.cpp:
-        (WebKit::NetworkCapture::Manager::findMatch):
-        (WebKit::NetworkCapture::Manager::fuzzyMatchURLs):
-        These shouldn't have WTF in their name - they have nothing to do with WTF.
-        These shouldn't use ENABLE(), since they're not features, just debugging macros.
-
-2017-11-17  Chris Dumez  <cdumez@apple.com>
-
-        [Service Workers] Implement "Notify Controller Change" algorithm
-        https://bugs.webkit.org/show_bug.cgi?id=179822
-
-        Reviewed by Youenn Fablet.
-
-        * Scripts/webkit/messages.py:
-        (class_template_headers):
-        * StorageProcess/ServiceWorker/WebSWServerConnection.cpp:
-        (WebKit::WebSWServerConnection::notifyClientsOfControllerChange):
-        * StorageProcess/ServiceWorker/WebSWServerConnection.h:
-        * WebProcess/Storage/WebSWClientConnection.messages.in:
-
-2017-11-17  Chris Dumez  <cdumez@apple.com>
-
-        Use a strongly typed identifier for SWServer::Connection
-        https://bugs.webkit.org/show_bug.cgi?id=179848
-
-        Reviewed by Brady Eidson.
-
-        Use a strongly typed identifier for SWServer::Connection, for clarity.
-
-        * Scripts/webkit/messages.py:
-        (forward_declarations_and_headers):
-        (forward_declarations_and_headers.templates):
-        (headers_for_type):
-        * StorageProcess/ServiceWorker/WebSWServerConnection.cpp:
-        (WebKit::WebSWServerConnection::WebSWServerConnection):
-        (WebKit::WebSWServerConnection::postMessageToServiceWorkerGlobalScope):
-        * StorageProcess/ServiceWorker/WebSWServerConnection.h:
-        * StorageProcess/ServiceWorker/WebSWServerConnection.messages.in:
-        * StorageProcess/StorageProcess.cpp:
-        (WebKit::StorageProcess::didFailFetch):
-        (WebKit::StorageProcess::didNotHandleFetch):
-        (WebKit::StorageProcess::didReceiveFetchResponse):
-        (WebKit::StorageProcess::didReceiveFetchData):
-        (WebKit::StorageProcess::didReceiveFetchFormData):
-        (WebKit::StorageProcess::didFinishFetch):
-        * StorageProcess/StorageProcess.h:
-        * StorageProcess/StorageProcess.messages.in:
-        * StorageProcess/StorageToWebProcessConnection.cpp:
-        (WebKit::StorageToWebProcessConnection::didReceiveMessage):
-        (WebKit::StorageToWebProcessConnection::establishSWServerConnection):
-        (WebKit::StorageToWebProcessConnection::removeSWServerConnection):
-        (WebKit::generateIDBConnectionToServerIdentifier):
-        (WebKit::StorageToWebProcessConnection::establishIDBConnectionToServer):
-        * StorageProcess/StorageToWebProcessConnection.h:
-        * StorageProcess/StorageToWebProcessConnection.messages.in:
-        * WebProcess/Storage/WebSWClientConnection.cpp:
-        (WebKit::WebSWClientConnection::postMessageToServiceWorkerGlobalScope):
-        * WebProcess/Storage/WebSWClientConnection.h:
-        * WebProcess/Storage/WebSWContextManagerConnection.cpp:
-        (WebKit::WebSWContextManagerConnection::startFetch):
-        (WebKit::WebSWContextManagerConnection::postMessageToServiceWorkerGlobalScope):
-        * WebProcess/Storage/WebSWContextManagerConnection.h:
-        * WebProcess/Storage/WebSWContextManagerConnection.messages.in:
-        * WebProcess/Storage/WebServiceWorkerFetchTaskClient.cpp:
-        (WebKit::WebServiceWorkerFetchTaskClient::WebServiceWorkerFetchTaskClient):
-        * WebProcess/Storage/WebServiceWorkerFetchTaskClient.h:
-        * WebProcess/Storage/WebToStorageProcessConnection.cpp:
-        (WebKit::WebToStorageProcessConnection::didReceiveMessage):
-        (WebKit::WebToStorageProcessConnection::serviceWorkerConnectionForSession):
-        * WebProcess/Storage/WebToStorageProcessConnection.h:
-
-2017-11-17  John Wilander  <wilander@apple.com>
-
-        Storage Access API: UI process should update network process about granted access
-        https://bugs.webkit.org/show_bug.cgi?id=176943
-        <rdar://problem/34440612>
-
-        Reviewed by Alex Christensen.
-
-        * NetworkProcess/NetworkProcess.cpp:
-        (WebKit::NetworkProcess::updateStorageAccessForPrevalentDomains):
-            Updates storage access on the session.
-        * NetworkProcess/NetworkProcess.h:
-        * NetworkProcess/NetworkProcess.messages.in:
-        * NetworkProcess/NetworkProcessCreationParameters.cpp:
-        (WebKit::NetworkProcessCreationParameters::encode const):
-        (WebKit::NetworkProcessCreationParameters::decode):
-        * NetworkProcess/NetworkProcessCreationParameters.h:
-        * NetworkProcess/cocoa/NetworkProcessCocoa.mm:
-        (WebKit::NetworkProcess::platformInitializeNetworkProcessCocoa):
-        (WebKit::NetworkProcess::setStorageAccessAPIEnabled):
-        * UIProcess/API/C/WKCookieManager.cpp:
-        (WKCookieManagerSetStorageAccessAPIEnabled):
-        * UIProcess/API/C/WKCookieManager.h:
-        * UIProcess/API/C/WKWebsiteDataStoreRef.cpp:
-        (WKWebsiteDataStoreSetStatisticsHasHadNonRecentUserInteraction):
-        * UIProcess/API/C/WKWebsiteDataStoreRef.h:
-        * UIProcess/API/Cocoa/WKProcessPool.mm:
-        (-[WKProcessPool _isStorageAccessAPIEnabled]):
-        (-[WKProcessPool _setStorageAccessAPIEnabled:]):
-        * UIProcess/API/Cocoa/WKProcessPoolPrivate.h:
-        * UIProcess/API/Cocoa/WKWebsiteDataStore.mm:
-        (-[WKWebsiteDataStore _resourceLoadStatisticsSetHasHadNonRecentUserInteractionForHost:]):
-            Test infrastructure.
-        * UIProcess/API/Cocoa/WKWebsiteDataStorePrivate.h:
-        * UIProcess/Cocoa/WebProcessPoolCocoa.mm:
-        (WebKit::WebProcessPool::platformInitializeNetworkProcess):
-        (WebKit::WebProcessPool::setStorageAccessAPIEnabled):
-        * UIProcess/Network/NetworkProcessProxy.cpp:
-        (WebKit::nextRequestStorageAccessContextId):
-        (WebKit::NetworkProcessProxy::updateStorageAccessForPrevalentDomains):
-            Sends a message to the network process to update storage access.
-        (WebKit::NetworkProcessProxy::storageAccessRequestResult):
-            Receives a message from the network process that storage access
-            was updated.
-        * UIProcess/Network/NetworkProcessProxy.h:
-        * UIProcess/Network/NetworkProcessProxy.messages.in:
-        * UIProcess/WebCookieManagerProxy.cpp:
-        (WebKit::WebCookieManagerProxy::setStorageAccessAPIEnabled):
-        * UIProcess/WebCookieManagerProxy.h:
-        * UIProcess/WebProcessPool.h:
-        * UIProcess/WebResourceLoadStatisticsStore.cpp:
-        (WebKit::WebResourceLoadStatisticsStore::WebResourceLoadStatisticsStore):
-        (WebKit::WebResourceLoadStatisticsStore::requestStorageAccess):
-        (WebKit::WebResourceLoadStatisticsStore::logNonRecentUserInteraction):
-            Test infrastructure.
-        (WebKit::WebResourceLoadStatisticsStore::updateCookiePartitioningForDomains):
-            Now makes the API call even if the only operation is to clear first.
-        * UIProcess/WebResourceLoadStatisticsStore.h:
-        * UIProcess/WebsiteData/WebsiteDataStore.cpp:
-        (WebKit::WebsiteDataStore::updateStorageAccessForPrevalentDomainsHandler):
-            Propagates the storage access directive to the network process proxy.
-        (WebKit::WebsiteDataStore::enableResourceLoadStatisticsAndSetTestingCallback):
-        * UIProcess/WebsiteData/WebsiteDataStore.h:
-
-2017-11-16  Yousuke Kimoto  <yousuke.kimoto@sony.com>
-
-        [WinCairo] Add network (curl) files for wincairo webkit
-        https://bugs.webkit.org/show_bug.cgi?id=179474
-
-        Reviewed by Alex Christensen.
-
-        * Shared/curl/WebCoreArgumentCodersCurl.cpp:
-        (IPC::ArgumentCoder<CertificateInfo>::decode): Fidex return value since currently no operation is needed for wincairo webkit.
-        (IPC::ArgumentCoder<ResourceError>::decodePlatformData): Fidex return value since currently no operation is needed for wincairo webkit.
-        * WebProcess/WebCoreSupport/curl/WebFrameNetworkingContext.cpp: Renamed from Source/WebKit/WebProcess/WebCoreSupport/win/WebFrameNetworkingContext.cpp.
-        (WebKit::WebFrameNetworkingContext::ensureWebsiteDataStoreSession):
-        * WebProcess/WebCoreSupport/curl/WebFrameNetworkingContext.h: Renamed from Source/WebKit/WebProcess/WebCoreSupport/win/WebFrameNetworkingContext.h.
-
-2017-11-16  Don Olmstead  <don.olmstead@sony.com>
-
-        [WinCairo] Update WinCairoRequirements
-        https://bugs.webkit.org/show_bug.cgi?id=179790
-
-        Reviewed by Alex Christensen.
-
-        * PlatformWin.cmake:
-
-2017-11-16  Youenn Fablet  <youenn@apple.com>
-
-        Service Worker should get the body of intercepted requests
-        https://bugs.webkit.org/show_bug.cgi?id=179776
-
-        Reviewed by Alex Christensen.
-
-        Pass a FormDataReference when starting fetch IPC.
-        Convert this FormDataReference in a FormData and using it to set the FetchRequest body properly in Service Worker process.
-        Forbid fetch interception when URL is not HTTP/HTTPS.
-
-        * Platform/IPC/FormDataReference.h:
-        (IPC::FormDataReference::FormDataReference):
-        (IPC::FormDataReference::takeData):
-        (IPC::FormDataReference::encode const):
-        (IPC::FormDataReference::decode):
-        * StorageProcess/ServiceWorker/WebSWServerConnection.cpp:
-        (WebKit::WebSWServerConnection::startFetch):
-        * StorageProcess/ServiceWorker/WebSWServerConnection.h:
-        * StorageProcess/ServiceWorker/WebSWServerConnection.messages.in:
-        * WebProcess/Storage/WebSWClientConnection.cpp:
-        (WebKit::WebSWClientConnection::startFetch):
-        * WebProcess/Storage/WebSWContextManagerConnection.cpp:
-        (WebKit::WebSWContextManagerConnection::startFetch):
-        * WebProcess/Storage/WebSWContextManagerConnection.h:
-        * WebProcess/Storage/WebSWContextManagerConnection.messages.in:
-        * WebProcess/Storage/WebServiceWorkerProvider.cpp:
-        (WebKit::WebServiceWorkerProvider::handleFetch):
-
-2017-11-16  Daniel Bates  <dabates@apple.com>
-
-        Add feature define for alternative presentation button element
-        https://bugs.webkit.org/show_bug.cgi?id=179692
-        Part of <rdar://problem/34917108>
-
-        Reviewed by Andy Estes.
-
-        Only enabled on Cocoa platforms by default.
-
-        * Configurations/FeatureDefines.xcconfig:
-
-2017-11-16  Chris Dumez  <cdumez@apple.com>
-
-        [Service Worker] Implement "Try Clear Registration" algorithm
-        https://bugs.webkit.org/show_bug.cgi?id=179791
-
-        Reviewed by Youenn Fablet.
-
-        * StorageProcess/ServiceWorker/WebSWServerConnection.messages.in:
-        * WebProcess/Storage/WebSWClientConnection.cpp:
-        (WebKit::WebSWClientConnection::serviceWorkerStartedControllingClient):
-        (WebKit::WebSWClientConnection::serviceWorkerStoppedControllingClient):
-        * WebProcess/Storage/WebSWClientConnection.h:
-
-2017-11-16  Michael Catanzaro  <mcatanzaro@igalia.com>
-
-        REGRESSION(r224179): layer flush now requires sync IPC to compute undo/redo availability in EditorState
-        https://bugs.webkit.org/show_bug.cgi?id=179797
-
-        Reviewed by Simon Fraser.
-
-        r224179 introduced a performance regression. The newly-added code in WebPage::editorState is
-        part of a performance-critical path. (The editor state is computed and sent to the UI
-        process during the layer flush.) Calls to Editor::canUndo and Editor::canRedo were added,
-        but these calls are both implemented with sync IPC calls to WebPageProxy in the UI process.
-        WebPageProxy passes them along to PageClientImpl to compute the availability of the
-        commands.
-
-        That's all pointless because this code only exists for the purpose of getting editing
-        command availability to the UI process. In the case of undo and redo, it's not needed at
-        all. I did not realize that when writing the code. So canUndo and canRedo should be removed
-        from EditorState. This ought to be sufficient to avoid the perf regression.
-
-        No changes are needed to the GTK/WPE WebKitEditorState API. The API is reimplemented using
-        WebPageProxy::canUndoRedo instead of EditorState. There should be no changes in behavior,
-        only performance.
-
-        * Shared/EditorState.cpp:
-        (WebKit::EditorState::PostLayoutData::encode const):
-        (WebKit::EditorState::PostLayoutData::decode):
-        * Shared/EditorState.h:
-        * UIProcess/API/glib/WebKitEditorState.cpp:
-        (webkitEditorStateCreate):
-        (webkitEditorStateChanged):
-        * UIProcess/API/glib/WebKitEditorStatePrivate.h:
-        * UIProcess/API/glib/WebKitWebView.cpp:
-        (webkit_web_view_get_editor_state):
-        * UIProcess/WebPageProxy.cpp:
-        (WebKit::WebPageProxy::canUndo):
-        (WebKit::WebPageProxy::canRedo):
-        * UIProcess/WebPageProxy.h:
-        * WebProcess/WebPage/WebPage.cpp:
-        (WebKit::WebPage::editorState const):
-
-2017-11-16  Megan Gardner  <megan_gardner@apple.com>
-
-        Remove allowBlockSelection as block selection is not supported anymore
-        https://bugs.webkit.org/show_bug.cgi?id=179738
-
-        Reviewed by Tim Horton.
-
-        Remove all instances of the alloweBlockSelection flag. Blocks selection is fully disabled
-        and thus this flag will do nothing. This was only added as a debug measure last year, and nothing
-        ever actually used it.
-
-        * Shared/WebPageCreationParameters.cpp:
-        (WebKit::WebPageCreationParameters::encode const):
-        (WebKit::WebPageCreationParameters::decode):
-        * Shared/WebPageCreationParameters.h:
-        * UIProcess/API/Cocoa/WKWebView.mm:
-        (-[WKWebView _allowsBlockSelection]): Deleted.
-        * UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
-        (-[WKWebViewConfiguration init]):
-        (-[WKWebViewConfiguration copyWithZone:]):
-        (-[WKWebViewConfiguration _allowsBlockSelection]): Deleted.
-        (-[WKWebViewConfiguration _setAllowsBlockSelection:]): Deleted.
-        * UIProcess/API/Cocoa/WKWebViewConfigurationPrivate.h:
-        * UIProcess/API/Cocoa/WKWebViewInternal.h:
-        * UIProcess/PageClient.h:
-        * UIProcess/WebPageProxy.cpp:
-        (WebKit::WebPageProxy::creationParameters):
-        * UIProcess/ios/PageClientImplIOS.h:
-        * UIProcess/ios/PageClientImplIOS.mm:
-        (WebKit::PageClientImpl::allowsBlockSelection): Deleted.
-        * WebProcess/WebPage/WebPage.cpp:
-        * WebProcess/WebPage/WebPage.h:
-
-2017-11-16  Brent Fulgham  <bfulgham@apple.com>
-
-        Whitelist additional IOKit properties based on customer feedback
-        https://bugs.webkit.org/show_bug.cgi?id=179782
-        <rdar://problem/35508246>
-
-        Reviewed by Dean Jackson.
-
-        Expand the IOKit property whitelist to recognize a few more properties as valid based on review of logs
-        from customer systems and our test infrastructure.
-
-        * WebProcess/com.apple.WebProcess.sb.in:
-
-2017-11-15  Brady Eidson  <beidson@apple.com>
-
-        Implement basics of "Terminate Service Worker" algorithm.
-        https://bugs.webkit.org/show_bug.cgi?id=179551
-
-        Reviewed by Chris Dumez.
-
-        * StorageProcess/ServiceWorker/WebSWServerToContextConnection.cpp:
-        (WebKit::WebSWServerToContextConnection::terminateWorker):
-        * StorageProcess/ServiceWorker/WebSWServerToContextConnection.h:
-        * StorageProcess/ServiceWorker/WebSWServerToContextConnection.messages.in:
-
-        * WebProcess/Storage/WebSWContextManagerConnection.cpp:
-        (WebKit::WebSWContextManagerConnection::terminateWorker):
-        (WebKit::WebSWContextManagerConnection::workerTerminated):
-        * WebProcess/Storage/WebSWContextManagerConnection.h:
-        * WebProcess/Storage/WebSWContextManagerConnection.messages.in:
-
-2017-11-15  Brent Fulgham  <bfulgham@apple.com>
-
-        Remove access to 'com.apple.mediaaccessibility.public' preferences in WebContent sandbox
-        https://bugs.webkit.org/show_bug.cgi?id=179747
-        <rdar://problem/35367346>
-
-        Reviewed by Dean Jackson.
-
-        The 'mediaaccessibilityd' process handles access to MediaAccessibility preferences. We don't need
-        to grant the WebContent Process sandbox access to them.
-
-        * WebProcess/com.apple.WebProcess.sb.in: 
-
-2017-11-15  Alex Christensen  <achristensen@webkit.org>
-
-        Revert r224885
-        https://bugs.webkit.org/show_bug.cgi?id=179719
-
-        * UIProcess/API/APIContentRuleListStore.cpp:
-        (API::compiledToFile):
-        r224885 was a speculative fix that did not fix anything on the bots.
-
-2017-11-15  Brent Fulgham  <bfulgham@apple.com>
-
-        Unreviewed build fix after r224830.
-
-        * WebProcess/com.apple.WebProcess.sb.in: Add missing sysctl-read permissions needed
-        to support testing on Mac Mini hardware.
-
-2017-11-15  Youenn Fablet  <youenn@apple.com>
-
-        Add ServiceWorker to WebProcess plumbery for FormData fetch responses
-        https://bugs.webkit.org/show_bug.cgi?id=179694
-
-        Reviewed by Alex Christensen.
-
-        Added plumbery from Service Worker up to Web Process to pass form data response bodies.
-        A follow-up patch should read the data from Network Process and send it to the ResourceLoader.
-
-        * Platform/IPC/FormDataReference.h: Added.
-        (IPC::FormDataReference::FormDataReference):
-        (IPC::FormDataReference::takeData):
-        (IPC::FormDataReference::encode const):
-        (IPC::FormDataReference::decode):
-        * StorageProcess/ServiceWorker/WebSWServerConnection.cpp:
-        (WebKit::WebSWServerConnection::didReceiveFetchFormData):
-        * StorageProcess/ServiceWorker/WebSWServerConnection.h:
-        * StorageProcess/StorageProcess.cpp:
-        (WebKit::StorageProcess::didReceiveFetchFormData):
-        * StorageProcess/StorageProcess.h:
-        * StorageProcess/StorageProcess.messages.in:
-        * WebKit.xcodeproj/project.pbxproj:
-        * WebProcess/Storage/ServiceWorkerClientFetch.cpp:
-        (WebKit::ServiceWorkerClientFetch::didReceiveFormData):
-        * WebProcess/Storage/ServiceWorkerClientFetch.h:
-        * WebProcess/Storage/ServiceWorkerClientFetch.messages.in:
-        * WebProcess/Storage/WebServiceWorkerFetchTaskClient.cpp:
-        (WebKit::WebServiceWorkerFetchTaskClient::didReceiveFormData):
-        * WebProcess/Storage/WebServiceWorkerFetchTaskClient.h:
-
-2017-11-15  Alex Christensen  <achristensen@webkit.org>
-
-        Move a compiled WKContentRuleList to its destination before calling mmap
-        https://bugs.webkit.org/show_bug.cgi?id=179719
-
-        Reviewed by Brady Eidson.
-
-        Right now we compile a WKContentRuleList to a temporary file, call mmap, close the file, then move it.
-        Sometimes, especially on bots running tests, the move fails because the temporary file doesn't exist
-        any more.  Moving the file before mmaping and closing the file might prevent this failure.
-
-        * UIProcess/API/APIContentRuleListStore.cpp:
-        (API::compiledToFile):
-
-2017-11-15  Chris Dumez  <cdumez@apple.com>
-
-        [Service Workers] Implement Client API
-        https://bugs.webkit.org/show_bug.cgi?id=179709
-
-        Reviewed by Alex Christensen.
-
-        * Shared/WebCoreArgumentCoders.cpp:
-        * Shared/WebCoreArgumentCoders.h:
-        * StorageProcess/ServiceWorker/WebSWServerConnection.cpp:
-        (WebKit::WebSWServerConnection::postMessageToServiceWorkerGlobalScope):
-        * StorageProcess/ServiceWorker/WebSWServerConnection.h:
-        * StorageProcess/ServiceWorker/WebSWServerConnection.messages.in:
-        * WebProcess/Storage/WebSWClientConnection.cpp:
-        (WebKit::WebSWClientConnection::postMessageToServiceWorkerGlobalScope):
-        * WebProcess/Storage/WebSWClientConnection.h:
-        * WebProcess/Storage/WebSWContextManagerConnection.cpp:
-        (WebKit::WebSWContextManagerConnection::postMessageToServiceWorkerGlobalScope):
-        * WebProcess/Storage/WebSWContextManagerConnection.h:
-        * WebProcess/Storage/WebSWContextManagerConnection.messages.in:
-
-2017-11-15  Ryan Haddad  <ryanhaddad@apple.com>
-
-        Unreviewed, rolling out r224863.
-
-        Introduced LayoutTest crashes on iOS Simulator.
-
-        Reverted changeset:
-
-        "Move JSONValues to WTF and convert uses of InspectorValues.h
-        to JSONValues.h"
-        https://bugs.webkit.org/show_bug.cgi?id=173793
-        https://trac.webkit.org/changeset/224863
-
-2017-11-14  Brent Fulgham  <bfulgham@apple.com>
-
-        Remove access to "com.apple.pbs.fetch_services" from WebContent sandbox
-        https://bugs.webkit.org/show_bug.cgi?id=179689
-        <rdar://problem/35369172>
-
-        Reviewed by Per Arne Vollan.
-
-        WebKit's WebContent process should not have any need to interact with the fetch_services
-        API exposed to the system. These interactions (if needed) should be happening in the UIProcess,
-        so we should prevent the untrusted Web Content Process from being able to connect.
-
-        * WebProcess/com.apple.WebProcess.sb.in:
-
-2017-11-15  Michael Catanzaro  <mcatanzaro@igalia.com>
-
-        Remove GTK web inspector images
-        https://bugs.webkit.org/show_bug.cgi?id=179716
-
-        Reviewed by Carlos Garcia Campos.
-
-        * InspectorGResources.cmake:
-
-2017-11-15  Gabriel Ivascu  <givascu@igalia.com>
-
-        [GTK] Automatically adjust font size when gtk-xft-dpi changes
-        https://bugs.webkit.org/show_bug.cgi?id=142673
-
-        Some follow-up fixes for the previous patch.
-
-        Reviewed by Carlos Garcia Campos.
-
-        * UIProcess/API/glib/WebKitSettings.cpp:
-        (webKitSettingsDispose):
-        (webKitSettingsConstructed):
-
-2017-11-14  Nan Wang  <n_wang@apple.com>
-
-        AX: AOM: Implement AccessibleNode class and support label and role attributes
-        https://bugs.webkit.org/show_bug.cgi?id=179494
-
-        Reviewed by Ryosuke Niwa.
-
-        * Shared/WebPreferences.yaml:
-        * UIProcess/API/C/WKPreferences.cpp:
-        (WKPreferencesSetAccessibilityObjectModelEnabled):
-        (WKPreferencesGetAccessibilityObjectModelEnabled):
-        * UIProcess/API/C/WKPreferencesRefPrivate.h:
-
-2017-11-14  Carlos Garcia Campos  <cgarcia@igalia.com>
-
-        Move JSONValues to WTF and convert uses of InspectorValues.h to JSONValues.h
-        https://bugs.webkit.org/show_bug.cgi?id=173793
-
-        Reviewed by Brian Burg.
-
-        Based on patch by Brian Burg.
-
-        * UIProcess/Automation/WebAutomationSession.cpp:
-        (WebKit::WebAutomationSession::resizeWindowOfBrowsingContext):
-        (WebKit::WebAutomationSession::moveWindowOfBrowsingContext):
-        (WebKit::WebAutomationSession::waitForNavigationToCompleteOnPage):
-        (WebKit::WebAutomationSession::waitForNavigationToCompleteOnFrame):
-        (WebKit::WebAutomationSession::respondToPendingPageNavigationCallbacksWithTimeout):
-        (WebKit::WebAutomationSession::respondToPendingFrameNavigationCallbacksWithTimeout):
-        (WebKit::WebAutomationSession::navigationOccurredForFrame):
-        (WebKit::WebAutomationSession::documentLoadedForFrame):
-        (WebKit::WebAutomationSession::inspectorFrontendLoaded):
-        (WebKit::WebAutomationSession::keyboardEventsFlushedForPage):
-        (WebKit::WebAutomationSession::evaluateJavaScriptFunction):
-        (WebKit::WebAutomationSession::setFilesToSelectForFileUpload):
-        (WebKit::WebAutomationSession::addSingleCookie):
-        (WebKit::WebAutomationSession::setSessionPermissions):
-        (WebKit::WebAutomationSession::performMouseInteraction):
-        (WebKit::WebAutomationSession::performKeyboardInteractions):
-        * UIProcess/Automation/WebAutomationSession.h:
-
-2017-11-14  Chris Dumez  <cdumez@apple.com>
-
-        [Service Workers] Implement container.getRegistrations()
-        https://bugs.webkit.org/show_bug.cgi?id=179672
-
-        Reviewed by Brady Eidson.
-
-        * StorageProcess/ServiceWorker/WebSWServerConnection.cpp:
-        (WebKit::WebSWServerConnection::getRegistrations):
-        * StorageProcess/ServiceWorker/WebSWServerConnection.h:
-        * StorageProcess/ServiceWorker/WebSWServerConnection.messages.in:
-        * WebProcess/Storage/WebSWClientConnection.cpp:
-        (WebKit::WebSWClientConnection::didGetRegistrations):
-        (WebKit::WebSWClientConnection::getRegistrations):
-        * WebProcess/Storage/WebSWClientConnection.h:
-        * WebProcess/Storage/WebSWClientConnection.messages.in:
-
-2017-11-14  Youenn Fablet  <youenn@apple.com>
-
-        Implement ServiceWorker handle fetch for navigation loads
-        https://bugs.webkit.org/show_bug.cgi?id=179404
-
-        Reviewed by Alex Christensen and Chris Dumez.
-
-        Update handle fetch algorithm to support navigation requests.
-        In case of navigation requests, set service worker response mime type to text/html if none is provided.
-
-        * WebProcess/Storage/ServiceWorkerClientFetch.cpp:
-        (WebKit::ServiceWorkerClientFetch::didReceiveResponse):
-        * WebProcess/Storage/WebSWClientConnection.cpp:
-        (WebKit::WebSWClientConnection::startFetch):
-        * WebProcess/Storage/WebServiceWorkerProvider.cpp:
-        (WebKit::shouldHandleFetch):
-        (WebKit::WebServiceWorkerProvider::handleFetch):
-
-2017-11-14  Alex Christensen  <achristensen@webkit.org>
-
-        Remove Cocoa CFURLConnection loading code
-        https://bugs.webkit.org/show_bug.cgi?id=179688
-
-        Reviewed by Antti Koivisto.
-
-        * NetworkProcess/Downloads/Download.h:
-
-2017-11-14  Daniel Bates  <dabates@apple.com>
-
-        Update comment in FeatureDefines.xcconfig to reflect location of Visual Studio property files
-        for feature defines
-
-        Following r195498 and r201917 the Visual Studio property files for feature defines have
-        moved from directory WebKitLibraries/win/tools/vsprops to directory Source/cmake/tools/vsprops.
-        Update the comment in FeatureDefines.xcconfig to reflect the new location and names of these
-        files.
-
-        * Configurations/FeatureDefines.xcconfig:
-
-2017-11-14  Brent Fulgham  <bfulgham@apple.com>
-
-        Whitelist some IOKIt properties to avoid sandbox violations on YouTube
-        https://bugs.webkit.org/show_bug.cgi?id=179683
-        <rdar://problem/35415368>
-
-        Reviewed by Dean Jackson.
-
-        YouTube video playback on some hardware (and some video encodings) generates sandbox violations. Add
-        whitelist entries for the relevant IOKit properties needed to support these activities.
-
-        * WebProcess/com.apple.WebProcess.sb.in:
-
-2017-11-14  Daniel Bates  <dabates@apple.com>
-
-        Mark WebChromeClient::requestStorageAccess() as final
-        https://bugs.webkit.org/show_bug.cgi?id=179673
-
-        Reviewed by Sam Weinig.
-
-        Mark WebChromeClient::requestStorageAccess() as final so that it overrides the virtual function
-        in ChromeClient with the same name and hence we actually call it through a ChromeClient pointer.
-
-        * WebProcess/WebCoreSupport/WebChromeClient.h:
-
-2017-11-14  Youenn Fablet  <youenn@apple.com>
-
-        WebSWClientConnection should do IPC to StorageProcess if its WebSWOriginTable is not yet initialized
-        https://bugs.webkit.org/show_bug.cgi?id=179668
-
-        Reviewed by Chris Dumez.
-
-        There may be cases where the origin table is not initialized and we would think there is no service worker registration.
-        In such a case, we should go to the StorageProcess.
-        StorageProcess is now sending an IPC message back to each registered SW connection so that WebProcess will know whether its map
-        is correctly initialized or not.
-
-        Renaming hasServiceWorkerRegisteredForOrigin in mayHaveServiceWorkerRegisteredForOrigin.
-
-        * WebProcess/Storage/WebSWClientConnection.cpp:
-        (WebKit::WebSWClientConnection::mayHaveServiceWorkerRegisteredForOrigin const):
-        (WebKit::WebSWClientConnection::matchRegistration):
-        (WebKit::WebSWClientConnection::hasServiceWorkerRegisteredForOrigin const): Deleted.
-        * WebProcess/Storage/WebSWClientConnection.h:
-        * WebProcess/Storage/WebSWOriginTable.h:
-        (WebKit::WebSWOriginTable::isInitialized const):
-        * WebProcess/Storage/WebServiceWorkerProvider.cpp:
-        (WebKit::shouldHandleFetch):
-
-2017-11-14  Brent Fulgham  <bfulgham@apple.com>
-
-        Consolidate sysctl-read rules in WebProcess sandbox
-        https://bugs.webkit.org/show_bug.cgi?id=179674
-        <rdar://problem/35367154>
-
-        Reviewed by Dean Jackson.
-
-        Consolidate the various calls to 'allow sysctl-read' imported during Bug 179548 into
-        the main function in the sandbox profile.
-
-        Remove the statement to grant global sysctl-read permissions that was copied into this
-        sandbox profile in an earlier checkin. We started blocking the blanket read permissions in
-        macOS 10.13, and want to continue to do so.
-        
-        The earlier "grant global read access" in 'system.sb' apparently allowed some sysctl reads
-        to occur before we hit the block declaration in the WebContent sandbox. Now that we are
-        consistently blocking systcl reads from the start, we need to add whitelist entries for a
-        few more entries to avoid creating new sandbox violations.
-
-        * WebProcess/com.apple.WebProcess.sb.in:
-
-2017-11-14  Alex Christensen  <achristensen@webkit.org>
-
-        Remove WebKit CFURLConnection code
-        https://bugs.webkit.org/show_bug.cgi?id=179645
-
-        Reviewed by Alexey Proskuryakov.
-
-        The CFURLConnection code is Windows-specific now. Nobody can use it in modern WebKit.
-
-        * NetworkProcess/Downloads/Download.h:
-        * NetworkProcess/Downloads/mac/DownloadMac.mm:
-        * NetworkProcess/NetworkLoad.h:
-        * NetworkProcess/cocoa/NetworkDataTaskCocoa.mm:
-        (WebKit::serverTrustCredential):
-        * NetworkProcess/mac/NetworkLoadMac.mm:
-        * Shared/Authentication/AuthenticationManager.cpp:
-        (WebKit::AuthenticationManager::useCredentialForSingleChallenge):
-        (WebKit::AuthenticationManager::continueWithoutCredentialForSingleChallenge):
-        (WebKit::AuthenticationManager::cancelSingleChallenge):
-        (WebKit::AuthenticationManager::performDefaultHandlingForSingleChallenge):
-        (WebKit::AuthenticationManager::rejectProtectionSpaceAndContinueForSingleChallenge):
-        * Shared/Authentication/cocoa/AuthenticationManagerCocoa.mm:
-        * Shared/Authentication/mac/AuthenticationManager.mac.mm:
-        (WebKit::AuthenticationManager::tryUseCertificateInfoForChallenge):
-        * Shared/WebProcessCreationParameters.cpp:
-        (WebKit::WebProcessCreationParameters::encode const):
-        (WebKit::WebProcessCreationParameters::decode):
-        * Shared/WebProcessCreationParameters.h:
-        * Shared/mac/WebCoreArgumentCodersMac.mm:
-        (IPC::ArgumentCoder<ResourceRequest>::encodePlatformData):
-        (IPC::ArgumentCoder<ResourceRequest>::decodePlatformData):
-        * config.h:
-
-2017-11-14  Alex Christensen  <achristensen@webkit.org>
-
-        Remove assertions added in r224791
-        https://bugs.webkit.org/show_bug.cgi?id=178751#c10
-
-        * NetworkProcess/mac/RemoteNetworkingContext.mm:
-        (WebKit::RemoteNetworkingContext::ensureWebsiteDataStoreSession):
-        * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
-        (WebKit::WebFrameNetworkingContext::ensureWebsiteDataStoreSession):
-        I had added assertions that sandbox extension handle consumption succeeds.
-        In the API test IndexedDB.StructuredCloneBackwardCompatibility we get a sandbox extension handle
-        to give access to a directory that does not exist and consumption fails.  We want it to fail,
-        so my optimistic addition of a success assertion was incorrect.  The test passes without it
-        and behaves like it used to.
-
-2017-11-14  Tim Horton  <timothy_horton@apple.com>
-
-        Don't use -[NSString stringWithFormat:] to build defaults keys
-        https://bugs.webkit.org/show_bug.cgi?id=179680
-
-        Reviewed by Simon Fraser.
-
-        * UIProcess/mac/WebPreferencesMac.mm:
-        (WebKit::makeKey):
-        (WebKit::debugUserDefaultsValue):
-        Use string concatenation instead of stringWithFormat to build
-        preference keys. This wasn't a huge cost, but it shaves a few milliseconds
-        off process launch.
-
-2017-11-14  Alex Christensen  <achristensen@webkit.org>
-
-        Clean up old URL parser remnants
-        https://bugs.webkit.org/show_bug.cgi?id=179573
-
-        Reviewed by Darin Adler.
-
-        * WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
-        (WebKit::WebContextMenuClient::searchWithGoogle):
-        Use https if we do end up searching with google.
-
-2017-11-14  Antti Koivisto  <antti@apple.com>
-
-        Enable display:contents by default
-        https://bugs.webkit.org/show_bug.cgi?id=179655
-
-        Reviewed by Sam Weinig.
-
-        * Shared/WebPreferences.yaml:
-
-        Make non-experimental and enabled.
-
-2017-11-10  Brent Fulgham  <bfulgham@apple.com>
-
-        Consolidate mach-lookup calls in WebProcess sandbox
-        https://bugs.webkit.org/show_bug.cgi?id=179650
-        <rdar://problem/35367154>
-
-        Reviewed by Dean Jackson.
-
-        Consolidate the various calls to 'allow mach-lookup' imported during Bug 179548 into the main
-        function in the sandbox profile. Remove some entries that are not needed by WebKit.
-
-        Remove the statement to grant global permission to perform mach-lookup for any xpc
-        service name that was copied into this sandbox profile in Bug 179548. We started blocking
-        this in macOS 10.13 and want to continue to do so.
-        
-        The earlier "grant global permission" in 'system.sb' apparently allowed some xpc lookups to occur
-        before we hit the block declaration in the WebContent sandbox. Now that we are consistently blocking
-        mach lookups we need to add whitelist entries for a few more services to avoid creating new
-        sandbox violations.
-
-        * WebProcess/com.apple.WebProcess.sb.in:
-
-2017-11-14  Tim Horton  <timothy_horton@apple.com>
-
-        Long pressing a phone number with spaces in it results in a link sheet instead of a data detectors sheet
-        https://bugs.webkit.org/show_bug.cgi?id=179646
-        <rdar://problem/35337288>
-
-        Reviewed by Simon Fraser.
-
-        * UIProcess/ios/WKActionSheetAssistant.mm:
-        (-[WKActionSheetAssistant showImageSheet]):
-        (-[WKActionSheetAssistant showLinkSheet]):
-        (-[WKActionSheetAssistant showDataDetectorsSheet]):
-        * UIProcess/ios/WKContentViewInteraction.mm:
-        (-[WKContentView _actionForLongPressFromPositionInformation:]):
-        (-[WKContentView _interactionShouldBeginFromPreviewItemController:forPosition:]):
-        Make use of canBePresentedByDataDetectors with our WebCore URL instead
-        of (sometimes unsucessfully) reparsing the URL with NSURL's parser.
-        Also, avoid a few unnecessary round-trips through String when converting
-        from URL to NSURL.
-
-2017-11-14  Brent Fulgham  <bfulgham@apple.com>
-
-        REGRESSION(r224799): WebKit crashes on Sierra due to sandbox violation
-        https://bugs.webkit.org/show_bug.cgi?id=179656
-        
-        Unreviewed build fix.
-
-        * WebProcess/com.apple.WebProcess.sb.in: Switch to Dan's recommended version check.
-
-2017-11-13  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Give a ServiceWorker WebContentProcess a different display name
-        https://bugs.webkit.org/show_bug.cgi?id=179653
-
-        Reviewed by Brady Eidson.
-
-        * UIProcess/WebProcessProxy.h:
-        * UIProcess/WebProcessProxy.cpp:
-        (WebKit::WebProcessProxy::create):
-        Call connect after construction so virtual methods will use subclass implementations.
-
-        * UIProcess/ServiceWorkerProcessProxy.h:
-        * UIProcess/ServiceWorkerProcessProxy.cpp:
-        (WebKit::ServiceWorkerProcessProxy::create):
-        Copy the pattern from WebProcessProxy to ensure connect() gets called after construction.
-
-        (WebKit::ServiceWorkerProcessProxy::getLaunchOptions):
-        Set a launch option to signal this is a Service Worker process.
-
-        * Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.mm:
-        (WebKit::XPCServiceInitializerDelegate::getExtraInitializationData):
-        * WebProcess/cocoa/WebProcessCocoa.mm:
-        (WebKit::WebProcess::initializeProcessName):
-        Consume the launch option to configuration the process name.
-
-2017-11-13  Ryosuke Niwa  <rniwa@webkit.org>
-
-        REGRESSION(r224799): WebKit crashes at launch on macOS Sierra due to a sandbox violation
-        https://bugs.webkit.org/show_bug.cgi?id=179656
-
-        Unreviewed. Revert r224799 on macOS Sierra.
-
-        * WebProcess/com.apple.WebProcess.sb.in:
-
-2017-11-13  Chris Dumez  <cdumez@apple.com>
-
-        Send ServiceWorkerData structs to the WebProcesses instead of ServiceWorkerIdentifiers
-        https://bugs.webkit.org/show_bug.cgi?id=179649
-
-        Reviewed by Brady Eidson.
-
-        * Shared/WebCoreArgumentCoders.h:
-        * StorageProcess/ServiceWorker/WebSWServerConnection.cpp:
-        (WebKit::WebSWServerConnection::updateRegistrationStateInClient):
-        (WebKit::WebSWServerConnection::postMessageToServiceWorkerClient):
-        * StorageProcess/ServiceWorker/WebSWServerConnection.h:
-        * WebProcess/Storage/WebSWClientConnection.cpp:
-        (WebKit::WebSWClientConnection::postMessageToServiceWorkerClient):
-        * WebProcess/Storage/WebSWClientConnection.h:
-        * WebProcess/Storage/WebSWClientConnection.messages.in:
-
-2017-11-13  Brady Eidson  <beidson@apple.com>
-
-        Massive "Server-process-to-context-process" connection overhaul.
-        https://bugs.webkit.org/show_bug.cgi?id=179554
-
-        Reviewed by Chris Dumez.
-
-        * DerivedSources.make:
-        * WebKit.xcodeproj/project.pbxproj:
-
-        * Shared/WebCoreArgumentCoders.h:
-
-        * StorageProcess/ServiceWorker/WebSWServerConnection.cpp:
-        (WebKit::WebSWServerConnection::sendToContextProcess):
-        (WebKit::WebSWServerConnection::installServiceWorkerContext): Deleted.
-        (WebKit::WebSWServerConnection::fireInstallEvent): Deleted.
-        (WebKit::WebSWServerConnection::fireActivateEvent): Deleted.
-        (WebKit::WebSWServerConnection::setContextConnection): Deleted.
-        * StorageProcess/ServiceWorker/WebSWServerConnection.h:
-
-        * StorageProcess/ServiceWorker/WebSWServerToContextConnection.cpp: Copied from Source/WebCore/workers/service/server/SWServerWorker.cpp.
-        (WebKit::WebSWServerToContextConnection::WebSWServerToContextConnection):
-        (WebKit::WebSWServerToContextConnection::messageSenderConnection):
-        (WebKit::WebSWServerToContextConnection::messageSenderDestinationID):
-        (WebKit::WebSWServerToContextConnection::connectionClosed):
-        (WebKit::WebSWServerToContextConnection::installServiceWorkerContext):
-        (WebKit::WebSWServerToContextConnection::fireInstallEvent):
-        (WebKit::WebSWServerToContextConnection::fireActivateEvent):
-        * StorageProcess/ServiceWorker/WebSWServerToContextConnection.h: Copied from Source/WebCore/workers/service/ServiceWorkerTypes.h.
-        (WebKit::WebSWServerToContextConnection::create):
-        (WebKit::WebSWServerToContextConnection::ipcConnection const):
-        * StorageProcess/ServiceWorker/WebSWServerToContextConnection.messages.in: Copied from Source/WebKit/WebProcess/Storage/WebSWContextManagerConnection.messages.in.
-
-        * StorageProcess/StorageProcess.cpp:
-        (WebKit::StorageProcess::didClose):
-        (WebKit::StorageProcess::didReceiveMessage):
-        (WebKit::StorageProcess::globalServerToContextConnection):
-        (WebKit::StorageProcess::createServerToContextConnection):
-        (WebKit::StorageProcess::didGetWorkerContextProcessConnection):
-        (WebKit::StorageProcess::workerContextProcessConnection): Deleted.
-        (WebKit::StorageProcess::createWorkerContextProcessConnection): Deleted.
-        (WebKit::StorageProcess::serviceWorkerContextFailedToStart): Deleted.
-        (WebKit::StorageProcess::serviceWorkerContextStarted): Deleted.
-        (WebKit::StorageProcess::didFinishServiceWorkerInstall): Deleted.
-        (WebKit::StorageProcess::didFinishServiceWorkerActivation): Deleted.
-        (WebKit::StorageProcess::setServiceWorkerHasPendingEvents): Deleted.
-        * StorageProcess/StorageProcess.h:
-        * StorageProcess/StorageProcess.messages.in:
-
-        * StorageProcess/StorageToWebProcessConnection.cpp:
-        (WebKit::StorageToWebProcessConnection::didReceiveMessage):
-        (WebKit::StorageToWebProcessConnection::establishSWServerConnection):
-        (WebKit::StorageToWebProcessConnection::workerContextProcessConnectionCreated):
-
-        * WebProcess/Storage/WebSWContextManagerConnection.cpp:
-        (WebKit::WebSWContextManagerConnection::installServiceWorker):
-        (WebKit::WebSWContextManagerConnection::serviceWorkerStartedWithMessage):
-        (WebKit::WebSWContextManagerConnection::fireInstallEvent):
-        (WebKit::WebSWContextManagerConnection::fireActivateEvent):
-        (WebKit::WebSWContextManagerConnection::didFinishInstall):
-        (WebKit::WebSWContextManagerConnection::didFinishActivation):
-        (WebKit::WebSWContextManagerConnection::setServiceWorkerHasPendingEvents):
-        * WebProcess/Storage/WebSWContextManagerConnection.h:
-        * WebProcess/Storage/WebSWContextManagerConnection.messages.in:
-
-2017-11-13  Brent Fulgham  <bfulgham@apple.com>
-
-        WebContent sandbox should not include 'system.sb'
-        https://bugs.webkit.org/show_bug.cgi?id=179548
-        <rdar://problem/35367154>
-
-        Reviewed by Darin Adler.
-
-        Stop including 'system.sb', and just include the portions of that sandbox that we
-        actually use in WebContent Process. This is the first step in some further sandbox
-        tightening.
-
-        * WebProcess/com.apple.WebProcess.sb.in:
-
-2017-11-13  Simon Fraser  <simon.fraser@apple.com>
-
-        When navigating back to a page, compositing layers may not use accelerated drawing
-        https://bugs.webkit.org/show_bug.cgi?id=178749
-        rdar://problem/35158946
-
-        Reviewed by Dean Jackson.
-
-        Avoid assertions when a test enables accelerated drawing (which we can't support
-        in the iOS simulator).
-
-        * Shared/RemoteLayerTree/RemoteLayerBackingStore.mm:
-        (WebKit::RemoteLayerBackingStore::ensureBackingStore):
-
-2017-11-13  Youenn Fablet  <youenn@apple.com>
-
-        matchRegistration does not need to go to StorageProcess if no service worker is registered
-        https://bugs.webkit.org/show_bug.cgi?id=179480
-
-        Reviewed by Chris Dumez.
-
-        Removed origin store handling from StorageProcess since it is now handled within SWServer.
-        Updated clearing of web site data accordingly.
-        Optimized matchRegistration by looking at the origin store before doing any IPC.
-        Do IPC to the StorageProcess if the origin store is not yet initialized on the WebProcess.
-
-        * StorageProcess/ServiceWorker/WebSWOriginStore.h:
-        * StorageProcess/ServiceWorker/WebSWServerConnection.cpp:
-        (WebKit::WebSWServerConnection::resolveRegistrationJobInClient):
-        (WebKit::WebSWServerConnection::resolveUnregistrationJobInClient):
-        * StorageProcess/StorageProcess.cpp:
-        (WebKit::StorageProcess::deleteWebsiteData):
-        (WebKit::StorageProcess::deleteWebsiteDataForOrigins):
-        (WebKit::StorageProcess::swServerForSession):
-        (WebKit::StorageProcess::swOriginStoreForSession):
-        (WebKit::StorageProcess::registerSWServerConnection):
-        (WebKit::StorageProcess::unregisterSWServerConnection):
-        (WebKit::StorageProcess::ensureSWOriginStoreForSession): Deleted.
-        (WebKit::StorageProcess::swOriginStoreForSession const): Deleted.
-        * StorageProcess/StorageProcess.h:
-        * StorageProcess/ServiceWorker/WebSWOriginStore.cpp:
-        (WebKit::WebSWOriginStore::addToStore):
-        (WebKit::WebSWOriginStore::removeFromStore):
-        (WebKit::WebSWOriginStore::clearStore):
-        (WebKit::WebSWOriginStore::add): Deleted.
-        (WebKit::WebSWOriginStore::remove): Deleted.
-        (WebKit::WebSWOriginStore::clear): Deleted.
-        * StorageProcess/ServiceWorker/WebSWOriginStore.h:
-        * WebProcess/Storage/WebSWClientConnection.cpp:
-        (WebKit::WebSWClientConnection::matchRegistration):
-
-2017-11-13  Alex Christensen  <achristensen@webkit.org>
-
-        Merge NetworkProcess::EnsurePrivateBrowsingSession and NetworkProcess::AddWebsiteDataStore into one message type
-        https://bugs.webkit.org/show_bug.cgi?id=178751
-
-        Reviewed by Brady Eidson.
-
-        * NetworkProcess/NetworkConnectionToWebProcess.cpp:
-        (WebKit::NetworkConnectionToWebProcess::ensureLegacyPrivateBrowsingSession):
-        * NetworkProcess/NetworkProcess.cpp:
-        (WebKit::NetworkProcess::initializeNetworkProcess):
-        (WebKit::NetworkProcess::ensurePrivateBrowsingSession): Deleted.
-        * NetworkProcess/NetworkProcess.h:
-        * NetworkProcess/NetworkProcess.messages.in:
-        * NetworkProcess/RemoteNetworkingContext.h:
-        * NetworkProcess/mac/RemoteNetworkingContext.mm:
-        (WebKit::RemoteNetworkingContext::ensureWebsiteDataStoreSession):
-        (WebKit::RemoteNetworkingContext::ensurePrivateBrowsingSession): Deleted.
-        * Shared/WebsiteDataStoreParameters.cpp:
-        (WebKit::WebsiteDataStoreParameters::legacyPrivateSessionParameters):
-        * Shared/WebsiteDataStoreParameters.h:
-        * UIProcess/WebProcessPool.cpp:
-        (WebKit::WebProcessPool::setAnyPageGroupMightHavePrivateBrowsingEnabled):
-        (WebKit::WebProcessPool::createNewWebProcess):
-        (WebKit::WebProcessPool::pageAddedToProcess):
-        * WebProcess/InjectedBundle/InjectedBundle.cpp:
-        (WebKit::InjectedBundle::setPrivateBrowsingEnabled):
-        * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.h:
-        * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
-        (WebKit::WebFrameNetworkingContext::ensureWebsiteDataStoreSession):
-        (WebKit::WebFrameNetworkingContext::ensurePrivateBrowsingSession): Deleted.
-        * WebProcess/WebPage/WebPage.cpp:
-        (WebKit::WebPage::setSessionID):
-        * WebProcess/WebProcess.cpp:
-        (WebKit::WebProcess::ensurePrivateBrowsingSession): Deleted.
-        * WebProcess/WebProcess.h:
-        * WebProcess/WebProcess.messages.in:
-
-2017-11-13  Alex Christensen  <achristensen@webkit.org>
-
-        Add logs to debug content extension test failures
-        https://bugs.webkit.org/show_bug.cgi?id=179624
-
-        Reviewed by Chris Dumez.
-
-        * UIProcess/API/APIContentRuleListStore.cpp:
-        (API::compiledToFile):
-        Right now I'm seeing this log:
-        "Rule list compilation failed: Unspecified error during compile."
-        I need more information to debug what is failing on the bots.
-
-2017-11-07  Brian Burg  <bburg@apple.com>
-
-        Web Automation: inViewCenterPoint should not include topContentInset when computed in viewport coordinates
-        https://bugs.webkit.org/show_bug.cgi?id=179129
-        <rdar://problem/35297038>
-
-        Reviewed by Simon Fraser.
-
-        When computing the in view center point per W3C specification, the top content inset
-        is inadvertently added back in when converting to the root view coordinate system.
-
-        This patch reworks the protocol command so that it explicitly requests a coordinate
-        system, with options for "Page" (root / contents), "LayoutViewport", and "VisualViewport".
-        The latter is not implemented in this patch, since it is intended for use on iOS someday.
-
-        * UIProcess/Automation/Automation.json:
-        Change usesViewport to CoordinateSystem.
-        Add a new coordinate system enum type and use it.
-        Fix relevant comments for Automation.computElementLayout.
-
-        * UIProcess/Automation/WebAutomationSession.h:
-        * UIProcess/Automation/WebAutomationSession.cpp:
-        (WebKit::protocolStringToCoordinateSystem):
-        (WebKit::WebAutomationSession::computeElementLayout):
-        Parse the requested coordinate system and send it in the message to the web process.
-
-        * WebKit.xcodeproj/project.pbxproj:
-        * WebProcess/Automation/WebAutomationSessionProxy.messages.in:
-        * WebProcess/Automation/WebAutomationSessionProxy.h:
-        * WebProcess/Automation/WebAutomationSessionProxy.cpp:
-        (WebKit::WebAutomationSessionProxy::computeElementLayout):
-        Rework the implementation. Get the element bounds and in-view center point in
-        client coordinates and convert back to root view coordinates for CoordinateSystem::Page.
-
-2017-11-08  Keith Miller  <keith_miller@apple.com>
-
-        Async iteration should only fetch the next method once and add feature flag
-        https://bugs.webkit.org/show_bug.cgi?id=179451
-
-        Reviewed by Geoffrey Garen.
-
-        Add feature flag for Async iteration.
-
-        * Configurations/FeatureDefines.xcconfig:
-
-2017-11-13  Mark Lam  <mark.lam@apple.com>
-
-        Add more overflow check book-keeping for MarkedArgumentBuffer.
-        https://bugs.webkit.org/show_bug.cgi?id=179634
-        <rdar://problem/35492517>
-
-        Reviewed by Saam Barati.
-
-        * WebProcess/Plugins/Netscape/NPJSObject.cpp:
-        (WebKit::NPJSObject::construct):
-        (WebKit::NPJSObject::invoke):
-
-2017-11-13  Timothy Horton  <timothy_horton@apple.com>
-
-        Address some post-landing review comments from r224728
-        https://bugs.webkit.org/show_bug.cgi?id=179576
-
-        * Platform/IPC/mac/MachMessage.h:
-        (IPC::MachMessage::setMessageReceiverName):
-        (IPC::MachMessage::setMessageName):
-        More moving!
-
-2017-11-13  Tim Horton  <timothy_horton@apple.com>
-
-        Occasional MobileSafari crash under -[WKPDFView web_setMinimumSize:]
-        https://bugs.webkit.org/show_bug.cgi?id=179628
-        <rdar://problem/34773037>
-
-        Reviewed by Simon Fraser.
-
-        * UIProcess/ios/WKPDFView.mm:
-        (-[WKPDFView _computePageAndDocumentFrames]):
-        Similar to r223444, avoid propagating null CGRects into the view hierarchy.
-        In this case, the null rect comes from applying margins to a rect that is 
-        smaller than the margins. We could check for that specifically, but a
-        more-general check for a null rect seems reasonable.
-
-2017-11-13  Tim Horton  <timothy_horton@apple.com>
-
-        Use the real mach type instead of reinterpret_casting in MachMessage
-        https://bugs.webkit.org/show_bug.cgi?id=179629
-
-        Reviewed by Dan Bernstein.
-
-        * Platform/IPC/mac/MachMessage.cpp:
-        (IPC::MachMessage::header):
-        * Platform/IPC/mac/MachMessage.h:
-        Just use mach_msg_header_t proper, and avoid the reinterpret_cast.
-        This also corrects the alignment of the struct on platforms where
-        alignof(mach_msg_header_t) != alignof(uint8_t).
-
-2017-11-13  Gabriel Ivascu  <givascu@igalia.com>
-
-        [GTK] Automatically adjust font size when gtk-xft-dpi changes
-        https://bugs.webkit.org/show_bug.cgi?id=142673
-
-        Reviewed by Michael Catanzaro.
-
-        * UIProcess/API/glib/WebKitSettings.cpp:
-        (webKitSettingsDispose):
-        (webKitSettingsConstructed):
-        (webkit_settings_class_init):
-
-2017-11-13  Chris Dumez  <cdumez@apple.com>
-
-        Implement "Service Worker Has No Pending Events" / "Update Service Worker Extended Events Set" algorithms
-        https://bugs.webkit.org/show_bug.cgi?id=179618
-
-        Reviewed by Brady Eidson.
-
-        * StorageProcess/StorageProcess.cpp:
-        (WebKit::StorageProcess::setServiceWorkerHasPendingEvents):
-        * StorageProcess/StorageProcess.h:
-        * StorageProcess/StorageProcess.messages.in:
-        * WebProcess/Storage/WebSWContextManagerConnection.cpp:
-        (WebKit::WebSWContextManagerConnection::setServiceWorkerHasPendingEvents):
-        * WebProcess/Storage/WebSWContextManagerConnection.h:
-
-2017-11-13  Wenson Hsieh  <wenson_hsieh@apple.com>
-
-        [Attachment Support] Implement SPI for clients to request data for a given attachment
-        https://bugs.webkit.org/show_bug.cgi?id=179586
-        <rdar://problem/35355720>
-
-        Reviewed by Darin Adler.
-
-        Adds support in WebKit for fetching data for a given attachment element. See WebCore/ChangeLog for more details.
-        Most of the changes here are boilerplate plumbing of -requestAttachmentData through the client layers.
-
-        Test coverage by augmenting existing API tests in WKAttachmentTests, and adding 3 new tests.
-
-        * UIProcess/API/APIAttachment.cpp:
-        (API::Attachment::requestData):
-        * UIProcess/API/APIAttachment.h:
-        * UIProcess/API/Cocoa/_WKAttachment.h:
-        * UIProcess/API/Cocoa/_WKAttachment.mm:
-        (-[_WKAttachment requestData:]):
-        * UIProcess/WebPageProxy.cpp:
-        (WebKit::WebPageProxy::sharedBufferCallback):
-
-        Add a new IPC callback helper type, SharedBufferCallback. This is similar to the existing DataCallback, but
-        instead of deserializing to an API::Data, we convert to a SharedBuffer instead. Additionally,
-        SharedBufferCallback is able to draw a distinction between null data and empty data. This allows -requestData:
-        to distinguish between cases where (for instance) the data for a given attachment is an empty blob, and when
-        the attachment doesn't exist at all.
-
-        (WebKit::WebPageProxy::dataCallback):
-        (WebKit::WebPageProxy::insertAttachment):
-        (WebKit::WebPage::invokeSharedBufferCallback):
-        (WebKit::WebPageProxy::requestAttachmentData):
-        * UIProcess/WebPageProxy.h:
-        * UIProcess/WebPageProxy.messages.in:
-        * WebProcess/WebPage/WebPage.cpp:
-        (WebKit::WebPage::requestAttachmentData):
-        * WebProcess/WebPage/WebPage.h:
-        * WebProcess/WebPage/WebPage.messages.in:
-
-2017-11-12  Darin Adler  <darin@apple.com>
-
-        More is<> and downcast<>, less static_cast<>
-        https://bugs.webkit.org/show_bug.cgi?id=179600
-
-        Reviewed by Chris Dumez.
-
-        * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMPrivate.cpp:
-        (WebKit::wrap): Use is/downcast.
-        * WebProcess/WebCoreSupport/gtk/WebEditorClientGtk.cpp:
-        (WebKit::WebEditorClient::handleKeyboardEvent): Ditto.
-        * WebProcess/WebCoreSupport/wpe/WebEditorClientWPE.cpp:
-        (WebKit::WebEditorClient::handleKeyboardEvent): Ditto.
-        * WebProcess/WebPage/WebPage.cpp:
-        (WebKit::WebPage::handleEditingKeyboardEvent): Ditto.
-        * WebProcess/WebPage/mac/WebPageMac.mm:
-        (WebKit::frameForEvent): Ditto.
-
-2017-11-12  Gabriel Ivascu  <givascu@igalia.com>
-
-        [GTK] Add functionality to handle font sizes in points
-        https://bugs.webkit.org/show_bug.cgi?id=179285
-
-        Reviewed by Carlos Garcia Campos and Michael Catanzaro.
-
-        * UIProcess/API/glib/WebKitSettings.cpp:
-        (webkit_settings_class_init):
-        (webkit_settings_font_size_to_points):
-        (webkit_settings_font_size_to_pixels):
-        * UIProcess/API/gtk/WebKitSettings.h:
-        * UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt:
-
-2017-11-11  Tim Horton  <timothy_horton@apple.com>
-
-        Increase the alignment requirement of WKObject's wrapped C++ object
-        https://bugs.webkit.org/show_bug.cgi?id=179518
-
-        Reviewed by Dan Bernstein.
-
-        * Shared/API/APIObject.h:
-        * Shared/Cocoa/APIObject.mm:
-        (API::allocateWKObject):
-        (API::Object::fromWKObjectExtraSpace):
-        (API::Object::newObject):
-        * Shared/Cocoa/WKObject.mm:
-        (-[WKObject dealloc]):
-        (-[WKObject _apiObject]):
-        * UIProcess/API/Cocoa/WKConnection.mm:
-        (-[WKConnection dealloc]):
-        (-[WKConnection _apiObject]):
-        (-[WKConnection _connection]):
-        Increase the alignment of the C++ object stored inside WKObject's extra space
-        to 8-bytes, for platforms where some types require greater-than-pointer alignment.
-        To achieve this, increase the size of the extra-space allocation by the difference
-        between 8 bytes and pointer-alignment, and then align within that.
-
-2017-11-11  Tim Horton  <timothy_horton@apple.com>
-
-        Avoid composing the message + recipient name for crash logs until a failure actually occurs
-        https://bugs.webkit.org/show_bug.cgi?id=179576
-
-        Reviewed by Dan Bernstein.
-
-        * Platform/IPC/mac/ConnectionMac.mm:
-        (IPC::Connection::sendMessage):
-        (IPC::Connection::sendOutgoingMessage):
-        * Platform/IPC/mac/MachMessage.h:
-        (IPC::MachMessage::messageReceiverName const):
-        (IPC::MachMessage::setMessageReceiverName):
-        (IPC::MachMessage::messageName const):
-        (IPC::MachMessage::setMessageName):
-        Store the message name and receiver name separately on MachMessage,
-        only composing them into a string if the message is unhandled. This
-        makes the time spent composing the string in sendOutgoingMessage
-        completely disappear. In absolute terms, it wasn't huge, but if you
-        do enough IPC it starts to add up.
-
-2017-11-10  Chris Dumez  <cdumez@apple.com>
-
-        [Service Workers] Implement "Try Activate" / "Activate" algorithms
-        https://bugs.webkit.org/show_bug.cgi?id=179436
-
-        Reviewed by Brady Eidson.
-
-        Implement proper "Try Activate" / "Activate" algorithms as per:
-        - https://w3c.github.io/ServiceWorker/#try-activate-algorithm
-        - https://w3c.github.io/ServiceWorker/#activation-algorithm
-
-        * StorageProcess/ServiceWorker/WebSWServerConnection.cpp:
-        (WebKit::WebSWServerConnection::fireActivateEvent):
-        * StorageProcess/ServiceWorker/WebSWServerConnection.h:
-        * StorageProcess/StorageProcess.cpp:
-        (WebKit::StorageProcess::didFinishServiceWorkerActivation):
-        * StorageProcess/StorageProcess.h:
-        * StorageProcess/StorageProcess.messages.in:
-        * WebProcess/Storage/WebSWContextManagerConnection.cpp:
-        (WebKit::WebSWContextManagerConnection::fireActivateEvent):
-        (WebKit::WebSWContextManagerConnection::didFinishActivation):
-        * WebProcess/Storage/WebSWContextManagerConnection.h:
-        * WebProcess/Storage/WebSWContextManagerConnection.messages.in:
-
-2017-11-10  John Wilander  <wilander@apple.com>
-
-        Ignore HSTS for partitioned, cross-origin subresource requests
-        https://bugs.webkit.org/show_bug.cgi?id=178993
-        <rdar://problem/34962462>
-
-        Reviewed by Brent Fulgham.
-
-        * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
-        (downgradeRequest):
-            Convenience function to downgrade a request if
-            CFNetwork as already upgraded it during
-            canonicalization. This allows the rest of 
-            WebKit's processing to function, such as UIR
-            and mixed content blocking.
-        (updateIgnoreStrictTransportSecuritySettingIfNecessary):
-            Adds and removed the ignore request accordingly.
-        (-[WKNetworkSessionDelegate URLSession:task:willPerformHTTPRedirection:newRequest:completionHandler:]):
-            Now asks CFNetwork to ignore HSTS on resource loads we
-            partition cookies for.
-        (-[WKNetworkSessionDelegate URLSession:task:_schemeUpgraded:completionHandler:]):
-            Now asks CFNetwork to ignore HSTS on resource loads we
-            partition cookies for.
-
-2017-11-10  Alex Christensen  <achristensen@webkit.org>
-
-        _WKThumbnailView initialization with WKWebView needs to call correct initWithFrame
-        https://bugs.webkit.org/show_bug.cgi?id=179537
-        <rdar://problem/35275219>
-
-        Reviewed by Darin Adler.
-
-        I introduced this in r223439 and made an ObjC mistake.  This is what I get for adding SPI with no tests.
-        I fixed this by making the existing WKView/_WKThumbnailView API tests work with WKWebView.
-
-        * UIProcess/API/Cocoa/_WKThumbnailView.mm:
-        (-[_WKThumbnailView initWithFrame:fromWKWebView:]):
-
-2017-11-10  Carlos Garcia Campos  <cgarcia@igalia.com>
-
-        [GTK][WPE] Switch to use API::NavigationClient
-        https://bugs.webkit.org/show_bug.cgi?id=178720
-
-        Reviewed by Alex Christensen.
-
-        Replace WebKitLoaderClient and WebKitPolicyClient with WebKitNavigationClient that implements
-        API::NavigationClient.
-
-        * PlatformGTK.cmake:
-        * PlatformWPE.cmake:
-        * UIProcess/API/APINavigationAction.h: Add new constructor that receives a target frame name instead of a target
-        frame info.
-        * UIProcess/API/APINavigationClient.h:
-        (API::NavigationClient::didDisplayInsecureContent): Added.
-        (API::NavigationClient::didRunInsecureContent): Added.
-        (API::NavigationClient::decidePolicyForNavigationResponse): Change NavigationResponse parameter to be a
-        Ref<NavigationResponse>&& instead of a NavigationResponse&.
-        * UIProcess/API/C/WKPage.cpp:
-        (WKPageSetPageNavigationClient): Update NavigationResponse parameter.
-        * UIProcess/API/glib/WebKitBackForwardList.cpp:
-        (webkitBackForwardListChanged):
-        * UIProcess/API/glib/WebKitBackForwardListPrivate.h:
-        * UIProcess/API/glib/WebKitNavigationAction.cpp:
-        (webkitNavigationActionCreate): Wrap the given API::NavigationAction.
-        (webkit_navigation_action_get_navigation_type): Use the wrapped API::NavigationAction.
-        (webkit_navigation_action_get_mouse_button): Ditto.
-        (webkit_navigation_action_get_modifiers): Ditto.
-        (webkit_navigation_action_get_request): Ditto.
-        (webkit_navigation_action_is_user_gesture): Ditto.
-        (webkit_navigation_action_is_redirect): Ditto.
-        * UIProcess/API/glib/WebKitNavigationActionPrivate.h:
-        (_WebKitNavigationAction::_WebKitNavigationAction):
-        * UIProcess/API/glib/WebKitNavigationClient.cpp: Renamed from Source/WebKit/UIProcess/API/glib/WebKitLoaderClient.cpp.
-        (NavigationClient::NavigationClient):
-        (attachNavigationClientToView):
-        * UIProcess/API/glib/WebKitNavigationClient.h: Renamed from Source/WebKit/UIProcess/API/glib/WebKitLoaderClient.h.
-        * UIProcess/API/glib/WebKitNavigationPolicyDecision.cpp:
-        (webkit_navigation_policy_decision_get_frame_name): Add FIXME.
-        (webkitNavigationPolicyDecisionCreate): Get the target frame name from the API::NavigationAction.
-        * UIProcess/API/glib/WebKitNavigationPolicyDecisionPrivate.h:
-        * UIProcess/API/glib/WebKitPolicyClient.cpp: Removed.
-        * UIProcess/API/glib/WebKitPolicyClient.h: Removed.
-        * UIProcess/API/glib/WebKitPolicyDecision.cpp:
-        (webkitPolicyDecisionSetListener): Remove the madePolicyDecision boolean member, we can null-check the listener instead.
-        (webkit_policy_decision_use): Ensure listener is nullptr after being invoked to prevent the decision from being made
-        more than once.
-        (webkit_policy_decision_ignore): Ditto.
-        (webkit_policy_decision_download): Ditto.
-        * UIProcess/API/glib/WebKitPolicyDecisionPrivate.h:
-        * UIProcess/API/glib/WebKitResponsePolicyDecision.cpp:
-        (webkit_response_policy_decision_get_request): Use the wrapped API::NavigationResponse.
-        (webkit_response_policy_decision_get_response): Ditto.
-        (webkit_response_policy_decision_is_mime_type_supported): Ditto.
-        (webkitResponsePolicyDecisionCreate): Wrap the given API::NavigationResponse.
-        * UIProcess/API/glib/WebKitResponsePolicyDecisionPrivate.h:
-        * UIProcess/API/glib/WebKitUIClient.cpp:
-        (UIClient::createNewPage): Create the WebKitNavigationAction from a new API::NavigationAction.
-        * UIProcess/API/glib/WebKitWebView.cpp:
-        (webkitWebViewConstructed): Attach navigation client.
-        * UIProcess/Cocoa/NavigationState.h: Update API::NavigationResponse parameter of decidePolicyForNavigationResponse.
-        * UIProcess/Cocoa/NavigationState.mm:
-        (WebKit::NavigationState::NavigationClient::decidePolicyForNavigationResponse):
-        * UIProcess/WebPageProxy.cpp:
-        (WebKit::WebPageProxy::didDisplayInsecureContentForFrame): Notify the navigation client if it's used.
-        (WebKit::WebPageProxy::didRunInsecureContentForFrame): Ditto.
-        (WebKit::WebPageProxy::decidePolicyForNewWindowAction): Use the new API::NavigationAction constructor to pass
-        the target frame name, instead of a null target frame info.
-        (WebKit::WebPageProxy::decidePolicyForResponse): Move the API::NavigationResponse.
-
-2017-11-09  Chris Dumez  <cdumez@apple.com>
-
-        Unreviewed, rolling out r224661.
-
-        Broke build on several internal Mac/iOS bots
-
-        Reverted changeset:
-
-        "Ignore HSTS for partitioned, cross-origin subresource
-        requests"
-        https://bugs.webkit.org/show_bug.cgi?id=178993
-        https://trac.webkit.org/changeset/224661
-
-2017-11-09  Chris Dumez  <cdumez@apple.com>
-
-        ServiceWorkerRegistration objects may get recycled for different SWServerRegistration objects
-        https://bugs.webkit.org/show_bug.cgi?id=179517
-
-        Reviewed by Brady Eidson.
-
-        * Scripts/webkit/messages.py:
-        (forward_declarations_and_headers):
-        * StorageProcess/ServiceWorker/WebSWServerConnection.cpp:
-        (WebKit::WebSWServerConnection::updateRegistrationStateInClient):
-        (WebKit::WebSWServerConnection::fireUpdateFoundEvent):
-        * StorageProcess/ServiceWorker/WebSWServerConnection.h:
-        * StorageProcess/ServiceWorker/WebSWServerConnection.messages.in:
-        * WebProcess/Storage/WebSWClientConnection.cpp:
-        (WebKit::WebSWClientConnection::addServiceWorkerRegistrationInServer):
-        (WebKit::WebSWClientConnection::removeServiceWorkerRegistrationInServer):
-        * WebProcess/Storage/WebSWClientConnection.h:
-        * WebProcess/Storage/WebSWClientConnection.messages.in:
-
-2017-11-09  John Wilander  <wilander@apple.com>
-
-        Ignore HSTS for partitioned, cross-origin subresource requests
-        https://bugs.webkit.org/show_bug.cgi?id=178993
-        <rdar://problem/34962462>
-
-        Reviewed by Brent Fulgham.
-
-        * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
-        (downgradeRequest):
-            Convenience function to downgrade a request if
-            CFNetwork as already upgraded it during
-            canonicalization. This allows the rest of 
-            WebKit's processing to function, such as UIR
-            and mixed content blocking.
-        (updateIgnoreStrictTransportSecuritySettingIfNecessary):
-            Adds and removed the ignore request accordingly.
-        (-[WKNetworkSessionDelegate URLSession:task:willPerformHTTPRedirection:newRequest:completionHandler:]):
-            Now asks CFNetwork to ignore HSTS on resource loads we
-            partition cookies for.
-        (-[WKNetworkSessionDelegate URLSession:task:_schemeUpgraded:completionHandler:]):
-            Now asks CFNetwork to ignore HSTS on resource loads we
-            partition cookies for.
-
-2017-11-09  Chris Dumez  <cdumez@apple.com>
-
-        Implement real post 'install' event steps of the Install algorithm (steps 14+)
-        https://bugs.webkit.org/show_bug.cgi?id=179401
-
-        Reviewed by Brady Eidson.
-
-        Implement step 14+ of Install algorithm, as per:
-        - https://w3c.github.io/ServiceWorker/#installation-algorithm
-
-        * Scripts/webkit/messages.py:
-        (headers_for_type):
-        * Shared/WebCoreArgumentCoders.h:
-        * StorageProcess/ServiceWorker/WebSWServerConnection.cpp:
-        (WebKit::WebSWServerConnection::resolveRegistrationJobInClient):
-        * StorageProcess/ServiceWorker/WebSWServerConnection.h:
-        * StorageProcess/ServiceWorker/WebSWServerConnection.messages.in:
-        * WebProcess/Storage/WebSWClientConnection.cpp:
-        (WebKit::WebSWClientConnection::didResolveRegistrationPromise):
-        * WebProcess/Storage/WebSWClientConnection.h:
-        * WebProcess/Storage/WebSWClientConnection.messages.in:
-
-2017-11-09  Megan Gardner  <megan_gardner@apple.com>
-
-        Clean out unused selection items from UIKitSPI
-        https://bugs.webkit.org/show_bug.cgi?id=179459
-
-        Reviewed by Tim Horton.
-
-        Many of these should have been removed from previous commits, but they were missed.
-        None of these enums or methods are being used by WebKit anymore, and removing them will keep things
-        clean and allow UIKit to remove things that are not used at all by anyone anymore.
-
-        * Platform/spi/ios/UIKitSPI.h:
-
-2017-11-09  Christopher Reid  <chris.reid@sony.com>
-
-        Use enum classes within FileSystem
-        https://bugs.webkit.org/show_bug.cgi?id=175172
-
-        Reviewed by Darin Adler.
-
-        * NetworkProcess/Downloads/BlobDownloadClient.cpp:
-        * NetworkProcess/NetworkDataTaskBlob.cpp:
-        * NetworkProcess/cache/NetworkCache.cpp:
-        * NetworkProcess/capture/NetworkCaptureManager.cpp:
-        * NetworkProcess/capture/NetworkCaptureRecorder.cpp:
-        * Shared/WebMemorySampler.cpp:
-        * UIProcess/API/APIContentRuleListStore.cpp:
-        * UIProcess/ResourceLoadStatisticsPersistentStorage.cpp:
-
-2017-11-09  Youenn Fablet  <youenn@apple.com>
-
-        ServiceWorkerClientFetch should create not null ResourceError
-        https://bugs.webkit.org/show_bug.cgi?id=179485
-
-        Reviewed by Darin Adler.
-
-        * WebProcess/Storage/ServiceWorkerClientFetch.cpp:
-        (WebKit::ServiceWorkerClientFetch::didReceiveResponse):
-
-2017-11-09  Andy Estes  <aestes@apple.com>
-
-        [iOS] Adopt UIPreviewDataAttachmentListIsContentManaged
-        https://bugs.webkit.org/show_bug.cgi?id=179458
-        <rdar://problem/35034691>
-
-        Reviewed by Dan Bernstein.
-
-        * Platform/spi/ios/UIKitSPI.h:
-        * UIProcess/ios/WKContentViewInteraction.mm:
-        (-[WKContentView _dataForPreviewItemController:atPosition:type:]):
-
-2017-11-08  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Include a more complete block signature in public headers to avoid potential -Wstrict-prototypes warnings
-        https://bugs.webkit.org/show_bug.cgi?id=179466
-
-        Reviewed by Dan Bernstein.
-
-        * UIProcess/API/Cocoa/WKHTTPCookieStore.h:
-        * UIProcess/API/Cocoa/WKHTTPCookieStore.mm:
-        (-[WKHTTPCookieStore setCookie:completionHandler:]):
-        (-[WKHTTPCookieStore deleteCookie:completionHandler:]):
-
-2017-11-08  Jeremy Jones  <jeremyj@apple.com>
-
-        Make WKFullScreenWidnowController more robust against modification by the embedding app.
-        https://bugs.webkit.org/show_bug.cgi?id=179413
-        rdar://problem/35408061
-
-        Reviewed by Darin Adler.
-
-        Present fullscreen UViewController in a separate UIWindow to prevent interaction with the embedding app's
-        UIViewController hierarchy.
-
-        Immediately tear down the fullscreen interface if the embedding app removes the WKWebView from the fullscreen window.
-        This prevents the fullscreen interface from getting into an invalid state.
-
-        Preserve scrollView.zoomScale because it is not effectively preserved by the more indirect _viewScale.
-
-        Use a custom root view controller to allow hiding of the status bar.
-
-        Remove the no-longer-necessary dispatch_after calls during enter and exit fullscreen.
-
-        * UIProcess/API/Cocoa/WKWebView.mm:
-        (-[WKWebView removeFromSuperview]):
-        * UIProcess/ios/WKFullScreenWindowControllerIOS.h:
-        * UIProcess/ios/WKFullScreenWindowControllerIOS.mm:
-        (WebKit::WKWebViewState::applyTo):
-        (WebKit::WKWebViewState::store):
-        (-[_WKFullScreenViewController loadView]):
-        (-[_WKFullscreenRootViewController prefersStatusBarHidden]):
-        (-[WKFullScreenWindowController enterFullScreen]):
-        (-[WKFullScreenWindowController beganEnterFullScreenWithInitialFrame:finalFrame:]):
-        (-[WKFullScreenWindowController completedExitFullScreen]):
-        (-[WKFullScreenWindowController exitFullscreenImmediately]):
-        (-[WKFullScreenWindowController close]):
-        (-[WKFullScreenWindowController webViewDidRemoveFromSuperviewWhileInFullscreen]):
-        (-[_WKFullScreenViewController viewDidDisappear:]): Deleted.
-
-2017-11-08  Jeremy Jones  <jeremyj@apple.com>
-
-        HTMLMediaElement should not use element fullscreen on iOS
-        https://bugs.webkit.org/show_bug.cgi?id=179418
-        rdar://problem/35409277
-
-        Reviewed by Eric Carlson.
-
-        Add ENABLE_VIDEO_USES_ELEMENT_FULLSCREEN to determine if HTMLMediaElement should use element full screen or not.
-
-        * Configurations/FeatureDefines.xcconfig:
-
-2017-11-08  Wenson Hsieh  <wenson_hsieh@apple.com>
-
-        [Attachment Support] Implement delegate hooks for attachment element insertion and removal
-        https://bugs.webkit.org/show_bug.cgi?id=179016
-        <rdar://problem/35250890>
-
-        Reviewed by Tim Horton.
-
-        See WebCore/ChangeLog for more details.
-
-        * UIProcess/API/Cocoa/WKUIDelegatePrivate.h:
-        * UIProcess/API/Cocoa/WKWebView.mm:
-        (-[WKWebView _didInsertAttachment:]):
-        (-[WKWebView _didRemoveAttachment:]):
-        * UIProcess/API/Cocoa/WKWebViewInternal.h:
-        * UIProcess/Cocoa/PageClientImplCocoa.h:
-        * UIProcess/Cocoa/PageClientImplCocoa.mm:
-        (WebKit::PageClientImplCocoa::didInsertAttachment):
-        (WebKit::PageClientImplCocoa::didRemoveAttachment):
-        * UIProcess/PageClient.h:
-        (WebKit::PageClient::didInsertAttachment):
-        (WebKit::PageClient::didRemoveAttachment):
-        * UIProcess/WebPageProxy.cpp:
-        (WebKit::WebPageProxy::didInsertAttachment):
-        (WebKit::WebPageProxy::didRemoveAttachment):
-        * UIProcess/WebPageProxy.h:
-        * UIProcess/WebPageProxy.messages.in:
-        * WebProcess/WebCoreSupport/WebEditorClient.cpp:
-        (WebKit::WebEditorClient::didInsertAttachment):
-        (WebKit::WebEditorClient::didRemoveAttachment):
-        * WebProcess/WebCoreSupport/WebEditorClient.h:
-
-2017-11-08  Carlos Garcia Campos  <cgarcia@igalia.com>
-
-        REGRESSION(r223773): [GTK] WebKitWebInspector bring-to-front signal is emitted right after open-window
-        https://bugs.webkit.org/show_bug.cgi?id=179365
-
-        Reviewed by Michael Catanzaro.
-
-        In the GTK+ API, open-window already implies presenting the window to bring it to the front, so it's not
-        expected that bring-to-front is emitted on open. This is happening since r223773 that moved common code from
-        platform specific inspector files to the main file, but in the case of open the mac implementation was not
-        exactly the same as the GTK+ one. This broke /webkit2/WebKitWebInspector/default and
-        /webkit2/WebKitWebInspector/manual-attach-detach.
-
-        * UIProcess/WebInspectorProxy.cpp:
-        (WebKit::WebInspectorProxy::open): Set m_isOpening for the scope of the function.
-        * UIProcess/WebInspectorProxy.h: Add m_isOpening.
-        * UIProcess/gtk/WebInspectorProxyGtk.cpp:
-        (WebKit::WebInspectorProxy::platformBringToFront): Return early if m_isOpening is true.
-
-2017-11-07  Carlos Garcia Campos  <cgarcia@igalia.com>
-
-        REGRESSION(r224179): [GTK] Several WebViewEditor tests are failing since r224179
-        https://bugs.webkit.org/show_bug.cgi?id=179366
-
-        Reviewed by Michael Catanzaro.
-
-        In r224179, webkit_web_view_can_execute_editing_command() was optimized to use the sync path for commands
-        supported by the WebViewEditorState, but the state requires a redraw to be up to date. We can't know if
-        WebViewEditorState is in sync, when webkit_web_view_can_execute_editing_command() is called, so we always need
-        to ask the web process.
-
-        * UIProcess/API/glib/WebKitWebView.cpp:
-        (webkit_web_view_can_execute_editing_command):
-
-2017-11-07  Carlos Garcia Campos  <cgarcia@igalia.com>
-
-        [GTK][WPE] Build inspector resources using copy-user-interface-resources.pl script
-        https://bugs.webkit.org/show_bug.cgi?id=179317
-
-        Reviewed by Michael Catanzaro.
-
-        This is the script used by Apple and it has several advantages:
-
-          - It allows to combine and minify most of the js and css files, which improves performance and binary size.
-          - It removes the debug resources and assertions in production builds.
-          - It allows to remove the test resources in production builds.
-
-        The patch also moves the common cmake code to generate the resources to a new file InspectorGResources.cmake included
-        by GTK+ and WPE platform cmake files.
-
-        * InspectorGResources.cmake: Added.
-        * PlatformGTK.cmake:
-        * PlatformWPE.cmake:
-
-2017-11-07  Jeremy Jones  <jeremyj@apple.com>
-
-        Add downcast support for FullscreenClient.
-        https://bugs.webkit.org/show_bug.cgi?id=178824
-
-        Reviewed by Simon Fraser.
-
-        Add SPECIALIZE_TYPE_TRAITS macros for API::FullscreenClient and WebKit::Fullscreen client so 
-        downcasts can be done safely.
-
-        * UIProcess/API/APIFullscreenClient.h:
-        (API::FullscreenClient::isType const):
-        * UIProcess/API/C/mac/WKPagePrivateMac.mm:
-        (WKPageSetFullscreenDelegate):
-        (WKPageGetFullscreenDelegate):
-        * UIProcess/API/Cocoa/WKWebView.mm:
-        (-[WKWebView _setFullscreenDelegate:]):
-        (-[WKWebView _fullscreenDelegate]):
-        * UIProcess/Cocoa/FullscreenClient.h:
-        (isType):
-        * UIProcess/Cocoa/FullscreenClient.mm:
-
-2017-11-07  Brady Eidson  <beidson@apple.com>
-
-        Implement "UpdateWorkerState" and use it
-        https://bugs.webkit.org/show_bug.cgi?id=179318
-
-        Reviewed by Chris Dumez.
-
-        * Scripts/webkit/messages.py:
-        (headers_for_type):
-        * Shared/WebCoreArgumentCoders.h:
-       * StorageProcess/ServiceWorker/WebSWServerConnection.cpp:
-        (WebKit::WebSWServerConnection::updateWorkerStateInClient):
-        (WebKit::WebSWServerConnection::installServiceWorkerContext):
-        (WebKit::WebSWServerConnection::setContextConnection):
-        (WebKit::WebSWServerConnection::updateServiceWorkerContext): Deleted.
-        * StorageProcess/ServiceWorker/WebSWServerConnection.h:
-
-        * WebProcess/Storage/WebSWClientConnection.messages.in:
-
-        * WebProcess/Storage/WebSWContextManagerConnection.cpp:
-        (WebKit::WebSWContextManagerConnection::installServiceWorker):
-        (WebKit::WebSWContextManagerConnection::updateServiceWorker): Deleted.
-        * WebProcess/Storage/WebSWContextManagerConnection.h:
-        * WebProcess/Storage/WebSWContextManagerConnection.messages.in:
-
-2017-11-07  Commit Queue  <commit-queue@webkit.org>
-
-        Unreviewed, rolling out r224512 and r224521.
-        https://bugs.webkit.org/show_bug.cgi?id=179388
-
-        An API test added with this change is failing an assertion on
-        the bots. (Requested by ryanhaddad on #webkit).
-
-        Reverted changesets:
-
-        "[Attachment Support] Implement delegate hooks for attachment
-        element insertion and removal"
-        https://bugs.webkit.org/show_bug.cgi?id=179016
-        https://trac.webkit.org/changeset/224512
-
-        "Remove stray logging from a newly added API test"
-        https://trac.webkit.org/changeset/224521
-
-2017-11-07  Chris Dumez  <cdumez@apple.com>
-
-        [Service Workers] Add support for "install" event
-        https://bugs.webkit.org/show_bug.cgi?id=179338
-
-        Reviewed by Youenn Fablet.
-
-        * StorageProcess/ServiceWorker/WebSWServerConnection.cpp:
-        (WebKit::WebSWServerConnection::firePostInstallEvents):
-        (WebKit::WebSWServerConnection::fireInstallEvent):
-        * StorageProcess/ServiceWorker/WebSWServerConnection.h:
-        * StorageProcess/StorageProcess.cpp:
-        (WebKit::StorageProcess::didFinishServiceWorkerInstall):
-        * StorageProcess/StorageProcess.h:
-        * StorageProcess/StorageProcess.messages.in:
-        * WebProcess/Storage/WebSWClientConnection.messages.in:
-        * WebProcess/Storage/WebSWContextManagerConnection.cpp:
-        (WebKit::WebSWContextManagerConnection::fireInstallEvent):
-        (WebKit::WebSWContextManagerConnection::didFinishInstall):
-        * WebProcess/Storage/WebSWContextManagerConnection.h:
-        * WebProcess/Storage/WebSWContextManagerConnection.messages.in:
-
-2017-11-07  Youenn Fablet  <youenn@apple.com>
-
-        Support the case of fetch events that are not responded
-        https://bugs.webkit.org/show_bug.cgi?id=179336
-
-        Reviewed by Chris Dumez.
-
-        * WebProcess/Storage/WebServiceWorkerFetchTaskClient.cpp:
-        (WebKit::WebServiceWorkerFetchTaskClient::didNotHandle):
-        * WebProcess/Storage/WebServiceWorkerFetchTaskClient.h:
-
-2017-11-06  Alex Christensen  <achristensen@webkit.org>
-
-        Make ResourceLoader::willSendRequestInternal asynchronous
-        https://bugs.webkit.org/show_bug.cgi?id=179251
-
-        Reviewed by Andy Estes.
-
-        * WebProcess/Network/WebLoaderStrategy.cpp:
-        (WebKit::WebLoaderStrategy::loadResource):
-        (WebKit::WebLoaderStrategy::schedulePluginStreamLoad):
-        * WebProcess/Network/WebLoaderStrategy.h:
-        * WebProcess/Plugins/PluginView.cpp:
-        (WebKit::PluginView::Stream::start):
-
-2017-11-06  Wenson Hsieh  <wenson_hsieh@apple.com>
-
-        [Attachment Support] Implement delegate hooks for attachment element insertion and removal
-        https://bugs.webkit.org/show_bug.cgi?id=179016
-        <rdar://problem/35250890>
-
-        Reviewed by Tim Horton.
-
-        Adds boilerplate plumbing to WebEditorClient, WebPage, and the usual machinery in the UI process to notify
-        WebKit2 clients when attachment elements have been inserted or removed from the document. See the WebCore
-        ChangeLog for more details about the implementation, or the Tools ChangeLog for more information about new API
-        tests.
-
-        * UIProcess/API/Cocoa/WKUIDelegatePrivate.h:
-        * UIProcess/API/Cocoa/WKWebView.mm:
-        (-[WKWebView _didInsertAttachment:]):
-        (-[WKWebView _didRemoveAttachment:]):
-        * UIProcess/API/Cocoa/WKWebViewInternal.h:
-        * UIProcess/Cocoa/PageClientImplCocoa.h:
-        * UIProcess/Cocoa/PageClientImplCocoa.mm:
-        (WebKit::PageClientImplCocoa::didInsertAttachment):
-        (WebKit::PageClientImplCocoa::didRemoveAttachment):
-        * UIProcess/PageClient.h:
-        (WebKit::PageClient::didInsertAttachment):
-        (WebKit::PageClient::didRemoveAttachment):
-        * UIProcess/WebPageProxy.cpp:
-        (WebKit::WebPageProxy::didInsertAttachment):
-        (WebKit::WebPageProxy::didRemoveAttachment):
-        * UIProcess/WebPageProxy.h:
-        * UIProcess/WebPageProxy.messages.in:
-        * WebProcess/WebCoreSupport/WebEditorClient.cpp:
-        (WebKit::WebEditorClient::didInsertAttachment):
-        (WebKit::WebEditorClient::didRemoveAttachment):
-        * WebProcess/WebCoreSupport/WebEditorClient.h:
-
-2017-11-06  Jeremy Jones  <jeremyj@apple.com>
-
-        iOS element fullscreen should use a UIGestureRecognizer to detect user interaction.
-        https://bugs.webkit.org/show_bug.cgi?id=179029
-        rdar://problem/35307882
-
-        Reviewed by Simon Fraser.
-
-        Replace _WKTapDelegatingView with a UILongPressGestureRecognizer. When set with a duration of 0, it effectively
-        recognizes UITouchBegin events.
-
-        * UIProcess/ios/WKFullScreenWindowControllerIOS.mm:
-        (-[_WKFullScreenViewController loadView]):
-        (-[_WKFullScreenViewController gestureRecognizer:shouldRecognizeSimultaneouslyWithGestureRecognizer:]):
-        (-[_WKTapDelegatingView setTarget:action:]): Deleted.
-        (-[_WKTapDelegatingView hitTest:withEvent:]): Deleted.
-
-2017-11-06  Chris Dumez  <cdumez@apple.com>
-
-        [Service Workers] Add proper implementation for 'updatefound' event
-        https://bugs.webkit.org/show_bug.cgi?id=179302
-
-        Reviewed by Brady Eidson.
-
-        * StorageProcess/ServiceWorker/WebSWServerConnection.cpp:
-        (WebKit::WebSWServerConnection::fireUpdateFoundEvent):
-        * StorageProcess/ServiceWorker/WebSWServerConnection.h:
-        * WebProcess/Storage/WebSWClientConnection.messages.in:
-
-2017-11-06  Christopher Reid  <chris.reid@sony.com>
-
-        Use enum classes within FileSystem
-        https://bugs.webkit.org/show_bug.cgi?id=175172
-
-        Reviewed by Myles C. Maxfield.
-
-        * NetworkProcess/Downloads/BlobDownloadClient.cpp:
-        * NetworkProcess/NetworkDataTaskBlob.cpp:
-        * NetworkProcess/cache/NetworkCache.cpp:
-        * NetworkProcess/capture/NetworkCaptureManager.cpp:
-        * NetworkProcess/capture/NetworkCaptureRecorder.cpp:
-        * Shared/WebMemorySampler.cpp:
-        * UIProcess/API/APIContentRuleListStore.cpp:
-        * UIProcess/ResourceLoadStatisticsPersistentStorage.cpp:
-
-2017-11-06  Michael Catanzaro  <mcatanzaro@igalia.com>
-
-        [WPE] Properly use SYSTEM_INCLUDE_DIRECTORIES for WebKit build target
-        https://bugs.webkit.org/show_bug.cgi?id=179097
-
-        Reviewed by Žan Doberšek.
-
-        * PlatformWPE.cmake:
-
-2017-11-05  Yusuke Suzuki  <utatane.tea@gmail.com>
-
-        JIT call inline caches should cache calls to objects with getCallData/getConstructData traps
-        https://bugs.webkit.org/show_bug.cgi?id=144458
-
-        Reviewed by Saam Barati.
-
-        * WebProcess/Plugins/Netscape/JSNPMethod.cpp:
-        (WebKit::JSNPMethod::JSNPMethod):
-        (WebKit::JSNPMethod::getCallData): Deleted.
-        * WebProcess/Plugins/Netscape/JSNPMethod.h:
-        (WebKit::JSNPMethod::createStructure):
-
-2017-11-04  Chris Dumez  <cdumez@apple.com>
-
-        REGRESSION(r223718): Leaking WebProcessPool after reconfiguration
-        https://bugs.webkit.org/show_bug.cgi?id=179123
-        <rdar://problem/35294685>
-
-        Reviewed by Geoff Garen.
-
-        Make sure we destroy the ServiceWorker WebProcess once all other WebProcesses
-        go away at there is no use keeping it running at this point. Also, this prevents
-        leaking the WebProcessPool since the WebProcessProxy holds a strong reference
-        to the WebProcessPool.
-
-        * UIProcess/WebProcessPool.cpp:
-        (WebKit::WebProcessPool::disconnectProcess):
-
-2017-11-01  Darin Adler  <darin@apple.com>
-
-        Simplify event dispatch code and make it a bit more consistent
-        https://bugs.webkit.org/show_bug.cgi?id=178991
-
-        Reviewed by Chris Dumez.
-
-        * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMEvent.cpp:
-        (webkit_dom_event_get_src_element): Call target instead of srcElement.
-
-2017-11-04  Aishwarya Nirmal  <anirmal@apple.com>
-
-        [Touch Bar Web API] Add support for menuitem tag
-        https://bugs.webkit.org/show_bug.cgi?id=179020
-
-        Reviewed by Ryosuke Niwa.
-
-        Adds in the MenuItemElementEnabled flag so that the menu item element is a runtime-
-        enabled feature. It has a default value of false.
-
-        * Shared/WebPreferences.yaml:
-        * UIProcess/API/C/WKPreferences.cpp:
-        (WKPreferencesSetMenuItemElementEnabled):
-        (WKPreferencesGetMenuItemElementEnabled):
-        * UIProcess/API/C/WKPreferencesRefPrivate.h:
-
-2017-11-03  Chris Dumez  <cdumez@apple.com>
-
-        Unreviewed, rolling out r224438.
-
-        Has caused assertions on the bots
-
-        Reverted changeset:
-
-        "REGRESSION(r223718): Leaking WebProcessPool after
-        reconfiguration"
-        https://bugs.webkit.org/show_bug.cgi?id=179123
-        https://trac.webkit.org/changeset/224438
-
-2017-11-03  Youenn Fablet  <youenn@apple.com>
-
-        Requests handled by Service Worker should not go through preflighting
-        https://bugs.webkit.org/show_bug.cgi?id=179250
-
-        Reviewed by Alex Christensen.
-
-        * WebProcess/Network/WebLoaderStrategy.cpp:
-        (WebKit::WebLoaderStrategy::scheduleLoad):
-        * WebProcess/Storage/WebSWClientConnection.cpp:
-        (WebKit::WebSWClientConnection::startFetch):
-        * WebProcess/Storage/WebServiceWorkerProvider.cpp:
-        (WebKit::shouldHandleFetch):
-
-2017-11-03  Chris Dumez  <cdumez@apple.com>
-
-        REGRESSION(r223718): Leaking WebProcessPool after reconfiguration
-        https://bugs.webkit.org/show_bug.cgi?id=179123
-        <rdar://problem/35294685>
-
-        Reviewed by Geoffrey Garen.
-
-        Make sure we destroy the ServiceWorker WebProcess once all other WebProcesses
-        go away at there is no use keeping it running at this point. Also, this prevents
-        leaking the WebProcessPool since the WebProcessProxy holds a strong reference
-        to the WebProcessPool.
-
-        * UIProcess/WebProcessPool.cpp:
-        (WebKit::WebProcessPool::disconnectProcess):
-
-2017-11-03  Youenn Fablet  <youenn@apple.com>
-
-        Implement Service Worker Matching Registration algorithm
-        https://bugs.webkit.org/show_bug.cgi?id=178882
-
-        Reviewed by Chris Dumez.
-
-        Added IPC plumbery for matchRegistration request and response.
-        Added some limited clearing of workers and registrations.
-
-        * StorageProcess/ServiceWorker/WebSWServerConnection.cpp:
-        (WebKit::WebSWServerConnection::matchRegistration):
-        * StorageProcess/ServiceWorker/WebSWServerConnection.h:
-        * StorageProcess/ServiceWorker/WebSWServerConnection.messages.in:
-        * StorageProcess/StorageProcess.cpp:
-        (WebKit::StorageProcess::deleteWebsiteData):
-        (WebKit::StorageProcess::deleteWebsiteDataForOrigins):
-        * WebProcess/Storage/WebSWClientConnection.cpp:
-        (WebKit::WebSWClientConnection::didMatchRegistration):
-        (WebKit::WebSWClientConnection::matchRegistration):
-        * WebProcess/Storage/WebSWClientConnection.h:
-        * WebProcess/Storage/WebSWClientConnection.messages.in:
-        * WebProcess/Storage/WebServiceWorkerProvider.h:
-
-2017-11-03  Jeremy Jones  <jeremyj@apple.com>
-
-        Element fullscreen should use FloatRects instead of IntRects in beganEnterFullScreenWithInitialFrame
-        https://bugs.webkit.org/show_bug.cgi?id=179033
-        rdar://problem/35309279
-        
-        Reviewed by Darin Adler.
-
-        Screen coordinates are floats, so use NSRect instead of IntRect on Mac.
-
-        * UIProcess/mac/WKFullScreenWindowController.h:
-        * UIProcess/mac/WKFullScreenWindowController.mm:
-        (-[WKFullScreenWindowController beganEnterFullScreenWithInitialFrame:finalFrame:]):
-        (-[WKFullScreenWindowController beganExitFullScreenWithInitialFrame:finalFrame:]):
-
-2017-11-03  Chris Dumez  <cdumez@apple.com>
-
-        Use a single identifier type to identify Service Workers
-        https://bugs.webkit.org/show_bug.cgi?id=179192
-
-        Reviewed by Brady Eidson.
-
-        Use a single identifier type to identify Service Workers. We had both a String
-        identifier and a uint64_t identifier for each service worker. We now consistently
-        use a ServiceWorkerIdentifier which is a strongly typed identifier backed by a
-        uint64_t.
-
-        * Scripts/webkit/messages.py:
-        (forward_declarations_and_headers):
-        (forward_declarations_and_headers.templates):
-        * StorageProcess/ServiceWorker/WebSWServerConnection.cpp:
-        (WebKit::WebSWServerConnection::startFetch):
-        (WebKit::WebSWServerConnection::postMessageToServiceWorkerGlobalScope):
-        (WebKit::WebSWServerConnection::postMessageToServiceWorkerClient):
-        * StorageProcess/ServiceWorker/WebSWServerConnection.h:
-        * StorageProcess/ServiceWorker/WebSWServerConnection.messages.in:
-        * StorageProcess/StorageProcess.cpp:
-        (WebKit::StorageProcess::serviceWorkerContextFailedToStart):
-        (WebKit::StorageProcess::serviceWorkerContextStarted):
-        (WebKit::StorageProcess::postMessageToServiceWorkerClient):
-        * StorageProcess/StorageProcess.h:
-        * StorageProcess/StorageProcess.messages.in:
-        * WebProcess/Storage/WebSWClientConnection.cpp:
-        (WebKit::WebSWClientConnection::postMessageToServiceWorkerGlobalScope):
-        (WebKit::WebSWClientConnection::postMessageToServiceWorkerClient):
-        * WebProcess/Storage/WebSWClientConnection.h:
-        * WebProcess/Storage/WebSWClientConnection.messages.in:
-        * WebProcess/Storage/WebSWContextManagerConnection.cpp:
-        (WebKit::WebSWContextManagerConnection::updateServiceWorker):
-        (WebKit::WebSWContextManagerConnection::serviceWorkerStartedWithMessage):
-        (WebKit::WebSWContextManagerConnection::startFetch):
-        (WebKit::WebSWContextManagerConnection::postMessageToServiceWorkerGlobalScope):
-        (WebKit::WebSWContextManagerConnection::postMessageToServiceWorkerClient):
-        * WebProcess/Storage/WebSWContextManagerConnection.h:
-        * WebProcess/Storage/WebSWContextManagerConnection.messages.in:
-
-2017-11-03  Antti Koivisto  <antti@apple.com>
-
-        Enable display:contents by default as experimental feature
-        https://bugs.webkit.org/show_bug.cgi?id=179239
-        <rdar://problem/35334612>
-
-        Reviewed by Darin Adler.
-
-        We pass most of the WPT tests. What remains is mostly flexbox related edge cases.
-
-        * Shared/WebPreferences.yaml:
-
-2017-11-03  Frederic Wang  <fwang@igalia.com>
-
-        Use WK_IOS_TBA instead of WK_MAC_TBA to indicate availability of private functions on iOS
-        https://bugs.webkit.org/show_bug.cgi?id=179238
-
-        Reviewed by Darin Adler.
-
-        * UIProcess/API/Cocoa/WKWebViewPrivate.h:
-        * UIProcess/API/Cocoa/WKWebsiteDataStorePrivate.h:
-
-2017-11-02  Maciej Stachowiak  <mjs@apple.com>
-
-        Don't try to guess plugin MIME type from a file extension in a URL (no observable effect)
-        https://bugs.webkit.org/show_bug.cgi?id=178333
-
-        Reviewed by Darin Adler.
-
-        * WebProcess/Plugins/PluginView.cpp:
-        (WebKit::PluginView::pluginDidReceiveUserInteraction): loadedMIMEType --> serviceType
-        * WebProcess/WebPage/WebPage.cpp:
-        (WebKit::WebPage::determinePrimarySnapshottedPlugIn): ditto
-
-2017-11-02  Brady Eidson  <beidson@apple.com>
-
-        SW: Implement "Update Registration State" algorithm (unused for now)
-        https://bugs.webkit.org/show_bug.cgi?id=179186
-
-        Reviewed by Chris Dumez.
-
-        * Scripts/webkit/messages.py:
-        (headers_for_type):
-
-        * Shared/WebCoreArgumentCoders.h:
-
-        * StorageProcess/ServiceWorker/WebSWServerConnection.cpp:
-        (WebKit::WebSWServerConnection::updateRegistrationStateInClient):
-        * StorageProcess/ServiceWorker/WebSWServerConnection.h:
-        * StorageProcess/ServiceWorker/WebSWServerConnection.messages.in:
-
-        * WebProcess/Storage/WebSWClientConnection.cpp:
-        (WebKit::WebSWClientConnection::addServiceWorkerRegistrationInServer):
-        (WebKit::WebSWClientConnection::removeServiceWorkerRegistrationInServer):
-        * WebProcess/Storage/WebSWClientConnection.h:
-        * WebProcess/Storage/WebSWClientConnection.messages.in:
-
-2017-11-02  Alex Christensen  <achristensen@webkit.org>
-
-        Use CompletionHandlers for redirects
-        https://bugs.webkit.org/show_bug.cgi?id=179163
-
-        Reviewed by Tim Horton.
-
-        * NetworkProcess/Downloads/BlobDownloadClient.cpp:
-        (WebKit::BlobDownloadClient::willSendRequestAsync):
-        * NetworkProcess/Downloads/BlobDownloadClient.h:
-        * NetworkProcess/NetworkDataTask.h:
-        * NetworkProcess/NetworkLoad.cpp:
-        (WebKit::NetworkLoad::~NetworkLoad):
-        (WebKit::NetworkLoad::continueWillSendRequest):
-        (WebKit::NetworkLoad::willSendRequestAsync):
-        * NetworkProcess/NetworkLoad.h:
-        * NetworkProcess/NetworkLoadClient.h:
-        * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
-        (-[WKNetworkSessionDelegate URLSession:task:willPerformHTTPRedirection:newRequest:completionHandler:]):
-        (-[WKNetworkSessionDelegate URLSession:task:_schemeUpgraded:completionHandler:]):
-        * UIProcess/API/APIDownloadClient.h:
-        (API::DownloadClient::willSendRequest):
-        * UIProcess/API/C/WKContext.cpp:
-        (WKContextSetDownloadClient):
-        * UIProcess/Cocoa/DownloadClient.h:
-        * UIProcess/Cocoa/DownloadClient.mm:
-        (WebKit::DownloadClient::willSendRequest):
-        * WebProcess/Network/WebResourceLoader.cpp:
-        (WebKit::WebResourceLoader::willSendRequest):
-        * WebProcess/Plugins/PluginView.cpp:
-        (WebKit::PluginView::Stream::~Stream):
-        (WebKit::PluginView::Stream::continueLoad):
-        (WebKit::PluginView::Stream::willSendRequest):
-        * WebProcess/WebPage/WebURLSchemeTaskProxy.cpp:
-
-2017-11-02  Christopher Reid  <chris.reid@sony.com>
-
-        Add a FileSystem namespace to FileSystem.cpp
-        https://bugs.webkit.org/show_bug.cgi?id=179063
-
-        Reviewed by Darin Adler.
-
-        * NetworkProcess/Downloads/BlobDownloadClient.cpp:
-        * NetworkProcess/Downloads/BlobDownloadClient.h:
-        * NetworkProcess/NetworkDataTaskBlob.cpp:
-        * NetworkProcess/NetworkDataTaskBlob.h:
-        * NetworkProcess/NetworkProcess.cpp:
-        * NetworkProcess/cache/CacheStorageEngine.cpp:
-        * NetworkProcess/cache/CacheStorageEngineCaches.cpp:
-        * NetworkProcess/cache/NetworkCache.cpp:
-        * NetworkProcess/cache/NetworkCacheBlobStorage.cpp:
-        * NetworkProcess/cache/NetworkCacheData.cpp:
-        * NetworkProcess/cache/NetworkCacheFileSystem.cpp:
-        * NetworkProcess/cache/NetworkCacheIOChannelCocoa.mm:
-        * NetworkProcess/cache/NetworkCacheIOChannelSoup.cpp:
-        * NetworkProcess/cache/NetworkCacheStatistics.cpp:
-        * NetworkProcess/cache/NetworkCacheStorage.cpp:
-        * NetworkProcess/capture/NetworkCaptureManager.cpp:
-        * NetworkProcess/capture/NetworkCaptureManager.h:
-        * NetworkProcess/capture/NetworkCaptureRecorder.cpp:
-        * NetworkProcess/capture/NetworkCaptureResource.h:
-        * NetworkProcess/cocoa/NetworkDataTaskCocoa.mm:
-        * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
-        * NetworkProcess/soup/NetworkProcessSoup.cpp:
-        * Shared/Plugins/Netscape/unix/NetscapePluginModuleUnix.cpp:
-        * Shared/Plugins/unix/PluginSearchPath.cpp:
-        * Shared/WebMemorySampler.cpp:
-        * Shared/WebMemorySampler.h:
-        * Shared/gtk/ProcessExecutablePathGtk.cpp:
-        * Shared/ios/ChildProcessIOS.mm:
-        * Shared/mac/ChildProcessMac.mm:
-        * Shared/mac/SandboxExtensionMac.mm:
-        * Shared/wpe/ProcessExecutablePathWPE.cpp:
-        * StorageProcess/StorageProcess.cpp:
-        * UIProcess/API/APIContentRuleListStore.cpp:
-        * UIProcess/API/glib/APIWebsiteDataStoreGLib.cpp:
-        * UIProcess/API/glib/IconDatabase.cpp:
-        * UIProcess/API/glib/WebKitFaviconDatabase.cpp:
-        * UIProcess/API/glib/WebKitFileChooserRequest.cpp:
-        * UIProcess/API/glib/WebKitWebContext.cpp:
-        * UIProcess/API/glib/WebKitWebsiteDataManager.cpp:
-        * UIProcess/Automation/WebAutomationSession.cpp:
-        * UIProcess/Cocoa/WebProcessPoolCocoa.mm:
-        * UIProcess/Cocoa/WebViewImpl.mm:
-        * UIProcess/Launcher/glib/ProcessLauncherGLib.cpp:
-        * UIProcess/Plugins/gtk/PluginInfoCache.cpp:
-        * UIProcess/Plugins/unix/PluginInfoStoreUnix.cpp:
-        * UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp:
-        * UIProcess/ResourceLoadStatisticsPersistentStorage.cpp:
-        * UIProcess/WebStorage/LocalStorageDatabase.cpp:
-        * UIProcess/WebStorage/LocalStorageDatabaseTracker.cpp:
-        * UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm:
-        * UIProcess/WebsiteData/WebsiteDataStore.cpp:
-        * UIProcess/gtk/WebProcessPoolGtk.cpp:
-        * UIProcess/mac/WebPageProxyMac.mm:
-        * UIProcess/wpe/WebProcessPoolWPE.cpp:
-        * WebProcess/InjectedBundle/API/glib/WebKitExtensionManager.cpp:
-        * WebProcess/InjectedBundle/glib/InjectedBundleGlib.cpp:
-        * WebProcess/MediaCache/WebMediaKeyStorageManager.cpp:
-        * WebProcess/Plugins/Netscape/NetscapePluginStream.cpp:
-        * WebProcess/Plugins/Netscape/NetscapePluginStream.h:
-        * WebProcess/WebCoreSupport/SessionStateConversion.cpp:
-
-2017-11-02  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Make ServiceWorker a Remote Inspector debuggable target
-        https://bugs.webkit.org/show_bug.cgi?id=179043
-        <rdar://problem/34126008>
-
-        Reviewed by Brian Burg.
-
-        * UIProcess/API/Cocoa/_WKRemoteWebInspectorViewController.h:
-        * UIProcess/API/Cocoa/_WKRemoteWebInspectorViewController.mm:
-        (debuggableTypeString):
-        Provide a way to start a Remote Web Inspector frontend for a ServiceWorker target type.
-
-2017-11-02  Ryan Haddad  <ryanhaddad@apple.com>
-
-        Unreviewed, rolling out r224353.
-
-        Breaks internal builds.
-
-        Reverted changeset:
-
-        "Ignore HSTS for partitioned, cross-origin subresource
-        requests"
-        https://bugs.webkit.org/show_bug.cgi?id=178993
-        https://trac.webkit.org/changeset/224353
-
-2017-11-02  John Wilander  <wilander@apple.com>
-
-        Ignore HSTS for partitioned, cross-origin subresource requests
-        https://bugs.webkit.org/show_bug.cgi?id=178993
-        <rdar://problem/34962462>
-
-        Reviewed by Brent Fulgham and Alex Christensen.
-
-        * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
-        (downgradeRequest):
-            Convenience function to downgrade a request if
-            CFNetwork as already upgraded it during
-            canonicalization. This allows the rest of 
-            WebKit's processing to function, such as UIR
-            and mixed content blocking.
-        (updateIgnoreStrictTransportSecuritySettingIfNecessary):
-            Adds and removed the ignore request accordingly.
-        (-[WKNetworkSessionDelegate URLSession:task:willPerformHTTPRedirection:newRequest:completionHandler:]):
-            Now asks CFNetwork to ignore HSTS on resource loads we
-            partition cookies for.
-        (-[WKNetworkSessionDelegate URLSession:task:_schemeUpgraded:completionHandler:]):
-            Now asks CFNetwork to ignore HSTS on resource loads we
-            partition cookies for.
-
-2017-11-02  Yousuke Kimoto  <yousuke.kimoto@sony.com>
-
-        [WinCairo] Add IPC files for wincairo webkit
-        https://bugs.webkit.org/show_bug.cgi?id=177919
-
-        Reviewed by Alex Christensen.
-
-        * Platform/IPC/Attachment.cpp:
-        * Platform/IPC/Attachment.h:
-        (IPC::Attachment::Attachment):
-        (IPC::Attachment::handle):
-        * Platform/IPC/Connection.h:
-        (IPC::Connection::identifierIsNull):
-        (IPC::Connection::sendWithReply):
-        * Platform/IPC/win/AttachmentWin.cpp: Added.
-        (IPC::Attachment::encode const):
-        (IPC::getDuplicatedHandle):
-        (IPC::Attachment::decode):
-        * Platform/IPC/win/ConnectionWin.cpp: Added.
-        (IPC::Connection::createServerAndClientIdentifiers):
-        (IPC::Connection::platformInitialize):
-        (IPC::Connection::platformInvalidate):
-        (IPC::Connection::readEventHandler):
-        (IPC::Connection::writeEventHandler):
-        (IPC::Connection::open):
-        (IPC::Connection::platformCanSendOutgoingMessages const):
-        (IPC::Connection::sendOutgoingMessage):
-        (IPC::Connection::willSendSyncMessage):
-        (IPC::Connection::didReceiveSyncReply):
-        * PlatformWin.cmake:
-
-2017-11-02  Megan Gardner  <megan_gardner@apple.com>
-
-        Early out selection update when data is not present
-        https://bugs.webkit.org/show_bug.cgi?id=179084
-
-        Reviewed by Ryosuke Niwa.
-
-        We should early out of a selection update when we do not have the data that is necessary to make that
-        update. This mostly helps avoid debug asserts, but will be helpful with the selection changes that are
-        ongoing.
-
-        * UIProcess/ios/WKContentViewInteraction.mm:
-        (-[WKContentView _updateChangedSelection:]):
-
-2017-11-02  Eric Carlson  <eric.carlson@apple.com>
-
-        [MediaStream] audioTrack.label is always empty on macOS
-        https://bugs.webkit.org/show_bug.cgi?id=179175
-        <rdar://problem/35315438>
-
-        Reviewed by Youenn Fablet.
-
-        * WebProcess/cocoa/UserMediaCaptureManager.cpp:
-        (WebKit::UserMediaCaptureManager::createCaptureSource): Pass settings.label to Source constructor.
-
-2017-11-02  Frederic Wang  <fwang@igalia.com>
-
-        Add references to bug 179167 in FIXME comments
-        https://bugs.webkit.org/show_bug.cgi?id=179168
-
-        Reviewed by Daniel Bates.
-
-        * Configurations/FeatureDefines.xcconfig:
-
-2017-11-01  Jeremy Jones  <jeremyj@apple.com>
-
-        Implement WKFullscreenWindowController for iOS.
-        https://bugs.webkit.org/show_bug.cgi?id=178924
-        rdar://problem/34697120
-
-        Reviewed by Simon Fraser.
-
-        Plumb relevant calls through WKWebView and PageClientImplIOS.
-
-        This forms the base implementation for element fullscreen. This will animate an element into fullscreen and back to inline.
-        It does this by replacing the WKWebView with a placeholder image and presenting the WKWebView with a fullscreen view controller.
-        This also attempts to preserve UI state of the WKWebView when it is placed back inline.
-
-        To enable _WKFullscreenDelegate for iOS, this adds an iOS version of the delegate methods that passes WKWebView instead of NSView.
-        The iOS version of these functions are renamed to be more specific and disambiguate them from the video fullscreen delegate methods.
-
-        This also adds an image asset for the done button.
-
-        * Configurations/FeatureDefines.xcconfig:
-        * UIProcess/API/Cocoa/WKWebView.mm:
-        (-[WKWebView hasFullScreenWindowController]):
-        (-[WKWebView fullScreenWindowController]):
-        (-[WKWebView closeFullScreenWindowController]):
-        (-[WKWebView fullScreenPlaceholderView]):
-        * UIProcess/API/Cocoa/WKWebViewInternal.h:
-        * UIProcess/API/Cocoa/_WKFullscreenDelegate.h:
-        * UIProcess/Cocoa/FullscreenClient.h:
-        * UIProcess/Cocoa/FullscreenClient.mm:
-        (WebKit::FullscreenClient::FullscreenClient):
-        (WebKit::FullscreenClient::setDelegate):
-        (WebKit::FullscreenClient::willEnterFullscreen):
-        (WebKit::FullscreenClient::didEnterFullscreen):
-        (WebKit::FullscreenClient::willExitFullscreen):
-        (WebKit::FullscreenClient::didExitFullscreen):
-        * UIProcess/ios/PageClientImplIOS.mm:
-        (WebKit::PageClientImpl::closeFullScreenManager):
-        (WebKit::PageClientImpl::isFullScreen):
-        (WebKit::PageClientImpl::enterFullScreen):
-        (WebKit::PageClientImpl::exitFullScreen):
-        (WebKit::PageClientImpl::beganEnterFullScreen):
-        (WebKit::PageClientImpl::beganExitFullScreen):
-        * UIProcess/ios/WKContentView.mm:
-        * UIProcess/ios/WKFullScreenWindowControllerIOS.h: Copied from Source/WebKit/UIProcess/API/Cocoa/_WKFullscreenDelegate.h.
-        * UIProcess/ios/WKFullScreenWindowControllerIOS.mm: Added.
-        (WebKit::replaceViewWithView):
-        (WebKit::WKWebViewState::applyTo):
-        (WebKit::WKWebViewState::store):
-        (-[_WKTapDelgatingView setTarget:action:]):
-        (-[_WKTapDelgatingView hitTest:withEvent:]):
-        (-[_WKFullScreenViewController dealloc]):
-        (-[_WKFullScreenViewController viewWillTransitionToSize:withTransitionCoordinator:]):
-        (+[_WKFullScreenViewController configureView:withBackgroundFillOfColor:opacity:filter:]):
-        (-[_WKFullScreenViewController _updateTransparencyOfVisualEffectView:]):
-        (-[_WKFullScreenViewController createVisualEffectViewWithFrame:]):
-        (-[_WKFullScreenViewController loadView]):
-        (-[_WKFullScreenViewController viewWillAppear:]):
-        (-[_WKFullScreenViewController viewDidDisappear:]):
-        (-[_WKFullScreenViewController cancelAction:]):
-        (-[_WKFullScreenViewController hideCancelButton]):
-        (-[_WKFullScreenViewController showCancelButton]):
-        (-[_WKFullScreenViewController setTarget:action:]):
-        (-[_WKFullScreenViewController prefersStatusBarHidden]):
-        (-[WKFullscreenAnimationController transitionDuration:]):
-        (-[WKFullscreenAnimationController animateTransition:]):
-        (-[WKFullscreenAnimationController animationEnded:]):
-        (-[WKFullScreenWindowController initWithWebView:page:]):
-        (-[WKFullScreenWindowController dealloc]):
-        (-[WKFullScreenWindowController isFullScreen]):
-        (-[WKFullScreenWindowController webViewPlaceholder]):
-        (-[WKFullScreenWindowController enterFullScreen]):
-        (-[WKFullScreenWindowController beganEnterFullScreenWithInitialFrame:finalFrame:]):
-        (-[WKFullScreenWindowController completedEnterFullScreen]):
-        (-[WKFullScreenWindowController exitFullScreen]):
-        (-[WKFullScreenWindowController requestExitFullScreen]):
-        (-[WKFullScreenWindowController beganExitFullScreenWithInitialFrame:finalFrame:]):
-        (-[WKFullScreenWindowController completedExitFullScreen]):
-        (-[WKFullScreenWindowController close]):
-        (-[WKFullScreenWindowController _manager]):
-        (-[WKFullScreenWindowController animationControllerForPresentedController:presentingController:sourceController:]):
-        (-[WKFullScreenWindowController animationControllerForDismissedController:]):
-        * WebKit.xcassets/Contents.json: Added.
-        * WebKit.xcassets/Done.imageset/Contents.json: Added.
-        * WebKit.xcassets/Done.imageset/Done.pdf: Added.
-        * WebKit.xcodeproj/project.pbxproj:
-        * WebProcess/FullScreen/WebFullScreenManager.cpp:
-        (WebKit::WebFullScreenManager::willEnterFullScreen):
-        (WebKit::WebFullScreenManager::willExitFullScreen):
-
-2017-11-01  Daniel Bates  <dabates@apple.com>
-
-        XMLHttpRequest should not sniff content encoding
-        https://bugs.webkit.org/show_bug.cgi?id=175597
-        <rdar://problem/34912624>
-
-        Reviewed by Alex Christensen.
-
-        Fixes an issue where the body of an HTTP response with headers "Content-Type: application/octet-stream" and
-        "Content-Encoding: gzip" associated with an XHR request to a .gz file would not be automatically gzipped
-        decompressed. Specifically, such a response would be treated analogous to a response with headers
-        "Content-Type: application/gzip" and "Content-Encoding: identity". This behavior does not conform to the
-        behavior of the Content-Encoding header as defined in the HTTP 1.1 and later specs. Moreover this behavior
-        breaks the Epic Zen Garden demo: <https://s3.amazonaws.com/mozilla-games/ZenGarden/EpicZenGarden.html>.
-
-        On macOS 10.13.2 opt out of content encoding sniffing when making an XHR request. We likely can
-        selectively opt out of content encoding sniffing for other network requests. This will be done
-        in subsequent commits to make it straightforward to identify site breakage (if any).
-
-        * NetworkProcess/Downloads/Download.cpp:
-        (WebKit::Download::start): Enable content encoding sniff to match existing behavior.
-        (WebKit::Download::startWithHandle): Ditto.
-        * NetworkProcess/NetworkDataTask.cpp:
-        (WebKit::NetworkDataTask::create): Pass through the content encoding sniffing policy.
-        * NetworkProcess/NetworkLoad.cpp:
-        (WebKit::NetworkLoad::NetworkLoad): Ditto.
-        * NetworkProcess/NetworkLoadParameters.h:
-        * NetworkProcess/NetworkResourceLoadParameters.cpp:
-        (WebKit::NetworkResourceLoadParameters::encode const): Encode content encoding sniffing policy.
-        (WebKit::NetworkResourceLoadParameters::decode): Decode content encoding sniffing policy.
-        * NetworkProcess/cache/NetworkCacheSpeculativeLoad.cpp:
-        (WebKit::NetworkCache::SpeculativeLoad::SpeculativeLoad): Enable content encoding sniff to match existing
-        behavior. We should look to disable content encoding sniffing in a subsequent change.
-        * NetworkProcess/cocoa/NetworkDataTaskCocoa.h:
-        * NetworkProcess/cocoa/NetworkDataTaskCocoa.mm:
-        (WebKit::applySniffingPoliciesAndBindRequestToInferfaceIfNeeded): Added helper function
-        to apply sniffing policies and bind request to interface, if applicable.
-        (WebKit::NetworkDataTaskCocoa::NetworkDataTaskCocoa): Modified to take the content encoding sniffing
-        policy. Calls applySniffingPoliciesAndBindRequestToInferfaceIfNeeded() to apply this policy. Also use
-        convenience function URL::isLocalFile() to determine if the URL is a file URL.
-        * NetworkProcess/soup/NetworkDataTaskSoup.cpp:
-        (WebKit::NetworkDataTaskSoup::NetworkDataTaskSoup): Pass through the content encoding sniffing policy.
-        * NetworkProcess/soup/NetworkDataTaskSoup.h:
-        * WebProcess/Network/WebLoaderStrategy.cpp:
-        (WebKit::WebLoaderStrategy::scheduleLoadFromNetworkProcess): Pass through the content encoding sniffing policy.
-        (WebKit::WebLoaderStrategy::loadResourceSynchronously): Enable content encoding sniff to match existing
-        behavior.
-
-2017-11-01  Brady Eidson  <beidson@apple.com>
-
-        Plumbing for handling SW scripts failing to evaluate
-        https://bugs.webkit.org/show_bug.cgi?id=178926
-
-        Reviewed by Chris Dumez.
-
-        * StorageProcess/ServiceWorker/WebSWServerConnection.cpp:
-        (WebKit::WebSWServerConnection::updateServiceWorkerContext):
-        (WebKit::WebSWServerConnection::setContextConnection):
-        (WebKit::WebSWServerConnection::startServiceWorkerContext): Deleted.
-        * StorageProcess/ServiceWorker/WebSWServerConnection.h:
-
-        * WebProcess/Storage/WebSWContextManagerConnection.cpp:
-        (WebKit::WebSWContextManagerConnection::updateServiceWorker):
-        (WebKit::WebSWContextManagerConnection::serviceWorkerStartedWithMessage):
-        (WebKit::WebSWContextManagerConnection::startServiceWorker): Deleted.
-        * WebProcess/Storage/WebSWContextManagerConnection.h:
-        * WebProcess/Storage/WebSWContextManagerConnection.messages.in:
-
-2017-11-01  Frederic Wang  <fwang@igalia.com>
-
-        Make iOS Find UI reveal matches in scrollable elements
-        https://bugs.webkit.org/show_bug.cgi?id=178789
-
-        Reviewed by Tim Horton.
-
-        * WebProcess/WebPage/ios/FindControllerIOS.mm:
-        (WebKit::FindController::didFindString): Reveal selection up to the main frame. The main frame
-        is handled by the SmartMagnificationController.
-
-2017-11-01  Michael Catanzaro  <mcatanzaro@igalia.com>
-
-        REGRESSION(r224192): [WPE] Fix WebEventFactory::createWebWheelEvent
-        https://bugs.webkit.org/show_bug.cgi?id=179098
-
-        Reviewed by Sam Weinig.
-
-        * Shared/wpe/WebEventFactory.cpp:
-        (WebKit::WebEventFactory::createWebWheelEvent):
-
-2017-10-31  Tim Horton  <timothy_horton@apple.com>
-
-        Clean up some drag and drop feature flags
-        https://bugs.webkit.org/show_bug.cgi?id=179082
-
-        Reviewed by Simon Fraser.
-
-        * Configurations/FeatureDefines.xcconfig:
-
-2017-10-31  Wenson Hsieh  <wenson_hsieh@apple.com>
-
-        Followup to r224238: API::Attachment should generate a _WKAttachment ObjC wrapper
-        https://bugs.webkit.org/show_bug.cgi?id=179080
-
-        Reviewed by Tim Horton.
-
-        Fixes a failing API test. The new Attachment object type added in r224238 was not actually being handled in
-        Object::newObject, so a plain WKObject Objective C wrapper was being created; fix this by allocating a new
-        _WKAttachment object for Type::Attachment.
-
-        * Shared/Cocoa/APIObject.mm:
-        (API::Object::newObject):
-
-2017-10-31  Tim Horton  <timothy_horton@apple.com>
-
-        Fix up some content filtering feature flags
-        https://bugs.webkit.org/show_bug.cgi?id=179079
-
-        Reviewed by Simon Fraser.
-
-        * Configurations/FeatureDefines.xcconfig:
-
-2017-10-31  Youenn Fablet  <youenn@apple.com>
-
-        rwt should allow service worker to load localhost HTTPS resources with any certificate
-        https://bugs.webkit.org/show_bug.cgi?id=179018
-
-        Reviewed by Chris Dumez.
-
-        Allowing ServiceWorkerProcessProxy to handle authentication challenge.
-        Temporarily adding a boolean flag through WebProcessPool to lower the SSL certificate verifications for service workers.
-        This allows reducing flakiness in our layout tests for rwt.
-        Future work should be done to expose a correct API for the application level to handle authentication challenges properly.
-
-        * UIProcess/API/C/WKContext.cpp:
-        (WKContextSetAllowsAnySSLCertificateForServiceWorkerTesting):
-        * UIProcess/API/C/WKContextPrivate.h:
-        * UIProcess/API/Cocoa/WKProcessPool.mm:
-        (-[WKProcessPool _setAllowsAnySSLCertificateForServiceWorker:]):
-        * UIProcess/API/Cocoa/WKProcessPoolPrivate.h:
-        * UIProcess/Network/NetworkProcessProxy.cpp:
-        (WebKit::NetworkProcessProxy::didReceiveAuthenticationChallenge):
-        (WebKit::NetworkProcessProxy::canAuthenticateAgainstProtectionSpace):
-        * UIProcess/ServiceWorkerProcessProxy.cpp:
-        (WebKit::ServiceWorkerProcessProxy::didReceiveAuthenticationChallenge):
-        * UIProcess/ServiceWorkerProcessProxy.h:
-        * UIProcess/WebProcessPool.h:
-
-2017-10-31  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Web Inspector: UIProcess ASSERT in ~RemoteWebInspectorProxy when InspectorProcess crashes
-        https://bugs.webkit.org/show_bug.cgi?id=179044
-
-        Reviewed by Alex Christensen.
-
-        * UIProcess/RemoteWebInspectorProxy.cpp:
-        (WebKit::RemoteWebInspectorProxy::frontendDidClose):
-        Add a protector to keep the proxy alive for the duration of this method.
-
-2017-10-31  Youenn Fablet  <youenn@apple.com>
-
-        Crash in:  com.apple.WebKit: WebKit::CacheStorage::Caches::initializeSize(WTF::Function<void (std::optional<WebCore::DOMCacheEngine::Error>&&)>&&) + 30 (CacheStorageEngineCaches.cpp:163)
-        https://bugs.webkit.org/show_bug.cgi?id=179037
-
-        Reviewed by Chris Dumez.
-
-        * NetworkProcess/cache/CacheStorageEngineCaches.cpp:
-        (WebKit::CacheStorage::Caches::initializeSize): the storage backend may be cleared when clearing caches by the UI Process.
-        Returning early in that case. A web application will typically fail to open a cache in this case.
-        On retry, the cache should be opened.
-
-2017-10-31  Wenson Hsieh  <wenson_hsieh@apple.com>
-
-        [Attachment Support] Implement WKWebView SPI for inserting attachment elements
-        https://bugs.webkit.org/show_bug.cgi?id=179013
-        <rdar://problem/35249668>
-
-        Reviewed by Tim Horton.
-
-        Adds native SPI to insert attachment elements given a filename, an optional MIME type, and a data blob. See
-        change-by-change comments below for more detail. Covered by a new API test.
-
-        * PlatformMac.cmake:
-        * Shared/API/APIObject.h:
-        * Shared/API/Cocoa/WebKitPrivate.h:
-        * UIProcess/API/APIAttachment.cpp: Copied from Source/WebKit/Shared/API/Cocoa/WebKitPrivate.h.
-        (API::Attachment::create):
-        (API::Attachment::Attachment):
-        (API::Attachment::~Attachment):
-
-        Introduce API::Attachment, which represents a platform-agnostic Attachment.
-
-        * UIProcess/API/APIAttachment.h: Copied from Source/WebKit/Shared/API/Cocoa/WebKitPrivate.h.
-        * UIProcess/API/Cocoa/WKWebView.mm:
-        (-[WKWebView _insertAttachmentWithFilename:contentType:data:options:completion:]):
-
-        Adds support for inserting a new attachment element. Calls out to WebPageProxy to insert the attachment from the
-        given data blob, and creates a new API-object-backed _WKAttachment.
-
-        (-[WKWebView _executeEditCommand:argument:completion:]):
-
-        Support passing in a nil completion block.
-
-        * UIProcess/API/Cocoa/WKWebViewInternal.h:
-        * UIProcess/API/Cocoa/WKWebViewPrivate.h:
-        * UIProcess/API/Cocoa/_WKAttachment.h: Copied from Source/WebKit/Shared/API/Cocoa/WebKitPrivate.h.
-        * UIProcess/API/Cocoa/_WKAttachment.mm: Copied from Source/WebCore/html/HTMLAttachmentElement.h.
-
-        Introduces _WKAttachment, an Objective C wrapper around the API::Attachment.
-
-        (-[_WKAttachment _apiObject]):
-        (-[_WKAttachment isEqual:]):
-        (-[_WKAttachment uniqueIdentifier]):
-        (-[_WKAttachment hash]):
-
-        Add _WKAttachment, a WebKit SPI object that wraps an attachment element unique identifier. Also, allow
-        _WKAttachment to be used as a hashable NSDictionary key.
-
-        (-[_WKAttachment description]):
-        * UIProcess/API/Cocoa/_WKAttachmentInternal.h: Copied from Source/WebKit/Shared/API/Cocoa/WebKitPrivate.h.
-        (API::wrapper):
-        * UIProcess/WebPageProxy.cpp:
-        (WebKit::WebPageProxy::insertAttachment):
-
-        Implement IPC support for inserting an attachment.
-
-        * UIProcess/WebPageProxy.h:
-        * WebKit.xcodeproj/project.pbxproj:
-        * WebProcess/WebPage/WebPage.cpp:
-        (WebKit::WebPage::insertAttachment):
-        * WebProcess/WebPage/WebPage.h:
-        * WebProcess/WebPage/WebPage.messages.in:
-
-2017-10-31  Alex Christensen  <achristensen@webkit.org>
-
-        Fix custom header field setting with reloads and asynchronous navigation action policy decisions
-        https://bugs.webkit.org/show_bug.cgi?id=179064
-
-        Reviewed by Tim Horton.
-
-        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
-        (WebKit::WebFrameLoaderClient::applyToDocumentLoader):
-        (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
-        * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
-        * WebProcess/WebPage/WebFrame.cpp:
-        (WebKit::WebFrame::didReceivePolicyDecision):
-        * WebProcess/WebPage/WebFrame.h:
-        * WebProcess/WebPage/WebPage.cpp:
-        (WebKit::WebPage::didReceivePolicyDecision):
-
-2017-10-31  Carlos Garcia Campos  <cgarcia@igalia.com>
-
-        Unreviewed. Update OptionsGTK.cmake and NEWS for 2.19.1 release.
-
-        * gtk/NEWS: Add release notes for 2.19.1.
-
-2017-10-31  Carlos Garcia Campos  <cgarcia@igalia.com>
-
-        Unreviewed. Fix GTK+ make distcheck.
-
-        Include WebCore/TextEncodingRegistry.h to ensure the forwarding header is generated.
-
-        * UIProcess/API/glib/WebKitSettings.cpp:
-
-2017-10-31  Commit Queue  <commit-queue@webkit.org>
-
-        Unreviewed, rolling out r223884.
-        https://bugs.webkit.org/show_bug.cgi?id=179055
-
-        It broke GTK+ make distcheck (Requested by KaL on #webkit).
-
-        Reverted changeset:
-
-        "[GTK][WPE] generate-forwarding-headers.pl should also scan
-        derived sources in WebKit framework"
-        https://bugs.webkit.org/show_bug.cgi?id=178579
-        https://trac.webkit.org/changeset/223884
-
-2017-10-30  Fujii Hironori  <Hironori.Fujii@sony.com>
-
-        Use LazyNeverDestroyed instead of DEFINE_GLOBAL for XMLNames, HTMLNames, MathMLNames and SVGNames
-        https://bugs.webkit.org/show_bug.cgi?id=175118
-
-        Reviewed by Alex Christensen.
-
-        * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLPrivate.cpp:
-        (WebKit::wrap):
-
-2017-10-27  Megan Gardner  <megan_gardner@apple.com>
-
-        Correctly determine affinity when inserting text via Keyboard Suggestions
-        https://bugs.webkit.org/show_bug.cgi?id=178969
-
-        Reviewed by Ryosuke Niwa.
-
-        Use the logic of VisiblePosition to correctly determine cursor affinity. We were
-        defaulting to upstream, but that in incorrect and resulted in hitting asserts that
-        we should not. This should give us the correct affinity in all cases.
-
-        * WebProcess/WebPage/ios/WebPageIOS.mm:
-        (WebKit::WebPage::syncApplyAutocorrection):
-
-2017-10-30  Commit Queue  <commit-queue@webkit.org>
-
-        Unreviewed, rolling out r224078.
-        https://bugs.webkit.org/show_bug.cgi?id=179026
-
-        MotionMark regression (Requested by shallawa on #webkit).
-
-        Reverted changeset:
-
-        "When navigating back to a page, compositing layers may not
-        use accelerated drawing"
-        https://bugs.webkit.org/show_bug.cgi?id=178749
-        https://trac.webkit.org/changeset/224078
-
-2017-10-30  Sam Weinig  <sam@webkit.org>
-
-        [Setting] Only expose experimental features that are compiled in
-        https://bugs.webkit.org/show_bug.cgi?id=179023
-
-        Reviewed by Tim Horton.
-
-        * Scripts/PreferencesTemplates/WebPreferencesExperimentalFeatures.cpp.erb:
-        
-            Update template to conditionally expose experimental features based on their
-            'condition' option in WebPreferences.yaml
-
-2017-10-30  Michael Catanzaro  <mcatanzaro@igalia.com>
-
-        [WPE] Fix build warnings
-        https://bugs.webkit.org/show_bug.cgi?id=178899
-
-        Reviewed by Carlos Alberto Lopez Perez.
-
-        * PlatformWPE.cmake:
-
-2017-10-30  Sam Weinig  <sam@webkit.org>
-
-        [Settings] Replace macro driven experimental features code with generated code
-        https://bugs.webkit.org/show_bug.cgi?id=178994
-
-        Reviewed by Simon Fraser.
-
-        As a first step toward allowing experimental features to vary based on compile
-        time flags, replace the macro driven implementation of the WebPreferences part
-        of experimental features, with one generated from a template file.
-
-        * CMakeLists.txt:
-        * DerivedSources.make:
-        * Scripts/GeneratePreferences.rb:
-        * WebKit.xcodeproj/project.pbxproj:
-
-            Generate the new template.
-        
-        * Scripts/PreferencesTemplates/WebPreferencesExperimentalFeatures.cpp.erb: Added.
-        * UIProcess/WebPreferences.cpp:
-        (WebKit::createExperimentalFeaturesVector): Deleted.
-        (WebKit::WebPreferences::experimentalFeatures): Deleted.
-        (WebKit::WebPreferences::isEnabledForFeature const): Deleted.
-        (WebKit::WebPreferences::setEnabledForFeature): Deleted.
-        (WebKit::WebPreferences::enableAllExperimentalFeatures): Deleted.
-        
-            Replace macro implementation with template generated one.
-
-2017-10-30  Michael Catanzaro  <mcatanzaro@igalia.com>
-
-        [WPE] Build more files under WebCore as unified sources and get rid of WebCorePlatformWPE build target
-        https://bugs.webkit.org/show_bug.cgi?id=178964
-
-        Reviewed by Carlos Alberto Lopez Perez.
-
-        * PlatformWPE.cmake:
-
-2017-10-30  Michael Catanzaro  <mcatanzaro@igalia.com>
-
-        [WPE][GTK] Expose availability of certain editing commands in WebKitEditorState
-        https://bugs.webkit.org/show_bug.cgi?id=168219
-
-        Reviewed by Ryosuke Niwa.
-
-        Expose canCut, canCopy, canPaste, canUndo, and canRedo in EditorState::PostLayouData.
-
-        Add corresponding new WPE/GTK API.
-
-        Remove allowsCopy from WebKitTestResultData. It's unused, does not work correctly in all
-        circumstances, and irritates Ryosuke.
-
-        Also, remove a bunch of #ifs guarding post layout data, since it's now used on all ports.
-
-        * Shared/EditorState.cpp:
-        (WebKit::EditorState::encode const):
-        (WebKit::EditorState::decode):
-        (WebKit::EditorState::PostLayoutData::encode const):
-        (WebKit::EditorState::PostLayoutData::decode):
-        * Shared/EditorState.h:
-        (WebKit::EditorState::postLayoutData const const):
-        * Shared/WebHitTestResultData.cpp:
-        (WebKit::WebHitTestResultData::WebHitTestResultData):
-        (WebKit::WebHitTestResultData::encode const):
-        (WebKit::WebHitTestResultData::decode):
-        * Shared/WebHitTestResultData.h:
-        * UIProcess/API/APIHitTestResult.h:
-        (API::HitTestResult::allowsCopy const): Deleted.
-        * UIProcess/API/glib/WebKitEditorState.cpp:
-        (webkitEditorStateChanged):
-        (webkit_editor_state_is_cut_available):
-        (webkit_editor_state_is_copy_available):
-        (webkit_editor_state_is_paste_available):
-        (webkit_editor_state_is_undo_available):
-        (webkit_editor_state_is_redo_available):
-        * UIProcess/API/glib/WebKitWebView.cpp:
-        (webkit_web_view_can_execute_editing_command):
-        * UIProcess/API/gtk/WebKitEditorState.h:
-        * UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt:
-        * UIProcess/API/wpe/WebKitEditorState.h:
-        * WebProcess/WebPage/WebPage.cpp:
-        (WebKit::WebPage::editorState const):
-        * WebProcess/WebPage/mac/WebPageMac.mm:
-        (WebKit::WebPage::performImmediateActionHitTestAtLocation):
-
-2017-10-27  Sam Weinig  <sam@webkit.org>
-
-        [Settings] Generate more of the WebKit preferences code
-        https://bugs.webkit.org/show_bug.cgi?id=178945
-
-        Reviewed by Chris Dumez.
-
-        Generate WebPreferencesKeys.{h,cpp} and WebPreferencesStoreDefaultsMap.cpp
-
-        * CMakeLists.txt:
-        * DerivedSources.make:
-        * WebKit.xcodeproj/project.pbxproj:
-        * Scripts/GeneratePreferences.rb:
-        
-            Generate new files.
-        
-        * Scripts/PreferencesTemplates/WebPreferencesDefinitions.h.erb:
-        
-            Update include.
-        
-        * Scripts/PreferencesTemplates/WebPreferencesKeys.cpp.erb: Added.
-        * Scripts/PreferencesTemplates/WebPreferencesKeys.h.erb: Added.
-        * Scripts/PreferencesTemplates/WebPreferencesStoreDefaultsMap.cpp.erb: Added.
-
-            Add template files for new generated files.
-
-        * Shared/WebPreferencesDefaultValues.h: Copied from Source/WebKit/Shared/WebPreferencesDefinitionsBase.h.
-        * Shared/WebPreferencesDefinitionsBase.h:
-        
-            Renamed WebPreferencesDefinitionsBase.h to WebPreferencesDefaultValues.h to better indicate what it is.
-        
-        * Shared/WebPreferencesKeys.cpp: Removed.
-        * Shared/WebPreferencesKeys.h: Removed.
-        
-            Replaced with generated versions.
-
-        * Shared/WebPreferencesStore.cpp:
-        (WebKit::defaults): Deleted.
-        * Shared/WebPreferencesStore.h:
-        
-            Replace macro driven defaults map with generated WebPreferencesStoreDefaultsMap.cpp.
-
-2017-10-28  Chris Dumez  <cdumez@apple.com>
-
-        self.ExtendableEvent / Client / Clients / WindowClient do not exist in a Service Worker
-        https://bugs.webkit.org/show_bug.cgi?id=178976
-
-        Reviewed by Sam Weinig.
-
-        Actually enable the Service Worker RuntimeEnabledFeature in the Service Worker
-        WebProcess.
-
-        * WebProcess/Storage/WebSWContextManagerConnection.cpp:
-        (WebKit::WebSWContextManagerConnection::updatePreferences):
-
-2017-10-28  Joseph Pecoraro  <pecoraro@apple.com>
-
-        Make postprocess-framework-headers.sh a little easier to read
-        https://bugs.webkit.org/show_bug.cgi?id=178971
-
-        Reviewed by Sam Weinig.
-
-        * mac/postprocess-framework-headers.sh:
-
-2017-10-27  Daniel Bates  <dabates@apple.com>
-
-        Attempt to fix the Apple El Capitan build following <https://trac.webkit.org/changeset/224134>
-        (https://bugs.webkit.org/show_bug.cgi?id=178919)
-
-        Move definition of NetworkLoad::isAllowedToAskUserForCredentials() outside of USE(NETWORK_SESSION)-guarded section.
-
-        * NetworkProcess/NetworkLoad.cpp:
-        (WebKit::NetworkLoad::isAllowedToAskUserForCredentials const):
-
-2017-10-27  Daniel Bates  <dabates@apple.com>
-
-        Only allow non-mixed content protected subresources to ask for credentials
-        https://bugs.webkit.org/show_bug.cgi?id=178919
-        <rdar://problem/35015245>
-
-        Reviewed by Alex Christensen.
-
-        Only allow non-mixed content protected subresources to ask for credentials. It is not meaningful
-        to allow protected mixed-content subresources to ask for credentials.
-
-        * NetworkProcess/Downloads/PendingDownload.cpp:
-        (WebKit::PendingDownload::PendingDownload): Initialize m_isAllowedToAskUserForCredentials based on
-        the specified resource load parameters or NetworkLoad object.
-        * NetworkProcess/Downloads/PendingDownload.h: Add override for NetworkLoadClient::isAllowedToAskUserForCredentials().
-        * NetworkProcess/NetworkLoad.cpp:
-        (WebKit::NetworkLoad::isAllowedToAskUserForCredentials const): Added.
-        (WebKit::NetworkLoad::completeAuthenticationChallenge): Ask NetworkLoadClient whether the load is
-        allowed to prompt for credentials.
-        (WebKit::NetworkLoad::didReceiveAuthenticationChallenge): Ditto.
-        * NetworkProcess/NetworkLoad.h:
-        * NetworkProcess/NetworkLoadClient.h:
-        * NetworkProcess/NetworkResourceLoader.cpp:
-        (WebKit::NetworkResourceLoader::NetworkResourceLoader): Initialize m_isAllowedToAskUserForCredentials
-        based on the specified resource load parameters.
-        (WebKit::NetworkResourceLoader::willSendRedirectedRequest): We do not support prompting for credentials
-        for synchronous loads.
-        (WebKit::NetworkResourceLoader::continueWillSendRequest): Modified to take an argument as to whether the
-        load is allowed to ask the user for credentials and updates state.
-        * NetworkProcess/NetworkResourceLoader.h:
-        * NetworkProcess/NetworkResourceLoader.messages.in: Modified message ContinueWillSendRequest to take a
-        boolean as to whether the load is allowed to ask the user for credentials.
-        * NetworkProcess/PreconnectTask.h: Override NetworkLoadClient::isAllowedToAskUserForCredentials()
-        such that we never ask for credentials. This matches our current behavior.
-        * NetworkProcess/cache/NetworkCacheSpeculativeLoad.h: Ditto.
-        * WebProcess/Network/WebResourceLoader.cpp:
-        (WebKit::WebResourceLoader::willSendRequest): Query ResourceLoader as to whether the load is allowed to
-        ask the user for credentials and pass this state to NetworkResourceLoader.
-
-2017-10-27  Adrian Perez de Castro  <aperez@igalia.com>
-
-        [GTK][CMake] Incorrect conditional check when adding build dir to GIR runtime library path
-        https://bugs.webkit.org/show_bug.cgi?id=178936
-
-        Reviewed by Michael Catanzaro.
-
-        * PlatformGTK.cmake: Fix spelling of variable used in conditional.
-
-2017-10-27  Chris Dumez  <cdumez@apple.com>
-
-        Add initial support for serviceWorkerClient.postMessage()
-        https://bugs.webkit.org/show_bug.cgi?id=178794
-
-        Reviewed by Youenn Fablet.
-
-        Add initial support for serviceWorkerClient.postMessage():
-        - https://w3c.github.io/ServiceWorker/#client-postmessage
-
-        It is now possible to do bi-directional communication with a service worker
-        via postMessage().
-
-        * Shared/WebCoreArgumentCoders.cpp:
-        (IPC::ArgumentCoder<ServiceWorkerClientIdentifier>::encode):
-        (IPC::ArgumentCoder<ServiceWorkerClientIdentifier>::decode):
-        * Shared/WebCoreArgumentCoders.h:
-        * StorageProcess/ServiceWorker/WebSWServerConnection.cpp:
-        (WebKit::WebSWServerConnection::postMessageToServiceWorkerGlobalScope):
-        (WebKit::WebSWServerConnection::postMessageToServiceWorkerClient):
-        * StorageProcess/ServiceWorker/WebSWServerConnection.h:
-        * StorageProcess/ServiceWorker/WebSWServerConnection.messages.in:
-        * StorageProcess/StorageProcess.cpp:
-        (WebKit::StorageProcess::postMessageToServiceWorkerClient):
-        * StorageProcess/StorageProcess.h:
-        * StorageProcess/StorageProcess.messages.in:
-        * WebProcess/Storage/WebSWClientConnection.cpp:
-        (WebKit::WebSWClientConnection::postMessageToServiceWorkerGlobalScope):
-        (WebKit::WebSWClientConnection::postMessageToServiceWorkerClient):
-        * WebProcess/Storage/WebSWClientConnection.h:
-        * WebProcess/Storage/WebSWClientConnection.messages.in:
-        * WebProcess/Storage/WebSWContextManagerConnection.cpp:
-        (WebKit::WebSWContextManagerConnection::postMessageToServiceWorkerGlobalScope):
-        (WebKit::WebSWContextManagerConnection::postMessageToServiceWorkerClient):
-        * WebProcess/Storage/WebSWContextManagerConnection.h:
-        * WebProcess/Storage/WebSWContextManagerConnection.messages.in:
-
-2017-10-27  David Kilzer  <ddkilzer@apple.com>
-
-        REGRESSION (r224077): DeprecatedGlobalSettings::setAVKitEnabled() not protected by HAVE(AVKIT)
-
-        Unreviewed build fix.
-
-        * WebProcess/WebPage/WebPage.cpp:
-        (WebKit::WebPage::updatePreferences): Fix build.
-
-2017-10-26  Jeremy Jones  <jeremyj@apple.com>
-
-        Implement seek tolerance methods in WebAVPlayerController.
-        https://bugs.webkit.org/show_bug.cgi?id=178838
-        rdar://problem/33781777
-
-        Reviewed by Eric Carlson.
-
-        This implementes additional methods on WebAVPlayerController that allows AVKit more control over seeking.
-
-        * UIProcess/Cocoa/PlaybackSessionManagerProxy.h:
-        * UIProcess/Cocoa/PlaybackSessionManagerProxy.mm:
-        (WebKit::PlaybackSessionModelContext::seekToTime):
-        (WebKit::PlaybackSessionManagerProxy::seekToTime):
-        * WebProcess/cocoa/PlaybackSessionManager.h:
-        * WebProcess/cocoa/PlaybackSessionManager.messages.in:
-        * WebProcess/cocoa/PlaybackSessionManager.mm:
-        (WebKit::PlaybackSessionManager::seekToTime):
-
-2017-10-26  Brian Burg  <bburg@apple.com>
-
-        Web Automation: denying user permission for getUserMedia doesn't work
-        https://bugs.webkit.org/show_bug.cgi?id=178895
-
-        Reviewed by Youenn Fablet.
-
-        * UIProcess/UserMediaPermissionRequestManagerProxy.cpp:
-        (WebKit::UserMediaPermissionRequestManagerProxy::requestUserMediaPermissionForFrame):
-        The ordering of special cases is incorrect. Safari configures its automation views to
-        allow mock devices and never prompt for them. These checks were before the check for
-        the automation session's getUserMedia permission. Switch these checks.
-
-        Also change the deny reason so that subsequent requests are also denied. This matches
-        behavior when a user denies a permission request on a real dialog. With this change,
-        the DOM error changes from SecurityError to NotAllowedError, which makes more sense.
-
-2017-10-26  Michael Catanzaro  <mcatanzaro@igalia.com>
-
-        Unreviewed, fix GCC warning spam after r224077
-        https://bugs.webkit.org/show_bug.cgi?id=178823
-
-        Need to leave a blank line at the bottom of the file.
-
-        * Scripts/PreferencesTemplates/WebPreferencesDefinitions.h.erb:
-
-2017-10-25  Simon Fraser  <simon.fraser@apple.com>
-
-        When navigating back to a page, compositing layers may not use accelerated drawing
-        https://bugs.webkit.org/show_bug.cgi?id=178749
-        rdar://problem/35158946
-
-        Reviewed by Dean Jackson.
-
-        Avoid assertions when a test enables accelerated drawing (which we can't support
-        in the iOS simulator).
-
-        * Shared/RemoteLayerTree/RemoteLayerBackingStore.mm:
-        (WebKit::RemoteLayerBackingStore::ensureBackingStore):
-
-2017-10-26  Sam Weinig  <sam@webkit.org>
-
-        [Settings] Generate the bulk of WebPage::updatePreferences(...)
-        https://bugs.webkit.org/show_bug.cgi?id=178823
-
-        Reviewed by Tim Horton.
-
-        * CMakeLists.txt:
-        * DerivedSources.make:
-        * WebKit.xcodeproj/project.pbxproj:
-
-            Add new file generation.
-
-        * Scripts/GeneratePreferences.rb:
-        
-            Replace 'webkitOnly' boolean option with a new 'webcoreBinding' option.
-            'webcoreBinding' supports the following values:
-                - none (same as webkit only)
-                - custom (means that you do bind to a webcore concept, but currently it must
-                  be done in a custom manner)
-                - DeprecatedGlobalSettings (binds to a DeprecatedGlobalSettings setting)
-                - RuntimeEnabledFeatures (binds to a RuntimeEnabledFeatures setting)
-            If 'webcoreBinding' is not provided, the preference binds to WebCore Setting
-            of either the same name or the override name provided by the new 'webcoreName'
-            option (we should try to remove the need for 'webcoreName' by unifying with 
-            WebCore on preference/setting naming).
-            
-            A 'condition' option was also added to indicate that the preference is only available
-            when that macro condition is true.
-            
-            Since we are generating most of WebPage::updatePreferences, we can simplify the
-            macros in WebPreferencesDefinitions.h to only have normal/debug/experimental variants
-            and remove the need for per-type macros, which were only used in WebPage::updatePreferences.
-        
-        * Scripts/PreferencesTemplates/WebPageUpdatePreferences.cpp.erb: Added.
-        
-            Generates bindings from WebPreferences to WebCore::Settings/DeprecatedGlobalSettings/RuntimeEnabledFeatures.
-            Does not generate a binding if the 'webcoreBinding' option is set to either 'none' or 'custom'.
-        
-        * Scripts/PreferencesTemplates/WebPreferencesDefinitions.h.erb:
-    
-            Simplify down to just normal/debug/experimental macros.
-        
-        * Shared/WebPreferences.yaml:
-        
-            Annotate perferences with new optional 'webcoreBinding', 'webcoreName', and 'condition'
-            options.
-        
-        * WebProcess/WebPage/WebPage.cpp:
-        (WebKit::WebPage::updatePreferences):
-        
-            Replace a ton of hand written preference to settings bindings with a call to updatePreferencesGenerated().
-        
-        * WebProcess/WebPage/WebPage.h:
-        
-            Add declaration of updatePreferencesGenerated, remove platformPreferencesDidChange.
-
-        * WebProcess/WebPage/gtk/WebPageGtk.cpp:
-        (WebKit::WebPage::platformPreferencesDidChange): Deleted.
-        * WebProcess/WebPage/ios/WebPageIOS.mm:
-        (WebKit::WebPage::platformPreferencesDidChange): Deleted.
-        * WebProcess/WebPage/mac/WebPageMac.mm:
-        (WebKit::WebPage::platformPreferencesDidChange): Deleted.
-        * WebProcess/WebPage/win/WebPageWin.cpp:
-        (WebKit::WebPage::platformPreferencesDidChange): Deleted.
-        * WebProcess/WebPage/wpe/WebPageWPE.cpp:
-        (WebKit::WebPage::platformPreferencesDidChange): Deleted.
-        
-            Remove all the empty platformPreferencesDidChange functions.
-
-2017-10-26  Alex Christensen  <achristensen@webkit.org>
-
-        Move WKWebViewConfiguration validation to WKWebView construction
-        https://bugs.webkit.org/show_bug.cgi?id=178840
-
-        Reviewed by Tim Horton.
-        
-        I'm trying to remove WKWebViewConfigurationInternal methods so I can make WKWebViewConfiguration
-        a wrapper around an APIObject like all the other API objects.  A small step towards making this easier
-        is to remove the unnecessary method _validate and move its logic to its one callsite.  I added an API test
-        that ensures no change in behavior.
-
-        * UIProcess/API/Cocoa/WKWebView.mm:
-        (-[WKWebView _initializeWithConfiguration:]):
-        * UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
-        (-[WKWebViewConfiguration _validate]): Deleted.
-        * UIProcess/API/Cocoa/WKWebViewConfigurationInternal.h:
-
-2017-10-26  Megan Gardner  <megan_gardner@apple.com>
-
-        Remove unneeded block selection calculation code
-        https://bugs.webkit.org/show_bug.cgi?id=178889
-
-        Reviewed by Tim Horton.
-
-        Removing more block selection code. Much of this should have been removed
-        before, as the only things that were using these functions were removed in the
-        last patch. Also remove the code decided if you should move to block mode or not,
-        as the answer now is always NO.
-
-        * WebProcess/WebPage/WebPage.h:
-        * WebProcess/WebPage/ios/WebPageIOS.mm:
-        (WebKit::WebPage::updateSelectionWithTouches):
-        (WebKit::WebPage::rangeForBlockAtPoint): Deleted.
-        (WebKit::distanceBetweenRectsForPosition): Deleted.
-        (WebKit::rectsEssentiallyTheSame): Deleted.
-        (WebKit::unionDOMRanges): Deleted.
-        (WebKit::computeEdgeCenter): Deleted.
-        (WebKit::WebPage::expandedRangeFromHandle): Deleted.
-        (WebKit::WebPage::contractedRangeFromHandle): Deleted.
-        (WebKit::WebPage::computeExpandAndShrinkThresholdsForHandle): Deleted.
-        (WebKit::WebPage::switchToBlockSelectionAtPoint): Deleted.
-        (WebKit::WebPage::shouldSwitchToBlockModeForHandle): Deleted.
-
-2017-10-26  Jeremy Jones  <jeremyj@apple.com>
-
-        Call setFullscreenClient on iOS.
-        https://bugs.webkit.org/show_bug.cgi?id=178089
-
-        Reviewed by Simon Fraser.
-
-        This was only being set for MacOS.
-
-        * UIProcess/ios/WKContentView.mm:
-        (-[WKContentView _commonInitializationWithProcessPool:configuration:]):
-
-2017-10-26  Eric Carlson  <eric.carlson@apple.com>
-
-        NowPlayingInfo should contain a unique identifier
-        https://bugs.webkit.org/show_bug.cgi?id=178872
-
-        Reviewed by Jer Noble.
-
-        * UIProcess/API/Cocoa/WKWebView.mm:
-        (-[WKWebView _requestActiveNowPlayingSessionInfo:]): Take a completion handler.
-        (-[WKWebView _requestActiveNowPlayingSessionInfo]): Deleted.
-        (-[WKWebView _handleActiveNowPlayingSessionInfoResponse:title:duration:elapsedTime:]): Deleted.
-        * UIProcess/API/Cocoa/WKWebViewPrivate.h:
-        * UIProcess/PageClient.h:
-
-        * UIProcess/WebPageProxy.cpp:
-        (WebKit::WebPageProxy::requestActiveNowPlayingSessionInfo): Ditto.
-        (WebKit::WebPageProxy::nowPlayingInfoCallback): Lookup and call completion handler.
-        (WebKit::WebPageProxy::handleActiveNowPlayingSessionInfoResponse const): Deleted.
-        * UIProcess/WebPageProxy.h:
-        * UIProcess/WebPageProxy.messages.in:
-
-        * UIProcess/ios/PageClientImplIOS.h:
-        * UIProcess/ios/PageClientImplIOS.mm:
-        (WebKit::PageClientImpl::handleActiveNowPlayingSessionInfoResponse): Deleted.
-
-        * UIProcess/mac/PageClientImplMac.h:
-        * UIProcess/mac/PageClientImplMac.mm:
-        (WebKit::PageClientImpl::handleActiveNowPlayingSessionInfoResponse): Deleted.
-
-        * WebProcess/WebPage/Cocoa/WebPageCocoa.mm:
-        (WebKit::WebPage::requestActiveNowPlayingSessionInfo): Take callback ID. Pass unique ID.
-        * WebProcess/WebPage/WebPage.h:
-        * WebProcess/WebPage/WebPage.messages.in:
-
-2017-10-26  Andy Estes  <aestes@apple.com>
-
-        [Payment Request] Enable Payment Request whenever Apple Pay is enabled
-        https://bugs.webkit.org/show_bug.cgi?id=178880
-
-        Reviewed by Tim Horton.
-
-        * Shared/WebPreferences.yaml:
-        * UIProcess/API/C/WKPreferences.cpp:
-        (WKPreferencesSetPaymentRequestEnabled): Deleted.
-        (WKPreferencesGetPaymentRequestEnabled): Deleted.
-        * UIProcess/API/C/WKPreferencesRefPrivate.h:
-        * WebProcess/WebPage/WebPage.cpp:
-        (WebKit::WebPage::updatePreferences):
-
-2017-10-26  Chris Dumez  <cdumez@apple.com>
-
-        Bring back SWContextManager abstraction in WebCore
-        https://bugs.webkit.org/show_bug.cgi?id=178876
-
-        Reviewed by Geoffrey Garen.
-
-        Bring back SWContextManager abstraction in WebCore. It was killed in <https://trac.webkit.org/changeset/223718> but
-        is actually useful when the ServiceWorker wants to message the storage process.
-
-        * CMakeLists.txt:
-        * DerivedSources.make:
-        * StorageProcess/ServiceWorker/WebSWServerConnection.cpp:
-        (WebKit::WebSWServerConnection::startServiceWorkerContext):
-        (WebKit::WebSWServerConnection::startFetch):
-        (WebKit::WebSWServerConnection::postMessageToServiceWorkerGlobalScope):
-        * WebKit.xcodeproj/project.pbxproj:
-        * WebProcess/Storage/WebSWContextManagerConnection.cpp: Renamed from Source/WebKit/WebProcess/Storage/ServiceWorkerContextManager.cpp.
-        (WebKit::WebSWContextManagerConnection::WebSWContextManagerConnection):
-        (WebKit::WebSWContextManagerConnection::updatePreferences):
-        (WebKit::WebSWContextManagerConnection::startServiceWorker):
-        (WebKit::WebSWContextManagerConnection::startFetch):
-        (WebKit::WebSWContextManagerConnection::postMessageToServiceWorkerGlobalScope):
-        * WebProcess/Storage/WebSWContextManagerConnection.h: Renamed from Source/WebKit/WebProcess/Storage/ServiceWorkerContextManager.h.
-        * WebProcess/Storage/WebSWContextManagerConnection.messages.in: Renamed from Source/WebKit/WebProcess/Storage/ServiceWorkerContextManager.messages.in.
-        * WebProcess/WebProcess.cpp:
-        (WebKit::WebProcess::didReceiveMessage):
-        (WebKit::WebProcess::getWorkerContextConnection):
-        * WebProcess/WebProcess.h:
-
-2017-10-26  Alexey Proskuryakov  <ap@apple.com>
-
-        Remove deprecated WebKit symbols
-        https://bugs.webkit.org/show_bug.cgi?id=178875
-        rdar://problem/31139070
-
-        Reviewed by Dan Bernstein.
-
-        * PlatformMac.cmake:
-        * Shared/API/c/WKDeprecatedFunctions.cpp:
-        (WKContextSetProcessModel):
-        (WKPageGroupCopyIdentifier): Deleted.
-        (WKPageGroupAddUserContentFilter): Deleted.
-        (WKPageGroupRemoveUserContentFilter): Deleted.
-        * UIProcess/API/C/WKPageGroup.h:
-        * UIProcess/API/Cocoa/_WKVisitedLinkProvider.mm: Removed.
-        * UIProcess/API/Cocoa/_WKVisitedLinkStore.h:
-        * WebKit.xcodeproj/project.pbxproj:
-
-2017-10-26  Ryan Haddad  <ryanhaddad@apple.com>
-
-        Unreviewed, rolling out r223984.
-
-        Caused LayoutTest assertion failures.
-
-        Reverted changeset:
-
-        "When navigating back to a page, compositing layers may not
-        use accelerated drawing"
-        https://bugs.webkit.org/show_bug.cgi?id=178749
-        https://trac.webkit.org/changeset/223984
-
-2017-10-26  Megan Gardner  <megan_gardner@apple.com>
-
-        Remove code to update block selection
-        https://bugs.webkit.org/show_bug.cgi?id=178843
-
-        Reviewed by Tim Horton.
-
-        Removes code for updating block selection, which has been disabled.
-        This code is being slowly pruned to avoid regressions and accidental removal of code that is being used.
-
-        * Platform/spi/ios/UIKitSPI.h:
-        * UIProcess/PageClient.h:
-        * UIProcess/WebPageProxy.h:
-        * UIProcess/WebPageProxy.messages.in:
-        * UIProcess/ios/PageClientImplIOS.h:
-        * UIProcess/ios/PageClientImplIOS.mm:
-        (WebKit::PageClientImpl::didUpdateBlockSelectionWithTouch): Deleted.
-        * UIProcess/ios/WKContentViewInteraction.h:
-        * UIProcess/ios/WKContentViewInteraction.mm:
-        (toSelectionHandlePosition): Deleted.
-        (-[WKContentView _didUpdateBlockSelectionWithTouch:withFlags:growThreshold:shrinkThreshold:]): Deleted.
-        (-[WKContentView changeBlockSelectionWithTouchAt:withSelectionTouch:forHandle:]): Deleted.
-        * UIProcess/ios/WebPageProxyIOS.mm:
-        (WebKit::WebPageProxy::updateBlockSelectionWithTouch): Deleted.
-        (WebKit::WebPageProxy::didUpdateBlockSelectionWithTouch): Deleted.
-        * WebProcess/WebPage/WebPage.h:
-        * WebProcess/WebPage/WebPage.messages.in:
-        * WebProcess/WebPage/ios/WebPageIOS.mm:
-        (WebKit::shouldExpand): Deleted.
-        (WebKit::WebPage::changeBlockSelection): Deleted.
-        (WebKit::WebPage::updateBlockSelectionWithTouch): Deleted.
-
-2017-10-26  Ryan Haddad  <ryanhaddad@apple.com>
-
-        Unreviewed, rolling out r223994.
-
-        The LayoutTest for this change is failing.
-
-        Reverted changeset:
-
-        "Add service worker handle fetch support for all subresource
-        requests"
-        https://bugs.webkit.org/show_bug.cgi?id=178769
-        https://trac.webkit.org/changeset/223994
-
-2017-10-26  Ryan Haddad  <ryanhaddad@apple.com>
-
-        Unreviewed, rolling out r223908.
-
-        Causes LayoutTest crashes with newer SDKs.
-
-        Reverted changeset:
-
-        "Adopt new secure coding APIs"
-        https://bugs.webkit.org/show_bug.cgi?id=178484
-        https://trac.webkit.org/changeset/223908
-
-2017-10-26  Christopher Reid  <chris.reid@sony.com>
-
-        Remove scopeguard from platform
-        https://bugs.webkit.org/show_bug.cgi?id=178681
-
-        Reviewed by Brady Eidson.
-
-        * Shared/mac/ChildProcessMac.mm:
-
-2017-10-25  Per Arne Vollan  <pvollan@apple.com>
-
-        Network process crash under WebKit::AuthenticationManager::rejectProtectionSpaceAndContinueForSingleChallenge.
-        https://bugs.webkit.org/show_bug.cgi?id=160234
-        rdar://problem/30675510
-
-        Reviewed by Geoffrey Garen.
-
-        An exception is raised because we call the method rejectProtectionSpaceAndContinueWithChallenge on the CFNetwork
-        challenge sender, which does not implement this optional method. The methods on the authentication challenge
-        sender are deprecated when network session is used, so we should not call them in that case.
-
-        * Shared/Authentication/AuthenticationManager.cpp:
-        (WebKit::AuthenticationManager::useCredentialForSingleChallenge):
-        (WebKit::AuthenticationManager::continueWithoutCredentialForSingleChallenge):
-        (WebKit::AuthenticationManager::cancelSingleChallenge):
-        (WebKit::AuthenticationManager::performDefaultHandlingForSingleChallenge):
-        (WebKit::AuthenticationManager::rejectProtectionSpaceAndContinueForSingleChallenge):
-        * Shared/Authentication/cocoa/AuthenticationManagerCocoa.mm:
-        (WebKit::AuthenticationManager::receivedCredential):
-        (WebKit::AuthenticationManager::receivedRequestToContinueWithoutCredential):
-        (WebKit::AuthenticationManager::receivedCancellation):
-        (WebKit::AuthenticationManager::receivedRequestToPerformDefaultHandling):
-        (WebKit::AuthenticationManager::receivedChallengeRejection):
-        * Shared/Authentication/soup/AuthenticationManagerSoup.cpp:
-
-2017-10-25  Youenn Fablet  <youenn@apple.com>
-
-        Move DNS resolution outside of NetworkRTCProvider
-        https://bugs.webkit.org/show_bug.cgi?id=178796
-
-        Reviewed by Geoffrey Garen.
-
-       Tested through manual testing on external STUN servers.
-       Moving NetworkRTCProvider::Resolver into NetworkRTCResolver.
-       Updating the implementation to use a completion handler.
-
-        * NetworkProcess/webrtc/NetworkRTCProvider.cpp:
-        (WebKit::NetworkRTCProvider::createResolver):
-        * NetworkProcess/webrtc/NetworkRTCProvider.h:
-        * NetworkProcess/webrtc/NetworkRTCResolver.cpp:
-        (WebKit::NetworkRTCResolver::NetworkRTCResolver):
-        (WebKit::NetworkRTCResolver::~NetworkRTCResolver):
-        (WebKit::NetworkRTCResolver::start):
-        (WebKit::NetworkRTCResolver::stop):
-        (WebKit::NetworkRTCResolver::completed):
-        (WebKit::NetworkRTCProvider::Resolver::~Resolver): Deleted.
-        (WebKit::NetworkRTCProvider::stop): Deleted.
-        (WebKit::NetworkRTCProvider::resolutionCompleted): Deleted.
-        * NetworkProcess/webrtc/NetworkRTCResolver.h:
-        * WebKit.xcodeproj/project.pbxproj:
-
-2017-10-25  Eric Carlson  <eric.carlson@apple.com>
-
-        [MediaStream] Clear cached gUM prompt state
-        https://bugs.webkit.org/show_bug.cgi?id=178754
-        <rdar://problem/32742356>
-
-        Reviewed by Youenn Fablet.
-
-        * Shared/WebPreferences.yaml: Define new settings.
-
-        * Shared/WebPreferencesDefinitionsBase.h: New default values.
-
-        * UIProcess/API/C/WKPreferences.cpp:
-        (WKPreferencesSetInactiveMediaCaptureSteamRepromptIntervalInMinutes): New.
-        (WKPreferencesGetInactiveMediaCaptureSteamRepromptIntervalInMinutes): Ditto.
-        * UIProcess/API/C/WKPreferencesRefPrivate.h:
-
-        * UIProcess/API/Cocoa/WKPreferences.mm:
-        (-[WKPreferences _inactiveMediaCaptureSteamRepromptIntervalInMinutes]): Ditto.
-        (-[WKPreferences _setInactiveMediaCaptureSteamRepromptIntervalInMinutes:]): Ditto.
-        * UIProcess/API/Cocoa/WKPreferencesPrivate.h:
-
-        * UIProcess/UserMediaPermissionRequestManagerProxy.cpp:
-        (WebKit::UserMediaPermissionRequestManagerProxy::UserMediaPermissionRequestManagerProxy): Initialize
-        the timer.
-        (WebKit::UserMediaPermissionRequestManagerProxy::createRequest): Remove unneeded namespace.
-        (WebKit::toWebCore): Remove unneeded breaks.
-        (WebKit::UserMediaPermissionRequestManagerProxy::searchForGrantedRequest const): Remove unneeded namespace.
-        (WebKit::UserMediaPermissionRequestManagerProxy::wasRequestDenied): Ditto.
-        (WebKit::UserMediaPermissionRequestManagerProxy::requestUserMediaPermissionForFrame): Ditto.
-        (WebKit::UserMediaPermissionRequestManagerProxy::getUserMediaPermissionInfo): Ditto.
-        (WebKit::UserMediaPermissionRequestManagerProxy::enumerateMediaDevicesForFrame): Ditto.
-        (WebKit::UserMediaPermissionRequestManagerProxy::syncWithWebCorePrefs const): Ditto.
-        (WebKit::UserMediaPermissionRequestManagerProxy::captureStateChanged): Set the watchdog timer
-        to the correct interval based on capture state.
-        (WebKit::UserMediaPermissionRequestManagerProxy::watchdogTimerFired): Clear cached state.
-        * UIProcess/UserMediaPermissionRequestManagerProxy.h:
-
-2017-10-25  Simon Fraser  <simon.fraser@apple.com>
-
-        When navigating back to a page, compositing layers may not use accelerated drawing
-        https://bugs.webkit.org/show_bug.cgi?id=178749
-        rdar://problem/35158946
-
-        Reviewed by Dean Jackson.
-
-        Avoid assertions when a test enables accelerated drawing (which we can't support
-        in the iOS simulator).
-
-        * Shared/RemoteLayerTree/RemoteLayerBackingStore.mm:
-        (WebKit::RemoteLayerBackingStore::ensureBackingStore):
-
-2017-10-25  Youenn Fablet  <youenn@apple.com>
-
-        Enable ServiceWorker to fetch resources
-        https://bugs.webkit.org/show_bug.cgi?id=178673
-
-        Reviewed by Brady Eidson.
-
-        ServiceWorkerContextManager makes use of the new ServiceWorkerThreadProxy.
-        It creates the necessary environment for the thread to make use of network loads, web sockets and cache storage.
-        Fetch is functional with these changes.
-
-        ServiceWorkerProcessProxy is introduced as a UIProcess proxy to the service worker process.
-        This process proxy is responsible to give the pageID used by all service worker thread instances for network loads.
-        ServiceWorkerContextManager is responsible to give a unique frameID for all service worker threads.
-        This is necessary as these two ids are currently needed for any network load.
-
-        ServiceWorkerThreadProxy creates its own FrameLoaderClient which is now used to get pageID, frameID and sessionID.
-
-        * UIProcess/ServiceWorkerProcessProxy.cpp: Added.
-        (WebKit::ServiceWorkerProcessProxy::ServiceWorkerProcessProxy):
-        (WebKit::m_serviceWorkerPageID):
-        (WebKit::ServiceWorkerProcessProxy::~ServiceWorkerProcessProxy):
-        (WebKit::ServiceWorkerProcessProxy::start):
-        * UIProcess/ServiceWorkerProcessProxy.h: Added.
-        * UIProcess/WebProcessPool.cpp:
-        (WebKit::WebProcessPool::getWorkerContextProcessConnection):
-        (WebKit::WebProcessPool::createNewWebProcess):
-        (WebKit::WebProcessPool::initializeNewWebProcess):
-        (WebKit::WebProcessPool::disconnectProcess):
-        (WebKit::WebProcessPool::createNewWebProcessRespectingProcessCountLimit):
-        (WebKit::WebProcessPool::createWebPage):
-        * UIProcess/WebProcessPool.h:
-        * UIProcess/WebProcessProxy.cpp:
-        (WebKit::WebProcessProxy::generatePageID):
-        * UIProcess/WebProcessProxy.h:
-        * WebKit.xcodeproj/project.pbxproj:
-        * WebProcess/Network/WebLoaderStrategy.cpp:
-        (WebKit::WebLoaderStrategy::scheduleLoad):
-        (WebKit::WebLoaderStrategy::scheduleLoadFromNetworkProcess):
-        (WebKit::WebLoaderStrategy::startPingLoad):
-        * WebProcess/Network/WebLoaderStrategy.h:
-        * WebProcess/Storage/ServiceWorkerContextManager.cpp:
-        (WebKit::ServiceWorkerContextManager::ServiceWorkerContextManager):
-        (WebKit::ServiceWorkerContextManager::startServiceWorker):
-        (WebKit::ServiceWorkerContextManager::startFetch):
-        * WebProcess/Storage/ServiceWorkerContextManager.h:
-        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
-        (WebKit::WebFrameLoaderClient::pageID const):
-        (WebKit::WebFrameLoaderClient::frameID const):
-        (WebKit::WebFrameLoa