77778c4fdf094895f6e108bec4ff9c33cf6008b1
[WebKit-https.git] / Source / WebKit2 / ChangeLog
1 2016-10-25  Commit Queue  <commit-queue@webkit.org>
2
3         Unreviewed, rolling out r207827 and r207828.
4         https://bugs.webkit.org/show_bug.cgi?id=163965
5
6         Caused LayoutTest webaudio/web-audio-is-playing.html to time
7         out on macOS. (Requested by ryanhaddad on #webkit).
8
9         Reverted changesets:
10
11         "[MediaStream] Add "has capture device" bit to media state
12         flags"
13         https://bugs.webkit.org/show_bug.cgi?id=163952
14         http://trac.webkit.org/changeset/207827
15
16         "[MediaStream] Add "has capture device" bit to media state
17         flags"
18         https://bugs.webkit.org/show_bug.cgi?id=163952
19         http://trac.webkit.org/changeset/207828
20
21 2016-10-25  Eric Carlson  <eric.carlson@apple.com>
22
23         [MediaStream] Add "has capture device" bit to media state flags
24         https://bugs.webkit.org/show_bug.cgi?id=163952
25
26         Reviewed by Sam Weinig.
27
28         * UIProcess/API/C/WKPage.cpp:
29         (WKPageGetMediaState): Support MediaProducer::HasMediaCaptureDevice.
30         * UIProcess/API/C/WKPagePrivate.h: Define kWKMediaHasCaptureDevice.
31
32 2016-10-25  Chris Dumez  <cdumez@apple.com>
33
34         Unreviewed, rolling out r207494.
35
36         iOS SDK has been updated on the bots now so rollout the
37         rollout
38
39         Reverted changeset:
40
41         "Unreviewed, rolling out r207413."
42         https://bugs.webkit.org/show_bug.cgi?id=163547
43         http://trac.webkit.org/changeset/207494
44
45 2016-10-25  Jonathan Bedard  <jbedard@apple.com>
46
47         Unreviewed build fix.
48
49         * UIProcess/API/Cocoa/WKWebView.mm:
50         (-[WKWebView _fullscreenDelegate]): Removed unneeded parenthesis.
51
52 2016-10-19  Jer Noble  <jer.noble@apple.com>
53
54         Add WKWebView fullscreen delegate SPI
55         https://bugs.webkit.org/show_bug.cgi?id=163674
56
57         Reviewed by Anders Carlsson.
58
59         Add a new SPI property to WKWebView allowing clients to be notified when fullscreen mode enters and exits.
60
61         * UIProcess/API/APIFullscreenClient.h: Added.
62         (API::FullscreenClient::~FullscreenClient):
63         (API::FullscreenClient::willEnterFullscreen):
64         (API::FullscreenClient::didEnterFullscreen):
65         (API::FullscreenClient::willExitFullscreen):
66         (API::FullscreenClient::didExitFullscreen):
67         * UIProcess/API/Cocoa/WKWebView.mm:
68         (-[WKWebView _initializeWithConfiguration:]):
69         (-[WKWebView _setFullscreenDelegate:]):
70         (-[WKWebView _fullscreenDelegate]):
71         (-[WKWebView _isInFullscreen]):
72         * UIProcess/API/Cocoa/WKWebViewPrivate.h:
73         * UIProcess/API/Cocoa/_WKFullscreenDelegate.h: Added.
74         * UIProcess/Cocoa/FullscreenClient.h: Added.
75         (WebKit::FullscreenClient::~FullscreenClient):
76         * UIProcess/Cocoa/FullscreenClient.mm: Added.
77         (WebKit::FullscreenClient::FullscreenClient):
78         (WebKit::FullscreenClient::delegate):
79         (WebKit::FullscreenClient::setDelegate):
80         (WebKit::FullscreenClient::willEnterFullscreen):
81         (WebKit::FullscreenClient::didEnterFullscreen):
82         (WebKit::FullscreenClient::willExitFullscreen):
83         (WebKit::FullscreenClient::didExitFullscreen):
84         * UIProcess/WebFullScreenManagerProxy.cpp:
85         (WebKit::WebFullScreenManagerProxy::willEnterFullScreen):
86         (WebKit::WebFullScreenManagerProxy::didEnterFullScreen):
87         (WebKit::WebFullScreenManagerProxy::willExitFullScreen):
88         (WebKit::WebFullScreenManagerProxy::didExitFullScreen):
89         * UIProcess/WebPageProxy.cpp:
90         (WebKit::WebPageProxy::WebPageProxy):
91         (WebKit::WebPageProxy::setFullscreenClient):
92         (WebKit::WebPageProxy::fullScreenManager): Deleted.
93         * UIProcess/WebPageProxy.h:
94         (WebKit::WebPageProxy::fullscreenClient):
95         * WebKit2.xcodeproj/project.pbxproj:
96
97 2016-10-25  Carlos Garcia Campos  <cgarcia@igalia.com>
98
99         Unreviewed. Fix timeouts in 12 GTK+ unit tests after r207812.
100
101         * NetworkProcess/NetworkProcessCreationParameters.h: Initialize loadThrottleLatency.
102
103 2016-10-25  Carlos Garcia Campos  <cgarcia@igalia.com>
104
105         Unreviewed. Fix Soup based ports debug build after r207813.
106
107         * NetworkProcess/soup/NetworkDataTaskSoup.cpp:
108         (WebKit::NetworkDataTaskSoup::authenticateCallback):
109         (WebKit::NetworkDataTaskSoup::requestStartedCallback):
110
111 2016-10-25  Andreas Kling  <akling@apple.com>
112
113         More PassRefPtr purging in WebCore.
114         <https://webkit.org/b/163895>
115
116         Reviewed by Antti Koivisto.
117
118         * WebProcess/Plugins/PDF/DeprecatedPDFPlugin.h:
119         * WebProcess/Plugins/PDF/DeprecatedPDFPlugin.mm:
120         (WebKit::PDFPlugin::createScrollbar):
121
122 2016-10-25  Carlos Garcia Campos  <cgarcia@igalia.com>
123
124         NetworkSession: switch to use subclasses for NetworkSession and NetworkDataTask implementations
125         https://bugs.webkit.org/show_bug.cgi?id=163777
126
127         Reviewed by Alex Christensen.
128
129         The subclass model allows us to choose the implementation at run time, so we could add other implementations
130         like a mock network class to measure performance, and even one for blobs and finally get rid of ResourceHandle
131         in WebKit2.
132
133         * CMakeLists.txt: Add new files to compilation.
134         * NetworkProcess/NetworkDataTask.cpp: Added.
135         (WebKit::NetworkDataTask::create): Create a NetworkDataTaskCocoa or NetworkDataTaskSoup.
136         (WebKit::NetworkDataTask::NetworkDataTask): Move common code from NetworkDataTaskCocoa and NetworkDataTaskSoup
137         here to handle the early failures.
138         (WebKit::NetworkDataTask::~NetworkDataTask):
139         (WebKit::NetworkDataTask::scheduleFailure):
140         (WebKit::NetworkDataTask::failureTimerFired):
141         * NetworkProcess/NetworkDataTask.h: Remove platform specific members.
142         (WebKit::NetworkDataTask::setPendingDownloadLocation): Make it virtual and set the m_pendingDownloadLocation.
143         (WebKit::NetworkDataTask::suggestedFilename): Make it virtual and const with a default implementation.
144         (WebKit::NetworkDataTask::setSuggestedFilename): Ditto.
145         (WebKit::NetworkDataTask::allowsSpecificHTTPSCertificateForHost): Ditto.
146         * NetworkProcess/NetworkLoad.cpp: Include NetworkDataTaskCocoa.h.
147         * NetworkProcess/NetworkLoad.h: Include NetworkDataTask.h instead of NetworkSession.h.
148         * NetworkProcess/NetworkProcess.cpp:
149         (WebKit::NetworkProcess::NetworkProcess): Use NetworkSessionCocoa.
150         * NetworkProcess/NetworkSession.cpp:
151         (WebKit::NetworkSession::create): Create a NetworkSessionCocoa or NetworkSessionSoup.
152         (WebKit::NetworkSession::defaultSession): In case of cocoa use NetworkSessionCocoa::defaultSession() because of
153         the custom protocol manager, otherwise simply create a default session.
154         (WebKit::NetworkSession::networkStorageSession): Move common code from NetworkSessionCocoa and
155         NetworkSessionSoup here.
156         (WebKit::NetworkSession::NetworkSession):
157         (WebKit::NetworkSession::~NetworkSession):
158         * NetworkProcess/NetworkSession.h: Remove platform specific members.
159         (WebKit::NetworkSession::invalidateAndCancel): Make it virtual.
160         (WebKit::NetworkSession::clearCredentials): Ditto.
161         * NetworkProcess/cache/NetworkCacheSpeculativeLoad.cpp: Include NetworkSession.h.
162         * NetworkProcess/cocoa/NetworkDataTaskCocoa.h: Added.
163         * NetworkProcess/cocoa/NetworkDataTaskCocoa.mm:
164         (WebKit::NetworkDataTaskCocoa::NetworkDataTaskCocoa):
165         (WebKit::NetworkDataTaskCocoa::~NetworkDataTaskCocoa):
166         (WebKit::NetworkDataTaskCocoa::didSendData):
167         (WebKit::NetworkDataTaskCocoa::didReceiveChallenge):
168         (WebKit::NetworkDataTaskCocoa::didCompleteWithError):
169         (WebKit::NetworkDataTaskCocoa::didReceiveResponse):
170         (WebKit::NetworkDataTaskCocoa::didReceiveData):
171         (WebKit::NetworkDataTaskCocoa::didBecomeDownload):
172         (WebKit::NetworkDataTaskCocoa::willPerformHTTPRedirection):
173         (WebKit::NetworkDataTaskCocoa::setPendingDownloadLocation):
174         (WebKit::NetworkDataTaskCocoa::tryPasswordBasedAuthentication):
175         (WebKit::NetworkDataTaskCocoa::transferSandboxExtensionToDownload):
176         (WebKit::NetworkDataTaskCocoa::allowsSpecificHTTPSCertificateForHost):
177         (WebKit::NetworkDataTaskCocoa::suggestedFilename):
178         (WebKit::NetworkDataTaskCocoa::cancel):
179         (WebKit::NetworkDataTaskCocoa::resume):
180         (WebKit::NetworkDataTaskCocoa::suspend):
181         (WebKit::NetworkDataTaskCocoa::state):
182         * NetworkProcess/cocoa/NetworkProcessCocoa.mm:
183         (WebKit::NetworkProcess::platformInitializeNetworkProcessCocoa):
184         * NetworkProcess/cocoa/NetworkSessionCocoa.h: Added.
185         * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
186         (-[WKNetworkSessionDelegate initWithNetworkSession:withCredentials:]):
187         (-[WKNetworkSessionDelegate URLSession:dataTask:didBecomeDownloadTask:]):
188         (WebKit::configurationForSessionID):
189         (WebKit::NetworkSessionCocoa::setCustomProtocolManager):
190         (WebKit::NetworkSessionCocoa::setSourceApplicationAuditTokenData):
191         (WebKit::NetworkSessionCocoa::setSourceApplicationBundleIdentifier):
192         (WebKit::NetworkSessionCocoa::setSourceApplicationSecondaryIdentifier):
193         (WebKit::NetworkSessionCocoa::setCTDataConnectionServiceType):
194         (WebKit::NetworkSessionCocoa::create):
195         (WebKit::NetworkSessionCocoa::defaultSession):
196         (WebKit::NetworkSessionCocoa::NetworkSessionCocoa):
197         (WebKit::NetworkSessionCocoa::~NetworkSessionCocoa):
198         (WebKit::NetworkSessionCocoa::invalidateAndCancel):
199         (WebKit::NetworkSessionCocoa::clearCredentials):
200         (WebKit::NetworkSessionCocoa::dataTaskForIdentifier):
201         (WebKit::NetworkSessionCocoa::addDownloadID):
202         (WebKit::NetworkSessionCocoa::downloadID):
203         (WebKit::NetworkSessionCocoa::takeDownloadID):
204         * NetworkProcess/mac/RemoteNetworkingContext.mm:
205         (WebKit::RemoteNetworkingContext::ensurePrivateBrowsingSession):
206         * NetworkProcess/soup/NetworkDataTaskSoup.cpp:
207         (WebKit::NetworkDataTaskSoup::NetworkDataTaskSoup):
208         (WebKit::NetworkDataTaskSoup::~NetworkDataTaskSoup):
209         (WebKit::NetworkDataTaskSoup::suggestedFilename):
210         (WebKit::NetworkDataTaskSoup::setPendingDownloadLocation):
211         (WebKit::NetworkDataTaskSoup::createRequest):
212         (WebKit::NetworkDataTaskSoup::clearRequest):
213         (WebKit::NetworkDataTaskSoup::resume):
214         (WebKit::NetworkDataTaskSoup::suspend):
215         (WebKit::NetworkDataTaskSoup::cancel):
216         (WebKit::NetworkDataTaskSoup::invalidateAndCancel):
217         (WebKit::NetworkDataTaskSoup::state):
218         (WebKit::NetworkDataTaskSoup::timeoutFired):
219         (WebKit::NetworkDataTaskSoup::startTimeout):
220         (WebKit::NetworkDataTaskSoup::stopTimeout):
221         (WebKit::NetworkDataTaskSoup::sendRequestCallback):
222         (WebKit::NetworkDataTaskSoup::didSendRequest):
223         (WebKit::NetworkDataTaskSoup::didReceiveResponse):
224         (WebKit::NetworkDataTaskSoup::tlsErrorsChangedCallback):
225         (WebKit::NetworkDataTaskSoup::tlsErrorsChanged):
226         (WebKit::NetworkDataTaskSoup::applyAuthenticationToRequest):
227         (WebKit::NetworkDataTaskSoup::authenticateCallback):
228         (WebKit::NetworkDataTaskSoup::authenticate):
229         (WebKit::NetworkDataTaskSoup::continueAuthenticate):
230         (WebKit::NetworkDataTaskSoup::skipInputStreamForRedirectionCallback):
231         (WebKit::NetworkDataTaskSoup::skipInputStreamForRedirection):
232         (WebKit::NetworkDataTaskSoup::didFinishSkipInputStreamForRedirection):
233         (WebKit::NetworkDataTaskSoup::shouldStartHTTPRedirection):
234         (WebKit::NetworkDataTaskSoup::continueHTTPRedirection):
235         (WebKit::NetworkDataTaskSoup::readCallback):
236         (WebKit::NetworkDataTaskSoup::read):
237         (WebKit::NetworkDataTaskSoup::didRead):
238         (WebKit::NetworkDataTaskSoup::didFinishRead):
239         (WebKit::NetworkDataTaskSoup::requestNextPartCallback):
240         (WebKit::NetworkDataTaskSoup::requestNextPart):
241         (WebKit::NetworkDataTaskSoup::didRequestNextPart):
242         (WebKit::NetworkDataTaskSoup::didFinishRequestNextPart):
243         (WebKit::NetworkDataTaskSoup::gotHeadersCallback):
244         (WebKit::NetworkDataTaskSoup::didGetHeaders):
245         (WebKit::NetworkDataTaskSoup::wroteBodyDataCallback):
246         (WebKit::NetworkDataTaskSoup::didWriteBodyData):
247         (WebKit::NetworkDataTaskSoup::download):
248         (WebKit::NetworkDataTaskSoup::writeDownloadCallback):
249         (WebKit::NetworkDataTaskSoup::writeDownload):
250         (WebKit::NetworkDataTaskSoup::didWriteDownload):
251         (WebKit::NetworkDataTaskSoup::didFinishDownload):
252         (WebKit::NetworkDataTaskSoup::didFailDownload):
253         (WebKit::NetworkDataTaskSoup::cleanDownloadFiles):
254         (WebKit::NetworkDataTaskSoup::didFail):
255         (WebKit::NetworkDataTaskSoup::networkEventCallback):
256         (WebKit::NetworkDataTaskSoup::networkEvent):
257         (WebKit::NetworkDataTaskSoup::startingCallback):
258         (WebKit::NetworkDataTaskSoup::requestStartedCallback):
259         (WebKit::NetworkDataTaskSoup::didStartRequest):
260         (WebKit::NetworkDataTaskSoup::restartedCallback):
261         (WebKit::NetworkDataTaskSoup::didRestart):
262         * NetworkProcess/soup/NetworkDataTaskSoup.h: Added.
263         * NetworkProcess/soup/NetworkSessionSoup.cpp:
264         (WebKit::NetworkSessionSoup::NetworkSessionSoup):
265         (WebKit::NetworkSessionSoup::~NetworkSessionSoup):
266         (WebKit::NetworkSessionSoup::soupSession):
267         (WebKit::NetworkSessionSoup::invalidateAndCancel):
268         * NetworkProcess/soup/NetworkSessionSoup.h: Added.
269         * NetworkProcess/soup/RemoteNetworkingContextSoup.cpp:
270         (WebKit::RemoteNetworkingContext::ensurePrivateBrowsingSession): Update to new NetworkSession::create() API.
271         * PlatformEfl.cmake: Add new files to compilation.
272         * PlatformGTK.cmake: Ditto.
273         * WebKit2.xcodeproj/project.pbxproj: Ditto.
274         * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
275         (WebKit::WebFrameNetworkingContext::ensurePrivateBrowsingSession): Update to new NetworkSession::create() API.
276         * WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp:
277         (WebKit::WebFrameNetworkingContext::ensurePrivateBrowsingSession): Ditto.
278
279 2016-10-25  Antti Koivisto  <antti@apple.com>
280
281         Add support for introducing simulated latency in network process
282         https://bugs.webkit.org/show_bug.cgi?id=163902
283
284         Reviewed by Alex Christensen.
285
286         For testing purposes it is useful to have a mechanism for simulating high latency.
287         This patch adds a basic mechanism that introduces a delay to each response in network
288         process. In Safari it can be used with
289
290              defaults write com.apple.Safari WebKitNetworkLoadThrottleLatencyMilliseconds 200
291
292         Setting the delay to 0 disables the feature.
293
294         * NetworkProcess/NetworkLoad.cpp:
295         (WebKit::NetworkLoad::Throttle::Throttle):
296         (WebKit::NetworkLoad::didReceiveResponseNetworkSession):
297         (WebKit::NetworkLoad::notifyDidReceiveResponse):
298         (WebKit::NetworkLoad::didReceiveData):
299         (WebKit::NetworkLoad::didCompleteWithError):
300         (WebKit::NetworkLoad::throttleDelayCompleted):
301         * NetworkProcess/NetworkLoad.h:
302         * NetworkProcess/NetworkProcess.cpp:
303         (WebKit::NetworkProcess::initializeNetworkProcess):
304         * NetworkProcess/NetworkProcess.h:
305         (WebKit::NetworkProcess::loadThrottleLatency):
306         * NetworkProcess/NetworkProcessCreationParameters.cpp:
307         (WebKit::NetworkProcessCreationParameters::encode):
308         (WebKit::NetworkProcessCreationParameters::decode):
309         * NetworkProcess/NetworkProcessCreationParameters.h:
310         * UIProcess/Cocoa/WebProcessPoolCocoa.mm:
311         (WebKit::WebProcessPool::platformInitializeNetworkProcess):
312
313 2016-10-24  Dan Bernstein  <mitz@apple.com>
314
315         REGRESSION (r206410): Sandbox violations beneath WebProcessProxy::platformIsBeingDebugged
316         https://bugs.webkit.org/show_bug.cgi?id=163879
317         <rdar://problem/28728735>
318
319         Reviewed by Darin Adler.
320
321         * UIProcess/Cocoa/WebProcessProxyCocoa.mm:
322         (WebKit::WebProcessProxy::platformIsBeingDebugged): Check if the current process, which is
323           the UI process, is sandboxed before trying to find out if the Web process is being
324           debugged.
325
326 2016-10-21  Alex Christensen  <achristensen@webkit.org>
327
328         URL::port should return Optional<uint16_t>
329         https://bugs.webkit.org/show_bug.cgi?id=163806
330
331         Reviewed by Darin Adler.
332
333         * NetworkProcess/mac/NetworkProcessMac.mm:
334         (WebKit::overrideSystemProxies):
335         * Shared/API/APISecurityOrigin.h:
336         (API::SecurityOrigin::create):
337         * Shared/API/APIURL.h:
338         (API::URL::protocol):
339         * Shared/API/c/WKSecurityOriginRef.cpp:
340         (WKSecurityOriginGetPort):
341         * UIProcess/API/Cocoa/WKSecurityOrigin.mm:
342         (-[WKSecurityOrigin port]):
343         * WebProcess/WebPage/WebPage.cpp:
344         (WebKit::WebPage::canHandleRequest):
345         * WebProcess/cocoa/WebProcessCocoa.mm:
346         (WebKit::origin):
347
348 2016-10-24  Eric Carlson  <eric.carlson@apple.com>
349
350         [MediaStream] Separate media capture and audio playback muting
351         https://bugs.webkit.org/show_bug.cgi?id=163855
352         <rdar://problem/28827186>
353
354         Reviewed by Darin Adler.
355
356         * Shared/WebPageCreationParameters.h: Change 'muted' from bool to MutedStateFlags.
357
358         * UIProcess/API/C/WKPage.cpp: Change parameter from bool to WKMediaMutedState.
359         (WKPageSetMuted):
360         * UIProcess/API/C/WKPagePrivate.h: Define WKMediaMutedState.
361
362         * UIProcess/WebPageProxy.cpp:
363         (WebKit::WebPageProxy::WebPageProxy):
364         (WebKit::WebPageProxy::setMuted): m_muted -> m_mutedState.
365         (WebKit::WebPageProxy::creationParameters): Ditto.
366         * UIProcess/WebPageProxy.h:
367
368         * WebProcess/Plugins/PluginView.cpp:
369         (WebKit::PluginView::isMuted): page.isMuted -> page.mutedState.
370
371         * WebProcess/WebPage/WebPage.messages.in: Change SetMuted parameter.
372
373 2016-10-24  Youenn Fablet  <youenn@apple.com>
374
375         Activate WEB_RTC compilation flags for Mac bots
376         https://bugs.webkit.org/show_bug.cgi?id=163886
377
378         Reviewed by Eric Carlson.
379
380         * Configurations/FeatureDefines.xcconfig:
381
382 2016-10-24  Brady Eidson  <beidson@apple.com>
383
384         IndexedDB 2.0: Support IDBIndex name assignment.
385         <rdar://problem/28806932> and https://bugs.webkit.org/show_bug.cgi?id=163805
386
387         Reviewed by Alex Christensen.
388
389         * DatabaseProcess/IndexedDB/WebIDBConnectionToClient.cpp:
390         (WebKit::WebIDBConnectionToClient::didRenameIndex):
391         (WebKit::WebIDBConnectionToClient::renameIndex):
392         * DatabaseProcess/IndexedDB/WebIDBConnectionToClient.h:
393         * DatabaseProcess/IndexedDB/WebIDBConnectionToClient.messages.in:
394
395         * WebProcess/Databases/IndexedDB/WebIDBConnectionToServer.cpp:
396         (WebKit::WebIDBConnectionToServer::renameIndex):
397         (WebKit::WebIDBConnectionToServer::didRenameIndex):
398         * WebProcess/Databases/IndexedDB/WebIDBConnectionToServer.h:
399         * WebProcess/Databases/IndexedDB/WebIDBConnectionToServer.messages.in:
400
401 2016-10-23  Michael Catanzaro  <mcatanzaro@igalia.com>
402
403         [GTK] Remove DO NOT MODIFY headers from files that are no longer autogenerated
404         https://bugs.webkit.org/show_bug.cgi?id=163867
405
406         Reviewed by Darin Adler.
407
408         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMAttr.cpp:
409         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMAttr.h:
410         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMAttrPrivate.h:
411         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMBlob.cpp:
412         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMBlob.h:
413         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMBlobPrivate.h:
414         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCDATASection.cpp:
415         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCDATASection.h:
416         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCDATASectionPrivate.h:
417         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCSSRule.h:
418         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCSSRuleList.cpp:
419         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCSSRuleList.h:
420         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCSSRuleListPrivate.h:
421         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCSSRulePrivate.h:
422         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCSSStyleDeclaration.h:
423         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCSSStyleDeclarationPrivate.h:
424         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCSSStyleSheet.h:
425         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCSSStyleSheetPrivate.h:
426         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCSSValue.h:
427         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCSSValuePrivate.h:
428         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCharacterData.cpp:
429         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCharacterData.h:
430         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCharacterDataPrivate.h:
431         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMComment.cpp:
432         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMComment.h:
433         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCommentPrivate.h:
434         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMImplementation.h:
435         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMImplementationPrivate.h:
436         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMSelection.cpp:
437         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMSelection.h:
438         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMSelectionPrivate.h:
439         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMTokenList.cpp:
440         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMTokenList.h:
441         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMTokenListPrivate.h:
442         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMWindow.cpp:
443         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMWindow.h:
444         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMWindowPrivate.h:
445         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMWindowUnstable.h:
446         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDocument.h:
447         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDocumentFragment.cpp:
448         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDocumentFragment.h:
449         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDocumentFragmentPrivate.h:
450         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDocumentFragmentUnstable.h:
451         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDocumentPrivate.h:
452         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDocumentType.cpp:
453         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDocumentType.h:
454         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDocumentTypePrivate.h:
455         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDocumentUnstable.h:
456         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMElement.cpp:
457         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMElement.h:
458         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMElementPrivate.h:
459         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMElementUnstable.h:
460         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMEvent.cpp:
461         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMEvent.h:
462         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMEventPrivate.h:
463         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMFile.cpp:
464         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMFile.h:
465         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMFileList.cpp:
466         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMFileList.h:
467         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMFileListPrivate.h:
468         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMFilePrivate.h:
469         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLAnchorElement.cpp:
470         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLAnchorElement.h:
471         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLAnchorElementPrivate.h:
472         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLAppletElement.cpp:
473         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLAppletElement.h:
474         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLAppletElementPrivate.h:
475         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLAreaElement.cpp:
476         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLAreaElement.h:
477         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLAreaElementPrivate.h:
478         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLBRElement.cpp:
479         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLBRElement.h:
480         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLBRElementPrivate.h:
481         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLBaseElement.cpp:
482         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLBaseElement.h:
483         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLBaseElementPrivate.h:
484         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLBodyElement.cpp:
485         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLBodyElement.h:
486         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLBodyElementPrivate.h:
487         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLButtonElement.cpp:
488         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLButtonElement.h:
489         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLButtonElementPrivate.h:
490         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLCanvasElement.cpp:
491         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLCanvasElement.h:
492         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLCanvasElementPrivate.h:
493         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLCollection.cpp:
494         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLCollection.h:
495         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLCollectionPrivate.h:
496         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLDListElement.cpp:
497         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLDListElement.h:
498         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLDListElementPrivate.h:
499         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLDirectoryElement.cpp:
500         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLDirectoryElement.h:
501         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLDirectoryElementPrivate.h:
502         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLDivElement.cpp:
503         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLDivElement.h:
504         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLDivElementPrivate.h:
505         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLDocument.cpp:
506         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLDocument.h:
507         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLDocumentPrivate.h:
508         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLElement.cpp:
509         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLElement.h:
510         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLElementPrivate.h:
511         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLElementUnstable.h:
512         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLEmbedElement.cpp:
513         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLEmbedElement.h:
514         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLEmbedElementPrivate.h:
515         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLFieldSetElement.cpp:
516         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLFieldSetElement.h:
517         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLFieldSetElementPrivate.h:
518         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLFontElement.cpp:
519         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLFontElement.h:
520         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLFontElementPrivate.h:
521         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLFormElement.cpp:
522         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLFormElement.h:
523         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLFormElementPrivate.h:
524         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLFrameElement.cpp:
525         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLFrameElement.h:
526         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLFrameElementPrivate.h:
527         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLFrameSetElement.cpp:
528         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLFrameSetElement.h:
529         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLFrameSetElementPrivate.h:
530         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLHRElement.cpp:
531         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLHRElement.h:
532         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLHRElementPrivate.h:
533         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLHeadElement.cpp:
534         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLHeadElement.h:
535         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLHeadElementPrivate.h:
536         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLHeadingElement.cpp:
537         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLHeadingElement.h:
538         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLHeadingElementPrivate.h:
539         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLHtmlElement.cpp:
540         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLHtmlElement.h:
541         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLHtmlElementPrivate.h:
542         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLIFrameElement.cpp:
543         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLIFrameElement.h:
544         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLIFrameElementPrivate.h:
545         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLImageElement.cpp:
546         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLImageElement.h:
547         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLImageElementPrivate.h:
548         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLInputElement.cpp:
549         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLInputElement.h:
550         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLInputElementPrivate.h:
551         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLLIElement.cpp:
552         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLLIElement.h:
553         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLLIElementPrivate.h:
554         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLLabelElement.cpp:
555         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLLabelElement.h:
556         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLLabelElementPrivate.h:
557         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLLegendElement.cpp:
558         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLLegendElement.h:
559         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLLegendElementPrivate.h:
560         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLLinkElement.cpp:
561         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLLinkElement.h:
562         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLLinkElementPrivate.h:
563         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLMapElement.cpp:
564         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLMapElement.h:
565         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLMapElementPrivate.h:
566         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLMarqueeElement.cpp:
567         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLMarqueeElement.h:
568         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLMarqueeElementPrivate.h:
569         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLMenuElement.cpp:
570         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLMenuElement.h:
571         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLMenuElementPrivate.h:
572         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLMetaElement.cpp:
573         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLMetaElement.h:
574         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLMetaElementPrivate.h:
575         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLModElement.cpp:
576         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLModElement.h:
577         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLModElementPrivate.h:
578         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLOListElement.cpp:
579         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLOListElement.h:
580         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLOListElementPrivate.h:
581         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLObjectElement.cpp:
582         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLObjectElement.h:
583         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLObjectElementPrivate.h:
584         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLOptGroupElement.cpp:
585         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLOptGroupElement.h:
586         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLOptGroupElementPrivate.h:
587         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLOptionElement.cpp:
588         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLOptionElement.h:
589         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLOptionElementPrivate.h:
590         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLOptionsCollection.cpp:
591         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLOptionsCollection.h:
592         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLOptionsCollectionPrivate.h:
593         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLParagraphElement.cpp:
594         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLParagraphElement.h:
595         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLParagraphElementPrivate.h:
596         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLParamElement.cpp:
597         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLParamElement.h:
598         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLParamElementPrivate.h:
599         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLPreElement.cpp:
600         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLPreElement.h:
601         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLPreElementPrivate.h:
602         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLPrivate.cpp:
603         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLQuoteElement.cpp:
604         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLQuoteElement.h:
605         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLQuoteElementPrivate.h:
606         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLScriptElement.cpp:
607         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLScriptElement.h:
608         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLScriptElementPrivate.h:
609         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLSelectElement.cpp:
610         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLSelectElement.h:
611         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLSelectElementPrivate.h:
612         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLStyleElement.cpp:
613         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLStyleElement.h:
614         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLStyleElementPrivate.h:
615         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTableCaptionElement.cpp:
616         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTableCaptionElement.h:
617         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTableCaptionElementPrivate.h:
618         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTableCellElement.cpp:
619         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTableCellElement.h:
620         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTableCellElementPrivate.h:
621         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTableColElement.cpp:
622         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTableColElement.h:
623         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTableColElementPrivate.h:
624         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTableElement.cpp:
625         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTableElement.h:
626         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTableElementPrivate.h:
627         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTableRowElement.cpp:
628         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTableRowElement.h:
629         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTableRowElementPrivate.h:
630         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTableSectionElement.cpp:
631         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTableSectionElement.h:
632         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTableSectionElementPrivate.h:
633         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTextAreaElement.cpp:
634         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTextAreaElement.h:
635         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTextAreaElementPrivate.h:
636         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTitleElement.cpp:
637         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTitleElement.h:
638         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTitleElementPrivate.h:
639         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLUListElement.cpp:
640         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLUListElement.h:
641         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLUListElementPrivate.h:
642         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMKeyboardEvent.cpp:
643         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMKeyboardEvent.h:
644         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMKeyboardEventPrivate.h:
645         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMMediaList.h:
646         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMMediaListPrivate.h:
647         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMMouseEvent.cpp:
648         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMMouseEvent.h:
649         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMMouseEventPrivate.h:
650         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMNamedNodeMap.cpp:
651         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMNamedNodeMap.h:
652         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMNamedNodeMapPrivate.h:
653         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMNode.h:
654         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMNodeIterator.cpp:
655         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMNodeIterator.h:
656         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMNodeIteratorPrivate.h:
657         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMNodeList.cpp:
658         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMNodeList.h:
659         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMNodeListPrivate.h:
660         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMNodePrivate.h:
661         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMProcessingInstruction.cpp:
662         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMProcessingInstruction.h:
663         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMProcessingInstructionPrivate.h:
664         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMRange.cpp:
665         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMRange.h:
666         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMRangePrivate.h:
667         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMRangeUnstable.h:
668         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMStyleSheet.cpp:
669         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMStyleSheet.h:
670         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMStyleSheetList.cpp:
671         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMStyleSheetList.h:
672         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMStyleSheetListPrivate.h:
673         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMStyleSheetPrivate.h:
674         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMText.cpp:
675         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMText.h:
676         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMTextPrivate.h:
677         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMTreeWalker.cpp:
678         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMTreeWalker.h:
679         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMTreeWalkerPrivate.h:
680         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMUIEvent.cpp:
681         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMUIEvent.h:
682         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMUIEventPrivate.h:
683         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMWheelEvent.cpp:
684         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMWheelEvent.h:
685         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMWheelEventPrivate.h:
686         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMXPathExpression.cpp:
687         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMXPathExpression.h:
688         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMXPathExpressionPrivate.h:
689         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMXPathNSResolverPrivate.h:
690         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMXPathResult.cpp:
691         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMXPathResult.h:
692         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMXPathResultPrivate.h:
693         * WebProcess/InjectedBundle/API/gtk/DOM/webkitdom.h:
694         * WebProcess/InjectedBundle/API/gtk/DOM/webkitdomautocleanups.h:
695         * WebProcess/InjectedBundle/API/gtk/DOM/webkitdomdefines.h:
696
697 2016-10-23  Chris Dumez  <cdumez@apple.com>
698
699         Another unreviewed attempt to fix the WatchOS / TvOS build after r207585.
700         <rdar://problem/28902292>
701
702         Disable USE_CFURLCONNECTION on newer WatchOS / TvOS.
703
704         * config.h:
705
706 2016-10-23  Chris Dumez  <cdumez@apple.com>
707
708         Unreviewed attempt to fix WatchOS / TvOS build after r207585.
709         <rdar://problem/28902292>
710
711         Enable NETWORK_SESSION on those platforms.
712
713         * config.h:
714
715 2016-10-22  Dan Bernstein  <mitz@apple.com>
716
717         [iOS] _webViewWillEndNavigationGesture:withNavigationToBackForwardListItem: is never called
718         https://bugs.webkit.org/show_bug.cgi?id=163758
719
720         Reviewed by Darin Adler.
721
722         * UIProcess/ios/ViewGestureControllerIOS.mm:
723         (WebKit::ViewGestureController::beginSwipeGesture): Don’t reset the interactive update
724           handler.
725
726 2016-10-21  David Kilzer  <ddkilzer@apple.com>
727
728         Bug 163762: IntSize::area() should used checked arithmetic
729         <https://webkit.org/b/163762>
730
731         Reviewed by Darin Adler.
732
733         * Shared/ShareableBitmap.cpp:
734         (WebKit::ShareableBitmap::create): Add overflow check and return
735         nullptr on overflow.
736         (WebKit::ShareableBitmap::createShareable): Ditto.
737         (WebKit::ShareableBitmap::create): Change debug assert for
738         adequate buffer size check into release check.
739         * Shared/ShareableBitmap.h:
740         (WebKit::ShareableBitmap::numBytesForSize): Change to return a
741         Checked<unsigned, RecordOverflow> value.
742         (WebKit::ShareableBitmap::sizeInBytes):
743         * Shared/cairo/ShareableBitmapCairo.cpp:
744         (WebKit::ShareableBitmap::numBytesForSize): Ditto.
745         * UIProcess/API/Cocoa/WKWebView.mm:
746         (-[WKWebView _takeViewSnapshot]): Call unsafeGet().
747
748 2016-10-21  Eric Carlson  <eric.carlson@apple.com>
749
750         [MediaStream] Dynamically generate media capture sandbox extensions
751         https://bugs.webkit.org/show_bug.cgi?id=154861
752         <rdar://problem/24909411>
753
754         Reviewed by Tim Horton.
755
756         * Shared/SandboxExtension.h:
757         (WebKit::SandboxExtension::createHandleForGenericExtension):
758         * Shared/mac/SandboxExtensionMac.mm:
759         (WebKit::wkSandboxExtensionType): Add case for generic handle.
760         (WebKit::SandboxExtension::createHandleForGenericExtension): New.
761
762         * UIProcess/UserMediaPermissionRequestManagerProxy.cpp:
763         (WebKit::UserMediaPermissionRequestManagerProxy::invalidateRequests): Clear the list of extensions granted.
764         (WebKit::UserMediaPermissionRequestManagerProxy::userMediaAccessWasGranted): Extend the web 
765           process sandbox as necessary.
766         * UIProcess/UserMediaPermissionRequestManagerProxy.h:
767
768         * WebProcess/MediaStream/UserMediaPermissionRequestManager.cpp:
769         (WebKit::UserMediaPermissionRequestManager::~UserMediaPermissionRequestManager): Revoke all
770           sandbox extensions.
771         (WebKit::UserMediaPermissionRequestManager::grantUserMediaDevicesSandboxExtension): Consume
772           sandbox extensions.
773         * WebProcess/MediaStream/UserMediaPermissionRequestManager.h:
774
775         * WebProcess/WebPage/WebPage.cpp:
776         (WebKit::WebPage::grantUserMediaDevicesSandboxExtension): Pass-through to user media manager.
777         * WebProcess/WebPage/WebPage.h:
778
779         * WebProcess/WebPage/WebPage.messages.in: Add GrantUserMediaDevicesSandboxExtension.
780
781         * WebProcess/com.apple.WebProcess.sb.in: Add rules, defines, and a macro to allow dynamic extensions
782           for media capture devices.
783
784 2016-10-21  Gavin Barraclough  <barraclough@apple.com>
785
786         WebPageProxy should not need PageActivityState
787         https://bugs.webkit.org/show_bug.cgi?id=163821
788
789         Reviewed by Geoff Garen.
790
791         The PageActivityState is currently plumbed back from WebCore up to the UI process, to
792         determine whether to enabled process suppression. However the information it contains
793         (whether a page load is ongoing, whether audio is playing) is already available via
794         other means. Remove this use of PageActivityState.
795
796         * UIProcess/PageLoadState.cpp:
797         (WebKit::PageLoadState::commitChanges):
798             - PageLoadState notifies WebPageProxy when loading state changes.
799         * UIProcess/WebPageProxy.cpp:
800         (WebKit::WebPageProxy::updateThrottleState):
801             - Now relies on info from PageLoadState, setMuted, isPlayingMediaDidChange.
802         (WebKit::WebPageProxy::setMuted):
803         (WebKit::WebPageProxy::isPlayingMediaDidChange):
804             - If audio playback state changes we may need to update the throttle state.
805         (WebKit::WebPageProxy::setPageActivityState): Deleted.
806             - removed PageActivityState from WK2.
807         * UIProcess/WebPageProxy.h:
808         (WebKit::WebPageProxy::isLoadingChanged):
809             - PageLoadState notifies WebPageProxy when loading state changes.
810         * UIProcess/WebPageProxy.messages.in:
811             - removed PageActivityState from WK2.
812         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
813         (WebKit::WebChromeClient::setPageActivityState): Deleted.
814             - removed PageActivityState from WK2.
815         * WebProcess/WebCoreSupport/WebChromeClient.h:
816             - removed PageActivityState from WK2.
817         * WebProcess/WebPage/WebPage.cpp:
818         (WebKit::WebPage::setPageActivityState): Deleted.
819             - removed PageActivityState from WK2.
820         * WebProcess/WebPage/WebPage.h:
821             - removed PageActivityState from WK2.
822
823 2016-10-21  Gavin Barraclough  <barraclough@apple.com>
824
825         WebPage should take UserActivity directly for user input
826         https://bugs.webkit.org/show_bug.cgi?id=163813
827
828         Reviewed by Anders Carlsson.
829
830         When we receive mouse/keyboard events in a page, we want to prevent AppNap. We currently do so
831         via the PageThrottler. This patch is to just make the WebPage drive the UserActivity directly.
832
833         Two reasons to do so: (1) to cleanup & simplify for further refactoring. (2) The current code
834         isn't really achieving the desired effect. The page setting the flag in the throttler to get
835         the activity to be set is now a less effective way of achieving this goal, since the
836         PageActivityState bounces back across to the UI process & then messages back to the WebContent
837         process to take the UserActivity. These extra hops defeat the purpose of making sure the boost
838         from the initial message isn't lost.
839
840         * WebProcess/WebPage/WebPage.cpp:
841         (WebKit::m_userActivityHysteresis):
842             - m_userActivityHysteresis triggers updateUserActivity.
843         (WebKit::WebPage::setPageSuppressed):
844             - setPageSuppressed starts/stops m_userActivityHysteresis.
845         (WebKit::WebPage::updateUserActivity):
846             - update UserActivity based on state of m_userActivityHysteresis.
847         (WebKit::WebPage::mouseEvent):
848         (WebKit::WebPage::wheelEvent):
849         (WebKit::WebPage::keyEvent):
850             - input events impulse m_userActivityHysteresis.
851         * WebProcess/WebPage/WebPage.h:
852
853 2016-10-21  Wenson Hsieh  <wenson_hsieh@apple.com>
854
855         Support (insertFrom|deleteBy)Composition and (insert|delete)CompositionText inputTypes for InputEvents
856         https://bugs.webkit.org/show_bug.cgi?id=163460
857         <rdar://problem/28784142>
858
859         Reviewed by Darin Adler.
860
861         Handle new EditAction types for inserting/deleting pending/final compositions.
862
863         * UIProcess/WebEditCommandProxy.cpp:
864         (WebKit::WebEditCommandProxy::nameForEditAction):
865
866 2016-10-21  Jeremy Jones  <jeremyj@apple.com>
867
868         Implement basic pointer lock behavior for WebKit and WebKit2.
869         https://bugs.webkit.org/show_bug.cgi?id=162745
870
871         Reviewed by Simon Fraser.
872
873         Enable basic pointer lock functionality by plumbing requests through WebPage IPC.
874         Pass through mouse movement deltas.
875         Unlock pointer when view is no longer visible.
876
877         * Shared/WebEventConversion.cpp:
878         (WebKit::WebKit2PlatformMouseEvent::WebKit2PlatformMouseEvent): Pass along mouse movement.
879         * UIProcess/WebPageProxy.cpp:
880         (WebKit::WebPageProxy::dispatchViewStateChange): Unlock pointer when page is not visible.
881         (WebKit::WebPageProxy::requestPointerLock): Hide and disassociate pointer.
882         (WebKit::WebPageProxy::requestPointerUnlock): Show and associate pointer.
883         * UIProcess/WebPageProxy.h:
884         * UIProcess/WebPageProxy.messages.in: Add methods.
885         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
886         (WebKit::WebChromeClient::requestPointerLock): Pass along to web page.
887         (WebKit::WebChromeClient::requestPointerUnlock): Ditto.
888         * WebProcess/WebCoreSupport/WebChromeClient.h:
889         * WebProcess/WebPage/WebPage.cpp:
890         (WebKit::WebPage::didAcquirePointerLock): Forward to PointerLockController.
891         (WebKit::WebPage::didNotAcquirePointerLock): Ditto.
892         (WebKit::WebPage::didLosePointerLock): Ditto.
893         * WebProcess/WebPage/WebPage.h:
894         * WebProcess/WebPage/WebPage.messages.in: Add methods.
895
896 2016-10-21  Wenson Hsieh  <wenson_hsieh@apple.com>
897
898         Implement InputEvent.getTargetRanges() for the input events spec
899         https://bugs.webkit.org/show_bug.cgi?id=162947
900         <rdar://problem/28853079>
901
902         Reviewed by Darin Adler.
903
904         Boilerplate change to add a runtime guard for InputEvents-related IDL interfaces. See WebCore ChangeLog entry
905         for more details.
906
907         * WebProcess/WebPage/WebPage.cpp:
908         (WebKit::WebPage::updatePreferences):
909
910 2016-10-20  Carlos Garcia Campos  <cgarcia@igalia.com>
911
912         [GTK] Configures but fails to link with ENABLE_OPENGL=OFF
913         https://bugs.webkit.org/show_bug.cgi?id=163449
914
915         Reviewed by Michael Catanzaro.
916
917         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
918         (webkitWebViewBaseRealize): Check TEXTURE_MAPPER_GL instead of TEXTURE_MAPPER and also ensure the current
919         display is X11.
920         (webkitWebViewBaseUnrealize): Ditto.
921         (webkitWebViewBaseDidRelaunchWebProcess): Check TEXTURE_MAPPER_GL instead of TEXTURE_MAPPER.
922         (webkitWebViewBasePageClosed): Ditto.
923         * UIProcess/AcceleratedDrawingAreaProxy.cpp:
924         (WebKit::AcceleratedDrawingAreaProxy::didUpdateBackingStoreState): Ditto.
925         (WebKit::AcceleratedDrawingAreaProxy::waitForAndDispatchDidUpdateBackingStoreState): Check EGL is enabled before
926         trying to use the WaylandCompositor.
927         * UIProcess/AcceleratedDrawingAreaProxy.h:
928         * UIProcess/WebProcessPool.cpp:
929         (WebKit::WebProcessPool::createNewWebProcess): Ditto.
930         * UIProcess/gtk/AcceleratedBackingStore.cpp:
931         (WebKit::AcceleratedBackingStore::create): Ditto.
932         * UIProcess/gtk/AcceleratedBackingStoreWayland.cpp:
933         * UIProcess/gtk/WaylandCompositor.cpp:
934         * UIProcess/gtk/WaylandCompositor.h:
935         * WebProcess/WebPage/AcceleratedDrawingArea.cpp:
936         (WebKit::AcceleratedDrawingArea::enterAcceleratedCompositingMode): Check TEXTURE_MAPPER_GL instead of TEXTURE_MAPPER.
937         * WebProcess/WebPage/AcceleratedDrawingArea.h:
938         * WebProcess/WebPage/DrawingArea.h:
939         * WebProcess/WebPage/DrawingArea.messages.in:
940         * WebProcess/WebPage/LayerTreeHost.h:
941
942 2016-10-20  Chris Dumez  <cdumez@apple.com>
943
944         "Download Linked File" context menu action should use 'download' attribute as suggested filename
945         https://bugs.webkit.org/show_bug.cgi?id=163742
946         <rdar://problem/28840734>
947
948         Reviewed by Darin Adler.
949
950         Update "Download Linked File" context menu action to use the anchor
951         element's 'download' attribute as suggested filename for the download.
952
953         * NetworkProcess/NetworkProcess.cpp:
954         (WebKit::NetworkProcess::downloadRequest):
955         * NetworkProcess/NetworkProcess.h:
956         * NetworkProcess/NetworkProcess.messages.in:
957         * Shared/WebHitTestResultData.cpp:
958         (WebKit::WebHitTestResultData::WebHitTestResultData):
959         (WebKit::WebHitTestResultData::encode):
960         (WebKit::WebHitTestResultData::decode):
961         * Shared/WebHitTestResultData.h:
962         * UIProcess/WebPageProxy.cpp:
963         (WebKit::WebPageProxy::contextMenuItemSelected):
964         * UIProcess/WebProcessPool.cpp:
965         (WebKit::WebProcessPool::download):
966         * UIProcess/WebProcessPool.h:
967         * WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp:
968         (WebKit::InjectedBundleHitTestResult::linkSuggestedFilename):
969
970 2016-10-19  Myles C. Maxfield  <mmaxfield@apple.com>
971
972         [macOS] [iOS] Disable variation fonts on macOS El Capitan and iOS 9
973         https://bugs.webkit.org/show_bug.cgi?id=163374
974
975         Reviewed by Darin Adler.
976
977         * Configurations/FeatureDefines.xcconfig:
978
979 2016-10-20  Brady Eidson  <beidson@apple.com>
980
981         IndexedDB 2.0: Support IDBObjectStore name assignment.
982         <rdar://problem/28806931> and https://bugs.webkit.org/show_bug.cgi?id=163749
983
984         Reviewed by Alex Christensen.
985
986         * DatabaseProcess/IndexedDB/WebIDBConnectionToClient.cpp:
987         (WebKit::WebIDBConnectionToClient::didRenameObjectStore):
988         (WebKit::WebIDBConnectionToClient::renameObjectStore):
989         * DatabaseProcess/IndexedDB/WebIDBConnectionToClient.h:
990         * DatabaseProcess/IndexedDB/WebIDBConnectionToClient.messages.in:
991
992         * WebProcess/Databases/IndexedDB/WebIDBConnectionToServer.cpp:
993         (WebKit::WebIDBConnectionToServer::renameObjectStore):
994         (WebKit::WebIDBConnectionToServer::didRenameObjectStore):
995         * WebProcess/Databases/IndexedDB/WebIDBConnectionToServer.h:
996         * WebProcess/Databases/IndexedDB/WebIDBConnectionToServer.messages.in:
997
998 2016-10-20  Carlos Garcia Campos  <cgarcia@igalia.com>
999
1000         [GTK] Avoid strstr() when checking (E)GL extensions
1001         https://bugs.webkit.org/show_bug.cgi?id=161958
1002
1003         Reviewed by Žan Doberšek.
1004
1005         Use GLContext::isExtensionSupported() instead of strstr().
1006
1007         * UIProcess/gtk/WaylandCompositor.cpp:
1008         (WebKit::WaylandCompositor::initializeEGL):
1009
1010 2016-10-20  Carlos Garcia Campos  <cgarcia@igalia.com>
1011
1012         Wrong use of EGL_DEPTH_SIZE
1013         https://bugs.webkit.org/show_bug.cgi?id=155536
1014
1015         Reviewed by Michael Catanzaro.
1016
1017         Use XErrorTrapper class instead of the custom XErrorHandler.
1018
1019         * PluginProcess/unix/PluginProcessMainUnix.cpp:
1020         (WebKit::PluginProcessMainUnix):
1021
1022 2016-10-19  Carlos Garcia Campos  <cgarcia@igalia.com>
1023
1024         [SOUP] Add NetworkSession implementation and switch to use it
1025         https://bugs.webkit.org/show_bug.cgi?id=163597
1026
1027         Reviewed by Alex Christensen.
1028
1029         Basically move the ResourceHandle implementation to the network process, but modernized, cleaned up, and adapted
1030         to the NetworkSession model.
1031
1032         * CMakeLists.txt: Add new files to compilation.
1033         * NetworkProcess/Downloads/Download.cpp:
1034         (WebKit::Download::Download): Use the same code for all ports using NetworkSession and add missing
1035         initialization of m_sessionID.
1036         * NetworkProcess/Downloads/Download.h:
1037         (WebKit::Download::Download): Define PlatformDownloadTaskRef on every platform to make the constructor common to
1038         all ports using NetworkSession.
1039         * NetworkProcess/Downloads/soup/DownloadSoup.cpp:
1040         (WebKit::Download::cancelNetworkLoad):
1041         (WebKit::Download::platformDidFinish):
1042         * NetworkProcess/NetworkDataTask.h:
1043         (WebKit::NetworkDataTask::pendingDownloadID): Make const.
1044         (WebKit::NetworkDataTask::pendingDownload): Ditto.
1045         (WebKit::NetworkDataTask::pendingDownloadLocation): Ditto.
1046         (WebKit::NetworkDataTask::isDownload): Helper to check if the task is a download.
1047         * NetworkProcess/NetworkLoad.cpp:
1048         (WebKit::NetworkLoad::didReceiveResponseNetworkSession): Use NetworkDataTask::isDownload().
1049         * NetworkProcess/NetworkProcess.cpp:
1050         (WebKit::NetworkProcess::NetworkProcess): NetworkSession::setCustomProtocolManager() is Cocoa only.
1051         * NetworkProcess/NetworkSession.h:
1052         * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
1053         (WebKit::NetworkSession::networkStorageSession): Make const.
1054         * NetworkProcess/soup/NetworkDataTaskSoup.cpp: Added.
1055         (WebKit::NetworkDataTask::NetworkDataTask):
1056         (WebKit::NetworkDataTask::~NetworkDataTask):
1057         (WebKit::NetworkDataTask::scheduleFailure):
1058         (WebKit::NetworkDataTask::failureTimerFired):
1059         (WebKit::NetworkDataTask::suggestedFilename):
1060         (WebKit::NetworkDataTask::setSuggestedFilename):
1061         (WebKit::NetworkDataTask::setPendingDownloadLocation):
1062         (WebKit::NetworkDataTask::allowsSpecificHTTPSCertificateForHost):
1063         (WebKit::NetworkDataTask::createRequest):
1064         (WebKit::NetworkDataTask::clearRequest):
1065         (WebKit::NetworkDataTask::resume):
1066         (WebKit::NetworkDataTask::suspend):
1067         (WebKit::NetworkDataTask::cancel):
1068         (WebKit::NetworkDataTask::invalidateAndCancel):
1069         (WebKit::NetworkDataTask::state):
1070         (WebKit::NetworkDataTask::timeoutFired):
1071         (WebKit::NetworkDataTask::startTimeout):
1072         (WebKit::NetworkDataTask::stopTimeout):
1073         (WebKit::NetworkDataTask::sendRequestCallback):
1074         (WebKit::NetworkDataTask::didSendRequest):
1075         (WebKit::NetworkDataTask::didReceiveResponse):
1076         (WebKit::NetworkDataTask::tlsErrorsChangedCallback):
1077         (WebKit::NetworkDataTask::tlsErrorsChanged):
1078         (WebKit::NetworkDataTask::applyAuthenticationToRequest):
1079         (WebKit::NetworkDataTask::authenticateCallback):
1080         (WebKit::isAuthenticationFailureStatusCode):
1081         (WebKit::NetworkDataTask::authenticate):
1082         (WebKit::NetworkDataTask::continueAuthenticate):
1083         (WebKit::NetworkDataTask::skipInputStreamForRedirectionCallback):
1084         (WebKit::NetworkDataTask::skipInputStreamForRedirection):
1085         (WebKit::NetworkDataTask::didFinishSkipInputStreamForRedirection):
1086         (WebKit::shouldRedirectAsGET):
1087         (WebKit::NetworkDataTask::shouldStartHTTPRedirection):
1088         (WebKit::NetworkDataTask::continueHTTPRedirection):
1089         (WebKit::NetworkDataTask::readCallback):
1090         (WebKit::NetworkDataTask::read):
1091         (WebKit::NetworkDataTask::didRead):
1092         (WebKit::NetworkDataTask::didFinishRead):
1093         (WebKit::NetworkDataTask::requestNextPartCallback):
1094         (WebKit::NetworkDataTask::requestNextPart):
1095         (WebKit::NetworkDataTask::didRequestNextPart):
1096         (WebKit::NetworkDataTask::didFinishRequestNextPart):
1097         (WebKit::NetworkDataTask::gotHeadersCallback):
1098         (WebKit::NetworkDataTask::didGetHeaders):
1099         (WebKit::NetworkDataTask::wroteBodyDataCallback):
1100         (WebKit::NetworkDataTask::didWriteBodyData):
1101         (WebKit::NetworkDataTask::download):
1102         (WebKit::NetworkDataTask::writeDownloadCallback):
1103         (WebKit::NetworkDataTask::writeDownload):
1104         (WebKit::NetworkDataTask::didWriteDownload):
1105         (WebKit::NetworkDataTask::didFinishDownload):
1106         (WebKit::NetworkDataTask::didFailDownload):
1107         (WebKit::NetworkDataTask::cleanDownloadFiles):
1108         (WebKit::NetworkDataTask::didFail):
1109         (WebKit::NetworkDataTask::networkEventCallback):
1110         (WebKit::NetworkDataTask::networkEvent):
1111         (WebKit::NetworkDataTask::startingCallback):
1112         (WebKit::NetworkDataTask::requestStartedCallback):
1113         (WebKit::NetworkDataTask::didStartRequest):
1114         (WebKit::NetworkDataTask::restartedCallback):
1115         (WebKit::NetworkDataTask::didRestart):
1116         * NetworkProcess/soup/NetworkSessionSoup.cpp:
1117         (WebKit::NetworkSession::create):
1118         (WebKit::NetworkSession::defaultSession):
1119         (WebKit::NetworkSession::networkStorageSession):
1120         (WebKit::NetworkSession::NetworkSession):
1121         (WebKit::NetworkSession::~NetworkSession):
1122         (WebKit::NetworkSession::soupSession):
1123         (WebKit::NetworkSession::invalidateAndCancel):
1124         (WebKit::NetworkSession::clearCredentials):
1125         * NetworkProcess/soup/RemoteNetworkingContextSoup.cpp:
1126         (WebKit::RemoteNetworkingContext::ensurePrivateBrowsingSession): Add implementation matching
1127         WebFrameNetworkingContext::ensurePrivateBrowsingSession().
1128         (WebKit::RemoteNetworkingContext::storageSession): Do not always return the default session if the given one is
1129         in the global map.
1130         * PlatformEfl.cmake: Ad new files to compilation.
1131         * PlatformGTK.cmake: Ditto.
1132         * WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp:
1133         (WebKit::WebFrameNetworkingContext::ensurePrivateBrowsingSession): Also create a NetworkSession.
1134         * config.h: Enable NetworkSession unconditionally for Soup based ports.
1135
1136 2016-10-19  Alex Christensen  <achristensen@webkit.org>
1137
1138         Revert r207151
1139         https://bugs.webkit.org/show_bug.cgi?id=163675
1140
1141         Reviewed by Brent Fulgham.
1142
1143         * NetworkProcess/Downloads/Download.h:
1144         * NetworkProcess/Downloads/mac/DownloadMac.mm:
1145         * NetworkProcess/NetworkLoad.h:
1146         * NetworkProcess/mac/NetworkLoadMac.mm:
1147         (WebKit::NetworkLoad::willCacheResponseAsync):
1148         * Shared/Authentication/cocoa/AuthenticationManagerCocoa.mm:
1149         (WebKit::AuthenticationManager::receivedCredential):
1150         (WebKit::AuthenticationManager::receivedRequestToContinueWithoutCredential):
1151         (WebKit::AuthenticationManager::receivedCancellation):
1152         (WebKit::AuthenticationManager::receivedRequestToPerformDefaultHandling):
1153         (WebKit::AuthenticationManager::receivedChallengeRejection):
1154         * Shared/WebProcessCreationParameters.cpp:
1155         (WebKit::WebProcessCreationParameters::encode):
1156         (WebKit::WebProcessCreationParameters::decode):
1157         * Shared/WebProcessCreationParameters.h:
1158         * Shared/mac/WebCoreArgumentCodersMac.mm:
1159         (IPC::ArgumentCoder<ResourceRequest>::encodePlatformData):
1160         (IPC::ArgumentCoder<ResourceRequest>::decodePlatformData):
1161         * WebKit2.xcodeproj/project.pbxproj:
1162
1163 2016-10-19  Chris Dumez  <cdumez@apple.com>
1164
1165         [WK2] Expose suggested filename via WKBundleHitTestResult API
1166         https://bugs.webkit.org/show_bug.cgi?id=163693
1167         <rdar://problem/28840734>
1168
1169         Reviewed by Anders Carlsson.
1170
1171         Expose suggested filename via WKBundleHitTestResult API. The implementation
1172         currently relies on the 'download' attribute on anchor / area elements
1173         that we recently started supporting.
1174
1175         * WebProcess/InjectedBundle/API/c/WKBundleHitTestResult.cpp:
1176         (WKBundleHitTestResultCopyLinkSuggestedFilename):
1177         * WebProcess/InjectedBundle/API/c/WKBundleHitTestResult.h:
1178         * WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp:
1179         (WebKit::InjectedBundleHitTestResult::create):
1180         (WebKit::InjectedBundleHitTestResult::mediaType):
1181         (WebKit::InjectedBundleHitTestResult::linkSuggestedFilename):
1182         (WebKit::InjectedBundleHitTestResult::imageRect):
1183         * WebProcess/InjectedBundle/InjectedBundleHitTestResult.h:
1184
1185 2016-10-19  Ryan Haddad  <ryanhaddad@apple.com>
1186
1187         Unreviewed, rolling out r207557.
1188
1189         This change caused animations/font-variations tests to time
1190         out on pre-Sierra Macs.
1191
1192         Reverted changeset:
1193
1194         "[macOS] [iOS] Disable variation fonts on macOS El Capitan and
1195         iOS 9"
1196         https://bugs.webkit.org/show_bug.cgi?id=163374
1197         http://trac.webkit.org/changeset/207557
1198
1199 2016-10-19  Andy Estes  <aestes@apple.com>
1200
1201         Crash in ASCIICaseInsensitiveHash::hash() when a response has a null MIME type
1202         https://bugs.webkit.org/show_bug.cgi?id=163476
1203         <rdar://problem/26941395>
1204
1205         Reviewed by Andreas Kling.
1206
1207         When custom content providers are registered and a response has a null MIME type, WebPage
1208         will pass a null String to HashSet::contains(). This results in a null pointer dereference,
1209         since the String hash functions do not support null Strings and unconditionally dereference
1210         their StringImpls. Fixed by checking that Strings are non-null before calling
1211         HashSet::contains() on m_mimeTypesWithCustomContentProviders.
1212
1213         New API test: WebKit2.LoadDataWithNilMIMEType.
1214
1215         * WebProcess/WebPage/WebPage.cpp:
1216         (WebKit::WebPage::shouldUseCustomContentProviderForResponse): Checked if mimeType is null
1217         before calling m_mimeTypesWithCustomContentProviders.contains().
1218         (WebKit::WebPage::canShowMIMEType): Ditto.
1219         * WebProcess/WebPage/WebPage.h: Made private the declaration of canPluginHandleResponse().
1220
1221 2016-10-19  Chris Dumez  <cdumez@apple.com>
1222
1223         Move HTML Interactive Form Validation behind an experimental flag
1224         https://bugs.webkit.org/show_bug.cgi?id=163673
1225
1226         Reviewed by Daniel Bates.
1227
1228         Move HTML Interactive Form Validation behind an experimental feature flag
1229         and disable by default until by have a better UI.
1230
1231         * Shared/WebPreferencesDefinitions.h:
1232         * WebProcess/InjectedBundle/InjectedBundle.cpp:
1233         (WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner):
1234
1235 2016-10-19  Damian Kaleta  <dkaleta@apple.com>
1236
1237         https://bugs.webkit.org/show_bug.cgi?id=163292
1238
1239         Reviewed by Brady Eidson.
1240         
1241         Added ability to display context menu asynchronously.
1242
1243         * Shared/API/APIObject.h: Added ContextMenuListener.
1244         * Shared/API/c/WKBase.h: Added WKContextMenuListenerRef struct.
1245         * UIProcess/API/APIContextMenuClient.h:
1246         (API::ContextMenuClient::getContextMenuFromProposedMenuAsync): New method that allows showing context menu asynchronously.
1247         * UIProcess/API/C/WKAPICast.h: Added a new mapping for WebContextMenuListenerProxy.
1248         * UIProcess/API/C/WKContextMenuListener.cpp: Added. New class that allow a client to return results asynchronously.
1249         (WKContextMenuListenerGetTypeID):
1250         (WKContextMenuListenerUseContextMenuItems):
1251         * UIProcess/API/C/WKContextMenuListener.h: Added.
1252         * UIProcess/API/C/WKPage.cpp: Added WKPageContextMenuClientV4.
1253         (WKPageSetPageContextMenuClient):
1254         * UIProcess/API/C/WKPageContextMenuClient.h:
1255         * UIProcess/WebContextMenuListenerProxy.cpp: Copied from Source/WebKit2/UIProcess/mac/WebContextMenuProxyMac.h.
1256         (WebKit::WebContextMenuListenerProxy::WebContextMenuListenerProxy):
1257         (WebKit::WebContextMenuListenerProxy::~WebContextMenuListenerProxy):
1258         (WebKit::WebContextMenuListenerProxy::useContextMenuItems): Passes items to m_contextMenuMac.
1259         (WebKit::WebContextMenuListenerProxy::invalidate):
1260         * UIProcess/WebContextMenuListenerProxy.h: Copied from Source/WebKit2/UIProcess/mac/WebContextMenuProxyMac.h.
1261         (WebKit::WebContextMenuListenerProxy::create):
1262         * UIProcess/mac/WebContextMenuProxyMac.h:
1263         * UIProcess/mac/WebContextMenuProxyMac.mm:
1264         (WebKit::WebContextMenuProxyMac::showContextMenuWithItems): Shows context menu.
1265         (WebKit::WebContextMenuProxyMac::showContextMenu): Extracted some logic to showContextMenuWithItems().
1266         * WebKit2.xcodeproj/project.pbxproj:
1267
1268 2016-10-19  Myles C. Maxfield  <mmaxfield@apple.com>
1269
1270         [macOS] [iOS] Disable variation fonts on macOS El Capitan and iOS 9
1271         https://bugs.webkit.org/show_bug.cgi?id=163374
1272
1273         Reviewed by Darin Adler.
1274
1275         * Configurations/FeatureDefines.xcconfig:
1276
1277 2016-10-19  Darin Adler  <darin@apple.com>
1278
1279         Move XPath from ExceptionCode to Exception
1280         https://bugs.webkit.org/show_bug.cgi?id=163656
1281
1282         Reviewed by Chris Dumez.
1283
1284         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDocument.cpp:
1285         (webkit_dom_document_create_expression): Use ExceptionOr.
1286         (webkit_dom_document_evaluate): Ditto.
1287         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMXPathExpression.cpp:
1288         (webkit_dom_xpath_expression_evaluate): Ditto.
1289         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMXPathResult.cpp:
1290         (webkit_dom_xpath_result_iterate_next): Ditto.
1291         (webkit_dom_xpath_result_snapshot_item): Ditto.
1292         (webkit_dom_xpath_result_get_number_value): Ditto.
1293         (webkit_dom_xpath_result_get_string_value): Ditto.
1294         (webkit_dom_xpath_result_get_boolean_value): Ditto.
1295         (webkit_dom_xpath_result_get_single_node_value): Ditto.
1296         (webkit_dom_xpath_result_get_snapshot_length): Ditto.
1297
1298 2016-10-19  Carlos Garcia Campos  <cgarcia@igalia.com>
1299
1300         NetworkSession: updatedRequest parameter of NetworkProcess::findPendingDownloadLocation is unused since r206988
1301         https://bugs.webkit.org/show_bug.cgi?id=163588
1302
1303         Reviewed by Alex Christensen.
1304
1305         The parameter was used only for the DownloadProxy::DidStart message that is no longer sent from
1306         findPendingDownloadLocation since r206988.
1307
1308         * NetworkProcess/NetworkDataTask.h:
1309         (WebKit::NetworkDataTask::currentRequest): Removed since it's unused now.
1310         * NetworkProcess/NetworkLoad.cpp:
1311         (WebKit::NetworkLoad::convertTaskToDownload): Update the m_currentRequest and pass it to DidStart message.
1312         (WebKit::NetworkLoad::didReceiveResponseNetworkSession):
1313         * NetworkProcess/NetworkProcess.cpp:
1314         (WebKit::NetworkProcess::findPendingDownloadLocation):
1315         * NetworkProcess/NetworkProcess.h:
1316         * NetworkProcess/cocoa/NetworkDataTaskCocoa.mm: Remove currentRequest() implementation.
1317
1318 2016-10-19  Carlos Garcia Campos  <cgarcia@igalia.com>
1319
1320         Unreviewed. Fix GTK+ build after r207522.
1321
1322         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMWindow.cpp:
1323         (webkit_dom_dom_window_webkit_message_handlers_post_message): Use new exceptions.
1324
1325 2016-10-19  Carlos Garcia Campos  <cgarcia@igalia.com>
1326
1327         Unreviewed. Fix GTK+ build after r207497.
1328
1329         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLSelectElement.cpp:
1330         (webkit_dom_html_select_element_add): Update implementation since add() now takes a Variant.
1331
1332 2016-10-18  Simon Fraser  <simon.fraser@apple.com>
1333
1334         Add a MiniBrowser menu item to apply page scale in WK1 and WK2
1335         https://bugs.webkit.org/show_bug.cgi?id=163627
1336
1337         Reviewed by Dean Jackson.
1338
1339         New SPI to set and retrieve page scale.
1340
1341         * UIProcess/API/Cocoa/WKWebView.mm:
1342         (-[WKWebView _setPageScale:withOrigin:]):
1343         (-[WKWebView _pageScale]):
1344         * UIProcess/API/Cocoa/WKWebViewPrivate.h:
1345
1346 2016-10-18  Dean Jackson  <dino@apple.com>
1347
1348         Remove CSS_SHAPES feature definition. This should always be on.
1349         https://bugs.webkit.org/show_bug.cgi?id=163628
1350         <rdar://problem/28834613>
1351
1352         Reviewed by Tim Horton.
1353
1354         * Configurations/FeatureDefines.xcconfig:
1355
1356 2016-10-18  Ryan Haddad  <ryanhaddad@apple.com>
1357
1358         Unreviewed, rolling out r207413.
1359
1360         This change broke iOS builds.
1361
1362         Reverted changeset:
1363
1364         "[iOS] Hook up WebPlatformTouchPoint's radiusX / radiusY to
1365         _UIWebTouchPoint.majorRadiusInScreenCoordinates"
1366         https://bugs.webkit.org/show_bug.cgi?id=163547
1367         http://trac.webkit.org/changeset/207413
1368
1369 2016-10-18  Commit Queue  <commit-queue@webkit.org>
1370
1371         Unreviewed, rolling out r207443.
1372         https://bugs.webkit.org/show_bug.cgi?id=163616
1373
1374         "Caused 5% PLT regression" (Requested by krollin on #webkit).
1375
1376         Reverted changeset:
1377
1378         "Crash in ASCIICaseInsensitiveHash::hash() when a response has
1379         a null MIME type"
1380         https://bugs.webkit.org/show_bug.cgi?id=163476
1381         http://trac.webkit.org/changeset/207443
1382
1383 2016-10-18  Megan Gardner  <megan_gardner@apple.com>
1384
1385         Fix build for platforms where HAVE(LINK_PREVIEW) is false
1386         https://bugs.webkit.org/show_bug.cgi?id=163607
1387
1388         Reviewed by Tim Horton.
1389
1390         Added needed # for link preview
1391
1392         * UIProcess/ios/WKContentViewInteraction.mm:
1393         (-[WKContentView _contentsOfUserInterfaceItem:]):
1394
1395 2016-10-18  Joseph Pecoraro  <pecoraro@apple.com>
1396
1397         Remote Web Inspector: Timeline UI not updating while recording
1398         https://bugs.webkit.org/show_bug.cgi?id=163582
1399         <rdar://problem/28766837>
1400
1401         Reviewed by Timothy Hatcher.
1402
1403         * WebProcess/WebPage/RemoteWebInspectorUI.cpp:
1404         (WebKit::RemoteWebInspectorUI::frontendLoaded):
1405         Local inspector windows keep the web view alive and toggle the
1406         WebInspector.visible state depending on whether or not an inspector is
1407         open. Remote Inspector windows go away when closed, so they can always
1408         be marked as open. This matches earlier remote inspector behavior.
1409
1410 2016-10-18  Eric Carlson  <eric.carlson@apple.com>
1411
1412         [MediaStream] Resolve constraints and enumerate devices in the UI process
1413         https://bugs.webkit.org/show_bug.cgi?id=162147
1414         <rdar://problem/28803569>
1415
1416         Reviewed by Darin Adler.
1417         
1418         Restructure gUM constraint validation and MediaDevices.enumerateDevices so all media device
1419         access happens in the UI process.
1420
1421         * Scripts/webkit/messages.py:
1422         (headers_for_type): Special case MediaConstraintsData.
1423
1424         * Shared/WebCoreArgumentCoders.cpp:
1425         (IPC::encodeMediaTrackConstraintSetMap): MediaTrackConstraintSetMap encoder.
1426         (IPC::ArgumentCoder<MediaConstraintsData>::encode): MediaConstraintsData encoder.
1427         (IPC::decodeMediaTrackConstraintSetMap): MediaTrackConstraintSetMap decoder.
1428         (IPC::ArgumentCoder<MediaConstraintsData>::decode): MediaConstraintsData decoder.
1429         (IPC::ArgumentCoder<CaptureDevice>::encode): CaptureDevice enoder.
1430         (IPC::ArgumentCoder<CaptureDevice>::decode): CaptureDevice decoder.
1431         * Shared/WebCoreArgumentCoders.h:
1432
1433         * UIProcess/API/APIUIClient.h:  Remove UserMediaPermissionCheckProxy forward declaration.
1434
1435         * UIProcess/API/C/WKUserMediaPermissionRequest.cpp:
1436         (toWK): Translate UserMediaPermissionRequestDenialReason to UserMediaAccessDenialReason.
1437         (WKUserMediaPermissionRequestDeny): Add "reason" parameter.
1438         * UIProcess/API/C/WKUserMediaPermissionRequest.h:
1439
1440         * UIProcess/UserMediaPermissionRequestManagerProxy.cpp:
1441         (WebKit::UserMediaPermissionRequestManagerProxy::invalidateRequests): Invalidate pending device requests.
1442         (WebKit::UserMediaPermissionRequestManagerProxy::createRequest): Make private.
1443         (WebKit::toWebCore): Map from UserMediaAccessDenialReason to MediaAccessDenialReason, cast to
1444           uint64_t to pass to web process.
1445         (WebKit::UserMediaPermissionRequestManagerProxy::denyRequest): Send to web process.
1446         (WebKit::UserMediaPermissionRequestManagerProxy::userMediaAccessWasGranted): Ditto.
1447         (WebKit::UserMediaPermissionRequestManagerProxy::requestUserMediaPermissionForFrame): Validate
1448           constraints and make sure gUM is enabled before prompting user.
1449         (WebKit::UserMediaPermissionRequestManagerProxy::enumerateMediaDevicesForFrame): New.
1450         (WebKit::UserMediaPermissionRequestManagerProxy::didCompleteUserMediaPermissionCheck): Send 
1451           results of device enumeration to web process.
1452         (WebKit::UserMediaPermissionRequestManagerProxy::didReceiveUserMediaPermissionDecision): Deleted.
1453         (WebKit::UserMediaPermissionRequestManagerProxy::createUserMediaPermissionCheck): Deleted.
1454         * UIProcess/UserMediaPermissionRequestManagerProxy.h:
1455
1456         * UIProcess/UserMediaPermissionRequestProxy.cpp:
1457         (WebKit::UserMediaPermissionRequestProxy::allow):
1458         (WebKit::UserMediaPermissionRequestProxy::deny): Take "reason" parameter.
1459         * UIProcess/UserMediaPermissionRequestProxy.h:
1460
1461         * UIProcess/WebPageProxy.cpp:
1462         (WebKit::WebPageProxy::requestUserMediaPermissionForFrame):
1463         (WebKit::WebPageProxy::enumerateMediaDevicesForFrame):
1464         (WebKit::WebPageProxy::checkUserMediaPermissionForFrame): Deleted.
1465         * UIProcess/WebPageProxy.h:
1466         * UIProcess/WebPageProxy.messages.in:
1467
1468         * WebProcess/MediaStream/UserMediaPermissionRequestManager.cpp:
1469         (WebKit::UserMediaPermissionRequestManager::startUserMediaRequest): userMediaAccessDenied -> deny.
1470           Pass the audio and video constraints to the UI process.
1471         (WebKit::UserMediaPermissionRequestManager::userMediaAccessWasGranted): 
1472         (WebKit::UserMediaPermissionRequestManager::userMediaAccessWasDenied):
1473         (WebKit::UserMediaPermissionRequestManager::enumerateMediaDevices): Send the enumeration request
1474           to the UI process.
1475         (WebKit::UserMediaPermissionRequestManager::cancelMediaDevicesEnumeration):
1476         (WebKit::UserMediaPermissionRequestManager::didCompleteMediaDeviceEnumeration):
1477         (WebKit::UserMediaPermissionRequestManager::didReceiveUserMediaPermissionDecision): Deleted.
1478         (WebKit::UserMediaPermissionRequestManager::startUserMediaPermissionCheck): Deleted.
1479         (WebKit::UserMediaPermissionRequestManager::cancelUserMediaPermissionCheck): Deleted.
1480         (WebKit::UserMediaPermissionRequestManager::didCompleteUserMediaPermissionCheck): Deleted.
1481         * WebProcess/MediaStream/UserMediaPermissionRequestManager.h:
1482
1483         * WebProcess/WebCoreSupport/WebUserMediaClient.cpp:
1484         (WebKit::WebUserMediaClient::enumerateMediaDevices): New.
1485         (WebKit::WebUserMediaClient::cancelMediaDevicesEnumerationRequest): New.
1486         (WebKit::WebUserMediaClient::checkUserMediaPermission): Deleted.
1487         (WebKit::WebUserMediaClient::cancelUserMediaPermissionCheck): Deleted.
1488         * WebProcess/WebCoreSupport/WebUserMediaClient.h:
1489
1490         * WebProcess/WebPage/WebPage.cpp:
1491         (WebKit::WebPage::userMediaAccessWasGranted): New.
1492         (WebKit::WebPage::userMediaAccessWasDenied): Ditto.
1493         (WebKit::WebPage::didCompleteMediaDeviceEnumeration):
1494         (WebKit::WebPage::didReceiveUserMediaPermissionDecision): Deleted.
1495         (WebKit::WebPage::didCompleteUserMediaPermissionCheck): Deleted.
1496         * WebProcess/WebPage/WebPage.h:
1497         * WebProcess/WebPage/WebPage.messages.in:
1498
1499 2016-10-17  Antti Koivisto  <antti@apple.com>
1500
1501         Rename setNeedsStyleRecalc to invalidateStyle
1502         https://bugs.webkit.org/show_bug.cgi?id=163542
1503
1504         Reviewed by Darin Adler.
1505
1506         * WebProcess/Plugins/PluginView.cpp:
1507         (WebKit::PluginView::didInitializePlugin):
1508         (WebKit::PluginView::pluginProcessCrashed):
1509
1510 2016-10-17  Carlos Garcia Campos  <cgarcia@igalia.com>
1511
1512         NetworkSession: PendingDownload is leaked if canceled before willDecidePendingDownloadDestination
1513         https://bugs.webkit.org/show_bug.cgi?id=163545
1514
1515         Reviewed by Alex Christensen.
1516
1517         If a download started by DownloadManager::startDownload() is cancelled before
1518         DownloadManager::willDecidePendingDownloadDestination() is called, DownloadManager::cancelDownload() does
1519         nothing, because the Download hasn't been created yet and m_downloadsWaitingForDestination map doesn't contain
1520         the download ID, and the PendingDownload is never removed from the m_pendingDownloads map.
1521
1522         * NetworkProcess/Downloads/DownloadManager.cpp:
1523         (WebKit::DownloadManager::cancelDownload): Always take the PendingDownload from m_pendingDownloads map. Then, if
1524         the download was already in m_downloadsWaitingForDestination map, get the network data task to properly cancel
1525         it and then call the completion handler to ignore the request. Otherwise cancel the pending download if exists.
1526         * NetworkProcess/Downloads/PendingDownload.cpp:
1527         (WebKit::PendingDownload::cancel): Cancel the network load and notify the UI process that the download was canceled.
1528         * NetworkProcess/Downloads/PendingDownload.h:
1529
1530 2016-10-17  Megan Gardner  <megan_gardner@apple.com>
1531
1532         Add test and infrastructure for link popover
1533         https://bugs.webkit.org/show_bug.cgi?id=163406
1534
1535         Reviewed by Simon Fraser.
1536
1537         Add infrastructure to see when a link popover appears, and what URL it has loaded.
1538
1539         * UIProcess/API/Cocoa/WKWebView.mm:
1540         (-[WKWebView didShowForcePressPreview]):
1541         (-[WKWebView didDismissForcePressPreview]):
1542         * UIProcess/API/Cocoa/WKWebViewPrivate.h:
1543         * UIProcess/ios/WKContentViewInteraction.mm:
1544         (-[WKContentView _contentsOfUserInterfaceItem:]):
1545         (-[WKContentView _presentedViewControllerForPreviewItemController:]):
1546         (-[WKContentView _previewItemController:didDismissPreview:committing:]):
1547         (-[WKContentView _previewItemControllerDidCancelPreview:]):
1548
1549 2016-10-17  Tim Horton  <timothy_horton@apple.com>
1550
1551         REGRESSION (r169805): WKWebView canGoBack returning YES when nothing is in the back-forward list after restoring session state
1552         https://bugs.webkit.org/show_bug.cgi?id=163573
1553         <rdar://problem/28744549>
1554
1555         Reviewed by Dan Bernstein.
1556
1557         * UIProcess/WebPageProxy.cpp:
1558         (WebKit::WebPageProxy::restoreFromSessionState):
1559         Update PageLoadState's canGoBack/canGoForward bits when restoring from
1560         session state, because in the don't-navigate case, nothing else will make this happen,
1561         and it will remain stale.
1562
1563 2016-10-17  Andy Estes  <aestes@apple.com>
1564
1565         Crash in ASCIICaseInsensitiveHash::hash() when a response has a null MIME type
1566         https://bugs.webkit.org/show_bug.cgi?id=163476
1567         <rdar://problem/26941395>
1568
1569         Reviewed by Tim Horton.
1570
1571         When custom content providers are registered and a response has a null MIME type, WebPage
1572         will pass a null String to HashSet::contains(). This results in a null pointer dereference,
1573         since the String hash functions do not support null Strings and unconditionally dereference
1574         their StringImpls. Fixed by checking that Strings are non-null before calling
1575         HashSet::contains() on m_mimeTypesWithCustomContentProviders.
1576
1577         Rearranging WebPage::shouldUseCustomContentProviderForResponse() to call
1578         canPluginHandleResponse() before checking m_mimeTypesWithCustomContentProviders uncovered a
1579         crash in existing layout tests where WebPage::m_mainFrame can be NULL during WebPage
1580         construction (m_mainFrame isn't yet initialized). Fixed this by passing the main Frame to
1581         canPluginHandleResponseInFrame() instead of relying on m_mainFrame.
1582
1583         New API test: WebKit2.LoadDataWithNilMIMEType.
1584
1585         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1586         (WebKit::WebFrameLoaderClient::transitionToCommittedFromCachedFrame): Passed
1587         m_frame->coreFrame() to shouldUseCustomContentProviderForResponse().
1588         (WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage): Ditto.
1589         * WebProcess/WebPage/WebPage.cpp:
1590         (WebKit::WebPage::canPluginHandleResponse): Added a mainFrame parameter and used it instead
1591         of m_mainFrame->coreFrame().
1592         (WebKit::WebPage::shouldUseCustomContentProviderForResponse): Passed mainFrame to
1593         canPluginHandleResponse(), and checked if mimeType is null before calling
1594         m_mimeTypesWithCustomContentProviders.contains().
1595         (WebKit::WebPage::canShowMIMEType): Checked if MIMEType is null before calling
1596         m_mimeTypesWithCustomContentProviders.contains().
1597         * WebProcess/WebPage/WebPage.h: Made canPluginHandleResponse() a private declaration.
1598
1599 2016-10-17  Chris Dumez  <cdumez@apple.com>
1600
1601         [WK2][NetworkCache] PendingFrameLoad objects are sometimes leaked
1602         https://bugs.webkit.org/show_bug.cgi?id=163569
1603         <rdar://problem/28810836>
1604
1605         Reviewed by Antti Koivisto.
1606
1607         PendingFrameLoad objects are created to track frame loads and added to
1608         the m_pendingFrameLoads hash map. These objects are supposed to remove
1609         themselves from the hash map once they detect that the page load has
1610         finished by calling PendingFrameLoad::m_loadCompletionHandler().
1611
1612         PendingFrameLoad::m_loadCompletionHandler() is called from
1613         markLoadAsCompleted() when we detect that the page load has finished
1614         via the m_loadHysteresisActivity HysteresisActivity. We call impulse()
1615         on the HysteresisActivity every time a subresource is loaded in the
1616         frame. The issue is that if no subresource is ever loaded, then we
1617         never call impulse() on the HysteresisActivity, which is therefore
1618         never started. If it nevers starts, then it nevers stops and never
1619         calls markLoadAsCompleted(). To address the problem, we now call
1620         impulse() on the HysteresisActivity as soon as we construct it.
1621
1622         * NetworkProcess/cache/NetworkCacheSpeculativeLoadManager.cpp:
1623
1624 2016-10-17  Jeremy Jones  <jeremyj@apple.com>
1625
1626         Enable keyboard in fullscreen.
1627         https://bugs.webkit.org/show_bug.cgi?id=163146
1628
1629         Reviewed by Jer Noble.
1630
1631         Allow keyboard in fullscreen.
1632
1633         * UIProcess/WebFullScreenManagerProxy.cpp:
1634         (WebKit::WebFullScreenManagerProxy::supportsFullScreen):
1635
1636 2016-10-17  Chris Dumez  <cdumez@apple.com>
1637
1638         Move form.reportValidity() behind InteractiveFormValidation setting
1639         https://bugs.webkit.org/show_bug.cgi?id=163550
1640
1641         Reviewed by Darin Adler.
1642
1643         Enable InteractiveFormValidation setting by default and link it to
1644         RuntimeEnabledFeatures so we can use it in the IDL.
1645
1646         * UIProcess/API/C/WKPreferencesRefPrivate.h:
1647         * WebProcess/WebPage/WebPage.cpp:
1648         (WebKit::WebPage::updatePreferences):
1649
1650 2016-10-17  Gavin Barraclough  <barraclough@apple.com>
1651
1652         UIProcess should determine throttle state for WebContent process
1653         https://bugs.webkit.org/show_bug.cgi?id=163556
1654
1655         Reviewed by Anders Carlsson.
1656
1657         This is a step towards merging page/process throttling code for mac & iOS.
1658
1659         Previously WebPage determined whether to start a UserActivity based on page activity,
1660         visibility and the preference to disable. Now WebPage passes the activity state across
1661         to WebPageProxy, which makes the decision & explicitly instructs WebPage to start/stop
1662         the UserActivity.
1663
1664         * UIProcess/WebPageProxy.cpp:
1665         (WebKit::WebPageProxy::WebPageProxy):
1666             - updateActivityToken + updateProccessSuppressionState -> updateThrottleState
1667         (WebKit::WebPageProxy::reattachToWebProcess):
1668             - updateActivityToken -> updateThrottleState
1669         (WebKit::WebPageProxy::dispatchViewStateChange):
1670             - updateActivityToken -> updateThrottleState
1671         (WebKit::WebPageProxy::setPageActivityState):
1672             - Record activity state passed from WebPage, and update.
1673         (WebKit::WebPageProxy::preferencesDidChange):
1674             - updateProccessSuppressionState -> updateThrottleState
1675         (WebKit::WebPageProxy::updateActivityToken): Deleted.
1676         (WebKit::WebPageProxy::updateProccessSuppressionState): Deleted.
1677         (WebKit::WebPageProxy::updateThrottleState):
1678             - Merged existing updateActivityToken/updateProccessSuppressionState to unified updateThrottleState.
1679             - Compute whether page should be suppressed, and send SetPageSuppressed message accordingly.
1680         * UIProcess/WebPageProxy.h:
1681             - Merged existing updateActivityToken/updateProccessSuppressionState to unified updateThrottleState.
1682             - Added setPageActivityState/m_activityState to report/record page activity.
1683             - Added m_pageSuppressed to prevent redundant message sends.
1684         * UIProcess/WebPageProxy.messages.in:
1685             - Expose SetPageActivityState message (called by WebPage).
1686         * WebProcess/WebPage/WebPage.cpp:
1687         (WebKit::WebPage::WebPage):
1688             - removed m_processSuppressionEnabled
1689             - updateUserActivity -> setPageSuppressed - explicitly set the page to not be suppressed, until WebPageProxy tells us to do so.
1690         (WebKit::WebPage::setPageActivityState):
1691             - post activity state on to WebPageProxy.
1692         (WebKit::WebPage::setPageSuppressed):
1693             - Start/stop USerActivity accordingly.
1694         (WebKit::WebPage::setViewState):
1695             - No longer need to monitor ViewState changes on the WebProcess side.
1696         (WebKit::WebPage::updatePreferences):
1697             - No longer need to monitor preference changes on the WebProcess side.
1698         (WebKit::WebPage::updateUserActivity): Deleted.
1699             - Only updated on reciept of setPageSuppressed message.
1700         * WebProcess/WebPage/WebPage.h:
1701             - Removed m_activityState, m_processSuppressionEnabled, updateUserActivity.
1702             - Added setPageSuppressed message.
1703         * WebProcess/WebPage/WebPage.messages.in:
1704             - Added SetPageSuppressed message.
1705
1706 2016-10-17  Michael Catanzaro  <mcatanzaro@igalia.com>
1707
1708         REGRESSION(r206189): logs error statements when API::URLRequest is canceled
1709         https://bugs.webkit.org/show_bug.cgi?id=163393
1710
1711         Reviewed by Antti Koivisto.
1712
1713         Print this case at normal logging level, not as an error.
1714
1715         * WebProcess/Network/WebLoaderStrategy.cpp:
1716         (WebKit::WebLoaderStrategy::loadResource):
1717
1718 2016-10-17  Chris Dumez  <cdumez@apple.com>
1719
1720         [iOS] Hook up WebPlatformTouchPoint's radiusX / radiusY to _UIWebTouchPoint.majorRadiusInScreenCoordinates
1721         https://bugs.webkit.org/show_bug.cgi?id=163547
1722
1723         Reviewed by Darin Adler.
1724
1725         Hook up WebPlatformTouchPoint's radiusX / radiusY to _UIWebTouchPoint.majorRadiusInScreenCoordinates
1726         now that it is available in UIKit.
1727
1728         * Platform/spi/ios/UIKitSPI.h:
1729         * Shared/ios/NativeWebTouchEventIOS.mm:
1730         (WebKit::NativeWebTouchEvent::extractWebTouchPoint):
1731
1732 2016-10-17  Konstantin Tokarev  <annulen@yandex.ru>
1733
1734         Eleminate code duplication between ResourceRequest encoding/decoding implementations
1735         https://bugs.webkit.org/show_bug.cgi?id=163507
1736
1737         Reviewed by Carlos Garcia Campos.
1738
1739         ResourceRequestBase::encodeWithoutPlatformData() and Soup implementation of
1740         ArgumentCoder<ResourceRequest>::encodePlatformData() share most of the code,
1741         ditto for decoding implementations.
1742
1743         * Shared/soup/WebCoreArgumentCodersSoup.cpp:
1744         (IPC::ArgumentCoder<ResourceRequest>::encodePlatformData):
1745         (IPC::ArgumentCoder<ResourceRequest>::decodePlatformData):
1746
1747 2016-10-17  Michael Catanzaro  <mcatanzaro@igalia.com>
1748
1749         Move user agent quirks to cross-platform location
1750         https://bugs.webkit.org/show_bug.cgi?id=163508
1751
1752         Reviewed by Carlos Garcia Campos.
1753
1754         #include <WebCore/UserAgent.h> instead of <WebCore/UserAgentGtk.h>.
1755
1756         * UIProcess/API/gtk/WebKitSettings.cpp:
1757         * UIProcess/efl/WebPageProxyEfl.cpp:
1758         * UIProcess/gtk/WebPageProxyGtk.cpp:
1759         * WebProcess/WebPage/gtk/WebPageGtk.cpp:
1760
1761 2016-10-17  Carlos Garcia Campos  <cgarcia@igalia.com>
1762
1763         [SOUP] Downloads should always sniff contents
1764         https://bugs.webkit.org/show_bug.cgi?id=163538
1765
1766         Reviewed by Michael Catanzaro.
1767
1768         It's quite common that downloads have weird filenames with no extension, so it would be better if the loader
1769         sniff the contents to guess the mime type.
1770
1771         * NetworkProcess/Downloads/soup/DownloadSoup.cpp:
1772         (WebKit::Download::startNetworkLoad): Pass true for shouldContentSniff parameter of ResourceHandle::create().
1773
1774 2016-10-17  Carlos Garcia Campos  <cgarcia@igalia.com>
1775
1776         [GTK] Switch to use API::DownloadClient instead of the C API client
1777         https://bugs.webkit.org/show_bug.cgi?id=163537
1778
1779         Reviewed by Michael Catanzaro.
1780
1781         The code is simpler and we avoid all the toImpl/toAPI.
1782
1783         * UIProcess/API/gtk/WebKitDownloadClient.cpp:
1784         (attachDownloadClientToContext):
1785         (didStart):
1786         (didReceiveResponse):
1787         (didReceiveData):
1788         (decideDestinationWithSuggestedFilename):
1789         (didCreateDestination):
1790         (didFail):
1791         (didCancel):
1792         (didFinish):
1793
1794 2016-10-17  Manuel Rego Casasnovas  <rego@igalia.com>
1795
1796         [css-grid] Disable CSS Grid Layout runtime flag by default
1797         https://bugs.webkit.org/show_bug.cgi?id=163432
1798
1799         Reviewed by Darin Adler.
1800
1801         It was enabled in r201042, but now Safari Technology Preview
1802         has a UI to switch runtime flags so it doesn't need to be enabled
1803         by default anymore.
1804
1805         * Shared/WebPreferencesDefinitions.h: Disable grid layout runtime flag
1806         by default.
1807
1808 2016-10-16  Darin Adler  <darin@apple.com>
1809
1810         Move CSS classes from ExceptionCode to Exception
1811         https://bugs.webkit.org/show_bug.cgi?id=163494
1812
1813         Reviewed by Sam Weinig.
1814
1815         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCSSRule.cpp:
1816         (webkit_dom_css_rule_set_css_text): Updated for ExceptionOr.
1817         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCSSStyleDeclaration.cpp:
1818         (webkit_dom_css_style_declaration_remove_property): Ditto.
1819         (webkit_dom_css_style_declaration_set_property): Ditto.
1820         (webkit_dom_css_style_declaration_set_css_text): Ditto.
1821         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCSSStyleSheet.cpp:
1822         (webkit_dom_css_style_sheet_insert_rule): Ditto.
1823         (webkit_dom_css_style_sheet_delete_rule): Ditto.
1824         (webkit_dom_css_style_sheet_add_rule): Ditto.
1825         (webkit_dom_css_style_sheet_remove_rule): Ditto.
1826         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCSSValue.cpp:
1827         (webkit_dom_css_value_set_css_text): Ditto.
1828         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMMediaList.cpp:
1829         (webkit_dom_media_list_delete_medium): Ditto.
1830         (webkit_dom_media_list_append_medium): Ditto.
1831         (webkit_dom_media_list_set_media_text): Ditto.
1832
1833 2016-10-16  Carlos Garcia Campos  <cgarcia@igalia.com>
1834
1835         [GTK] Default WebKitWebsiteDataManager is always leaked in WebKitWebContext
1836         https://bugs.webkit.org/show_bug.cgi?id=163443
1837
1838         Reviewed by Michael Catanzaro.
1839
1840         Adopt the reference returned by webkitWebsiteDataManagerCreate().
1841
1842         * UIProcess/API/gtk/WebKitWebContext.cpp:
1843         (webkitWebContextConstructed):
1844
1845 2016-10-16  Carlos Garcia Campos  <cgarcia@igalia.com>
1846
1847         [GTK] WebKitWebPage URI not updated after URI is modified by InjectedBundlePageResourceLoadClient::willSendRequestForFrame
1848         https://bugs.webkit.org/show_bug.cgi?id=163389
1849
1850         Reviewed by Michael Catanzaro.
1851
1852         Update the page URI also when the load is committed.
1853
1854         * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
1855         (getDocumentLoaderURL):
1856         (didStartProvisionalLoadForFrame):
1857         (didReceiveServerRedirectForProvisionalLoadForFrame):
1858         (didCommitLoadForFrame):
1859         (webkitWebPageCreate):
1860         (getProvisionalURLForFrame): Deleted.
1861
1862 2016-10-15  Simon Fraser  <simon.fraser@apple.com>
1863
1864         Sort the project file.
1865
1866         * WebKit2.xcodeproj/project.pbxproj:
1867
1868 2016-10-14  Anders Carlsson  <andersca@apple.com>
1869
1870         Fix Mac build.
1871
1872         * UIProcess/ApplePay/mac/WebPaymentCoordinatorProxyMac.mm:
1873         (WebKit::WebPaymentCoordinatorProxy::platformShowPaymentUI):
1874
1875 2016-10-14  Anders Carlsson  <andersca@apple.com>
1876
1877         Pass on networking settings to the PKPaymentRequest
1878         https://bugs.webkit.org/show_bug.cgi?id=163462
1879         rdar://problem/28567629
1880
1881         Reviewed by Dan Bernstein.
1882
1883         * UIProcess/ApplePay/cocoa/WebPaymentCoordinatorProxyCocoa.h:
1884         * UIProcess/ApplePay/cocoa/WebPaymentCoordinatorProxyCocoa.mm:
1885         (WebKit::toPKPaymentRequest):
1886         * UIProcess/ApplePay/ios/WebPaymentCoordinatorProxyIOS.mm:
1887         (WebKit::WebPaymentCoordinatorProxy::platformShowPaymentUI):
1888
1889 2016-10-14  Anders Carlsson  <andersca@apple.com>
1890
1891         Clean up BackForwardClient
1892         https://bugs.webkit.org/show_bug.cgi?id=163454
1893
1894         Reviewed by Sam Weinig.
1895
1896         Remove empty iOS only stubs.
1897
1898         * WebKit2.xcodeproj/project.pbxproj:
1899         * WebProcess/WebPage/WebBackForwardListProxy.h:
1900         * WebProcess/WebPage/ios/WebBackForwardListProxyIOS.mm: Removed.
1901
1902 2016-10-14  Brady Eidson  <beidson@apple.com>
1903
1904         Enable Gamepads by default in WK2.
1905         https://bugs.webkit.org/show_bug.cgi?id=163447
1906
1907         Rubberstamped by Sam Weinig.
1908
1909         * Shared/WebPreferencesDefinitions.h:
1910
1911 2016-10-14  Gavin Barraclough  <barraclough@apple.com>
1912
1913         Add API to restrict WebKit processes to background priority
1914         https://bugs.webkit.org/show_bug.cgi?id=163363
1915
1916         Reviewed by Anders Carlson.
1917
1918         Add API on _WKProcessPoolConfiguration to flag a process pool as 'alwaysRunsAtBackgroundPriority'.
1919         WebContent and Networking processes associated with that pool will only run a background priority,
1920         when they otherwise would have run at foreground priority.
1921
1922         * UIProcess/API/APIProcessPoolConfiguration.h:
1923             - Add m_alwaysRunsAtBackgroundPriority flag to pool configuration object.
1924         * UIProcess/API/Cocoa/_WKProcessPoolConfiguration.h:
1925         * UIProcess/API/Cocoa/_WKProcessPoolConfiguration.mm:
1926         (-[_WKProcessPoolConfiguration alwaysRunsAtBackgroundPriority]):
1927         (-[_WKProcessPoolConfiguration setAlwaysRunsAtBackgroundPriority:]):
1928             - Expose new configuration property through API.
1929         * UIProcess/Network/NetworkProcessProxy.cpp:
1930         (WebKit::NetworkProcessProxy::alwaysRunsAtBackgroundPriority):
1931         * UIProcess/Network/NetworkProcessProxy.h:
1932             - Support ProcessThrottlerClient interface to check if alwaysRunsAtBackgroundPriority is set.
1933         * UIProcess/ProcessThrottler.cpp:
1934         (WebKit::ProcessThrottler::assertionState):
1935             - When determining whether to take a foreground exception check alwaysRunsAtBackgroundPriority.
1936         * UIProcess/ProcessThrottlerClient.h:
1937             - Add interface to access alwaysRunsAtBackgroundPriority state of WebProcess of NetworkProcess.
1938         * UIProcess/WebProcessPool.cpp:
1939         (WebKit::WebProcessPool::WebProcessPool):
1940         * UIProcess/WebProcessPool.h:
1941             - Add m_alwaysRunsAtBackgroundPriority, set by configuration.
1942         * UIProcess/WebProcessProxy.cpp:
1943         (WebKit::WebProcessProxy::alwaysRunsAtBackgroundPriority):
1944         * UIProcess/WebProcessProxy.h:
1945             - Support ProcessThrottlerClient interface to check if alwaysRunsAtBackgroundPriority is set.
1946
1947 2016-10-14  Youenn Fablet  <youenn@apple.com>
1948
1949         Make NetworkCache aware of fetch cache mode
1950         https://bugs.webkit.org/show_bug.cgi?id=163332
1951
1952         Reviewed by Antti Koivisto.
1953
1954         Adding explicit serialization of ResourceRequest cachePolicy since it does no longer map to platform request cache policy.
1955
1956         Added support for:
1957         - Bypassing entirely the network cache in case cache mode is NoStore.
1958         - requiring revalidation in case of cache hit and cache mode is NoCache.
1959         - Not using any entry if cache mode is Reload (but cache can still be updated)
1960
1961         Also made sure that the ResourceRequest::cachePolicy remains the same throughout redirections.
1962
1963         * NetworkProcess/NetworkResourceLoader.cpp:
1964         (WebKit::NetworkResourceLoader::canUseCache):
1965         (WebKit::NetworkResourceLoader::retrieveCacheEntry):
1966         (WebKit::NetworkResourceLoader::continueWillSendRequest):
1967         * NetworkProcess/cache/NetworkCache.cpp:
1968         (WebKit::NetworkCache::cachePolicyAllowsExpired):
1969         (WebKit::NetworkCache::makeRetrieveDecision):
1970         * Shared/mac/WebCoreArgumentCodersMac.mm:
1971         (IPC::ArgumentCoder<ResourceRequest>::encodePlatformData):
1972         (IPC::ArgumentCoder<ResourceRequest>::decodePlatformData):
1973
1974 2016-10-13  Tim Horton  <timothy_horton@apple.com>
1975
1976         Rename the SPI added in r207292 due to post-landing review comments
1977         https://bugs.webkit.org/show_bug.cgi?id=163364
1978         <rdar://problem/28012494>
1979
1980         Reviewed by Simon Fraser.
1981
1982         * UIProcess/API/APIPageConfiguration.h:
1983         (API::PageConfiguration::waitsForPaintAfterViewDidMoveToWindow):
1984         (API::PageConfiguration::setWaitsForPaintAfterViewDidMoveToWindow):
1985         (API::PageConfiguration::shouldWaitForPaintAfterViewDidMoveToWindow): Deleted.
1986         (API::PageConfiguration::setShouldWaitForPaintAfterViewDidMoveToWindow): Deleted.
1987         * UIProcess/API/Cocoa/WKWebView.mm:
1988         (-[WKWebView _initializeWithConfiguration:]):
1989         * UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
1990         (-[WKWebViewConfiguration init]):
1991         (-[WKWebViewConfiguration copyWithZone:]):
1992         (-[WKWebViewConfiguration _waitsForPaintAfterViewDidMoveToWindow]):
1993         (-[WKWebViewConfiguration _setWaitsForPaintAfterViewDidMoveToWindow:]):
1994         (-[WKWebViewConfiguration _shouldWaitForPaintAfterViewDidMoveToWindow]): Deleted.
1995         (-[WKWebViewConfiguration _setShouldWaitForPaintAfterViewDidMoveToWindow:]): Deleted.
1996         * UIProcess/API/Cocoa/WKWebViewConfigurationPrivate.h:
1997         * UIProcess/WebPageProxy.cpp:
1998         (WebKit::WebPageProxy::WebPageProxy):
1999         (WebKit::WebPageProxy::dispatchViewStateChange):
2000         * UIProcess/WebPageProxy.h:
2001
2002 2016-10-13  Jonathan Bedard  <jbedard@apple.com>
2003
2004         GTK and EFL on Mac fail to compile WebTextChecker due to missing definition of WKTextCheckerClientBase
2005         https://bugs.webkit.org/show_bug.cgi?id=163346
2006
2007         Reviewed by Daniel Bates.
2008
2009         * UIProcess/API/C/WKTextChecker.cpp: Fixed #ifdefs for GTK and EFL builds on Darwin machines.
2010         * UIProcess/API/C/WKTextChecker.h: Ditto.
2011
2012 2016-10-13  Tim Horton  <timothy_horton@apple.com>
2013
2014         Expose SPI to disable synchronously blocking on painting after parenting a WKWebView
2015         https://bugs.webkit.org/show_bug.cgi?id=163364
2016         <rdar://problem/28012494>
2017
2018         Reviewed by Geoff Garen.
2019
2020         Some clients may not want the default WKWebView behavior where we synchronously
2021         block on the Web process after the first time a WKWebView is re-added to the window,
2022         because they are e.g. parenting re-used WKWebViews while scrolling.
2023
2024         * UIProcess/API/APIPageConfiguration.h:
2025         (API::PageConfiguration::shouldSynchronizeInitialPaintAfterMovingToWindow):
2026         (API::PageConfiguration::setShouldSynchronizeInitialPaintAfterMovingToWindow):
2027         * UIProcess/API/Cocoa/WKWebView.mm:
2028         (-[WKWebView _initializeWithConfiguration:]):
2029         * UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
2030         (-[WKWebViewConfiguration init]):
2031         (-[WKWebViewConfiguration copyWithZone:]):
2032         (-[WKWebViewConfiguration _shouldSynchronizeInitialPaintAfterMovingToWindow]):
2033         (-[WKWebViewConfiguration _setShouldSynchronizeInitialPaintAfterMovingToWindow:]):
2034         * UIProcess/API/Cocoa/WKWebViewConfigurationPrivate.h:
2035         * UIProcess/WebPageProxy.h:
2036         * UIProcess/WebPageProxy.cpp:
2037         (WebKit::WebPageProxy::WebPageProxy):
2038         Add and plumb a new WKWebView configuration parameter.
2039
2040         (WebKit::WebPageProxy::dispatchViewStateChange):
2041         If the new configuration parameter is set, don't block the main thread when
2042         a view is reparented.
2043
2044 2016-10-12  Chris Dumez  <cdumez@apple.com>
2045
2046         [Web IDL] Drop support for legacy [ConstructorConditional=*]
2047         https://bugs.webkit.org/show_bug.cgi?id=163368
2048
2049         Reviewed by Ryosuke Niwa.
2050
2051         Drop ENABLE_DOM4_EVENTS_CONSTRUCTOR compiler flag.
2052
2053         * Configurations/FeatureDefines.xcconfig:
2054
2055 2016-10-12  Alex Christensen  <achristensen@webkit.org>
2056
2057         Fix assertion after switching to URLParser
2058         https://bugs.webkit.org/show_bug.cgi?id=163350
2059         rdar://problem/28739938
2060
2061         Reviewed by Brady Eidson.
2062         
2063         Covered by a new API test.
2064
2065         * UIProcess/API/Cocoa/_WKUserStyleSheet.mm:
2066         (-[_WKUserStyleSheet initWithSource:forMainFrameOnly:legacyWhitelist:legacyBlacklist:baseURL:userContentWorld:]):
2067         The { } here is not understood by the compiler to mean WebCore::URL(), but rather the empty constructor for the enum ParsedURLStringTag.
2068         We used to be unsafely trusting that the URL was valid and canonicalized, but with URLParser we are canonicalizing it,
2069         and the assertion (url == m_string) in URL.cpp was failing.
2070
2071 2016-10-12  Anders Carlsson  <andersca@apple.com>
2072
2073         Remove an unused function
2074         https://bugs.webkit.org/show_bug.cgi?id=163341
2075
2076         Reviewed by Dan Bernstein.
2077
2078         * WebProcess/WebPage/WebBackForwardListProxy.cpp:
2079         (WebKit::WebBackForwardListProxy::isActive): Deleted.
2080         * WebProcess/WebPage/WebBackForwardListProxy.h:
2081
2082 2016-10-11  Gyuyoung Kim  <gyuyoung.kim@navercorp.com>
2083
2084         [EFL] Update API tests which are passed or failed
2085         https://bugs.webkit.org/show_bug.cgi?id=163322
2086
2087         Unreviewed, simple on/off API test.
2088
2089         *ewk_favicon_database_clear* has been crashed for a long time, however
2090         *ewk_cookie_manager_permanent_storage* is fine now. So the passing test
2091         is enabled again, and disable the failure tests.
2092
2093         * UIProcess/API/efl/tests/test_ewk2_cookie_manager.cpp:
2094         (TEST_F):
2095         * UIProcess/API/efl/tests/test_ewk2_favicon_database.cpp:
2096         (TEST_F):
2097
2098 2016-10-11  Daniel Bates  <dabates@apple.com>
2099
2100         Attempt to fix the Apple Internal Mac build following r207159
2101         (https://bugs.webkit.org/show_bug.cgi?id=163244)
2102
2103         * UIProcess/API/Cocoa/WKWebView.mm:
2104         (shouldRequireUserGestureToLoadVideo):
2105
2106 2016-10-11  Anders Carlsson  <andersca@apple.com>
2107
2108         Clean up WebPageGroup somewhat
2109         https://bugs.webkit.org/show_bug.cgi?id=163299
2110
2111         Reviewed by Tim Horton.
2112
2113         * Shared/API/c/WKDeprecatedFunctions.cpp:
2114         (WKPageGroupCopyIdentifier):
2115         Move this here from WKPageGroup.
2116
2117         (WKPageGroupAddUserContentFilter):
2118         (WKPageGroupRemoveUserContentFilter):
2119         (WKPageGroupRemoveAllUserContentFilters):
2120         Just call directly into the user content controller.
2121
2122         * UIProcess/API/C/WKPageGroup.cpp:
2123         (WKPageGroupAddUserStyleSheet):
2124         (WKPageGroupRemoveAllUserStyleSheets):
2125         (WKPageGroupAddUserScript):
2126         (WKPageGroupRemoveAllUserScripts):
2127         Just call directly into the user content controller.
2128
2129         * UIProcess/API/C/WKPageGroup.h:
2130         * UIProcess/WebPageGroup.cpp:
2131         (WebKit::WebPageGroup::addUserStyleSheet): Deleted.
2132         (WebKit::WebPageGroup::addUserScript): Deleted.
2133         (WebKit::WebPageGroup::removeAllUserStyleSheets): Deleted.
2134         (WebKit::WebPageGroup::removeAllUserScripts): Deleted.
2135         (WebKit::WebPageGroup::removeAllUserContent): Deleted.
2136         (WebKit::WebPageGroup::addUserContentExtension): Deleted.
2137         (WebKit::WebPageGroup::removeUserContentExtension): Deleted.
2138         (WebKit::WebPageGroup::removeAllUserContentExtensions): Deleted.
2139         Get rid of these, all their callers just call into the user content controller now.
2140
2141         * UIProcess/WebPageGroup.h:
2142         (WebKit::WebPageGroup::identifier): Deleted.
2143         (WebKit::WebPageGroup::sendToAllProcessesInGroup): Deleted.
2144         Remove unused code.
2145
2146 2016-10-11  Daniel Bates  <dabates@apple.com>
2147
2148         [iOS] REGRESSION (r197953): User gesture required to load video in iOS 9-built apps
2149         https://bugs.webkit.org/show_bug.cgi?id=163244
2150         <rdar://problem/27250015>
2151
2152         Reviewed by Jer Noble.
2153
2154         Enable or disable the Setting::requiresUserGestureToLoadVideo() in WebKit depending on the
2155         version of iOS SDK that the app was linked against. We require a user gesture to begin
2156         loading a video as of iOS 10.
2157
2158         * Shared/WebPreferencesDefinitions.h:
2159         * UIProcess/API/Cocoa/WKWebView.mm:
2160         (shouldRequireUserGestureToLoadVideo): Added.
2161         (-[WKWebView _initializeWithConfiguration:]): Set the requiresUserGestureToLoadVideo preference.
2162         * WebProcess/WebPage/WebPage.cpp:
2163         (WebKit::WebPage::updatePreferences): Modified to pass the WebKit requiresUserGestureToLoadVideo
2164         preference to WebCore.
2165
2166 2016-10-11  Alex Christensen  <achristensen@webkit.org>
2167
2168         Remove dead networking code
2169         https://bugs.webkit.org/show_bug.cgi?id=163263
2170
2171         Reviewed by Daniel Bates.
2172
2173         * NetworkProcess/Downloads/Download.h:
2174         * NetworkProcess/Downloads/ios/DownloadIOS.mm: Removed.
2175         * NetworkProcess/Downloads/mac/DownloadMac.mm:
2176         * NetworkProcess/NetworkLoad.h:
2177         * NetworkProcess/mac/NetworkLoadMac.mm:
2178         (WebKit::NetworkLoad::willCacheResponseAsync): Deleted.
2179         * Shared/Authentication/cocoa/AuthenticationManagerCocoa.mm:
2180         (WebKit::AuthenticationManager::receivedCredential):
2181         (WebKit::AuthenticationManager::receivedRequestToContinueWithoutCredential):
2182         (WebKit::AuthenticationManager::receivedCancellation):
2183         (WebKit::AuthenticationManager::receivedRequestToPerformDefaultHandling):
2184         (WebKit::AuthenticationManager::receivedChallengeRejection):
2185         * Shared/WebProcessCreationParameters.cpp:
2186         (WebKit::WebProcessCreationParameters::encode):
2187         (WebKit::WebProcessCreationParameters::decode):
2188         * Shared/WebProcessCreationParameters.h:
2189         * Shared/mac/WebCoreArgumentCodersMac.mm:
2190         (IPC::ArgumentCoder<ResourceRequest>::encodePlatformData):
2191         (IPC::ArgumentCoder<ResourceRequest>::decodePlatformData):
2192         * WebKit2.xcodeproj/project.pbxproj:
2193
2194 2016-10-11  Anders Carlsson  <andersca@apple.com>
2195
2196         Move no longer used functions to WKDeprecatedFunctions.cpp
2197         https://bugs.webkit.org/show_bug.cgi?id=163290
2198
2199         Reviewed by Dan Bernstein.
2200
2201         * Shared/API/c/WKDeprecatedFunctions.cpp:
2202         (WKPageGroupAddUserContentFilter):
2203         (WKPageGroupRemoveUserContentFilter):
2204         (WKPageGroupRemoveAllUserContentFilters):
2205         (WKContextSetProcessModel): Deleted.
2206         * UIProcess/API/C/WKPageGroup.cpp:
2207         (WKPageGroupRemoveAllUserScripts):
2208         (WKPageGroupAddUserContentFilter): Deleted.
2209         (WKPageGroupRemoveUserContentFilter): Deleted.
2210         (WKPageGroupRemoveAllUserContentFilters): Deleted.
2211         * UIProcess/API/C/WKPageGroup.h:
2212
2213 2016-10-11  Konstantin Tokarev  <annulen@yandex.ru>
2214
2215         Use modern for loops for iterating supplement maps
2216         https://bugs.webkit.org/show_bug.cgi?id=163274
2217
2218         Reviewed by Alex Christensen.
2219
2220         * NetworkProcess/NetworkProcess.cpp:
2221         (WebKit::NetworkProcess::initializeNetworkProcess):
2222         (WebKit::NetworkProcess::initializeConnection):
2223         * UIProcess/WebProcessPool.cpp:
2224         (WebKit::WebProcessPool::~WebProcessPool):
2225         (WebKit::WebProcessPool::networkProcessCrashed):
2226         (WebKit::WebProcessPool::databaseProcessCrashed): Iterate by values()
2227         like in other places.
2228
2229 2016-10-11  Wenson Hsieh  <wenson_hsieh@apple.com>
2230
2231         The "Input Events" experimental feature runtime flag should not be on by default
2232         https://bugs.webkit.org/show_bug.cgi?id=163278
2233
2234         Reviewed by Zalan Bujtas.
2235
2236         This was intended to be off by default.
2237
2238         * Shared/WebPreferencesDefinitions.h:
2239
2240 2016-10-10  Zan Dobersek  <zdobersek@igalia.com>
2241
2242         Add ENABLE_ENCRYPTED_MEDIA configuration option
2243         https://bugs.webkit.org/show_bug.cgi?id=163219
2244
2245         Reviewed by Darin Adler.
2246
2247         * Configurations/FeatureDefines.xcconfig:
2248         Add the ENABLE_ENCRYPTED_MEDIA configuration option. It will be used
2249         to enable or disable the new EME implementation at build-time.
2250
2251 2016-10-10  Carlos Garcia Campos  <cgarcia@igalia.com>
2252
2253         NetworkSession: NetworkDataTask is leaked if download finishes in didReceiveResponse completion handler
2254         https://bugs.webkit.org/show_bug.cgi?id=163204
2255
2256         Reviewed by Alex Christensen.
2257
2258         After the completion handler a reference of the NetworkDataTask is saved in m_downloadsAfterDestinationDecided.
2259         If the download failed or was canceled DownloadManager::dataTaskBecameDownloadTask is never called and the data
2260         task is kept in the download manager forever. This patch exposes NSURLSessionTask state property in
2261         NetworkDataTask, so that the download manager can check the task state after the completion handler and return
2262         early if the download finished or was cancelled.
2263
2264         * NetworkProcess/Downloads/DownloadManager.cpp:
2265         (WebKit::DownloadManager::continueDecidePendingDownloadDestination):
2266         * NetworkProcess/NetworkDataTask.h:
2267         * NetworkProcess/cocoa/NetworkDataTaskCocoa.mm:
2268         (WebKit::NetworkDataTask::state):
2269
2270 2016-10-10  Konstantin Tokarev  <annulen@yandex.ru>
2271
2272         Added final specifier to WebInspectorServer and to its overridden methods
2273         https://bugs.webkit.org/show_bug.cgi?id=163228
2274
2275         Reviewed by Darin Adler.
2276
2277         * UIProcess/InspectorServer/WebInspectorServer.h:
2278
2279 2016-10-10  Carlos Garcia Campos  <cgarcia@igalia.com>
2280
2281         [GTK] 2.14.0 Compile Errors: GTK 3.22.1
2282         https://bugs.webkit.org/show_bug.cgi?id=163190
2283
2284         Reviewed by Alex Christensen.
2285
2286         * UIProcess/gtk/AcceleratedBackingStoreX11.cpp: Include gtk.h since we are using gtk_widget_queue_draw().
2287
2288 2016-10-10  Gyuyoung Kim  <gyuyoung.kim@navercorp.com>
2289
2290         [EFL] ewk_context_preferred_languages has been failed since r206949
2291         https://bugs.webkit.org/show_bug.cgi?id=163211
2292
2293         Reviewed by Chris Dumez.
2294
2295         r206949 changed to return value of navigator.language from en-us to en-US
2296         in order to match other browsers and w3c spec. So ewk_context_preferred_languages
2297         needs to change the expected result as well.
2298
2299         * UIProcess/API/efl/tests/test_ewk2_context.cpp:
2300         (TEST_F):
2301
2302 2016-10-10  Carlos Garcia Campos  <cgarcia@igalia.com>
2303
2304         NetworkSession: downloads started by startDownload() can fail before starting from the API point of view
2305         https://bugs.webkit.org/show_bug.cgi?id=163107
2306
2307         Reviewed by Alex Christensen.
2308
2309         In the network process we use a PendingDownload in this case, but in the UI process we always have a single
2310         download proxy. If an error happens before the pending download is converted inot a real download, the DidFail
2311         messages is received in the download proxy before the DidStart one. This is problematic at least for the GTK+
2312         API, because it's common to connect to the started signal and connect to all other signals from there, but in
2313         this case the started signal is never emitted, and then the failed one is not handled. This is not a problem for
2314         downloads started by convertTaskToDownload, because in that case those loads are not considered a download by
2315         the UI process when those early errors happen, and then the web page handles them.
2316
2317         * NetworkProcess/Downloads/PendingDownload.cpp:
2318         (WebKit::PendingDownload::PendingDownload): Send DidStart message right after the network load starts like the
2319         non network session code does.
2320         * NetworkProcess/NetworkLoad.cpp:
2321         (WebKit::NetworkLoad::convertTaskToDownload): Send DidStart message now that the normal load has been converted
2322         into a download.
2323         * NetworkProcess/NetworkProcess.cpp:
2324         (WebKit::NetworkProcess::findPendingDownloadLocation): Do not send DidStart message here.
2325
2326 2016-10-10  Carlos Garcia Campos  <cgarcia@igalia.com>
2327
2328         Network Session: PendingDownload is always nullptr in DownloadManager::dataTaskBecameDownloadTask
2329         https://bugs.webkit.org/show_bug.cgi?id=163006
2330
2331         Reviewed by Alex Christensen.
2332
2333         In DownloadManager::dataTaskBecameDownloadTask() we are supposed to have either a pending download, or a network
2334         data task depending on whether the download was started by startDownload() or convertTaskToDownload. However, in
2335         both cases we do have a data task and never a pending download. In the case of startDownload() the pending
2336         download is removed from m_pendingDownloads in willDecidePendingDownloadDestination(). The task is always
2337         added to m_downloadsWaitingForDestination in willDecidePendingDownloadDestination() and to
2338         m_downloadsAfterDestinationDecided in continueDecidePendingDownloadDestination() in both cases.
2339
2340         * NetworkProcess/Downloads/DownloadManager.cpp:
2341         (WebKit::DownloadManager::dataTaskBecameDownloadTask): Add an ASSERT to ensure we don't have a pending download
2342         at this point and that the download is not already in the map. Remove the download from the
2343         m_downloadsAfterDestinationDecided map, but don't check its result because it might not bein that map if
2344         dataTaskBecameDownloadTask is called synchronously from the didReceiveResponse completion handler.
2345         (WebKit::DownloadManager::willDecidePendingDownloadDestination): Do not take the pending download here, wait
2346         until didReceiveResponse completion handler is called.
2347         (WebKit::DownloadManager::continueDecidePendingDownloadDestination): Take the pending download here ensuring
2348         it's alive while the didReceiveResponse completion handler is called. Also remove invalid early return when
2349         either networkDataTask or completionHandler are nullptr because we are using both unconditionally, we should
2350         return early if both are nullptr to avoid crashes. However, we are checking that the download is in the
2351         m_downloadsWaitingForDestination and in that case we should always have both, so better add asserts there. If
2352         the download is already in the map after the completion handler it means that dataTaskBecameDownloadTask() has
2353         alrady been called, so we can just return in that case.
2354         * NetworkProcess/Downloads/DownloadManager.h:
2355         * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
2356         (-[WKNetworkSessionDelegate URLSession:dataTask:didBecomeDownloadTask:]): Protect the NetworkDataTask that can
2357         be deleted by dataTaskBecameDownloadTask().
2358
2359 2016-10-10  Tim Horton  <timothy_horton@apple.com>
2360
2361         Share more code between iOS and macOS ViewGestureController
2362         https://bugs.webkit.org/show_bug.cgi?id=163158
2363
2364         Reviewed by Simon Fraser.
2365
2366         Share canSwipeInDirection() and the (unused on Mac) alternate back-forward list mechanism.
2367         Make ViewGestureController operate in terms of WebPageProxy, not WKWebView,
2368         because it shouldn't know anything about WKWebView.
2369         Refactor scrollEventCanBecomeSwipe a bit to be less repetitive.
2370
2371         * UIProcess/API/Cocoa/WKWebView.mm:
2372         (-[WKWebView setAllowsBackForwardNavigationGestures:]):
2373         * UIProcess/Cocoa/ViewGestureController.cpp:
2374         (WebKit::ViewGestureController::ViewGestureController):
2375         (WebKit::ViewGestureController::setAlternateBackForwardListSourcePage):
2376         (WebKit::ViewGestureController::canSwipeInDirection):
2377         (WebKit::ViewGestureController::gestureControllerForPage): Deleted.
2378         * UIProcess/Cocoa/ViewGestureController.h:
2379         * UIProcess/WebPageProxy.cpp:
2380         (WebKit::WebPageProxy::WebPageProxy):
2381         * UIProcess/WebPageProxy.h:
2382         (WebKit::WebPageProxy::createWeakPtr):
2383         * UIProcess/ios/ViewGestureControllerIOS.mm:
2384         (WebKit::ViewGestureController::beginSwipeGesture):
2385         (WebKit::ViewGestureController::setAlternateBackForwardListSourceView): Deleted.
2386         (WebKit::ViewGestureController::canSwipeInDirection): Deleted.
2387         * UIProcess/mac/ViewGestureControllerMac.mm:
2388         (WebKit::ViewGestureController::PendingSwipeTracker::PendingSwipeTracker):
2389         (WebKit::ViewGestureController::PendingSwipeTracker::scrollEventCanBecomeSwipe):
2390         (WebKit::ViewGestureController::PendingSwipeTracker::tryToStartSwipe):
2391
2392 2016-10-10  Tomas Popela  <tpopela@redhat.com>
2393
2394         [GTK] UIProcess crashes when using Japanese IM
2395         https://bugs.webkit.org/show_bug.cgi?id=163011
2396
2397         We have to reference the current GdkEventKey before we try process it
2398         as later when the lambda body is reached the event could be already
2399         freed.
2400
2401         Reviewed by Carlos Garcia Campos.
2402
2403         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
2404         (webkitWebViewBaseKeyPressEvent):
2405         (webkitWebViewBaseKeyReleaseEvent):
2406         * UIProcess/gtk/InputMethodFilter.h:
2407         Use non-copyable Function so we can use WTFMove to pass the event to
2408         lambda.
2409
2410 2016-10-09  Wenson Hsieh  <wenson_hsieh@apple.com>
2411
2412         Support InputEvent.inputType for the new InputEvent spec
2413         https://bugs.webkit.org/show_bug.cgi?id=163025
2414         <rdar://problem/28658092>
2415
2416         Reviewed by Darin Adler.
2417
2418         Accounts for some changes to the EditAction enum in nameForEditAction. Some former edit
2419         actions, such as EditActionTyping, have been split out into its more specific subtypes,
2420         so we preserve shipping behavior by treating all of the new subtypes the same way as the
2421         original type.
2422
2423         * UIProcess/WebEditCommandProxy.cpp:
2424         (WebKit::WebEditCommandProxy::nameForEditAction):
2425
2426 2016-10-08  Emanuele Aina  <emanuele.aina@collabora.com>
2427
2428         [GTK] Drop redundant wl_display_flush_clients() call
2429         https://bugs.webkit.org/show_bug.cgi?id=161904
2430
2431         Reviewed by Michael Catanzaro.
2432
2433         The Wayland GSource::prepare() function already calls
2434         wl_display_flush_clients() at every mainloop iteration, so there's no
2435         need to further call it on Surface::commit().
2436
2437         * UIProcess/gtk/WaylandCompositor.cpp:
2438         (WebKit::WaylandCompositor::Surface::commit):
2439         * UIProcess/gtk/WaylandCompositor.h:
2440
2441 2016-10-06  Darin Adler  <darin@apple.com>
2442
2443         Next step on moving to modern way to return DOM exceptions
2444         https://bugs.webkit.org/show_bug.cgi?id=163016
2445
2446         Reviewed by Ryosuke Niwa.
2447
2448         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMImplementation.cpp:
2449         (webkit_dom_dom_implementation_create_document_type): Updated for name change
2450         from takeReturnValue to releaseReturnValue.
2451         (webkit_dom_dom_implementation_create_document): Ditto.
2452         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMSelection.cpp:
2453         (webkit_dom_dom_selection_collapse_to_end): Use ExceptionOr instead of ExceptionCode.
2454         (webkit_dom_dom_selection_collapse_to_start): Ditto.
2455         (webkit_dom_dom_selection_extend): Ditto.
2456         (webkit_dom_dom_selection_get_range_at): Ditto.
2457
2458 2016-10-08  Commit Queue  <commit-queue@webkit.org>
2459
2460         Unreviewed, rolling out r206950.
2461         https://bugs.webkit.org/show_bug.cgi?id=163169
2462
2463         broke an API test (Requested by thorton on #webkit).
2464
2465         Reverted changeset:
2466
2467         "Share more code between iOS and macOS ViewGestureController"
2468         https://bugs.webkit.org/show_bug.cgi?id=163158
2469         http://trac.webkit.org/changeset/206950
2470
2471 2016-10-08  Tim Horton  <timothy_horton@apple.com>
2472
2473         Share more code between iOS and macOS ViewGestureController
2474         https://bugs.webkit.org/show_bug.cgi?id=163158
2475
2476         Reviewed by Simon Fraser.
2477
2478         Share canSwipeInDirection() and the (unused on Mac) alternate back-forward list mechanism.
2479         Make ViewGestureController operate in terms of WebPageProxy, not WKWebView,
2480         because it shouldn't know anything about WKWebView.
2481         Refactor scrollEventCanBecomeSwipe a bit to be less repetitive.
2482
2483         * UIProcess/API/Cocoa/WKWebView.mm:
2484         (-[WKWebView setAllowsBackForwardNavigationGestures:]):
2485         * UIProcess/Cocoa/ViewGestureController.cpp:
2486         (WebKit::ViewGestureController::ViewGestureController):
2487         (WebKit::ViewGestureController::setAlternateBackForwardListSourcePage):
2488         (WebKit::ViewGestureController::canSwipeInDirection):
2489         (WebKit::ViewGestureController::gestureControllerForPage): Deleted.
2490         * UIProcess/Cocoa/ViewGestureController.h:
2491         * UIProcess/WebPageProxy.cpp:
2492         (WebKit::WebPageProxy::WebPageProxy):
2493         * UIProcess/WebPageProxy.h:
2494         (WebKit::WebPageProxy::createWeakPtr):
2495         * UIProcess/ios/ViewGestureControllerIOS.mm:
2496         (WebKit::ViewGestureController::beginSwipeGesture):
2497         (WebKit::ViewGestureController::setAlternateBackForwardListSourceView): Deleted.
2498         (WebKit::ViewGestureController::canSwipeInDirection): Deleted.
2499         * UIProcess/mac/ViewGestureControllerMac.mm:
2500         (WebKit::ViewGestureController::PendingSwipeTracker::PendingSwipeTracker):
2501         (WebKit::ViewGestureController::PendingSwipeTracker::scrollEventCanBecomeSwipe):
2502         (WebKit::ViewGestureController::PendingSwipeTracker::tryToStartSwipe):
2503
2504 2016-10-07  Anders Carlsson  <andersca@apple.com>
2505
2506         Get rid of API::Session and WKSessionRef
2507         https://bugs.webkit.org/show_bug.cgi?id=163140
2508
2509         Reviewed by Tim Horton.
2510
2511         This API is no longer used.
2512
2513         * CMakeLists.txt:
2514         * Shared/API/APIObject.h:
2515         * Shared/API/c/WKSharedAPICast.h:
2516         * UIProcess/API/APISession.cpp: Removed.
2517         (API::generateID): Deleted.
2518         (API::Session::defaultSession): Deleted.
2519         (API::Session::Session): Deleted.
2520         (API::Session::createEphemeral): Deleted.
2521         (API::Session::isEphemeral): Deleted.
2522         (API::Session::getID): Deleted.
2523         (API::Session::~Session): Deleted.
2524         * UIProcess/API/APISession.h: Removed.
2525         * UIProcess/API/C/WKPage.h:
2526         * UIProcess/API/C/WKSessionRef.cpp: Removed.
2527         (WKSessionCreate): Deleted.
2528         (WKSessionGetTypeID): Deleted.
2529         (WKSessionIsEphemeral): Deleted.
2530         * UIProcess/API/C/WKSessionRef.h: Removed.
2531         * UIProcess/WebPageProxy.h:
2532         * UIProcess/WebProcessProxy.h:
2533         * WebKit2.xcodeproj/project.pbxproj:
2534
2535 2016-10-07  Tim Horton  <timothy_horton@apple.com>
2536
2537         Move ViewGestureController files to more accurate locations
2538         https://bugs.webkit.org/show_bug.cgi?id=163141
2539
2540         Reviewed by Anders Carlsson.
2541
2542         * PlatformMac.cmake:
2543         * UIProcess/Cocoa/ViewGestureController.cpp: Renamed from UIProcess/ViewGestureController.cpp.
2544         * UIProcess/Cocoa/ViewGestureController.h: Renamed from UIProcess/mac/ViewGestureController.h.
2545         * UIProcess/Cocoa/ViewGestureController.messages.in: Renamed from UIProcess/mac/ViewGestureController.messages.in.
2546         * WebKit2.xcodeproj/project.pbxproj:
2547
2548 2016-10-07  Tim Horton  <timothy_horton@apple.com>
2549
2550         Adopt BlockPtr in ViewGestureController
2551         https://bugs.webkit.org/show_bug.cgi?id=163132
2552
2553         Reviewed by Anders Carlsson.
2554
2555         * UIProcess/Cocoa/WebViewImpl.h:
2556         * UIProcess/Cocoa/WebViewImpl.mm:
2557         (WebKit::WebViewImpl::setDidMoveSwipeSnapshotCallback):
2558         * UIProcess/ViewGestureController.cpp:
2559         (WebKit::ViewGestureController::SnapshotRemovalTracker::stopWaitingForEvent):
2560         * UIProcess/mac/ViewGestureController.h:
2561         (WebKit::ViewGestureController::setDidMoveSwipeSnapshotCallback):
2562         (WebKit::ViewGestureController::m_didMoveSwipeSnapshotCallback): Deleted.
2563         * UIProcess/mac/ViewGestureControllerMac.mm:
2564         (WebKit::ViewGestureController::platformTeardown):
2565         (WebKit::ViewGestureController::setDidMoveSwipeSnapshotCallback): Deleted.
2566
2567 2016-10-07  Anders Carlsson  <andersca@apple.com>
2568
2569         Get rid of WKPageSetSession
2570         https://bugs.webkit.org/show_bug.cgi?id=163129
2571
2572         Reviewed by Tim Horton.
2573
2574         This function is no longer used.
2575
2576         * UIProcess/API/C/WKPage.cpp:
2577         (WKPageSetSession): Deleted.
2578         * UIProcess/API/C/WKPage.h:
2579         * UIProcess/WebPageProxy.cpp:
2580         (WebKit::WebPageProxy::setSessionID): Deleted.
2581         * UIProcess/WebPageProxy.h:
2582         (WebKit::WebPageProxy::sessionID):
2583         * WebProcess/WebPage/WebPage.messages.in:
2584
2585 2016-10-07  Commit Queue  <commit-queue@webkit.org>
2586
2587         Unreviewed, rolling out r206909.
2588         https://bugs.webkit.org/show_bug.cgi?id=163116
2589
2590         Caused most of  GTK layout tests to crash (Requested by KaL on
2591         #webkit).
2592
2593         Reverted changeset:
2594
2595         "[GTK] UIProcess crashes when using Japanese IM"
2596         https://bugs.webkit.org/show_bug.cgi?id=163011
2597         http://trac.webkit.org/changeset/206909
2598
2599 2016-10-07  Carlos Garcia Campos  <cgarcia@igalia.com>
2600
2601         Network Session: Allow NetworkDataTask decide what to do when override is allowed for a download
2602         https://bugs.webkit.org/show_bug.cgi?id=163010
2603
2604         Reviewed by Alex Christensen.
2605
2606         Current code always deletes the file before starting a download when allow override is True. In soup backend we
2607         use glib API that takes care of it and tries to ensure that the original file is not deleted if the new file
2608         creation fails for whatever reason.
2609
2610         * NetworkProcess/Downloads/DownloadManager.cpp:
2611         (WebKit::DownloadManager::continueDecidePendingDownloadDestination): Pass allowOverride to setPendingDownloadLocation().
2612         * NetworkProcess/NetworkDataTask.h:
2613         * NetworkProcess/cocoa/NetworkDataTaskCocoa.mm:
2614         (WebKit::NetworkDataTask::setPendingDownloadLocation): Delete the destination file if exists and allowOverride
2615         is True.
2616
2617 2016-10-07  Tomas Popela  <tpopela@redhat.com>
2618
2619         [GTK] UIProcess crashes when using Japanese IM
2620         https://bugs.webkit.org/show_bug.cgi?id=163011
2621
2622         We have to reference the current GdkEventKey before we try process it
2623         as later when the lambda body is reached the event could be already
2624         freed.
2625
2626         Reviewed by Carlos Garcia Campos.
2627
2628         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
2629         (webkitWebViewBaseKeyPressEvent):
2630         (webkitWebViewBaseKeyReleaseEvent):
2631         * UIProcess/gtk/InputMethodFilter.h:
2632         Use non-copyable Function so we can use WTFMove to pass the event to
2633         lambda.
2634
2635 2016-10-06  Michael Catanzaro  <mcatanzaro@igalia.com>
2636
2637         [GTK] Expose WebKitDOMHTMLInputElement APIs for form autofill
2638         https://bugs.webkit.org/show_bug.cgi?id=163082
2639
2640         Reviewed by Darin Adler.
2641
2642         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLInputElement.cpp:
2643         (webkit_dom_html_input_element_get_auto_filled): Added.
2644         (webkit_dom_html_input_element_set_auto_filled): Added.
2645         (webkit_dom_html_input_element_set_editing_value): Added.
2646         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLInputElement.h:
2647         * WebProcess/InjectedBundle/API/gtk/DOM/docs/webkitdomgtk-4.0-sections.txt:
2648
2649 2016-10-06  John Wilander  <wilander@apple.com>
2650
2651         Update Resource Load Statistics
2652         https://bugs.webkit.org/show_bug.cgi?id=162811
2653
2654         Reviewed by Alex Christensen.
2655
2656         * UIProcess/WebResourceLoadStatisticsStore.cpp:
2657         (WebKit::WebResourceLoadStatisticsStore::hasPrevalentResourceCharacteristics):
2658             Switched to vector-based classification.
2659         (WebKit::WebResourceLoadStatisticsStore::classifyResource):
2660             Simplified logic and moved the split between has and has
2661             no user interaction into ResourceLoadStatisticsStore.
2662         (WebKit::WebResourceLoadStatisticsStore::clearDataRecords):
2663             Added.
2664         (WebKit::WebResourceLoadStatisticsStore::resourceLoadStatisticsUpdated):
2665             Updated to make use of the new functions.
2666         (WebKit::WebResourceLoadStatisticsStore::persistentStoragePath):
2667             Removed stray whitespace.
2668         (WebKit::WebResourceLoadStatisticsStore::writeEncoderToDisk):
2669             Removed stray whitespace.
2670         (WebKit::WebResourceLoadStatisticsStore::createDecoderFromDisk):
2671             Removed stray whitespace.
2672         (WebKit::hasPrevalentResourceCharacteristics): Deleted.
2673         (WebKit::classifyPrevalentResources): Deleted.
2674         * UIProcess/WebResourceLoadStatisticsStore.h:
2675             Added member variables for clearing of data records.
2676
2677 2016-10-06  Youenn Fablet  <youenn@apple.com>
2678
2679         [WK2] 304 revalidation on the network process does not update the validated response
2680         https://bugs.webkit.org/show_bug.cgi?id=162973
2681
2682         Reviewed by Darin Adler.
2683
2684         * NetworkProcess/NetworkResourceLoader.cpp: Updating cache entry with the revalidated one.
2685
2686 2016-10-05  Wenson Hsieh  <wenson_hsieh@apple.com>
2687
2688         Introduce InputEvent bindings in preparation for the input events spec
2689         https://bugs.webkit.org/show_bug.cgi?id=162954
2690
2691         Reviewed by Ryosuke Niwa.
2692
2693         Adds a new runtime switch for enabling InputEvents.
2694
2695         * Shared/WebPreferencesDefinitions.h:
2696         * WebProcess/WebPage/WebPage.cpp:
2697         (WebKit::WebPage::updatePreferences):
2698
2699 2016-10-05  Myles C. Maxfield  <mmaxfield@apple.com>
2700
2701         Put variation fonts work behind a compile-time flag
2702         https://bugs.webkit.org/show_bug.cgi?id=162949
2703
2704         Reviewed by Simon Fraser.
2705
2706         * Configurations/FeatureDefines.xcconfig:
2707
2708 2016-10-05  Tim Horton  <timothy_horton@apple.com>
2709
2710         Fix the build.
2711
2712         * UIProcess/Cocoa/WebViewImpl.mm:
2713
2714 2016-10-05  Tim Horton  <timothy_horton@apple.com>
2715
2716         Avoid automatically re-taking snapshots for back-forward items that were never loaded into the view
2717         https://bugs.webkit.org/show_bug.cgi?id=162955
2718         <rdar://problem/27659173>
2719
2720         Reviewed by Simon Fraser.
2721
2722         Make it possible for clients to control the snapshot for back-forward
2723         items that are restored from session state without navigating to them,
2724         by ensuring that we won't stomp on the snapshot that they explicitly take,
2725         until a load occurs.
2726
2727         * UIProcess/WebBackForwardList.cpp:
2728         (WebKit::WebBackForwardList::addItem):
2729         (WebKit::WebBackForwardList::goToItem):
2730         * UIProcess/ios/ViewGestureControllerIOS.mm:
2731         (WebKit::ViewGestureController::beginSwipeGesture):
2732         * UIProcess/mac/ViewGestureControllerMac.mm:
2733         (WebKit::ViewGestureController::trackSwipeGesture):
2734         Disambiguate explicit API-driven snapshot recording from automatic,
2735         navigation-driven snapshot recording.
2736
2737         * UIProcess/Cocoa/WebViewImpl.mm:
2738         (WebKit::WebViewImpl::saveBackForwardSnapshotForCurrentItem):
2739         Get rid of the version of recordNavigationSnapshot() that doesn't take a
2740         back-forward list item, and grab the current item at the one remaining caller.
2741         
2742         * UIProcess/WebPageProxy.cpp:
2743         (WebKit::WebPageProxy::recordAutomaticNavigationSnapshot):
2744         (WebKit::WebPageProxy::recordNavigationSnapshot):
2745         (WebKit::WebPageProxy::restoreFromSessionState):
2746         (WebKit::WebPageProxy::didCommitLoadForFrame):
2747         * UIProcess/WebPageProxy.h:
2748         Rename m_suppressNavigationSnapshotting to m_suppressAutomaticNavigationSnapshotting,
2749         and make it be only about automatic (navigation-driven) snapshots; it won't have
2750         any impact on explicit snapshots forced by clients.
2751         
2752         Set m_suppressAutomaticNavigationSnapshotting unconditionally when restoring
2753         from session state, so that we won't start automatically snapshotting until
2754         something has loaded in the view.
2755
2756 2016-10-05  Tim Horton  <timothy_horton@apple.com>
2757
2758         Make it possible to test ViewSnapshotStore behaviors
2759         https://bugs.webkit.org/show_bug.cgi?id=162983
2760
2761         Reviewed by Simon Fraser.
2762
2763         Add two pieces of SPI to make it easier to test ViewSnapshotStore:
2764
2765         - [WKWebView _disableBackForwardSnapshotVolatilityForTesting]
2766             This makes it so that we don't make snapshots volatile after we
2767             take them, so that they won't get purged while the test is running
2768             and cause the test to be flaky.
2769
2770         - [WKBackForwardListItem _copySnapshotForTesting]
2771             This returns a CGImage with the content of the given back-forward
2772             item's current snapshot, if there is one.
2773
2774         * UIProcess/API/Cocoa/WKBackForwardListItem.mm:
2775         (-[WKBackForwardListItem _copySnapshotForTesting]):
2776         * UIProcess/API/Cocoa/WKBackForwardListItemInternal.h:
2777         * UIProcess/API/Cocoa/WKBackForwardListItemPrivate.h: Added.
2778         Add WKBackForwardListItem SPI to retrieve the snapshot for a given back-forward list item.
2779
2780         * UIProcess/API/Cocoa/WKWebViewPrivate.h:
2781         * UIProcess/API/Cocoa/WKWebView.mm:
2782         (-[WKWebView _disableBackForwardSnapshotVolatilityForTesting]):
2783         Add WKWebView SPI to disable volatility of snapshots, for testing purposes.
2784         
2785         * UIProcess/Cocoa/WebViewImpl.h:
2786         * UIProcess/Cocoa/WebViewImpl.mm:
2787         (WebKit::WebViewImpl::takeViewSnapshot):
2788         Adopt ViewSnapshot::setVolatile instead of reaching into the surface.
2789
2790         * UIProcess/mac/ViewGestureControllerMac.mm:
2791         (WebKit::ViewGestureController::removeSwipeSnapshot):
2792         Adopt ViewSnapshot::setVolatile instead of reaching into the surface.
2793
2794         * UIProcess/mac/ViewSnapshotStore.h:
2795         (WebKit::ViewSnapshotStore::setDisableSnapshotVolatilityForTesting):
2796         (WebKit::ViewSnapshotStore::disableSnapshotVolatilityForTesting):
2797         * UIProcess/mac/ViewSnapshotStore.mm:
2798         (WebKit::ViewSnapshotStore::ViewSnapshotStore):
2799         (WebKit::ViewSnapshot::setVolatile):
2800         (WebKit::ViewSnapshot::asLayerContents):
2801         Move all touching of snapshot volatility into the new setVolatile,
2802         and short-circuit if the testing-only m_disableSnapshotVolatility bit is set
2803
2804         (WebKit::ViewSnapshot::asImageForTesting):
2805         Make a CGImageRef for the aforementioned WKBackForwardListItem SPI.
2806         This is currently not implemented for the iOS Simulator, because we
2807         don't have access to the bits of the image in that case.
2808
2809 2016-10-05  Chris Dumez  <cdumez@apple.com>
2810
2811         KeyboardEvent.getModifierState() should support "CapsLock" modifier
2812         https://bugs.webkit.org/show_bug.cgi?id=162861
2813
2814         Reviewed by Darin Adler.
2815
2816         Add support for CapsLock modifier on events.
2817
2818         * Shared/API/c/WKEvent.h:
2819         * Shared/API/c/WKSharedAPICast.h:
2820         (WebKit::toAPI):
2821         * Shared/WebEventConversion.cpp:
2822         (WebKit::WebKit2PlatformMouseEvent::WebKit2PlatformMouseEvent):
2823         (WebKit::WebKit2PlatformWheelEvent::WebKit2PlatformWheelEvent):
2824         (WebKit::WebKit2PlatformKeyboardEvent::WebKit2PlatformKeyboardEvent):
2825         (WebKit::WebKit2PlatformTouchEvent::WebKit2PlatformTouchEvent):
2826         (WebKit::WebKit2PlatformGestureEvent::WebKit2PlatformGestureEvent):
2827         * Shared/efl/WebEventFactory.cpp:
2828         (WebKit::toWebEventModifiers):
2829         * Shared/ios/WebIOSEventFactory.mm:
2830         (modifiersForEvent):
2831         * Shared/mac/WebEventFactory.mm:
2832         (WebKit::modifiersForEvent):
2833         * UIProcess/API/Cocoa/WKNavigationAction.mm:
2834         (toNSEventModifierFlags):
2835         * UIProcess/Cocoa/WebAutomationSessionCocoa.mm:
2836         (WebKit::WebAutomationSession::platformSimulateMouseInteraction):
2837
2838 2016-10-05  Zan Dobersek  <zdobersek@igalia.com>
2839
2840         Rename ENABLE_ENCRYPTED_MEDIA_V2 to ENABLE_LEGACY_ENCRYPTED_MEDIA
2841         https://bugs.webkit.org/show_bug.cgi?id=162903
2842
2843         Reviewed by Alex Christensen.
2844
2845         Rename build guards for the remaining implementation of the legacy EME API
2846         to ENABLE_LEGACY_ENCRYPTED_MEDIA. This will allow for the future implementation
2847         of the near-finished API to be guarded with the simple ENABLE_ENCRYPTED_MEDIA guards.
2848
2849         * Configurations/FeatureDefines.xcconfig:
2850         * WebProcess/WebPage/WebPage.cpp:
2851         (WebKit::m_userInterfaceLayoutDirection):
2852         * WebProcess/WebProcess.cpp:
2853         (WebKit::m_resourceLoadStatisticsStorage):
2854
2855 2016-10-05  Daniel Bates  <dabates@apple.com>
2856
2857         [WK2][NetworkSession] Ping requests should follow redirects if applicable
2858         https://bugs.webkit.org/show_bug.cgi?id=162580
2859         <rdar://problem/28631274>
2860
2861         Reviewed by Alex Christensen.
2862
2863         Implement support for following redirects, if applicable, of a ping request when using the
2864         Network Session (ENABLE(NETWORK_SESSION)) code path in WebKit2. For ping requests that are
2865         in response to hyperlink auditing (e.g. <a ping>) we should follow redirect responses.
2866         For Content Security Policy and XSS Auditor violation reports we should not follow redirect
2867         responses.
2868
2869         Currently we always ignore redirects for ping requests that are sent using the Network Session
2870         code path in WebKit2. This behavior disagrees with the behavior described in section
2871         "Hyperlink auditing" of the HTML standard, <https://html.spec.whatwg.org/multipage/semantics.html#hyperlink-auditing> (27 September 2016),
2872         as well as the behavior in Legacy WebKit and WebKit2 with Network Session disabled. We should
2873         follow redirects for ping requests initiated as part of hyperlink auditing to more closely
2874         conform to the HTML standard and match the behavior in Legacy WebKit and WebKit2 with Network
2875         Session disabled.
2876
2877         * NetworkProcess/PingLoad.h:
2878
2879 2016-10-05  Daniel Bates  <dabates@apple.com>
2880
2881         Do not follow redirects when sending violation report
2882         https://bugs.webkit.org/show_bug.cgi?id=162520
2883         <rdar://problem/27957639>
2884
2885         Reviewed by Alex Christensen.
2886
2887         Update the non-Network Session WebKit2 implementation to follow redirect responses for a ping
2888         request, if applicable. I did not update the Network Session implementation at this time. I
2889         will fix it in <https://bugs.webkit.org/show_bug.cgi?id=162580>.
2890
2891         * NetworkProcess/NetworkConnectionToWebProcess.cpp:
2892         (WebKit::NetworkConnectionToWebProcess::loadPing): Tell PingHandle whether to follow redirects.
2893         * NetworkProcess/NetworkLoadParameters.h:
2894         * NetworkProcess/NetworkResourceLoadParameters.cpp:
2895         (WebKit::NetworkResourceLoadParameters::encode): Encode NetworkResourceLoadParameters::shouldFollowRedirects.
2896         (WebKit::NetworkResourceLoadParameters::decode): Decode NetworkResourceLoadParameters::shouldFollowRedirects.
2897         * NetworkProcess/PingLoad.h: Added FIXME comment to implement support for following redirects,
2898         if applicable (for hyperlink auditing). See <https://bugs.webkit.org/show_bug.cgi?id=162580>
2899         for more details.
2900         * WebProcess/Network/WebLoaderStrategy.cpp:
2901         (WebKit::WebLoaderStrategy::createPingHandle): Modified to take a boolean whether to follow
2902         redirects responses and set NetworkResourceLoadParameters::shouldFollowRedirects as appropriate.
2903         * WebProcess/Network/WebLoaderStrategy.h:
2904
2905 2016-10-05  Carlos Garcia Campos  <cgarcia@igalia.com>
2906
2907         [SOUP] Move global TLS errors handling from ResourceHandle to SoupNetworkSession
2908         https://bugs.webkit.org/show_bug.cgi?id=162910
2909
2910         Reviewed by Alex Christensen.
2911
2912         Use SoupNetworkSession instead of ResourceHandle.
2913
2914         * NetworkProcess/soup/NetworkProcessSoup.cpp:
2915         (WebKit::NetworkProcess::setIgnoreTLSErrors):
2916         (WebKit::NetworkProcess::allowSpecificHTTPSCertificateForHost):
2917
2918 2016-10-05  Carlos Garcia Campos  <cgarcia@igalia.com>
2919
2920         Unreviewed. Fix GTK+ build with USE_REDIRECTED_XCOMPOSITE_WINDOW disabled.
2921
2922         * UIProcess/AcceleratedDrawingAreaProxy.cpp:
2923         (WebKit::AcceleratedDrawingAreaProxy::setNativeSurfaceHandleForCompositing):
2924
2925 2016-10-04  Chris Dumez  <cdumez@apple.com>
2926
2927         Implement KeyboardEvent.code from the UI Event spec
2928         https://bugs.webkit.org/show_bug.cgi?id=149584
2929
2930         Reviewed by Darin Adler.
2931
2932         Add support for Keyboard.code attribute:
2933         - https://w3c.github.io/uievents/#dom-keyboardevent-code
2934         - https://w3c.github.io/uievents-code/
2935
2936         * Shared/WebEvent.h:
2937         (WebKit::WebKeyboardEvent::code):
2938         * Shared/WebEventConversion.cpp:
2939         (WebKit::WebKit2PlatformKeyboardEvent::WebKit2PlatformKeyboardEvent):
2940         * Shared/WebKeyboardEvent.cpp:
2941         (WebKit::WebKeyboardEvent::WebKeyboardEvent):
2942         (WebKit::WebKeyboardEvent::encode):
2943         (WebKit::WebKeyboardEvent::decode):
2944         * Shared/mac/WebEventFactory.mm:
2945         (WebKit::WebEventFactory::createWebKeyboardEvent):
2946
2947 2016-10-04  Said Abou-Hallawa  <sabouhallawa@apple.com>
2948
2949         The dragged image should be the current frame only of the animated image
2950         https://bugs.webkit.org/show_bug.cgi?id=162109
2951
2952         Reviewed by Tim Horton.
2953
2954         * UIProcess/Cocoa/WebViewImpl.mm:
2955         (WebKit::WebViewImpl::provideDataForPasteboard): Call the Image function with its new name.
2956
2957 2016-10-04  Ryosuke Niwa  <rniwa@webkit.org>
2958
2959         Revert a change erroneously committed in r206795.
2960
2961         * WebProcess/WebPage/WebPage.cpp:
2962         (WebKit::WebPage::updatePreferences):
2963
2964 2016-10-04  Anders Carlsson  <andersca@apple.com>
2965
2966         Properly kill web processes in the launching state
2967         https://bugs.webkit.org/show_bug.cgi?id=162938
2968
2969         Reviewed by Tim Horton.
2970
2971         * UIProcess/Launcher/ProcessLauncher.h:
2972         Add m_xpcConnection member.
2973
2974         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
2975         (WebKit::ProcessLauncher::launchProcess):
2976         Store the XPC connection in the m_xpcConnection member variable.
2977         In the reply handler, handle m_xpcConnection being null.
2978
2979         (WebKit::ProcessLauncher::platformInvalidate):
2980         Cancel and kill the connection.
2981
2982         * UIProcess/WebPageProxy.cpp:
2983         (WebKit::WebPageProxy::terminateProcess):
2984         Get rid of an assertion.
2985
2986         * UIProcess/WebProcessProxy.cpp:
2987         (WebKit::WebProcessProxy::requestTermination):
2988         Handle the launching state.
2989
2990 2016-10-04  Tim Horton  <timothy_horton@apple.com>
2991
2992         Fix the build.
2993
2994         * Shared/WebBackForwardListItem.cpp:
2995         (WebKit::WebBackForwardListItem::WebBackForwardListItem):
2996         (WebKit::WebBackForwardListItem::highestUsedItemID):
2997
2998 2016-10-04  Tim Horton  <timothy_horton@apple.com>
2999
3000         Fix a typo in WebBackForwardListItem (highed->highest)
3001         https://bugs.webkit.org/show_bug.cgi?id=162935
3002
3003         Reviewed by Anders Carlsson.
3004
3005         * Shared/WebBackForwardListItem.cpp:
3006         (WebKit::WebBackForwardListItem::highestUsedItemID):
3007         (WebKit::WebBackForwardListItem::highedUsedItemID): Deleted.
3008         * Shared/WebBackForwardListItem.h:
3009         * UIProcess/WebPageProxy.cpp:
3010         (WebKit::WebPageProxy::creationParameters):
3011
3012 2016-10-04  Yusuke Suzuki  <utatane.tea@gmail.com>
3013
3014         [DOMJIT] Introduce DOMJIT::GetterSetter to tell JIT information
3015         https://bugs.webkit.org/show_bug.cgi?id=162916
3016
3017         Reviewed by Filip Pizlo.
3018
3019         * CMakeLists.txt:
3020
3021 2016-10-04  Carlos Garcia Campos  <cgarcia@igalia.com>
3022
3023         [SOUP] Remove SSLPolicyFlags from SoupNetworkSession
3024         https://bugs.webkit.org/show_bug.cgi?id=162906
3025
3026         Reviewed by Michael Catanzaro.
3027
3028         * NetworkProcess/soup/NetworkProcessMainSoup.cpp:
3029         (WebKit::NetworkProcessMainUnix):
3030
3031 2016-10-04  Wenson Hsieh  <wenson_hsieh@apple.com>
3032
3033         Media controls are displayed in the incorrect state momentarily after switching between tabs playing media
3034         https://bugs.webkit.org/show_bug.cgi?id=162766
3035         <rdar://problem/28533523>
3036
3037         Reviewed by Jer Noble.
3038
3039         Plumbs some more Now Playing information from the web process to the UI process for testing purposes. See
3040         WebCore ChangeLog for more details.
3041
3042         * UIProcess/API/Cocoa/WKWebView.mm:
3043         (-[WKWebView _handleActiveNowPlayingSessionInfoResponse:title:duration:elapsedTime:]):
3044         (-[WKWebView _handleActiveNowPlayingSessionInfoResponse:]): Deleted.
3045         * UIProcess/API/Cocoa/WKWebViewPrivate.h:
3046         * UIProcess/PageClient.h:
3047         * UIProcess/WebPageProxy.cpp:
3048         (WebKit::WebPageProxy::handleActiveNowPlayingSessionInfoResponse):
3049         * UIProcess/WebPageProxy.h:
3050         * UIProcess/WebPageProxy.messages.in:
3051         * UIProcess/mac/PageClientImpl.h:
3052         * UIProcess/mac/PageClientImpl.mm:
3053         (WebKit::PageClientImpl::handleActiveNowPlayingSessionInfoResponse):
3054         * WebProcess/WebPage/mac/WebPageMac.mm:
3055         (WebKit::WebPage::requestActiveNowPlayingSessionInfo):
3056
3057 2016-10-04  Zan Dobersek  <zdobersek@igalia.com>
3058
3059         Unreviewed GTK+ build fix.
3060
3061         * UIProcess/API/C/WKPage.cpp:
3062         (WKPageSetPageNavigationClient): Guard the call to getDefaultWebCryptoMasterKey()
3063         with ENABLE(SUBTLE_CRYPTO), since the same guard is used for the definition. Fixes
3064         GTK+ production builds where the feature is disabled.
3065
3066 2016-10-03  Keith Rollin  <krollin@apple.com>
3067
3068         More logging to diagnose "WebKit encountered an internal error" messages
3069         https://bugs.webkit.org/show_bug.cgi?id=162754
3070
3071         Reviewed by Antti Koivisto.
3072
3073         Add more logging around calls to internalError, as well as some
3074         low-level logging around SharedMemory, and mach_vm_map in particular.
3075
3076         * NetworkProcess/NetworkResourceLoader.cpp:
3077         (WebKit::NetworkResourceLoader::startNetworkLoad):
3078         * Platform/Logging.h:
3079         * Platform/mac/SharedMemoryMac.cpp:
3080         (WebKit::SharedMemory::allocate):
3081         (WebKit::makeMemoryEntry):
3082         (WebKit::SharedMemory::map):
3083         (WebKit::SharedMemory::~SharedMemory):
3084         * WebProcess/Network/WebLoaderStrategy.cpp:
3085         (WebKit::WebLoaderStrategy::networkProcessCrashed):
3086         (WebKit::WebLoaderStrategy::loadResourceSynchronously):
3087         * WebProcess/Network/WebResourceLoader.cpp:
3088         (WebKit::WebResourceLoader::didReceiveResource):
3089
3090 2016-10-03  Ryan Haddad  <ryanhaddad@apple.com>
3091
3092         Unreviewed, rolling out r206754.
3093
3094         This change broke the El Capitan and Yosemite debug builds.
3095
3096         Reverted changeset:
3097
3098         "More logging to diagnose "WebKit encountered an internal
3099         error" messages"
3100         https://bugs.webkit.org/show_bug.cgi?id=162754
3101         http://trac.webkit.org/changeset/206754
3102
3103 2016-10-03  Keith Rollin  <krollin@apple.com>
3104
3105         More logging to diagnose "WebKit encountered an internal error" messages
3106         https://bugs.webkit.org/show_bug.cgi?id=162754
3107
3108         Reviewed by Antti Koivisto.
3109
3110         Add more logging around calls to internalError, as well as some
3111         low-level logging around SharedMemory, and mach_vm_map in particular.
3112
3113         * NetworkProcess/NetworkResourceLoader.cpp:
3114         (WebKit::NetworkResourceLoader::startNetworkLoad):
3115         * Platform/Logging.h:
3116         * Platform/mac/SharedMemoryMac.cpp:
3117         (WebKit::SharedMemory::allocate):
3118         (WebKit::makeMemoryEntry):
3119         (WebKit::SharedMemory::map):
3120         (WebKit::SharedMemory::~SharedMemory):
3121         * WebProcess/Network/WebLoaderStrategy.cpp:
3122         (WebKit::WebLoaderStrategy::networkProcessCrashed):
3123         (WebKit::WebLoaderStrategy::loadResourceSynchronously):
3124         * WebProcess/Network/WebResourceLoader.cpp:
3125         (WebKit::WebResourceLoader::didReceiveResource):
3126
3127 2016-10-03  Chris Dumez  <cdumez@apple.com>
3128
3129         Add support for KeyboardEvent.key attribute
3130         https://bugs.webkit.org/show_bug.cgi?id=36267
3131
3132         Reviewed by Darin Adler.
3133
3134         Add support for KeyboardEvent.key attribute.
3135
3136         * Shared/WebEvent.h:
3137         (WebKit::WebKeyboardEvent::key):
3138         (WebKit::WebKeyboardEvent::unmodifiedText): Deleted.
3139         * Shared/WebEventConversion.cpp:
3140         (WebKit::WebKit2PlatformKeyboardEvent::WebKit2PlatformKeyboardEvent):
3141         * Shared/WebKeyboardEvent.cpp:
3142         (WebKit::WebKeyboardEvent::WebKeyboardEvent):
3143         (WebKit::WebKeyboardEvent::encode):
3144         (WebKit::WebKeyboardEvent::decode):
3145         * Shared/mac/WebEventFactory.mm:
3146         (WebKit::WebEventFactory::createWebKeyboardEvent):
3147
3148 2016-10-03  Chris Dumez  <cdumez@apple.com>
3149
3150         Add support for KeyboardEvent.key attribute
3151         https://bugs.webkit.org/show_bug.cgi?id=36267
3152
3153         Reviewed by Darin Adler.
3154
3155         Add support for KeyboardEvent.key attribute.
3156
3157         * Shared/WebEvent.h:
3158         (WebKit::WebKeyboardEvent::key):
3159         (WebKit::WebKeyboardEvent::unmodifiedText): Deleted.
3160         * Shared/WebEventConversion.cpp:
3161         (WebKit::WebKit2PlatformKeyboardEvent::WebKit2PlatformKeyboardEvent):
3162         * Shared/WebKeyboardEvent.cpp:
3163         (WebKit::WebKeyboardEvent::WebKeyboardEvent):
3164         (WebKit::WebKeyboardEvent::encode):
3165         (WebKit::WebKeyboardEvent::decode):
3166         * Shared/mac/WebEventFactory.mm:
3167         (WebKit::WebEventFactory::createWebKeyboardEvent):
3168
3169 2016-10-03  Carlos Garcia Campos  <cgarcia@igalia.com>
3170
3171         [SOUP] Cleanup persistent credential storage code
3172         https://bugs.webkit.org/show_bug.cgi?id=162777
3173
3174         Reviewed by Alex Christensen.
3175
3176         Use USE(LIBSECRET) instead of ENABLE(CREDENTIAL_STORAGE).
3177
3178         * UIProcess/API/gtk/WebKitAuthenticationRequest.cpp:
3179         (webkit_authentication_request_can_save_credentials):
3180
3181 2016-10-02  Ryan Haddad  <ryanhaddad@apple.com>
3182
3183         Unreviewed, rolling out r206683.
3184
3185         This change caused API test WebKit2.FindMatches to fail on
3186         Mac.
3187
3188         Reverted changeset:
3189
3190         "The dragged image should be the current frame only of the
3191         animated image"
3192         https://bugs.webkit.org/show_bug.cgi?id=162109
3193         http://trac.webkit.org/changeset/206683
3194
3195 2016-09-30  Myles C. Maxfield  <mmaxfield@apple.com>
3196
3197         Follow-up patch after r206701
3198         https://bugs.webkit.org/show_bug.cgi?id=162818
3199
3200         Unreviewed.
3201
3202         I missed one place required to enable an experimental feature by default.
3203
3204         * UIProcess/Cocoa/WebProcessPoolCocoa.mm:
3205         (WebKit::registerUserDefaultsIfNeeded):
3206
3207 2016-09-30  Dan Bernstein  <mitz@apple.com>
3208
3209         [iOS] Editing menu omits the Share command if the selected text is longer than 200 characters
3210         https://bugs.webkit.org/show_bug.cgi?id=162821
3211         <rdar://problem/28409828>
3212
3213         Reviewed by Tim Horton.
3214
3215         * UIProcess/ios/WKContentViewInteraction.mm:
3216         (-[WKContentView canPerformAction:withSender:]): Changed to return YES for the _share:
3217           action even if the selection is longer than 200 characters. While Define should not have
3218           been available for longer selections, Share does not have such a limitation.
3219
3220 2016-09-30  Myles C. Maxfield  <mmaxfield@apple.com>
3221
3222         Turn variation fonts on by default
3223         https://bugs.webkit.org/show_bug.cgi?id=162818
3224
3225         Reviewed by Simon Fraser.
3226
3227         * Shared/WebPreferencesDefinitions.h:
3228
3229 2016-09-30  Brady Eidson  <beidson@apple.com>
3230
3231         REGRESSION (Safari 10 combined with WK changes): Unable to store WebCrypto keys in IndexedDB database.
3232         <rdar://problem/28334440> and https://bugs.webkit.org/show_bug.cgi?id=162554
3233
3234         Reviewed by Alexey Proskuryakov.
3235
3236         Safari 10 has a WKPageNavigation client but does not implement the "copyWebCryptoMasterKey" callback.
3237
3238         WebKit just fails in this case, instead of falling back to "getDefaultWebCryptoMasterKey".
3239         It should fall back.
3240
3241         Additionally there's a WKContextClient callback to get the crypto key, also, but it is completely unused.
3242         So it should be pulled.
3243
3244         * UIProcess/API/APILoaderClient.h:
3245         (API::LoaderClient::webCryptoMasterKey): Deleted.
3246         * UIProcess/API/C/WKContext.h:
3247
3248         * UIProcess/API/C/WKPage.cpp:
3249         (WKPageSetPageLoaderClient):
3250         (WKPageSetPageNavigationClient): If the client doesn't implement this method, fallback to getDefaultWebCryptoMasterKey.
3251
3252         * UIProcess/Cocoa/NavigationState.mm:
3253         (WebKit::NavigationState::NavigationClient::webCryptoMasterKey): If the client doesn't implement this method,
3254           fallback to getDefaultWebCryptoMasterKey.
3255
3256         * UIProcess/WebContextClient.cpp:
3257         (WebKit::WebContextClient::copyWebCryptoMasterKey): Deleted.
3258         * UIProcess/WebContextClient.h:
3259
3260         * UIProcess/WebPageProxy.cpp:
3261         (WebKit::WebPageProxy::wrapCryptoKey): Only ask the NavigationClient before falling back. Don't ask the loader client.
3262         (WebKit::WebPageProxy::unwrapCryptoKey): Ditto.
3263
3264 2016-09-30  Said Abou-Hallawa  <sabouhallawa@apple.com>
3265
3266         The dragged image should be the current frame only of the animated image
3267         https://bugs.webkit.org/show_bug.cgi?id=162109
3268
3269         Reviewed by Tim Horton.
3270
3271         * UIProcess/Cocoa/WebViewImpl.mm:
3272         (WebKit::WebViewImpl::provideDataForPasteboard): Call the Image function with its new name.
3273
3274 2016-09-30  Anders Carlsson  <andersca@apple.com>
3275
3276         Second time going into fullscreen using silverlight, will hide the menu bar and dock for Safari
3277         https://bugs.webkit.org/show_bug.cgi?id=162805
3278         rdar://problem/28208495
3279
3280         Reviewed by Dan Bernstein.
3281
3282         Turns out that the WindowRef wrappers for full screen NSWindows can end up in the m_windows HashSet,
3283         and never go away. 
3284         
3285         Fix this by storing the canonical CGWindowIDs in the hash map instead.
3286
3287         * PluginProcess/mac/PluginProcessMac.mm:
3288         (WebKit::cgWindowID):
3289         (WebKit::windowCoversAnyScreen):
3290         (WebKit::FullscreenWindowTracker::windowShown):
3291         (WebKit::FullscreenWindowTracker::windowHidden):
3292
3293 2016-09-30  Myles C. Maxfield  <mmaxfield@apple.com>
3294
3295         Create runtime flag for variation font work
3296         https://bugs.webkit.org/show_bug.cgi?id=162780
3297
3298         Reviewed by Alex Christensen.
3299
3300         * Shared/WebPreferencesDefinitions.h:
3301         * WebProcess/WebPage/WebPage.cpp:
3302         (WebKit::WebPage::updatePreferences):
3303
3304 2016-09-30  Chris Dumez  <cdumez@apple.com>
3305
3306         [WK2][iOS] Add radiusX / radiusY / rotationAngle to WebPlatformTouchPoint
3307         https://bugs.webkit.org/show_bug.cgi?id=162787
3308         <rdar://problem/28554292>
3309
3310         Reviewed by Benjamin Poulain.
3311
3312         Add radiusX / radiusY / rotationAngle to WebPlatformTouchPoint.
3313
3314         * Platform/spi/ios/UIKitSPI.h:
3315         * Shared/WebEvent.h:
3316         (WebKit::WebPlatformTouchPoint::setRadiusX):
3317         (WebKit::WebPlatformTouchPoint::radiusX):
3318         (WebKit::WebPlatformTouchPoint::setRadiusY):
3319         (WebKit::WebPlatformTouchPoint::radiusY):
3320         (WebKit::WebPlatformTouchPoint::setRotationAngle):
3321         (WebKit::WebPlatformTouchPoint::rotationAngle):
3322         * Shared/WebEventConversion.cpp:
3323         (WebKit::WebKit2PlatformTouchPoint::WebKit2PlatformTouchPoint):
3324         * Shared/ios/NativeWebTouchEventIOS.mm:
3325         (WebKit::NativeWebTouchEvent::extractWebTouchPoint):
3326         * Shared/ios/WebPlatformTouchPointIOS.cpp:
3327         (WebKit::WebPlatformTouchPoint::encode):
3328         (WebKit::WebPlatformTouchPoint::decode):
3329
3330 2016-09-30  Megan Gardner  <megan_gardner@apple.com>
3331
3332         Make it possible to test web-related user-interface features
3333         https://bugs.webkit.org/show_bug.cgi?id=162657
3334
3335         Reviewed by Simon Fraser.
3336
3337         Added the ability to pull the strings from an Action Sheet and pass them to
3338         test scripts to make sure we are giving the correct available actions for
3339         the item we are interacting with.
3340         Added a test for long press on an image, and used the sheet scraping functionality
3341         to make sure that the correct actions were being displayed.
3342         Test for previous patch, Changeset 205915; Bug 161761
3343
3344         * UIProcess/API/Cocoa/WKWebView.mm:
3345         (-[WKWebView _contentsOfUserInterfaceItem:]):
3346         * UIProcess/API/Cocoa/WKWebViewPrivate.h:
3347         * UIProcess/ios/WKActionSheetAssistant.h:
3348         * UIProcess/ios/WKActionSheetAssistant.mm:
3349         (-[WKActionSheetAssistant currentAvailableActionStrings]):
3350         * UIProcess/ios/WKContentViewInteraction.h:
3351         * UIProcess/ios/WKContentViewInteraction.mm:
3352         (-[WKContentView _contentsOfUserInterfaceItem:]):
3353
3354 2016-09-27  Anders Carlsson  <andersca@apple.com>
3355
3356         Remove a couple of unused members from PlatformKeyboardEvent
3357         https://bugs.webkit.org/show_bug.cgi?id=162641
3358
3359         Reviewed by Tim Horton.
3360
3361         * Shared/WebEventConversion.cpp:
3362         (WebKit::WebKit2PlatformKeyboardEvent::WebKit2PlatformKeyboardEvent):
3363
3364 2016-09-29  Nan Wang  <n_wang@apple.com>
3365
3366         AX: iOS: Tapping <input> in Safari zooms in a bit when page has max scale = 1
3367         https://bugs.webkit.org/show_bug.cgi?id=162471
3368
3369         Reviewed by Simon Fraser.
3370
3371         * Shared/AssistedNodeInformation.cpp:
3372         (WebKit::AssistedNodeInformation::encode):
3373         (WebKit::AssistedNodeInformation::decode):
3374         * Shared/AssistedNodeInformation.h:
3375         * UIProcess/ios/WKContentViewInteraction.mm:
3376         (-[WKContentView _displayFormNodeInputView]):
3377         * WebProcess/WebPage/WebPage.h:
3378         * WebProcess/WebPage/ios/WebPageIOS.mm:
3379         (WebKit::WebPage::maximumPageScaleFactorIgnoringAlwaysScalable):
3380         (WebKit::WebPage::getAssistedNodeInformation):
3381
3382 2016-09-29  Daniel Bates  <dabates@apple.com>
3383
3384         Mark NetworkLoad as final
3385         https://bugs.webkit.org/show_bug.cgi?id=162681
3386
3387         Reviewed by Alex Christensen.
3388
3389         Mark class NetworkLoad as final as we do not have any derived classes at the moment and it
3390         is unclear if it would make sense to subclass it. We can always unmark the class if it turns
3391         out that it makes sense to subclass it.
3392
3393         * NetworkProcess/NetworkLoad.h:
3394
3395 2016-09-29  Sam Weinig  <sam@webkit.org>
3396
3397         Allow overriding some NSURLSessionConfiguration properties on a per-NetworkProcess basis
3398         <rdar://problem/27648683>
3399         https://bugs.webkit.org/show_bug.cgi?id=162735
3400
3401         Reviewed by Dan Bernstein.
3402
3403         Add SPI for overriding the following NSURLSessionConfigurations properties:
3404             - _sourceApplicationBundleIdentifier
3405             - _sourceApplicationSecondaryIdentifier
3406             - _CTDataConnectionServiceType
3407
3408         * NetworkProcess/NetworkProcess.cpp:
3409         (WebKit::NetworkProcess::initializeNetworkProcess):
3410         * NetworkProcess/NetworkProcessCreationParameters.cpp:
3411         (WebKit::NetworkProcessCreationParameters::encode):
3412         (WebKit::NetworkProcessCreationParameters::decode):
3413         * NetworkProcess/NetworkProcessCreationParameters.h:
3414         * NetworkProcess/NetworkSession.h:
3415         * NetworkProcess/cocoa/NetworkProcessCocoa.mm:
3416         (WebKit::NetworkProcess::platformInitializeNetworkProcessCocoa):
3417         * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
3418         (WebKit::globalSourceApplicationBundleIdentifier):
3419         (WebKit::globalSourceApplicationSecondaryIdentifier):
3420         (WebKit::globalCTDataConnectionServiceType):
3421         (WebKit::NetworkSession::setCustomProtocolManager):
3422         (WebKit::NetworkSession::setSourceApplicationAuditTokenData):
3423         (WebKit::NetworkSession::setSourceApplicationBundleIdentifier):
3424         (WebKit::NetworkSession::setSourceApplicationSecondaryIdentifier):
3425         (WebKit::NetworkSession::setCTDataConnectionServiceType):
3426         (WebKit::NetworkSession::NetworkSession):
3427         * UIProcess/API/APIProcessPoolConfiguration.cpp:
3428         (API::ProcessPoolConfiguration::copy):
3429         * UIProcess/API/APIProcessPoolConfiguration.h:
3430         * UIProcess/API/Cocoa/_WKProcessPoolConfiguration.h:
3431         * UIProcess/API/Cocoa/_WKProcessPoolConfiguration.mm:
3432         (-[_WKProcessPoolConfiguration sourceApplicationBundleIdentifier]):
3433         (-[_WKProcessPoolConfiguration setSourceApplicationBundleIdentifier:]):
3434         (-[_WKProcessPoolConfiguration sourceApplicationSecondaryIdentifier]):
3435         (-[_WKProcessPoolConfiguration setSourceApplicationSecondaryIdentifier:]):
3436         (-[_WKProcessPoolConfiguration CTDataConnectionServiceType]):
3437         (-[_WKProcessPoolConfiguration setCTDataConnectionServiceType:]):
3438         * UIProcess/Cocoa/WebProcessPoolCocoa.mm:
3439         (WebKit::WebProcessPool::platformInitializeNetworkProcess):
3440         * WebProcess/WebProcess.cpp:
3441         (WebKit::WebProcess::initializeWebProcess):
3442         * WebProcess/cocoa/WebProcessCocoa.mm:
3443         (WebKit::WebProcess::platformInitializeWebProcess):
3444
3445 2016-09-29  Carlos Garcia Campos  <cgarcia@igalia.com>
3446
3447         NetworkSession: HTTP authentication doesn't work if PROTECTION_SPACE_AUTH_CALLBACK is not enabled
3448         https://bugs.webkit.org/show_bug.cgi?id=162724
3449
3450         Reviewed by Alex Christensen.
3451
3452         NetworkLoad always expects continueCanAuthenticateAgainstProtectionSpace() to be called to complete the
3453         authentication challenge, which is only defined when PROTECTION_SPACE_AUTH_CALLBACK is enabled.
3454         I've added missing #ifdefs for PROTECTION_SPACE_AUTH_CALLBACK.
3455
3456         * NetworkProcess/Downloads/DownloadManager.cpp:
3457         (WebKit::DownloadManager::continueCanAuthenticateAgainstProtectionSpace):
3458         * NetworkProcess/Downloads/DownloadManager.h:
3459         * NetworkProcess/Downloads/PendingDownload.cpp:
3460         (WebKit::PendingDownload::continueCanAuthenticateAgainstProtectionSpace):
3461         * NetworkProcess/Downloads/PendingDownload.h:
3462         * NetworkProcess/NetworkLoad.cpp:
3463         (WebKit::NetworkLoad::~NetworkLoad):
3464         (WebKit::NetworkLoad::didReceiveChallenge): Call completeAuthenticationChallenge() instead of
3465         canAuthenticateAgainstProtectionSpaceAsync() when PROTECTION_SPACE_AUTH_CALLBACK is not enabled.
3466         (WebKit::NetworkLoad::completeAuthenticationChallenge): Moved common code to complete the authentication
3467         challenge from continueCanAuthenticateAgainstProtectionSpace().
3468         (WebKit::NetworkLoad::continueCanAuthenticateAgainstProtectionSpace): Call completeAuthenticationChallenge().
3469         (WebKit::NetworkLoad::canAuthenticateAgainstProtectionSpaceAsync):
3470         * NetworkProcess/NetworkLoad.h:
3471         * NetworkProcess/NetworkLoadClient.h:
3472         * NetworkProcess/NetworkProcess.cpp:
3473         (WebKit::NetworkProcess::continueCanAuthenticateAgainstProtectionSpaceDownload):
3474         * NetworkProcess/NetworkProcess.h:
3475         * NetworkProcess/NetworkProcess.messages.in:
3476         * NetworkProcess/NetworkResourceLoader.cpp:
3477         (WebKit::NetworkResourceLoader::canAuthenticateAgainstProtectionSpaceAsync):
3478         (WebKit::NetworkResourceLoader::continueCanAuthenticateAgainstProtectionSpace):
3479         * NetworkProcess/NetworkResourceLoader.h:
3480         * NetworkProcess/cache/NetworkCacheSpeculativeLoad.h:
3481         * Shared/Authentication/AuthenticationManager.h:
3482         * UIProcess/Downloads/DownloadProxy.cpp:
3483         (WebKit::DownloadProxy::canAuthenticateAgainstProtectionSpace):
3484         * UIProcess/Downloads/DownloadProxy.h:
3485         * UIProcess/Downloads/DownloadProxy.messages.in:
3486
3487 2016-09-28  Joseph Pecoraro  <pecoraro@apple.com>
3488
3489         WKSharedAPICast should not warn about acceptable custom context menu tag values
3490         https://bugs.webkit.org/show_bug.cgi?id=162597
3491         <rdar://problem/28487627>
3492
3493         Reviewed by Tim Horton.
3494
3495         * Shared/API/c/WKSharedAPICast.h:
3496         (WebKit::toAPI):
3497         (WebKit::toImpl):
3498         Don't log an error when casting ContextMenu types if it is within
3499         the Custom ContextMenu tag range.
3500
3501 2016-09-27  Wenson Hsieh  <wenson_hsieh@apple.com>
3502
3503         Adopt MediaRemote SPI to achieve desired Now Playing behavior
3504         https://bugs.webkit.org/show_bug.cgi?id=162658
3505         <rdar://problem/28499358>
3506
3507         Reviewed by Jer Noble.
3508
3509         Plumbs Now Playing session information (for now, this is just a flag indicating whether or not there is an
3510         active session) across from the web process to the UI process for testing in the form of asynchronous request/
3511         handle-response messages on the WebPage and its proxy in the UI process.
3512
3513         * UIProcess/API/Cocoa/WKWebView.mm:
3514         (-[WKWebView _requestActiveNowPlayingSessionInfo]):
3515         (-[WKWebView _handleActiveNowPlayingSessionInfoResponse:]):
3516         * UIProcess/API/Cocoa/WKWebViewPrivate.h:
3517         * UIProcess/PageClient.h:
3518         * UIProcess/WebPageProxy.cpp:
3519         (WebKit::WebPageProxy::requestActiveNowPlayingSessionInfo):
3520         (WebKit::WebPageProxy::handleActiveNowPlayingSessionInfoResponse):
3521         * UIProcess/WebPageProxy.h:
3522         * UIProcess/WebPageProxy.messages.in:
3523         * UIProcess/mac/PageClientImpl.h:
3524         * UIProcess/mac/PageClientImpl.mm:
3525         (WebKit::PageClientImpl::handleActiveNowPlayingSessionInfoResponse):
3526         * WebProcess/WebPage/WebPage.h:
3527         * WebProcess/WebPage/WebPage.messages.in:
3528         * WebProcess/WebPage/mac/WebPageMac.mm:
3529         (WebKit::WebPage::requestActiveNowPlayingSessionInfo):
3530
3531 2016-09-28  Carlos Garcia Campos  <cgarcia@igalia.com>
3532
3533         [GTK] Switch to use GMenu internally in the context menu implementation
3534         https://bugs.webkit.org/show_bug.cgi?id=162603
3535
3536         Reviewed by Michael Catanzaro.
3537
3538         Switch to use GAction instead of GtkAction internally, but still keeping a GtkAction associated to the GAction,
3539         because our API depends on GtkAction.
3540
3541         * Shared/gtk/WebContextMenuItemGtk.cpp:
3542         (WebKit::WebContextMenuItemGtk::WebContextMenuItemGtk):
3543         (WebKit::WebContextMenuItemGtk::createActionIfNeeded): Create the GAction and the associated GtkAction. Ensure a
3544         unique name for the GAction, since the name now matters.
3545         * Shared/gtk/WebContextMenuItemGtk.h:
3546         (WebKit::WebContextMenuItemGtk::gtkAction):
3547         (WebKit::WebContextMenuItemGtk::gAction):
3548         (WebKit::WebContextMenuItemGtk::submenuItems): Deleted.
3549         * UIProcess/gtk/WebContextMenuProxyGtk.cpp:
3550         (WebKit::contextMenuItemActivatedCallback): Use the GAction.
3551         (WebKit::WebContextMenuProxyGtk::append): Create a new GMenuItem for the GAction.
3552         (WebKit::WebContextMenuProxyGtk::buildMenu): Build a GMenu for the given items.
3553         (WebKit::WebContextMenuProxyGtk::populate): Create a GMenu and bind it ot the GtkMenu.
3554         (WebKit::WebContextMenuProxyGtk::WebContextMenuProxyGtk): Create the GActionGroup for the menu.
3555         (WebKit::WebContextMenuProxyGtk::~WebContextMenuProxyGtk): Remove the action group from the GtkMenu.
3556         * UIProcess/gtk/WebContextMenuProxyGtk.h:
3557
3558 2016-09-27  Daniel Bates  <dabates@apple.com>
3559
3560         NetworkLoad and PingLoad should use private inheritance
3561         https://bugs.webkit.org/show_bug.cgi?id=162649
3562
3563         Reviewed by Alex Christensen.
3564
3565         Make NetworkLoad privately inherit from NetworkDataTaskClient and ResourceHandleClient,
3566         and make the client callbacks from these interfaces private as this class implements
3567         these interfaces.
3568
3569         Similarly, make PingLoad privately inherit from ResourceHandleClient.
3570
3571         * NetworkProcess/NetworkLoad.h:
3572         * NetworkProcess/PingLoad.h:
3573
3574 2016-09-20  Anders Carlsson  <andersca@apple.com>
3575
3576         PlatformEvent::m_modifiers should be an OptionSet
3577         https://bugs.webkit.org/show_bug.cgi?id=162326
3578
3579         Reviewed by Daniel Bates.
3580
3581         * Shared/WebEventConversion.cpp:
3582         (WebKit::WebKit2PlatformMouseEvent::WebKit2PlatformMouseEvent):
3583         (WebKit::WebKit2PlatformWheelEvent::WebKit2PlatformWheelEvent):
3584         (WebKit::WebKit2PlatformKeyboardEvent::WebKit2PlatformKeyboardEvent):
3585         (WebKit::WebKit2PlatformGestureEvent::WebKit2PlatformGestureEvent):
3586
3587 2016-09-27  Dan Bernstein  <mitz@apple.com>
3588
3589         [iOS] REGRESSION (r182126): Selection highlight and handles aren’t visible with WKSelectionGranularityCharacter
3590         https://bugs.webkit.org/show_bug.cgi?id=162577
3591         <rdar://problem/28481984>
3592
3593         Reviewed by Simon Fraser.
3594
3595         * UIProcess/API/Cocoa/WKWebView.mm:
3596         (-[WKWebView _uiTextSelectionRectViews]): Added this method in the WKTesting category, which
3597           uses UIKit internals to get the views used for the selection highlight.
3598         * UIProcess/API/Cocoa/WKWebViewPrivate.h:
3599
3600         * UIProcess/ios/WKContentViewInteraction.mm:
3601         (-[WKContentView _selectionClipRect]): When selection is not confined to a form control or
3602           content-editable element, return the null rect to indicate no clipping, rather than
3603           clipping to the empty rect at the origin.
3604
3605 2016-09-27  Jer Noble  <jer.noble@apple.com>
3606
3607         Remove deprecated ENCRYPTED_MEDIA implementation.
3608         https://bugs.webkit.org/show_bug.cgi?id=161010
3609
3610         Reviewed by Eric Carlson.
3611
3612         Remove ENABLE_ENCRYPTED_MEDIA.
3613
3614         * Configurations/FeatureDefines.xcconfig:
3615
3616 2016-09-27  Chris Dumez  <cdumez@apple.com>
3617
3618         [WK2] Navigating to a Blob URL does not trigger a download
3619         https://bugs.webkit.org/show_bug.cgi?id=162574
3620
3621         Reviewed by Darin Adler.
3622
3623         Add support for converting Blob URL loads into downloads.
3624
3625         * NetworkProcess/Downloads/BlobDownloadClient.cpp:
3626         (WebKit::BlobDownloadClient::didReceiveResponseAsync):
3627         Make sure we return a valid suggested filename because the client side (Safari)
3628         does not deal with empty suggested filenames. Use "unknown" by default to
3629         match the default suggested filename of non-Blob downloads.
3630
3631         * NetworkProcess/Downloads/Download.cpp:
3632         (WebKit::Download::startWithHandle):
3633         * NetworkProcess/Downloads/Download.h:
3634         * NetworkProcess/Downloads/DownloadManager.cpp:
3635         (WebKit::DownloadManager::convertHandleToDownload):
3636         * NetworkProcess/Downloads/DownloadManager.h:
3637         * NetworkProcess/Downloads/ios/DownloadIOS.mm:
3638         (WebKit::Download::startNetworkLoadWithHandle):
3639         * NetworkProcess/Downloads/mac/DownloadMac.mm:
3640         (WebKit::Download::startNetworkLoadWithHandle):
3641         * NetworkProcess/Downloads/soup/DownloadSoup.cpp:
3642         (WebKit::Download::startNetworkLoadWithHandle):
3643         * NetworkProcess/NetworkConnectionToWebProcess.cpp:
3644         (WebKit::NetworkConnectionToWebProcess::convertMainResourceLoadToDownload):
3645         * NetworkProcess/NetworkLoad.h:
3646         (WebKit::NetworkLoad::handle):
3647
3648 2016-09-27  Michael Catanzaro  <mcatanzaro@igalia.com>
3649
3650         [GTK] Unreviewed typo fix
3651
3652         * UIProcess/API/gtk/WebKitWebInspector.cpp:
3653         (webkit_web_inspector_class_init):
3654
3655 2016-09-27  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
3656
3657         [GTK] Should check whether GDK can use GL before asking it to
3658         https://bugs.webkit.org/show_bug.cgi?id=162598
3659
3660         Reviewed by Michael Catanzaro.
3661
3662         gdk_cairo_draw_from_gl can fail even when WebKit itself has been able to use GL (its
3663         context creation code might be buggy, GL may have been disabled using GDK_GL=disable, …).
3664         Unfortunately it does not have any error reporting other than a warning printed to
3665         stderr, so we cannot fallback from it. We have to first check if GL can be used by GDK
3666         by trying to create a context.
3667
3668         See https://bugzilla.redhat.com/show_bug.cgi?id=1378987
3669
3670         * UIProcess/gtk/AcceleratedBackingStoreWayland.cpp:
3671         (WebKit::AcceleratedBackingStoreWayland::canGdkUseGL): decide whether GDK can use GL by
3672         trying to create a context for a GdkWindow.
3673         (WebKit::AcceleratedBackingStoreWayland::paint): fallback to glReadPixels if GDK cannot
3674         use GL.
3675         * UIProcess/gtk/AcceleratedBackingStoreWayland.h:
3676
3677 2016-09-26  Tim Horton  <timothy_horton@apple.com>
3678
3679         Delete some unused code from r202695
3680         https://bugs.webkit.org/show_bug.cgi?id=162595
3681         <rdar://problem/28343784>
3682
3683         Reviewed by Dan Bernstein.
3684
3685         * UIProcess/API/Cocoa/WKWebView.mm:
3686         (-[WKWebView _initializeWithConfiguration:]):
3687         (-[WKWebView _setIsBlankBeforeFirstNonEmptyLayout:]): Deleted.
3688         (-[WKWebView _didFirstVisuallyNonEmptyLayoutForMainFrame]): Deleted.
3689         * UIProcess/API/Cocoa/WKWebViewInternal.h:
3690         * UIProcess/ios/PageClientImplIOS.mm:
3691         (WebKit::PageClientImpl::didFirstVisuallyNonEmptyLayoutForMainFrame):
3692         We didn't end up needing this mechanism.
3693
3694 2016-09-26  Dan Bernstein  <mitz@apple.com>
3695
3696         -_webViewWebProcessDidBecomeUnresponsive: gets called when the Web process is stopped in the debugger
3697         https://bugs.webkit.org/show_bug.cgi?id=162234
3698
3699         Reviewed by Sam Weinig.
3700
3701         * UIProcess/Cocoa/WebProcessProxyCocoa.mm:
3702         (WebKit::WebProcessProxy::platformIsBeingDebugged): Use the KERN_PROC sysctl to get the
3703           process flags and check for P_TRACED.
3704
3705         * UIProcess/ResponsivenessTimer.cpp:
3706         (WebKit::ResponsivenessTimer::timerFired): Call the new client function
3707           mayBecomeUnresponsive. If it returns false, restart the timer and bail out without
3708           changing the responsiveness state.
3709
3710         * UIProcess/ResponsivenessTimer.h: Declared new client function mayBecomeUnresponsive.
3711
3712         * UIProcess/WebProcessProxy.cpp:
3713         (WebKit::WebProcessProxy::platformIsBeingDebugged): A generic implementation that always
3714           returns false.
3715         (WebKit::WebProcessProxy::mayBecomeUnresponsive): Implement this new
3716           ResponsivenessTimer::Client function to return true unless the process is being debugged.
3717         * UIProcess/WebProcessProxy.h:
3718
3719 2016-09-26  Chris Dumez  <cdumez@apple.com>
3720
3721         [WK2] BlobDownloadClient should use asynchronous IPC to decide destination path
3722         https://bugs.webkit.org/show_bug.cgi?id=162568
3723
3724         Reviewed by Alex Christensen.
3725
3726         Use DecideDestinationWithSuggestedFilenameAsync IPC to decide the destination
3727         path in the case of Blob downloads, instead of the synchronous alternative.
3728         To achieve this, BlobResourceHandle was updated in WebCore to properly support
3729         asynchronous callback and BlobDownloadClient was updated to use asynchronous
3730         callbacks. When BlobDownloadClient::didReceiveResponseAsync() is called, we
3731         now ask the WebContent process asynchronously to decide what the destination
3732         path should be. Then, when we later get the destination path back from the
3733         WebContent process, we create the file on disk and call
3734         continueDidReceiveResponse() on the BlobResourceHandle so we start getting the
3735         blob data to write.
3736
3737         * NetworkProcess/Downloads/BlobDownloadClient.cpp:
3738         (WebKit::BlobDownloadClient::didReceiveResponseAsync):
3739         (WebKit::BlobDownloadClient::didDecideDownloadDestination):
3740         * NetworkProcess/Downloads/BlobDownloadClient.h:
3741         * NetworkProcess/Downloads/Download.cpp:
3742         (WebKit::Download::decideDestinationWithSuggestedFilenameAsync):
3743         (WebKit::Download::didDecideDownloadDestination):
3744         (WebKit::Download::continueDidReceiveResponse):
3745         (WebKit::Download::decideDestinationWithSuggestedFilename): Deleted.
3746         * NetworkProcess/Downloads/Download.h:
3747         * NetworkProcess/Downloads/DownloadManager.cpp:
3748         (WebKit::DownloadManager::willDecidePendingDownloadDestination):
3749         (WebKit::DownloadManager::continueDecidePendingDownloadDestination):
3750         (WebKit::DownloadManager::convertHandleToDownload): Deleted.
3751         * NetworkProcess/Downloads/DownloadManager.h:
3752         * NetworkProcess/NetworkLoad.cpp:
3753         (WebKit::NetworkLoad::continueDidReceiveResponse):
3754         * NetworkProcess/NetworkProcess.cpp:
3755         (WebKit::NetworkProcess::continueDecidePendingDownloadDestination):
3756         * NetworkProcess/NetworkProcess.h:
3757         * NetworkProcess/NetworkProcess.messages.in:
3758         * UIProcess/Downloads/DownloadProxy.cpp:
3759         (WebKit::DownloadProxy::decideDestinationWithSuggestedFilenameAsync): Deleted.
3760         * UIProcess/Downloads/DownloadProxy.h:
3761         * UIProcess/Downloads/DownloadProxy.messages.in:
3762
3763 2016-09-26  Daniel Bates  <dabates@apple.com>
3764
3765         Mark Ping{Handle, Load} as final
3766         https://bugs.webkit.org/show_bug.cgi?id=162576
3767
3768         Reviewed by Alex Christensen.
3769
3770         We should not support subclassing of a ping handle or overriding its NetworkDataTaskClient
3771         callbacks because there are security/privacy implications with a ping request. We should
3772         not encourage subclassing without careful consideration.
3773
3774         * NetworkProcess/PingLoad.h:
3775
3776 2016-09-26  Daniel Bates  <dabates@apple.com>
3777
3778         Rename IOS_TEXT_AUTOSIZING to TEXT_AUTOSIZING
3779         https://bugs.webkit.org/show_bug.cgi?id=162365
3780
3781         Reviewed by Simon Fraser.
3782
3783         * Configurations/FeatureDefines.xcconfig:
3784         * WebProcess/WebPage/WebPage.cpp:
3785         (WebKit::WebPage::updatePreferences):
3786
3787 2016-09-26  Michael Catanzaro  <mcatanzaro@igalia.com>
3788
3789         Fix -Wformat warnings in WebLoaderStrategy
3790         https://bugs.webkit.org/show_bug.cgi?id=162553
3791
3792         Reviewed by Alex Christensen.
3793
3794         Consistently use PRIu64 to print uint64_t
3795
3796         * NetworkProcess/Downloads/Download.cpp:
3797         (WebKit::Download::didReceiveResponse):
3798         (WebKit::Download::didReceiveData):
3799         (WebKit::Download::didFinish):
3800         (WebKit::Download::didFail):
3801         (WebKit::Download::didCancel):
3802         * NetworkProcess/NetworkResourceLoader.cpp:
3803         (WebKit::NetworkResourceLoader::start):
3804         (WebKit::NetworkResourceLoader::startNetworkLoad):
3805         (WebKit::NetworkResourceLoader::setDefersLoading):
3806         (WebKit::NetworkResourceLoader::abort):
3807         (WebKit::NetworkResourceLoader::didReceiveBuffer):
3808         (WebKit::NetworkResourceLoader::didFinishLoading):
3809         (WebKit::NetworkResourceLoader::didFailLoading):
3810         (WebKit::NetworkResourceLoader::continueWillSendRequest):
3811         * WebProcess/Network/WebLoaderStrategy.cpp:
3812         (WebKit::WebLoaderStrategy::scheduleLoad):
3813         * WebProcess/Network/WebResourceLoader.cpp:
3814         (WebKit::WebResourceLoader::willSendRequest):
3815         (WebKit::WebResourceLoader::didReceiveResponse):
3816         (WebKit::WebResourceLoader::didReceiveData):
3817         (WebKit::WebResourceLoader::didFinishResourceLoad):
3818         (WebKit::WebResourceLoader::didFailResourceLoad):
3819         (WebKit::WebResourceLoader::didReceiveResource):
3820
3821 == Rolled over to ChangeLog-2016-09-26 ==