30e9d02c1105a4659b33d5570d766027d87659fd
[WebKit-https.git] / Source / WebKit2 / ChangeLog
1 2016-01-04  Tim Horton  <timothy_horton@apple.com>
2
3         Hardware keyboard key-commands stop responding when viewing PDFs
4         https://bugs.webkit.org/show_bug.cgi?id=152712
5         <rdar://problem/23014457>
6
7         Reviewed by Dan Bernstein.
8
9         Maintain first responder status through any content view swapping, by
10         making WKWebView become first responder if needed, and pushing first
11         responder status down to the swapped-in content view if possible.
12
13         * UIProcess/API/Cocoa/WKWebView.mm:
14         (-[WKWebView becomeFirstResponder]):
15         Make the current content view first responder instead of the WKContentView,
16         in case we have a custom content view installed.
17
18         (-[WKWebView canBecomeFirstResponder]):
19         WKWebView can always become first responder, even if none of its children can.
20         This makes it so that if a custom content view can't become first responder,
21         WKWebView will take the responsibility.
22
23         (-[WKWebView _setHasCustomContentView:loadedMIMEType:]):
24         Return the responsibility of being first responder to the newly-installed
25         content view if WKWebView is currently the first responder (either because
26         of tab switching or because the previous content view did not support
27         being first responder), if it supports being first responder.
28
29 2016-01-04  Commit Queue  <commit-queue@webkit.org>
30
31         Unreviewed, rolling out r194544.
32         https://bugs.webkit.org/show_bug.cgi?id=152711
33
34         This change caused assertions in existing inspector tests
35         (Requested by ryanhaddad on #webkit).
36
37         Reverted changeset:
38
39         "Web Inspector: reproducible debug ASSERT when inspecting the
40         inspector (WK2)"
41         https://bugs.webkit.org/show_bug.cgi?id=152080
42         http://trac.webkit.org/changeset/194544
43
44 2016-01-04  Alex Christensen  <achristensen@webkit.org>
45
46         Fix Mac CMake build after r194378.
47
48         * CMakeLists.txt:
49
50 2016-01-04  Brian Burg  <bburg@apple.com>
51
52         Web Inspector: reproducible debug ASSERT when inspecting the inspector (WK2)
53         https://bugs.webkit.org/show_bug.cgi?id=152080
54
55         Reviewed by Timothy Hatcher.
56
57         We hit an assert underneath ChildProcessProxy::addMessageReceiver when opening Inspector[2]
58         because we try to add WebInpectorProxy as a message receiver twice for the same process.
59
60         On investigating, I found several interrelated issues that caused this state of affairs:
61
62          - WebInspectorProxy adds message receivers for inspector page's WebProcess and the
63         inspected page's WebProcess. When inspecting the inspector, we mistakenly add a receiver
64         again because the inspector is now the inspected page.
65          - We mixed up process ids when adding message receivers.
66          - invalidate() is re-entrant, causing us to try and double-remove the message receiver.
67
68         Fix this by removing add/remove of message recievers for the inspector page when then
69         inspected page is itself an inspector page. In that case, the receivers are managed by
70         the inspector page's WebInspectorProxy instance.
71
72         * UIProcess/WebInspectorProxy.cpp:
73         (WebKit::WebInspectorProxy::invalidate): Re-arrange to guard against useless reentrancy.
74         (WebKit::WebInspectorProxy::didRelaunchInspectorPageProcess):
75         (WebKit::WebInspectorProxy::eagerlyCreateInspectorPage):
76         (WebKit::WebInspectorProxy::didClose):
77
78 2016-01-04  Alex Christensen  <achristensen@webkit.org>
79
80         Build fix after r194536 when using NetworkSession.
81
82         * NetworkProcess/Downloads/DownloadManager.cpp:
83         (WebKit::DownloadManager::dataTaskBecameDownloadTask):
84         (WebKit::DownloadManager::convertHandleToDownload):
85         * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
86         (-[WKNetworkSessionDelegate URLSession:dataTask:didBecomeDownloadTask:]):
87         WTFMove changed underneath me.
88
89 2016-01-04  Alex Christensen  <achristensen@webkit.org>
90
91         Progress towards implementing downloads with NetworkSession
92         https://bugs.webkit.org/show_bug.cgi?id=152576
93
94         Reviewed by Brady Eidson.
95
96         * NetworkProcess/Downloads/Download.cpp:
97         (WebKit::Download::Download):
98         (WebKit::Download::~Download):
99         (WebKit::Download::didStart):
100         (WebKit::Download::didReceiveAuthenticationChallenge):
101         * NetworkProcess/Downloads/Download.h:
102         (WebKit::Download::downloadID):
103         * NetworkProcess/Downloads/DownloadManager.cpp:
104         (WebKit::DownloadManager::startDownload):
105         (WebKit::DownloadManager::dataTaskBecameDownloadTask):
106         (WebKit::DownloadManager::convertHandleToDownload):
107         * NetworkProcess/Downloads/DownloadManager.h:
108         * NetworkProcess/NetworkConnectionToWebProcess.cpp:
109         (WebKit::NetworkConnectionToWebProcess::convertMainResourceLoadToDownload):
110         * NetworkProcess/NetworkLoad.cpp:
111         (WebKit::NetworkLoad::convertTaskToDownload):
112         * NetworkProcess/NetworkLoad.h:
113         * NetworkProcess/NetworkSession.h:
114         (WebKit::NetworkDataTask::client):
115         (WebKit::NetworkDataTask::clearClient):
116         (WebKit::NetworkDataTask::downloadID):
117         (WebKit::NetworkDataTask::setDownloadID):
118         * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
119         (-[WKNetworkSessionDelegate URLSession:downloadTask:didWriteData:totalBytesWritten:totalBytesExpectedToWrite:]):
120         (-[WKNetworkSessionDelegate URLSession:dataTask:didBecomeDownloadTask:]):
121
122 2016-01-04  Michael Catanzaro  <mcatanzaro@igalia.com>
123
124         [GTK] Rename _WebKitWebContextPrivate.context to _WebKitWebContextPrivate.processPool
125         https://bugs.webkit.org/show_bug.cgi?id=152672
126
127         Reviewed by Carlos Garcia Campos.
128
129         * UIProcess/API/gtk/WebKitDownloadClient.cpp:
130         (attachDownloadClientToContext):
131         * UIProcess/API/gtk/WebKitInjectedBundleClient.cpp:
132         (attachInjectedBundleClientToContext):
133         * UIProcess/API/gtk/WebKitSecurityManager.cpp:
134         (registerSecurityPolicyForURIScheme):
135         * UIProcess/API/gtk/WebKitWebContext.cpp:
136         (webkitWebContextConstructed):
137         (webkitWebContextDispose):
138         (webkit_web_context_set_cache_model):
139         (webkit_web_context_get_cache_model):
140         (webkit_web_context_clear_cache):
141         (webkit_web_context_get_cookie_manager):
142         (ensureFaviconDatabase):
143         (webkit_web_context_set_favicon_database_directory):
144         (webkit_web_context_set_additional_plugins_directory):
145         (webkitWebContextGetPluginThread):
146         (webkit_web_context_set_tls_errors_policy):
147         (webkit_web_context_set_disk_cache_directory):
148         (webkit_web_context_prefetch_dns):
149         (webkit_web_context_allow_tls_certificate_for_host):
150         (webkit_web_context_set_process_model):
151         (webkit_web_context_set_web_process_count_limit):
152         (webkitWebContextStartDownload):
153         (webkitWebContextGetProcessPool):
154         (webkitWebContextCreatePageForWebView):
155         (webkitWebContextGetContext): Deleted.
156         * UIProcess/API/gtk/WebKitWebContextPrivate.h:
157
158 2016-01-03  Simon Fraser  <simon.fraser@apple.com>
159
160         Rename scrollPosition(Scrollbar*) to scrollOffset(ScrollbarOrientation)
161         https://bugs.webkit.org/show_bug.cgi?id=152666
162
163         Reviewed by Dan Bernstein.
164
165         Scrollbar values take offsets (zero-based), so rename the accessor used
166         by scrollbars to set their value, and pass in an orientation, rather than
167         a pointer to the scrollbar.
168
169         * WebProcess/Plugins/PDF/DeprecatedPDFPlugin.h:
170         * WebProcess/Plugins/PDF/DeprecatedPDFPlugin.mm:
171         (WebKit::PDFPlugin::scrollOffset):
172         (WebKit::PDFPlugin::scrollPosition): Renamed.
173
174 2015-12-31  Andy Estes  <aestes@apple.com>
175
176         Replace WTF::move with WTFMove
177         https://bugs.webkit.org/show_bug.cgi?id=152601
178
179         Reviewed by Brady Eidson.
180
181         * DatabaseProcess/DatabaseProcess.cpp:
182         (WebKit::DatabaseProcess::postDatabaseTask):
183         (WebKit::DatabaseProcess::fetchWebsiteData):
184         (WebKit::DatabaseProcess::deleteWebsiteData):
185         (WebKit::DatabaseProcess::deleteWebsiteDataForOrigins):
186         (WebKit::DatabaseProcess::indexedDatabaseOrigins):
187         * DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:
188         (WebKit::UniqueIDBDatabase::postTransactionOperation):
189         (WebKit::UniqueIDBDatabase::postMainThreadTask):
190         (WebKit::UniqueIDBDatabase::postDatabaseTask):
191         * NetworkProcess/Downloads/DownloadManager.cpp:
192         (WebKit::DownloadManager::startDownload):
193         (WebKit::DownloadManager::convertHandleToDownload):
194         (WebKit::DownloadManager::resumeDownload):
195         * NetworkProcess/EntryPoint/mac/XPCService/NetworkServiceEntryPoint.mm:
196         (WebKit::NetworkServiceInitializerDelegate::NetworkServiceInitializerDelegate):
197         * NetworkProcess/FileAPI/NetworkBlobRegistry.cpp:
198         (WebKit::NetworkBlobRegistry::registerBlobURL):
199         * NetworkProcess/NetworkConnectionToWebProcess.cpp:
200         (WebKit::NetworkConnectionToWebProcess::performSynchronousLoad):
201         (WebKit::NetworkConnectionToWebProcess::registerBlobURL):
202         * NetworkProcess/NetworkLoad.cpp:
203         (WebKit::NetworkLoad::didReceiveData):
204         (WebKit::NetworkLoad::didReceiveBuffer):
205         (WebKit::NetworkLoad::continueCanAuthenticateAgainstProtectionSpace):
206         * NetworkProcess/NetworkProcess.cpp:
207         (WebKit::fetchDiskCacheEntries):
208         (WebKit::NetworkProcess::fetchWebsiteData):
209         (WebKit::NetworkProcess::deleteWebsiteData):
210         (WebKit::clearDiskCacheEntries):
211         (WebKit::NetworkProcess::deleteWebsiteDataForOrigins):
212         * NetworkProcess/NetworkResourceLoader.cpp:
213         (WebKit::NetworkResourceLoader::SynchronousLoadData::SynchronousLoadData):
214         (WebKit::NetworkResourceLoader::NetworkResourceLoader):
215         (WebKit::NetworkResourceLoader::retrieveCacheEntry):
216         (WebKit::NetworkResourceLoader::didFinishLoading):
217         (WebKit::NetworkResourceLoader::tryStoreAsCacheEntry):
218         (WebKit::NetworkResourceLoader::validateCacheEntry):
219         * NetworkProcess/NetworkResourceLoader.h:
220         * NetworkProcess/cache/NetworkCache.cpp:
221         (WebKit::NetworkCache::Cache::retrieve):
222         (WebKit::NetworkCache::Cache::store):
223         (WebKit::NetworkCache::Cache::clear):
224         * NetworkProcess/cache/NetworkCacheCoders.h:
225         * NetworkProcess/cache/NetworkCacheDataSoup.cpp:
226         (WebKit::NetworkCache::Data::empty):
227         (WebKit::NetworkCache::Data::subrange):
228         (WebKit::NetworkCache::concatenate):
229         (WebKit::NetworkCache::Data::adoptMap):
230         * NetworkProcess/cache/NetworkCacheEntry.cpp:
231         (WebKit::NetworkCache::Entry::Entry):
232         * NetworkProcess/cache/NetworkCacheIOChannelSoup.cpp:
233         (WebKit::NetworkCache::runTaskInQueue):
234         (WebKit::NetworkCache::fillDataFromReadBuffer):
235         (WebKit::NetworkCache::IOChannel::readSyncInThread):
236         * NetworkProcess/cache/NetworkCacheSpeculativeLoad.cpp:
237         (WebKit::NetworkCache::SpeculativeLoad::SpeculativeLoad):
238         (WebKit::NetworkCache::SpeculativeLoad::didFinishLoading):
239         (WebKit::NetworkCache::SpeculativeLoad::didComplete):
240         * NetworkProcess/cache/NetworkCacheSpeculativeLoadManager.cpp:
241         (WebKit::NetworkCache::SpeculativeLoadManager::ExpiringEntry::ExpiringEntry):
242         (WebKit::NetworkCache::SpeculativeLoadManager::PreloadedEntry::PreloadedEntry):
243         (WebKit::NetworkCache::SpeculativeLoadManager::PreloadedEntry::takeCacheEntry):
244         (WebKit::NetworkCache::SpeculativeLoadManager::PendingFrameLoad::create):
245         (WebKit::NetworkCache::SpeculativeLoadManager::PendingFrameLoad::setExistingSubresourcesEntry):
246         (WebKit::NetworkCache::SpeculativeLoadManager::PendingFrameLoad::PendingFrameLoad):
247         (WebKit::NetworkCache::SpeculativeLoadManager::registerLoad):
248         (WebKit::NetworkCache::SpeculativeLoadManager::addPreloadedEntry):
249         (WebKit::NetworkCache::SpeculativeLoadManager::retrieveEntryFromStorage):
250         (WebKit::NetworkCache::SpeculativeLoadManager::revalidateEntry):
251         (WebKit::NetworkCache::SpeculativeLoadManager::preloadEntry):
252         (WebKit::NetworkCache::SpeculativeLoadManager::retrieveSubresourcesEntry):
253         * NetworkProcess/cache/NetworkCacheStatistics.cpp:
254         (WebKit::NetworkCache::Statistics::queryWasEverRequested):
255         * NetworkProcess/cache/NetworkCacheStorage.cpp:
256         (WebKit::NetworkCache::Storage::ReadOperation::finish):
257         (WebKit::NetworkCache::Storage::synchronize):
258         (WebKit::NetworkCache::Storage::dispatchReadOperation):
259         (WebKit::NetworkCache::Storage::dispatchWriteOperation):
260         (WebKit::NetworkCache::Storage::retrieve):
261         (WebKit::NetworkCache::Storage::store):
262         (WebKit::NetworkCache::Storage::traverse):
263         (WebKit::NetworkCache::Storage::clear):
264         * NetworkProcess/cache/NetworkCacheSubresourcesEntry.cpp:
265         (WebKit::NetworkCache::SubresourcesEntry::SubresourcesEntry):
266         (WebKit::NetworkCache::SubresourcesEntry::updateSubresourceKeys):
267         * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
268         (WebKit::NetworkDataTask::NetworkDataTask):
269         * NetworkProcess/soup/NetworkProcessSoup.cpp:
270         (WebKit::NetworkProcess::clearDiskCache):
271         * Platform/IPC/ArgumentCoders.h:
272         (IPC::ArgumentCoder<WTF::Optional<T>>::decode):
273         * Platform/IPC/ArgumentDecoder.cpp:
274         (IPC::ArgumentDecoder::ArgumentDecoder):
275         * Platform/IPC/ArgumentEncoder.cpp:
276         (IPC::ArgumentEncoder::addAttachment):
277         (IPC::ArgumentEncoder::releaseAttachments):
278         * Platform/IPC/Attachment.cpp:
279         (IPC::Attachment::encode):
280         * Platform/IPC/Connection.cpp:
281         (IPC::Connection::SyncMessageState::processIncomingMessage):
282         (IPC::Connection::SyncMessageState::dispatchMessages):
283         (IPC::Connection::dispatchWorkQueueMessageReceiverMessage):
284         (IPC::Connection::sendMessage):
285         (IPC::Connection::sendSyncReply):
286         (IPC::Connection::waitForMessage):
287         (IPC::Connection::sendSyncMessage):
288         (IPC::Connection::sendSyncMessageFromSecondaryThread):
289         (IPC::Connection::waitForSyncReply):
290         (IPC::Connection::processIncomingSyncReply):
291         (IPC::Connection::processIncomingMessage):
292         (IPC::Connection::sendOutgoingMessages):
293         (IPC::Connection::dispatchSyncMessage):
294         (IPC::Connection::enqueueIncomingMessage):
295         (IPC::Connection::dispatchOneMessage):
296         * Platform/IPC/Connection.h:
297         (IPC::Connection::Identifier::Identifier):
298         (IPC::Connection::send):
299         (IPC::Connection::sendSync):
300         * Platform/IPC/HandleMessage.h:
301         (IPC::handleMessage):
302         (IPC::handleMessageDelayed):
303         * Platform/IPC/MessageDecoder.cpp:
304         (IPC::MessageDecoder::MessageDecoder):
305         (IPC::MessageDecoder::setImportanceAssertion):
306         (IPC::MessageDecoder::unwrapForTesting):
307         * Platform/IPC/MessageDecoder.h:
308         (IPC::MessageDecoder::setMessageProcessingToken):
309         * Platform/IPC/MessageEncoder.cpp:
310         (IPC::MessageEncoder::wrapForTesting):
311         * Platform/IPC/MessageRecorder.cpp:
312         (IPC::MessageRecorder::recordOutgoingMessage):
313         (IPC::MessageRecorder::recordIncomingMessage):
314         (IPC::MessageRecorder::MessageProcessingToken::MessageProcessingToken):
315         * Platform/IPC/MessageSender.cpp:
316         (IPC::MessageSender::sendMessage):
317         * Platform/IPC/MessageSender.h:
318         (IPC::MessageSender::send):
319         (IPC::MessageSender::sendSync):
320         * Platform/IPC/glib/GSocketMonitor.cpp:
321         (IPC::GSocketMonitor::start):
322         * Platform/IPC/mac/ConnectionMac.mm:
323         (IPC::Connection::open):
324         (IPC::createMessageDecoder):
325         (IPC::Connection::receiveSourceEventHandler):
326         * Platform/IPC/unix/ConnectionUnix.cpp:
327         (IPC::Connection::processMessage):
328         * Platform/unix/SharedMemoryUnix.cpp:
329         (WebKit::SharedMemory::Handle::decode):
330         (WebKit::SharedMemory::Handle::releaseAttachment):
331         (WebKit::SharedMemory::Handle::adoptAttachment):
332         * PluginProcess/EntryPoint/mac/XPCService/PluginServiceEntryPoint.mm:
333         (WebKit::PluginServiceInitializerDelegate::PluginServiceInitializerDelegate):
334         * PluginProcess/PluginProcess.cpp:
335         (WebKit::PluginProcess::initializePluginProcess):
336         * PluginProcess/WebProcessConnection.cpp:
337         (WebKit::WebProcessConnection::addPluginControllerProxy):
338         (WebKit::WebProcessConnection::createPluginInternal):
339         * PluginProcess/mac/PluginProcessMac.mm:
340         (WebKit::PluginProcess::platformInitializePluginProcess):
341         * Scripts/webkit/LegacyMessageReceiver-expected.cpp:
342         (Messages::WebPage::GetPluginProcessConnection::DelayedReply::DelayedReply):
343         (Messages::WebPage::GetPluginProcessConnection::DelayedReply::send):
344         (Messages::WebPage::TestMultipleAttributes::DelayedReply::DelayedReply):
345         (Messages::WebPage::TestMultipleAttributes::DelayedReply::send):
346         * Scripts/webkit/MessageReceiver-expected.cpp:
347         (Messages::WebPage::GetPluginProcessConnection::DelayedReply::DelayedReply):
348         (Messages::WebPage::GetPluginProcessConnection::DelayedReply::send):
349         (Messages::WebPage::TestMultipleAttributes::DelayedReply::DelayedReply):
350         (Messages::WebPage::TestMultipleAttributes::DelayedReply::send):
351         * Scripts/webkit/messages.py:
352         (generate_message_handler):
353         * Shared/API/APIArray.cpp:
354         (API::Array::create):
355         (API::Array::createStringArray):
356         (API::Array::copy):
357         * Shared/API/APIArray.h:
358         * Shared/API/APIDictionary.cpp:
359         (API::Dictionary::create):
360         (API::Dictionary::Dictionary):
361         (API::Dictionary::keys):
362         * Shared/API/APIPageGroupHandle.cpp:
363         (API::PageGroupHandle::create):
364         (API::PageGroupHandle::PageGroupHandle):
365         (API::PageGroupHandle::decode):
366         * Shared/API/APIString.h:
367         * Shared/API/APIURL.h:
368         (API::URL::create):
369         (API::URL::URL):
370         * Shared/API/Cocoa/RemoteObjectInvocation.h:
371         (WebKit::RemoteObjectInvocation::ReplyInfo::ReplyInfo):
372         * Shared/API/Cocoa/RemoteObjectInvocation.mm:
373         (WebKit::RemoteObjectInvocation::RemoteObjectInvocation):
374         (WebKit::RemoteObjectInvocation::decode):
375         * Shared/API/Cocoa/WKRemoteObjectCoder.mm:
376         (ensureObjectStream):
377         (createEncodedObject):
378         * Shared/API/Cocoa/_WKRemoteObjectInterface.mm:
379         (initializeMethod):
380         (-[_WKRemoteObjectInterface setClasses:forSelector:argumentIndex:ofReply:]):
381         * Shared/API/Cocoa/_WKRemoteObjectRegistry.mm:
382         (-[_WKRemoteObjectRegistry _sendInvocation:interface:]):
383         * Shared/API/c/WKArray.cpp:
384         (WKArrayCreate):
385         (WKArrayCreateAdoptingValues):
386         * Shared/API/c/WKDictionary.cpp:
387         (WKDictionaryCreate):
388         * Shared/API/c/WKSharedAPICast.h:
389         (WebKit::ProxyingRefPtr::ProxyingRefPtr):
390         * Shared/APIWebArchive.mm:
391         (API::WebArchive::WebArchive):
392         (API::WebArchive::subresources):
393         (API::WebArchive::subframeArchives):
394         * Shared/AsyncRequest.cpp:
395         (WebKit::AsyncRequest::AsyncRequest):
396         (WebKit::AsyncRequest::setAbortHandler):
397         * Shared/AsyncRequest.h:
398         * Shared/BlockingResponseMap.h:
399         (BlockingResponseMap::didReceiveResponse):
400         * Shared/ChildProcessProxy.cpp:
401         (WebKit::ChildProcessProxy::sendMessage):
402         (WebKit::ChildProcessProxy::didFinishLaunching):
403         * Shared/ChildProcessProxy.h:
404         (WebKit::ChildProcessProxy::send):
405         (WebKit::ChildProcessProxy::sendSync):
406         * Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp:
407         (WebKit::CoordinatedGraphicsScene::dispatchOnMainThread):
408         (WebKit::CoordinatedGraphicsScene::dispatchOnClientRunLoop):
409         (WebKit::CoordinatedGraphicsScene::createLayer):
410         (WebKit::CoordinatedGraphicsScene::syncRemoteContent):
411         (WebKit::CoordinatedGraphicsScene::appendUpdate):
412         * Shared/CoordinatedGraphics/threadedcompositor/ThreadSafeCoordinatedSurface.cpp:
413         (WebKit::ThreadSafeCoordinatedSurface::create):
414         (WebKit::ThreadSafeCoordinatedSurface::ThreadSafeCoordinatedSurface):
415         * Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp:
416         (WebKit::CompositingRunLoop::CompositingRunLoop):
417         (WebKit::CompositingRunLoop::callOnCompositingRunLoop):
418         (WebKit::ThreadedCompositor::callOnCompositingThread):
419         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.h:
420         (WebKit::XPCServiceInitializerDelegate::XPCServiceInitializerDelegate):
421         (WebKit::XPCServiceInitializer):
422         * Shared/Plugins/Netscape/PluginInformation.cpp:
423         (WebKit::createPluginInformationDictionary):
424         * Shared/Scrolling/RemoteScrollingCoordinatorTransaction.h:
425         (WebKit::RemoteScrollingCoordinatorTransaction::setStateTreeToEncode):
426         * Shared/SessionTracker.cpp:
427         (WebKit::SessionTracker::setSession):
428         * Shared/UserData.cpp:
429         (WebKit::UserData::UserData):
430         (WebKit::transformGraph):
431         (WebKit::UserData::decode):
432         * Shared/WebBackForwardListItem.cpp:
433         (WebKit::WebBackForwardListItem::create):
434         (WebKit::WebBackForwardListItem::WebBackForwardListItem):
435         * Shared/WebBackForwardListItem.h:
436         (WebKit::WebBackForwardListItem::setPageState):
437         * Shared/WebCompiledContentExtension.cpp:
438         (WebKit::WebCompiledContentExtension::create):
439         (WebKit::WebCompiledContentExtension::WebCompiledContentExtension):
440         * Shared/WebCompiledContentExtensionData.h:
441         (WebKit::WebCompiledContentExtensionData::WebCompiledContentExtensionData):
442         * Shared/WebContextMenuItem.cpp:
443         (WebKit::WebContextMenuItem::submenuItemsAsAPIArray):
444         * Shared/WebCoreArgumentCoders.cpp:
445         (IPC::ArgumentCoder<UserStyleSheet>::decode):
446         (IPC::ArgumentCoder<UserScript>::decode):
447         (IPC::ArgumentCoder<FilterOperations>::decode):
448         (IPC::ArgumentCoder<BlobPart>::decode):
449         * Shared/WebKeyboardEvent.cpp:
450         (WebKit::WebKeyboardEvent::WebKeyboardEvent):
451         * Shared/WebPreferencesStore.h:
452         (WebKit::WebPreferencesStore::Value::Value):
453         * Shared/WebRenderLayer.cpp:
454         (WebKit::WebRenderLayer::createArrayFromLayerList):
455         * Shared/WebRenderObject.cpp:
456         (WebKit::WebRenderObject::WebRenderObject):
457         * Shared/WebTouchEvent.cpp:
458         (WebKit::WebTouchEvent::WebTouchEvent):
459         * Shared/efl/WebEventFactory.cpp:
460         (WebKit::WebEventFactory::createWebTouchEvent):
461         * Shared/gtk/NativeWebKeyboardEventGtk.cpp:
462         (WebKit::NativeWebKeyboardEvent::NativeWebKeyboardEvent):
463         * Shared/gtk/NativeWebTouchEventGtk.cpp:
464         (WebKit::NativeWebTouchEvent::NativeWebTouchEvent):
465         * Shared/gtk/WebContextMenuItemGtk.cpp:
466         (WebKit::WebContextMenuItemGtk::WebContextMenuItemGtk):
467         * Shared/gtk/WebEventFactory.cpp:
468         (WebKit::WebEventFactory::createWebKeyboardEvent):
469         (WebKit::WebEventFactory::createWebTouchEvent):
470         * Shared/linux/SeccompFilters/OpenSyscall.cpp:
471         (WebKit::OpenSyscall::createFromOpenatContext):
472         (WebKit::OpenSyscall::createFromCreatContext):
473         (WebKit::OpenSyscallResult::encode):
474         * Shared/mac/ObjCObjectGraph.mm:
475         (WebKit::ObjCObjectGraph::decode):
476         * Shared/mac/RemoteLayerBackingStore.mm:
477         (WebKit::RemoteLayerBackingStore::takeFrontContextPendingFlush):
478         (WebKit::RemoteLayerBackingStore::Buffer::discard):
479         * Shared/mac/RemoteLayerTreeTransaction.h:
480         (WebKit::RemoteLayerTreeTransaction::setCallbackIDs):
481         * Shared/mac/RemoteLayerTreeTransaction.mm:
482         (WebKit::RemoteLayerTreeTransaction::LayerProperties::decode):
483         (WebKit::RemoteLayerTreeTransaction::decode):
484         (WebKit::RemoteLayerTreeTransaction::setCreatedLayers):
485         (WebKit::RemoteLayerTreeTransaction::setDestroyedLayerIDs):
486         (WebKit::RemoteLayerTreeTransaction::setLayerIDsWithNewlyUnreachableBackingStore):
487         * Shared/soup/WebCoreArgumentCodersSoup.cpp:
488         (IPC::ArgumentCoder<ResourceRequest>::decodePlatformData):
489         * UIProcess/API/APIProcessPoolConfiguration.h:
490         * UIProcess/API/APISessionState.cpp:
491         (API::SessionState::create):
492         (API::SessionState::SessionState):
493         * UIProcess/API/APIUserContentExtension.cpp:
494         (API::UserContentExtension::UserContentExtension):
495         * UIProcess/API/APIUserContentExtension.h:
496         * UIProcess/API/APIUserContentExtensionStore.cpp:
497         (API::compiledToFile):
498         (API::createExtension):
499         (API::UserContentExtensionStore::compileContentExtension):
500         * UIProcess/API/APIUserScript.h:
501         * UIProcess/API/APIWebsiteDataRecord.cpp:
502         (API::WebsiteDataRecord::create):
503         (API::WebsiteDataRecord::WebsiteDataRecord):
504         * UIProcess/API/APIWebsiteDataStore.cpp:
505         (API::WebsiteDataStore::create):
506         (API::WebsiteDataStore::WebsiteDataStore):
507         * UIProcess/API/C/WKApplicationCacheManager.cpp:
508         (WKApplicationCacheManagerGetApplicationCacheOrigins):
509         * UIProcess/API/C/WKKeyValueStorageManager.cpp:
510         (WKKeyValueStorageManagerGetKeyValueStorageOrigins):
511         (WKKeyValueStorageManagerGetStorageDetailsByOrigin):
512         * UIProcess/API/C/WKPage.cpp:
513         (WKPageCopySessionState):
514         (WKPageRestoreFromSessionState):
515         (WKPageSetPageContextMenuClient):
516         (WKPageSetPageFindMatchesClient):
517         (WKPageSetPageLoaderClient):
518         (WebKit::RunJavaScriptAlertResultListener::create):
519         (WebKit::RunJavaScriptAlertResultListener::RunJavaScriptAlertResultListener):
520         (WebKit::RunJavaScriptConfirmResultListener::create):
521         (WebKit::RunJavaScriptConfirmResultListener::RunJavaScriptConfirmResultListener):
522         (WebKit::RunJavaScriptPromptResultListener::create):
523         (WebKit::RunJavaScriptPromptResultListener::RunJavaScriptPromptResultListener):
524         (WKPageSetPageUIClient):
525         (WKPageSetPageNavigationClient):
526         (WKPageCopyRelatedPages):
527         * UIProcess/API/C/WKResourceCacheManager.cpp:
528         (WKResourceCacheManagerGetCacheOrigins):
529         * UIProcess/API/C/WKSessionStateRef.cpp:
530         (WKSessionStateCreateFromData):
531         * UIProcess/API/C/mac/WKContextPrivateMac.mm:
532         (WKContextGetInfoForInstalledPlugIns):
533         * UIProcess/API/C/mac/WKPagePrivateMac.mm:
534         (-[WKObservablePageState initWithPage:]):
535         * UIProcess/API/Cocoa/WKBrowsingContextGroup.mm:
536         (createWKArray):
537         * UIProcess/API/Cocoa/WKWebView.mm:
538         (-[WKWebView initWithFrame:configuration:]):
539         (-[WKWebView _takeViewSnapshot]):
540         (-[WKWebView _restoreFromSessionStateData:]):
541         (-[WKWebView _setInputDelegate:]):
542         * UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
543         (LazyInitialized::set):
544         * UIProcess/API/Cocoa/WKWebsiteDataStore.mm:
545         (-[WKWebsiteDataStore fetchDataRecordsOfTypes:completionHandler:]):
546         * UIProcess/API/Cocoa/_WKProcessPoolConfiguration.mm:
547         (-[_WKProcessPoolConfiguration setCachePartitionedURLSchemes:]):
548         * UIProcess/API/Cocoa/_WKSessionState.mm:
549         (-[_WKSessionState _initWithSessionState:]):
550         * UIProcess/API/Cocoa/_WKUserContentExtensionStore.mm:
551         (-[_WKUserContentExtensionStore compileContentExtensionForIdentifier:encodedContentExtension:completionHandler:]):
552         * UIProcess/API/efl/ewk_database_manager.cpp:
553         (EwkDatabaseManager::getDatabaseOrigins):
554         * UIProcess/API/gtk/WebKitContextMenuItem.cpp:
555         (webkitContextMenuItemToWebContextMenuItemGtk):
556         * UIProcess/API/gtk/WebKitFileChooserRequest.cpp:
557         (webkit_file_chooser_request_select_files):
558         * UIProcess/API/gtk/WebKitNotificationProvider.cpp:
559         (WebKitNotificationProvider::notificationCloseCallback):
560         * UIProcess/API/gtk/WebKitWebContext.cpp:
561         (webkit_web_context_prefetch_dns):
562         (webkitWebContextCreatePageForWebView):
563         * UIProcess/API/gtk/WebKitWebView.cpp:
564         (webkit_web_view_get_snapshot):
565         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
566         (webkitWebViewBaseTouchEvent):
567         (webkitWebViewBaseCreateWebPage):
568         * UIProcess/API/gtk/WebKitWebsiteDataManager.cpp:
569         (webkitWebsiteDataManagerCreate):
570         (webkitWebsiteDataManagerGetDataStore):
571         * UIProcess/API/mac/WKView.mm:
572         (-[WKView initWithFrame:processPool:configuration:webView:]):
573         (-[WKView initWithFrame:contextRef:pageGroupRef:relatedToPage:]):
574         (-[WKView initWithFrame:configurationRef:]):
575         * UIProcess/Cocoa/NavigationState.mm:
576         (WebKit::tryAppLink):
577         (WebKit::NavigationState::NavigationClient::decidePolicyForNavigationAction):
578         (WebKit::NavigationState::NavigationClient::decidePolicyForNavigationResponse):
579         * UIProcess/Cocoa/WebViewImpl.mm:
580         (WebKit::WebViewImpl::WebViewImpl):
581         (WebKit::WebViewImpl::takeViewSnapshot):
582         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:
583         (WebKit::CoordinatedLayerTreeHostProxy::dispatchUpdate):
584         * UIProcess/Databases/DatabaseProcessProxy.cpp:
585         (WebKit::DatabaseProcessProxy::fetchWebsiteData):
586         (WebKit::DatabaseProcessProxy::deleteWebsiteData):
587         (WebKit::DatabaseProcessProxy::deleteWebsiteDataForOrigins):
588         * UIProcess/GenericCallback.h:
589         (WebKit::CallbackMap::put):
590         * UIProcess/InspectorServer/WebSocketServer.cpp:
591         (WebKit::WebSocketServer::didAcceptConnection):
592         * UIProcess/InspectorServer/soup/WebSocketServerSoup.cpp:
593         (WebKit::connectionCallback):
594         * UIProcess/Network/NetworkProcessProxy.cpp:
595         (WebKit::NetworkProcessProxy::fetchWebsiteData):
596         * UIProcess/Notifications/WebNotificationManagerProxy.cpp:
597         (WebKit::WebNotificationManagerProxy::providerDidCloseNotifications):
598         * UIProcess/Notifications/WebNotificationProvider.cpp:
599         (WebKit::WebNotificationProvider::clearNotifications):
600         * UIProcess/PageLoadState.cpp:
601         (WebKit::PageLoadState::Transaction::Transaction):
602         * UIProcess/Plugins/PlugInAutoStartProvider.cpp:
603         (WebKit::PlugInAutoStartProvider::autoStartOriginsTableCopy):
604         * UIProcess/Plugins/PluginProcessManager.cpp:
605         (WebKit::PluginProcessManager::pluginProcessToken):
606         (WebKit::PluginProcessManager::fetchWebsiteData):
607         (WebKit::PluginProcessManager::deleteWebsiteData):
608         (WebKit::PluginProcessManager::deleteWebsiteDataForHostNames):
609         * UIProcess/Plugins/PluginProcessProxy.cpp:
610         (WebKit::PluginProcessProxy::fetchWebsiteData):
611         (WebKit::PluginProcessProxy::deleteWebsiteData):
612         (WebKit::PluginProcessProxy::deleteWebsiteDataForHostNames):
613         * UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.cpp:
614         (WebKit::RemoteScrollingCoordinatorProxy::updateScrollingTree):
615         * UIProcess/StatisticsRequest.cpp:
616         (WebKit::StatisticsRequest::completedRequest):
617         * UIProcess/Storage/LocalStorageDatabase.cpp:
618         (WebKit::LocalStorageDatabase::create):
619         (WebKit::LocalStorageDatabase::LocalStorageDatabase):
620         * UIProcess/Storage/StorageManager.cpp:
621         (WebKit::StorageManager::TransientLocalStorageNamespace::getOrCreateStorageArea):
622         (WebKit::StorageManager::StorageArea::create):
623         (WebKit::StorageManager::StorageArea::StorageArea):
624         (WebKit::StorageManager::LocalStorageNamespace::getOrCreateStorageArea):
625         (WebKit::StorageManager::SessionStorageNamespace::getOrCreateStorageArea):
626         (WebKit::StorageManager::getSessionStorageOrigins):
627         (WebKit::StorageManager::getLocalStorageOrigins):
628         (WebKit::StorageManager::getLocalStorageOriginDetails):
629         (WebKit::StorageManager::createTransientLocalStorageMap):
630         (WebKit::StorageManager::createSessionStorageMap):
631         * UIProcess/UserContent/WebScriptMessageHandler.cpp:
632         (WebKit::WebScriptMessageHandler::create):
633         (WebKit::WebScriptMessageHandler::WebScriptMessageHandler):
634         * UIProcess/UserContent/WebUserContentControllerProxy.cpp:
635         (WebKit::WebUserContentControllerProxy::addUserStyleSheet):
636         * UIProcess/ViewGestureController.cpp:
637         (WebKit::ViewGestureController::SnapshotRemovalTracker::start):
638         (WebKit::ViewGestureController::SnapshotRemovalTracker::fireRemovalCallbackImmediately):
639         * UIProcess/WebBackForwardList.cpp:
640         (WebKit::WebBackForwardList::addItem):
641         (WebKit::WebBackForwardList::backListAsAPIArrayWithLimit):
642         (WebKit::WebBackForwardList::forwardListAsAPIArrayWithLimit):
643         (WebKit::WebBackForwardList::removeAllItems):
644         (WebKit::WebBackForwardList::clear):
645         (WebKit::WebBackForwardList::restoreFromState):
646         * UIProcess/WebCookieManagerProxy.cpp:
647         (WebKit::WebCookieManagerProxy::getHostnamesWithCookies):
648         (WebKit::WebCookieManagerProxy::getHTTPCookieAcceptPolicy):
649         * UIProcess/WebFormClient.cpp:
650         (WebKit::WebFormClient::willSubmitForm):
651         * UIProcess/WebFrameListenerProxy.h:
652         (WebKit::WebFrameListenerProxy::setNavigation):
653         * UIProcess/WebFrameProxy.h:
654         (WebKit::WebFrameProxy::contentFilterDidBlockLoad):
655         * UIProcess/WebGrammarDetail.cpp:
656         (WebKit::WebGrammarDetail::guesses):
657         * UIProcess/WebInspectorProxy.cpp:
658         (WebKit::WebInspectorProxy::createInspectorPage):
659         * UIProcess/WebMediaCacheManagerProxy.cpp:
660         (WebKit::WebMediaCacheManagerProxy::getHostnamesWithMediaCache):
661         * UIProcess/WebPageProxy.cpp:
662         (WebKit::ExceededDatabaseQuotaRecords::add):
663         (WebKit::WebPageProxy::create):
664         (WebKit::WebPageProxy::WebPageProxy):
665         (WebKit::WebPageProxy::setHistoryClient):
666         (WebKit::WebPageProxy::setNavigationClient):
667         (WebKit::WebPageProxy::setLoaderClient):
668         (WebKit::WebPageProxy::setPolicyClient):
669         (WebKit::WebPageProxy::setFormClient):
670         (WebKit::WebPageProxy::setUIClient):
671         (WebKit::WebPageProxy::setFindClient):
672         (WebKit::WebPageProxy::setFindMatchesClient):
673         (WebKit::WebPageProxy::setDiagnosticLoggingClient):
674         (WebKit::WebPageProxy::setContextMenuClient):
675         (WebKit::WebPageProxy::reattachToWebProcessForReload):
676         (WebKit::WebPageProxy::reattachToWebProcessWithItem):
677         (WebKit::WebPageProxy::loadRequest):
678         (WebKit::WebPageProxy::loadFile):
679         (WebKit::WebPageProxy::loadData):
680         (WebKit::WebPageProxy::loadHTMLString):
681         (WebKit::WebPageProxy::reload):
682         (WebKit::WebPageProxy::didChangeBackForwardList):
683         (WebKit::WebPageProxy::setInitialFocus):
684         (WebKit::WebPageProxy::validateCommand):
685         (WebKit::WebPageProxy::handleWheelEvent):
686         (WebKit::WebPageProxy::processNextQueuedWheelEvent):
687         (WebKit::WebPageProxy::restoreFromSessionState):
688         (WebKit::WebPageProxy::runJavaScriptInMainFrame):
689         (WebKit::WebPageProxy::getRenderTreeExternalRepresentation):
690         (WebKit::WebPageProxy::getSourceForFrame):
691         (WebKit::WebPageProxy::getContentsAsString):
692         (WebKit::WebPageProxy::getBytecodeProfile):
693         (WebKit::WebPageProxy::getContentsAsMHTMLData):
694         (WebKit::WebPageProxy::getSelectionOrContentsAsString):
695         (WebKit::WebPageProxy::getSelectionAsWebArchiveData):
696         (WebKit::WebPageProxy::getMainResourceDataOfFrame):
697         (WebKit::WebPageProxy::getResourceDataFromFrame):
698         (WebKit::WebPageProxy::getWebArchiveOfFrame):
699         (WebKit::WebPageProxy::decidePolicyForNavigationAction):
700         (WebKit::WebPageProxy::decidePolicyForNewWindowAction):
701         (WebKit::WebPageProxy::decidePolicyForResponse):
702         (WebKit::WebPageProxy::sendMessage):
703         (WebKit::WebPageProxy::exceededDatabaseQuota):
704         (WebKit::WebPageProxy::getMarkedRangeAsync):
705         (WebKit::WebPageProxy::getSelectedRangeAsync):
706         (WebKit::WebPageProxy::characterIndexForPointAsync):
707         (WebKit::WebPageProxy::firstRectForCharacterRangeAsync):
708         (WebKit::WebPageProxy::takeSnapshot):
709         * UIProcess/WebProcessPool.cpp:
710         (WebKit::WebProcessPool::setHistoryClient):
711         (WebKit::WebProcessPool::setDownloadClient):
712         (WebKit::WebProcessPool::createWebPage):
713         (WebKit::WebProcessPool::getStatistics):
714         (WebKit::WebProcessPool::pluginInfoStoreDidLoadPlugins):
715         * UIProcess/WebProcessProxy.cpp:
716         (WebKit::WebProcessProxy::createWebPage):
717         (WebKit::WebProcessProxy::addBackForwardItem):
718         (WebKit::WebProcessProxy::fetchWebsiteData):
719         * UIProcess/WebsiteData/WebsiteDataRecord.cpp:
720         (WebKit::WebsiteDataRecord::add):
721         * UIProcess/WebsiteData/WebsiteDataStore.cpp:
722         (WebKit::WebsiteDataStore::create):
723         (WebKit::WebsiteDataStore::WebsiteDataStore):
724         (WebKit::WebsiteDataStore::fetchData):
725         (WebKit::WebsiteDataStore::removeData):
726         (WebKit::WebsiteDataStore::mediaKeyOrigins):
727         * UIProcess/efl/InputMethodContextEfl.cpp:
728         (WebKit::InputMethodContextEfl::InputMethodContextEfl):
729         * UIProcess/efl/InputMethodContextEfl.h:
730         (WebKit::InputMethodContextEfl::create):
731         * UIProcess/efl/WebContextMenuProxyEfl.cpp:
732         (WebKit::WebContextMenuProxyEfl::showContextMenu):
733         * UIProcess/efl/WebUIPopupMenuClient.cpp:
734         (WebUIPopupMenuClient::showPopupMenu):
735         * UIProcess/gtk/InputMethodFilter.cpp:
736         (WebKit::InputMethodFilter::filterKeyEvent):
737         * UIProcess/gtk/KeyBindingTranslator.cpp:
738         (WebKit::KeyBindingTranslator::commandsForKeyEvent):
739         * UIProcess/gtk/RedirectedXCompositeWindow.cpp:
740         (WebKit::XDamageNotifier::add):
741         (WebKit::RedirectedXCompositeWindow::RedirectedXCompositeWindow):
742         (WebKit::RedirectedXCompositeWindow::surface):
743         * UIProcess/ios/WKActionSheetAssistant.mm:
744         (-[WKActionSheetAssistant showImageSheet]):
745         (-[WKActionSheetAssistant showLinkSheet]):
746         * UIProcess/ios/WKContentView.mm:
747         (-[WKContentView _commonInitializationWithProcessPool:configuration:]):
748         (-[WKContentView initWithFrame:processPool:configuration:webView:]):
749         * UIProcess/ios/WKContentViewInteraction.mm:
750         (-[WKContentView actionSheetAssistant:decideActionsForElement:defaultActions:]):
751         * UIProcess/ios/WKGeolocationProviderIOS.mm:
752         (-[WKGeolocationProviderIOS geolocationAuthorizationGranted]):
753         (-[WKGeolocationProviderIOS geolocationAuthorizationDenied]):
754         * UIProcess/ios/WKPDFView.mm:
755         (-[WKPDFView actionSheetAssistant:decideActionsForElement:defaultActions:]):
756         * UIProcess/ios/WebPageProxyIOS.mm:
757         (WebKit::WebPageProxy::selectWithGesture):
758         (WebKit::WebPageProxy::updateSelectionWithTouches):
759         (WebKit::WebPageProxy::requestAutocorrectionData):
760         (WebKit::WebPageProxy::applyAutocorrection):
761         (WebKit::WebPageProxy::executeEditCommand):
762         (WebKit::WebPageProxy::selectTextWithGranularityAtPoint):
763         (WebKit::WebPageProxy::selectPositionAtBoundaryWithDirection):
764         (WebKit::WebPageProxy::moveSelectionAtBoundaryWithDirection):
765         (WebKit::WebPageProxy::selectPositionAtPoint):
766         (WebKit::WebPageProxy::beginSelectionInDirection):
767         (WebKit::WebPageProxy::updateSelectionWithExtentPoint):
768         (WebKit::WebPageProxy::updateSelectionWithExtentPointAndBoundary):
769         (WebKit::WebPageProxy::requestDictationContext):
770         (WebKit::WebPageProxy::requestAutocorrectionContext):
771         (WebKit::WebPageProxy::getLookupContextAtPoint):
772         (WebKit::WebPageProxy::selectWithTwoTouches):
773         (WebKit::WebPageProxy::moveSelectionByOffset):
774         (WebKit::WebPageProxy::focusNextAssistedNode):
775         * UIProcess/ios/WebVideoFullscreenManagerProxy.h:
776         * UIProcess/ios/WebVideoFullscreenManagerProxy.mm:
777         (WebKit::WebVideoFullscreenManagerProxy::createModelAndInterface):
778         * UIProcess/ios/forms/WKFileUploadPanel.mm:
779         (-[WKFileUploadPanel _chooseFiles:displayString:iconImage:]):
780         * UIProcess/mac/LegacySessionStateCoding.cpp:
781         (WebKit::HistoryEntryDataEncoder::finishEncoding):
782         (WebKit::decodeFormData):
783         (WebKit::decodeBackForwardTreeNode):
784         (WebKit::decodeSessionHistoryEntries):
785         * UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:
786         (WebKit::RemoteLayerTreeDrawingAreaProxy::dispatchAfterEnsuringDrawing):
787         * UIProcess/mac/ViewGestureController.h:
788         (WebKit::ViewGestureController::setCustomSwipeViews):
789         * UIProcess/mac/ViewGestureControllerMac.mm:
790         (WebKit::ViewGestureController::PendingSwipeTracker::PendingSwipeTracker):
791         * UIProcess/mac/ViewSnapshotStore.mm:
792         (WebKit::ViewSnapshot::create):
793         (WebKit::ViewSnapshot::ViewSnapshot):
794         (WebKit::ViewSnapshot::setSurface):
795         * UIProcess/mac/WebPageProxyMac.mm:
796         (WebKit::WebPageProxy::attributedSubstringForCharacterRangeAsync):
797         (WebKit::WebPageProxy::fontAtSelection):
798         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
799         (contextMenuItems):
800         (WKBundlePageCopyOriginsWithApplicationCache):
801         * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp:
802         (WKBundlePageOverlayCreate):
803         * WebProcess/InjectedBundle/API/efl/ewk_extension.cpp:
804         (EwkExtension::didCreatePage):
805         * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
806         (webkitFrameGetOrCreate):
807         (didInitiateLoadForResource):
808         (willSendRequestForFrame):
809         (didReceiveResponseForResource):
810         (didReceiveContentLengthForResource):
811         (didFinishLoadForResource):
812         (didFailLoadForResource):
813         (webkitWebPageDidReceiveMessage):
814         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
815         (-[WKWebProcessPlugInBrowserContextController _setFormDelegate:]):
816         * WebProcess/InjectedBundle/InjectedBundle.cpp:
817         (WebKit::InjectedBundle::addUserScript):
818         (WebKit::InjectedBundle::addUserStyleSheet):
819         * WebProcess/InjectedBundle/InjectedBundleBackForwardListItem.cpp:
820         (WebKit::InjectedBundleBackForwardListItem::children):
821         * WebProcess/InjectedBundle/InjectedBundlePageContextMenuClient.cpp:
822         (WebKit::InjectedBundlePageContextMenuClient::getCustomMenuFromDefaultItems):
823         * WebProcess/InjectedBundle/InjectedBundlePageFormClient.cpp:
824         (WebKit::InjectedBundlePageFormClient::willSendSubmitEvent):
825         (WebKit::InjectedBundlePageFormClient::willSubmitForm):
826         (WebKit::InjectedBundlePageFormClient::didAssociateFormControls):
827         * WebProcess/InjectedBundle/InjectedBundlePageResourceLoadClient.cpp:
828         (WebKit::InjectedBundlePageResourceLoadClient::willSendRequestForFrame):
829         * WebProcess/Network/WebResourceLoader.cpp:
830         (WebKit::WebResourceLoader::willSendRequest):
831         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
832         (WebKit::NPN_PostURL):
833         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
834         (WebKit::NetscapePlugin::scheduleTimer):
835         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
836         (WebKit::convertStringToKeyCodes):
837         * WebProcess/Plugins/PDF/DeprecatedPDFPlugin.mm:
838         (WebKit::PDFPlugin::PDFPlugin):
839         * WebProcess/Plugins/PDF/PDFPlugin.mm:
840         (-[WKPDFHUDAnimationDelegate initWithAnimationCompletionHandler:]):
841         * WebProcess/Plugins/PDF/PDFPluginChoiceAnnotation.mm:
842         (WebKit::PDFPluginChoiceAnnotation::createAnnotationElement):
843         * WebProcess/Storage/StorageAreaMap.cpp:
844         (WebKit::StorageAreaMap::create):
845         (WebKit::StorageAreaMap::StorageAreaMap):
846         * WebProcess/Storage/StorageNamespaceImpl.cpp:
847         (WebKit::StorageNamespaceImpl::storageArea):
848         * WebProcess/UserContent/WebUserContentController.cpp:
849         (WebKit::WebUserContentController::addUserContentExtensions):
850         * WebProcess/WebCoreSupport/SessionStateConversion.cpp:
851         (WebKit::toHTTPBody):
852         (WebKit::toFrameState):
853         (WebKit::applyFrameState):
854         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
855         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse):
856         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
857         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
858         (WebKit::WebFrameLoaderClient::dispatchWillSubmitForm):
859         (WebKit::WebFrameLoaderClient::contentFilterDidBlockLoad):
860         * WebProcess/WebCoreSupport/WebPasteboardOverrides.cpp:
861         (WebKit::WebPasteboardOverrides::addOverride):
862         * WebProcess/WebCoreSupport/gtk/WebEditorClientGtk.cpp:
863         (WebKit::WebEditorClient::executePendingEditorCommands):
864         * WebProcess/WebPage/FindController.cpp:
865         (WebKit::FindController::findStringMatches):
866         * WebProcess/WebPage/ViewUpdateDispatcher.cpp:
867         (WebKit::ViewUpdateDispatcher::dispatchVisibleContentRectUpdate):
868         * WebProcess/WebPage/WebFrame.cpp:
869         (WebKit::WebFrame::createSubframe):
870         (WebKit::WebFrame::create):
871         (WebKit::WebFrame::WebFrame):
872         (WebKit::WebFrame::didReceivePolicyDecision):
873         (WebKit::WebFrame::childFrames):
874         (WebKit::WebFrame::createSelectionSnapshot):
875         * WebProcess/WebPage/WebPage.cpp:
876         (WebKit::WebPage::setInjectedBundleContextMenuClient):
877         (WebKit::WebPage::setInjectedBundleFormClient):
878         (WebKit::WebPage::setInjectedBundleUIClient):
879         (WebKit::WebPage::trackedRepaintRects):
880         (WebKit::WebPage::createDocumentLoader):
881         * WebProcess/WebPage/WebPageGroupProxy.cpp:
882         (WebKit::WebPageGroupProxy::addUserContentExtension):
883         * WebProcess/WebPage/WebPageOverlay.cpp:
884         (WebKit::WebPageOverlay::create):
885         (WebKit::WebPageOverlay::WebPageOverlay):
886         * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:
887         (WebKit::LayerTreeHostGtk::RenderFrameScheduler::RenderFrameScheduler):
888         * WebProcess/WebPage/ios/WebPageIOS.mm:
889         (WebKit::WebPage::computePagesForPrintingAndStartDrawingToPDF):
890         * WebProcess/WebPage/mac/PlatformCAAnimationRemote.mm:
891         (WebKit::PlatformCAAnimationRemote::setTimingFunction):
892         (WebKit::PlatformCAAnimationRemote::setValues):
893         (WebKit::PlatformCAAnimationRemote::setTimingFunctions):
894         * WebProcess/WebPage/mac/RemoteLayerTreeContext.mm:
895         (WebKit::RemoteLayerTreeContext::layerWasCreated):
896         (WebKit::RemoteLayerTreeContext::buildTransaction):
897         * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
898         (WebKit::RemoteLayerTreeDrawingArea::flushLayers):
899         (WebKit::RemoteLayerTreeDrawingArea::BackingStoreFlusher::create):
900         (WebKit::RemoteLayerTreeDrawingArea::BackingStoreFlusher::BackingStoreFlusher):
901         (WebKit::RemoteLayerTreeDrawingArea::BackingStoreFlusher::flush):
902         * WebProcess/WebProcess.cpp:
903         (WebKit::WebProcess::initializeWebProcess):
904         (WebKit::WebProcess::transformObjectsToHandles):
905         * WebProcess/cocoa/WebProcessCocoa.mm:
906         (WebKit::WebProcess::platformInitializeWebProcess):
907         * WebProcess/ios/WebVideoFullscreenManager.mm:
908         (WebKit::WebVideoFullscreenInterfaceContext::setLayerHostingContext):
909         (WebKit::WebVideoFullscreenManager::createModelAndInterface):
910         (WebKit::WebVideoFullscreenManager::setSeekableRanges):
911         * WebProcess/soup/WebKitSoupRequestInputStream.cpp:
912         (webkitSoupRequestInputStreamDidFailWithError):
913
914 2016-01-01  Simon Fraser  <simon.fraser@apple.com>
915
916         Fix the iOS and EFL builds, after an over-eager commit-queue commit.
917
918         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
919         (WebKit::WebFrameLoaderClient::restoreViewState):
920         * WebProcess/WebPage/efl/WebPageEfl.cpp:
921         (WebKit::WebPage::restorePageState):
922
923 2016-01-01  Simon Fraser  <simon.fraser@apple.com>
924
925         Fix naming in HistoryItem to refer to scrollPositions
926         https://bugs.webkit.org/show_bug.cgi?id=152646
927
928         Reviewed by Zalan Bujtas.
929         
930         HistoryItem stores a scrollPosition, so call it that.
931         
932         No behavior change.
933
934         * Shared/SessionState.cpp:
935         (WebKit::FrameState::encode):
936         (WebKit::FrameState::decode):
937         * Shared/SessionState.h:
938         * UIProcess/mac/LegacySessionStateCoding.cpp:
939         (WebKit::encodeFrameStateNode):
940         (WebKit::decodeBackForwardTreeNode):
941         * WebProcess/WebCoreSupport/SessionStateConversion.cpp:
942         (WebKit::toFrameState):
943         (WebKit::applyFrameState):
944
945 2016-01-01  Simon Fraser  <simon.fraser@apple.com>
946
947         Fix reload and programmatic scrolling in RTL documents
948         https://bugs.webkit.org/show_bug.cgi?id=152639
949
950         Reviewed by Zalan Bujtas.
951
952         Reloading a left-scrolled RTL document would cause the content to appear
953         at an odd offset, and programmatic sideways scrolls in RTL documents also
954         jumped to the wrong location.
955         
956         Fix by resolving offset/position confusion in ScrollableArea::scrollPositionChanged()
957         and the scrolling tree.
958         
959         ScrollableArea::scrollPositionChanged() was erroneously passing a scrollPosition
960         to setScrollOffset(). 
961         
962         ScrollingTreeFrameScrollingNode* were confused about offsets and positions. It
963         turns out that the layer position is just -scrollPosition, but minimumScrollPosition()
964         and maximumScrollPosition() need fixing to return positions, not offsets.
965         
966         ScrollingTreeFrameScrollingNode::viewToContentsOffset() was also doing incorrect
967         math with scrollOrigin, which was detected by a failing test.
968         
969         Add more logging to the Scrolling channel.
970
971         * WebProcess/Plugins/PDF/DeprecatedPDFPlugin.h:
972         * WebProcess/Plugins/PDF/DeprecatedPDFPlugin.mm:
973         (WebKit::PDFPlugin::setScrollOffset):
974
975 2016-01-01  Michael Catanzaro  <mcatanzaro@igalia.com>
976
977         [SOUP] REGRESSION(r192761): Broke resource URIs for applications that use g_resource_load in a web extension
978         https://bugs.webkit.org/show_bug.cgi?id=152634
979
980         Reviewed by Carlos Garcia Campos.
981
982         Load GResource URIs locally, not in the network process. Applications expect calling
983         g_resource_load in a web extension to make it possible to load resource URIs, but that
984         doesn't work now that the network process is in use. Loading them locally solves this.
985
986         * WebProcess/Network/WebLoaderStrategy.cpp:
987         (WebKit::WebLoaderStrategy::scheduleLoad):
988
989 2016-01-01  Jeff Miller  <jeffm@apple.com>
990
991         Update user-visible copyright strings to include 2016
992         https://bugs.webkit.org/show_bug.cgi?id=152531
993
994         Reviewed by Alexey Proskuryakov.
995
996         * DatabaseProcess/EntryPoint/mac/LegacyProcess/Info.plist:
997         * DatabaseProcess/EntryPoint/mac/XPCService/DatabaseService.Development/Info.plist:
998         * DatabaseProcess/EntryPoint/mac/XPCService/DatabaseService/Info.plist:
999         * Info.plist:
1000         * NetworkProcess/EntryPoint/mac/LegacyProcess/Info.plist:
1001         * NetworkProcess/EntryPoint/mac/XPCService/NetworkService.Development/Info-OSX.plist:
1002         * NetworkProcess/EntryPoint/mac/XPCService/NetworkService.Development/Info-iOS.plist:
1003         * NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info-OSX-10.9-10.10.plist:
1004         * NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info-OSX.plist:
1005         * NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info-iOS.plist:
1006         * PluginProcess/EntryPoint/mac/LegacyProcess/Info.plist:
1007         * PluginProcess/EntryPoint/mac/XPCService/PluginService.32-64-10.9-10.10.Info.plist:
1008         * PluginProcess/EntryPoint/mac/XPCService/PluginService.32-64.Info.plist:
1009         * PluginProcess/EntryPoint/mac/XPCService/PluginService.Development/Info.plist:
1010         * WebProcess/EntryPoint/mac/LegacyProcess/Info.plist:
1011         * WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/Info-OSX.plist:
1012         * WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/Info-iOS.plist:
1013         * WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-OSX-10.9-10.10.plist:
1014         * WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-OSX.plist:
1015         * WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-iOS.plist:
1016
1017 2015-12-31  Simon Fraser  <simon.fraser@apple.com>
1018
1019         Rename documentScrollOffsetRelativeTo* functions
1020         https://bugs.webkit.org/show_bug.cgi?id=152632
1021
1022         Reviewed by Zalan Bujtas.
1023
1024         ScrollView::documentScrollOffsetRelativeTo* functions return scroll positions,
1025         not offsets, so rename them and fix their return types, and fix callers. Make
1026         their code more similar.
1027
1028         * WebProcess/WebPage/WebPage.cpp:
1029         (WebKit::WebPage::determinePrimarySnapshottedPlugIn):
1030         (WebKit::WebPage::plugInIntersectsSearchRect):
1031
1032 2015-12-31  Simon Fraser  <simon.fraser@apple.com>
1033
1034         [iOS WK2] Fix incorrect scrollPosition handling
1035         https://bugs.webkit.org/show_bug.cgi?id=152630
1036
1037         Reviewed by Zalan Bujtas.
1038         
1039         WebPage::updateVisibleContentRects() was setting the ScrollView's scroll position
1040         to a scrollOffset, which was counteracted by ScrollView::unobscuredContentRect()
1041         adding the scrollOrigin to the scrollPosition, which resulted in the correct
1042         rects, but an incorrect scrollPosition. Fix.
1043
1044         * WebProcess/WebPage/ios/WebPageIOS.mm:
1045         (WebKit::WebPage::updateVisibleContentRects):
1046
1047 2015-12-31  Michael Catanzaro  <mcatanzaro@igalia.com>
1048
1049         Unreviewed, fix a log message
1050
1051         * WebProcess/Network/WebResourceLoader.cpp:
1052         (WebKit::WebResourceLoader::didReceiveResponse):
1053
1054 2015-12-31  David Kilzer  <ddkilzer@apple.com>
1055
1056         Stop using USE(CFNETWORK) path on iOS
1057         https://bugs.webkit.org/show_bug.cgi?id=142540
1058
1059         Step 1/2: Do everything but turn off USE(CFNETWORK) internally.
1060
1061         Original patch by Antti Koivisto <antti@apple.com> on 2015-03-10
1062         Reviewed by Daniel Bates.
1063
1064         * NetworkProcess/Downloads/ios/DownloadIOS.mm: This is now the
1065         USE(CFNETWORK) && !USE(NETWORK_SESSION) code path.
1066         * NetworkProcess/Downloads/mac/DownloadMac.mm: This is now the
1067         !USE(CFNETWORK) && !USE(NETWORK_SESSION) code path.  Make use of
1068         NSURLDownloadSPI.h.  Ignore a deprecated delcaration warning now
1069         that we're using actual header declarations internally.
1070         * NetworkProcess/NetworkProcess.cpp:
1071         (WebKit::NetworkProcess::initializeNetworkProcess): Update for
1072         iOS to use NSURLConnection loader.
1073
1074 2015-12-31  Andy Estes  <aestes@apple.com>
1075
1076         Fix warnings uncovered by migrating to WTF_MOVE
1077         https://bugs.webkit.org/show_bug.cgi?id=152601
1078
1079         Reviewed by Daniel Bates.
1080
1081         * UIProcess/API/APIUIClient.h:
1082         (API::UIClient::actionsForElement): Moving a return value passed to the function by value is redundant, since it
1083         will be implicitly moved in this case.
1084         * UIProcess/Cocoa/UIDelegate.mm:
1085         (WebKit::UIDelegate::UIClient::actionsForElement): Ditto.
1086
1087 2015-12-30  Simon Fraser  <simon.fraser@apple.com>
1088
1089         Add explicit conversions between scrollOffset and scrollPostion, and use them in a few places
1090         https://bugs.webkit.org/show_bug.cgi?id=152594
1091
1092         Reviewed by Sam Weinig.
1093
1094         Add functions to ScrollableArea to convert between scrollPosition and scrollOffset,
1095         and use them in places where code did the math with scrollOrigin.
1096
1097         * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
1098         (WebKit::RemoteLayerTreeDrawingArea::updateScrolledExposedRect):
1099         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
1100         (WebKit::TiledCoreAnimationDrawingArea::updateScrolledExposedRect):
1101
1102 2015-12-30  Zan Dobersek  <zdobersek@igalia.com>
1103
1104         [TexMap] Clean up TextureMapperAnimation, TextureMapperAnimations
1105         https://bugs.webkit.org/show_bug.cgi?id=152112
1106
1107         Reviewed by Darin Adler.
1108
1109         * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
1110         (IPC::ArgumentCoder<TextureMapperAnimation>::decode):
1111
1112 2015-12-29  Simon Fraser  <simon.fraser@apple.com>
1113
1114         Remove ScrollView::scrollOffset() in preparation for scrollOffset vs. scrollPosition clarification
1115         https://bugs.webkit.org/show_bug.cgi?id=152589
1116
1117         Reviewed by Sam Weinig.
1118
1119         Current code uses scrollOffset vs. scrollPosition interchangeably, and confusingly.
1120         Longer term, I plan to make "scrollPosition" be the value that is relative to the 
1121         contents, i.e. affected by scrollOrigin, and "scrollOffset" be the zero-based value
1122         that's used to set scrollbar values.
1123         
1124         To prepare for this, remove ScrollView::scrollOffset(), which is just the
1125         scrollPosition as an IntSize.
1126         
1127         Add some typedefs in ScrollableArea, which will slowly propagate through the
1128         code as position vs. offset is clarified.
1129
1130         * WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp:
1131         (WebKit::InjectedBundleRangeHandle::renderedImage):
1132         * WebProcess/Plugins/PDF/DeprecatedPDFPlugin.h:
1133         * WebProcess/Plugins/PDF/DeprecatedPDFPlugin.mm:
1134         (WebKit::PDFPlugin::scrollPosition):
1135         (WebKit::PDFPlugin::minimumScrollPosition):
1136         (WebKit::PDFPlugin::maximumScrollPosition):
1137         * WebProcess/WebPage/WebFrame.cpp:
1138         (WebKit::WebFrame::scrollOffset):
1139         * WebProcess/WebPage/WebPage.cpp:
1140         (WebKit::WebPage::scrollMainFrameIfNotAtMaxScrollPosition):
1141         (WebKit::WebPage::updateMainFrameScrollOffsetPinning):
1142
1143 2015-12-25  Andy Estes  <aestes@apple.com>
1144
1145         Stop moving local objects in return statements
1146         https://bugs.webkit.org/show_bug.cgi?id=152557
1147
1148         Reviewed by Brady Eidson.
1149
1150         Calling std::move() on a local object in a return statement prevents the compiler from applying the return value optimization.
1151
1152         Clang can warn about these mistakes with -Wpessimizing-move, although only when std::move() is called directly.
1153         I found these issues by temporarily replacing WTF::move with std::move and recompiling.
1154
1155         * UIProcess/WebPageProxy.cpp:
1156         (WebKit::ExceededDatabaseQuotaRecords::createRecord):
1157
1158 2015-12-26  Joonghun Park  <jh718.park@samsung.com>
1159
1160         [WK2][EFL] Use eina_file_path_join at platformDefaultIconDatabasePath in WebProcessPoolEfl
1161         https://bugs.webkit.org/show_bug.cgi?id=152565
1162
1163         Reviewed by Gyuyoung Kim.
1164
1165         Use eina_file_path_join and EINA_PATH_SEP_S at platformDefaultIconDatabasePath
1166         instead of operator+ and separator "/" respectively
1167         to concatenate paths.
1168
1169         * UIProcess/API/efl/APIWebsiteDataStoreEfl.cpp:
1170         * UIProcess/efl/WebProcessPoolEfl.cpp:
1171         (WebKit::WebProcessPool::platformDefaultIconDatabasePath):
1172
1173 2015-12-25  David Kilzer  <ddkilzer@apple.com>
1174
1175         ResourceError should store failingURL as URL instead of String to avoid reparsing and to address FIXME comments in ResourceErrorCF.cpp and ResourceErrorMac.mm
1176         <http://webkit.org/b/146391>
1177
1178         Reviewed by Antti Koivisto.
1179
1180         * NetworkProcess/Downloads/efl/DownloadSoupErrorsEfl.cpp:
1181         (WebKit::platformDownloadNetworkError):
1182         * NetworkProcess/Downloads/gtk/DownloadSoupErrorsGtk.cpp:
1183         (WebKit::platformDownloadNetworkError):
1184         * NetworkProcess/Downloads/soup/DownloadSoup.cpp:
1185         (WebKit::DownloadClient::didReceiveResponse):
1186         * NetworkProcess/Downloads/soup/DownloadSoupErrors.h:
1187         * Shared/soup/WebCoreArgumentCodersSoup.cpp:
1188         (IPC::ArgumentCoder<ResourceError>::encodePlatformData):
1189         (IPC::ArgumentCoder<ResourceError>::decodePlatformData):
1190         * UIProcess/API/gtk/WebKitLoaderClient.cpp:
1191         (LoaderClient::didFailProvisionalLoadWithErrorForFrame):
1192         (LoaderClient::didFailLoadWithErrorForFrame):
1193         * UIProcess/API/gtk/WebKitURISchemeRequest.cpp:
1194         (webkit_uri_scheme_request_finish_error):
1195         * WebProcess/WebCoreSupport/efl/WebErrorsEfl.cpp:
1196         (WebKit::internalError):
1197         * WebProcess/WebCoreSupport/gtk/WebErrorsGtk.cpp:
1198         (WebKit::internalError):
1199         - Update for type change of 'failingURL' argument to
1200           ResourceError().
1201
1202 2015-12-23  Simon Fraser  <simon.fraser@apple.com>
1203
1204         Use "constrainedBetween" in more places
1205         https://bugs.webkit.org/show_bug.cgi?id=152543
1206
1207         Reviewed by Zalan Bujtas.
1208
1209         Replace code that contrains points via shrunkTo/expandedTo() with calls
1210         to constrainedBetween(), and implement constrainedBetween() on IntPoint,
1211         FloatPoint and LayoutPoint.
1212
1213         Convert some functions that return points to more modern syntax.
1214
1215         * UIProcess/API/Cocoa/WKWebView.mm:
1216         (constrainContentOffset):
1217
1218 2015-12-22  Hunseop Jeong  <hs85.jeong@samsung.com>
1219
1220         [EFL] ewk_application_cache_manager test failed after r193812
1221         https://bugs.webkit.org/show_bug.cgi?id=152498
1222
1223         Reviewed by Gyuyoung Kim.
1224
1225         Need to enable the offline_web_application_cache for the ewk_application_cache_manager test.
1226
1227         * UIProcess/API/efl/tests/test_ewk2_application_cache_manager.cpp:
1228         (TEST_F):
1229
1230 2015-12-22  Andy Estes  <aestes@apple.com>
1231
1232         [CF] Replace CFNetwork-related WebKitSystemInterface calls with SPI
1233         https://bugs.webkit.org/show_bug.cgi?id=152463
1234
1235         Reviewed by Alexey Proskuryakov.
1236
1237         Replaced WebkitSystemInterface calls that wrapped CFNetwork SPI with direct calls to SPI that is now forward
1238         declared in CFNetworkSPI.h.
1239
1240         * NetworkProcess/cocoa/NetworkProcessCocoa.mm:
1241         (WebKit::initializeNetworkSettings):
1242         * NetworkProcess/mac/NetworkProcessMac.mm:
1243         (WebKit::overrideSystemProxies):
1244         * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
1245         (WebKit::WebFrameNetworkingContext::setCookieAcceptPolicyForAllContexts):
1246         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
1247         (InitWebCoreSystemInterface):
1248
1249 2015-12-22  Brent Fulgham  <bfulgham@apple.com>
1250
1251         Allow JavaScript to iterate over plugins for local SecurityOrigins
1252         https://bugs.webkit.org/show_bug.cgi?id=152489
1253
1254         Reviewed by Alexey Proskuryakov.
1255
1256         The 'getWebVisiblePluginInfo' is filtering plugins, even when we want to list
1257         all plugins. To avoid this, we check the Document's SecurityOrigin. If no such
1258         origin exists, we construct a SecurityOrigin from the URL.
1259         
1260         If the relevant SecurityOrigin satsifies 'isLocal', we show all plugins.
1261
1262         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
1263         (WebKit::WebPlatformStrategies::getWebVisiblePluginInfo):
1264
1265 2015-12-21  Hunseop Jeong  <hs85.jeong@samsung.com>
1266
1267         [EFL] test_ewk2_context failed after r192808
1268         https://bugs.webkit.org/show_bug.cgi?id=151846
1269
1270         Reviewed by Gyuyoung Kim.
1271
1272         As we can make the single WebProcess behavior by setting the miximum number
1273         of WebProcess to 1 after r192808, I remove the ewk_context_process_model_{set|get}
1274         apis and add the ewk_context_web_process_count_limit_{set|get} apis and tests.
1275
1276         * UIProcess/API/efl/ewk_context.cpp:
1277         (EwkContext::EwkContext):
1278         (EwkContext::setProcessCountLimit):
1279         (EwkContext::processCountLimit):
1280         (ewk_context_web_process_count_limit_set):
1281         (ewk_context_web_process_count_limit_get):
1282         (EwkContext::setProcessModel): Deleted.
1283         (EwkContext::processModel): Deleted.
1284         (ewk_context_process_model_set): Deleted.
1285         (ewk_context_process_model_get): Deleted.
1286         * UIProcess/API/efl/ewk_context.h:
1287         * UIProcess/API/efl/ewk_context_private.h:
1288         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp:
1289         (EWK2UnitTest::EWK2UnitTestBase::SetUp):
1290         * UIProcess/API/efl/tests/test_ewk2_context.cpp:
1291         (TEST_F): Changed the ewk_context_{web|network}_process_model tests to
1292         ewk_context_{web|network}_process_count_limit tests.
1293
1294 2015-12-21  Joonghun Park  <jh718.park@samsung.com>
1295
1296         [WK2][EFL] Use cacheDirectoryFileSystemRepresentation and websiteDataDirectoryFileSystemRepresentation
1297         to refactor APIWebsiteDataStoreEfl
1298         https://bugs.webkit.org/show_bug.cgi?id=152475
1299
1300         Reviewed by Gyuyoung Kim.
1301
1302         Use cacheDirectoryFileSystemRepresentation and websiteDataDirectoryFileSystemRepresentation
1303         instead of to use efreet_cache_home_get
1304         and efreet_data_home_get directly.
1305         And also use EINA_PATH_SEP_S instead of "/" as directory separator,
1306         and WebCore::pathByAppendingComponent instead of operator+.
1307
1308         * UIProcess/API/efl/APIWebsiteDataStoreEfl.cpp:
1309         (API::WebsiteDataStore::defaultApplicationCacheDirectory):
1310         (API::WebsiteDataStore::defaultNetworkCacheDirectory):
1311         (API::WebsiteDataStore::defaultIndexedDBDatabaseDirectory):
1312         (API::WebsiteDataStore::defaultLocalStorageDirectory):
1313         (API::WebsiteDataStore::defaultMediaKeysStorageDirectory):
1314         (API::WebsiteDataStore::defaultWebSQLDatabaseDirectory):
1315         (API::WebsiteDataStore::cacheDirectoryFileSystemRepresentation):
1316         (API::WebsiteDataStore::websiteDataDirectoryFileSystemRepresentation):
1317
1318 2015-12-21  Antti Koivisto  <antti@apple.com>
1319
1320         Factor NetworkResourceLoader code for storing a cache entry into a function
1321         https://bugs.webkit.org/show_bug.cgi?id=152467
1322
1323         Reviewed by Andreas Kling.
1324
1325         * NetworkProcess/NetworkResourceLoader.cpp:
1326         (WebKit::NetworkResourceLoader::didFinishLoading):
1327
1328             Having m_cacheEntryForValidation already implies canUseCache() so remove the test from this path.
1329             Move storing to the end of the function so we don't delay DidFinishResourceLoad message on it.
1330
1331         (WebKit::NetworkResourceLoader::sendBufferMaybeAborting):
1332         (WebKit::NetworkResourceLoader::tryStoreAsCacheEntry):
1333
1334             Factor to a function.
1335             Remove m_response.isHTTP() test as it is covered by NetworkCache::store().
1336             Remove !isPrivateSession test as it is covered by NetworkResourceLoader::canUseCache().
1337
1338         (WebKit::NetworkResourceLoader::didRetrieveCacheEntry):
1339         * NetworkProcess/NetworkResourceLoader.h:
1340
1341 2015-12-21  Antti Koivisto  <antti@apple.com>
1342
1343         Limit cached redirect chain length
1344         https://bugs.webkit.org/show_bug.cgi?id=152477
1345
1346         Reviewed by Andreas Kling.
1347
1348         Networking layer prevents cycles and limits the redirect chain length so creating cache cycles is difficult.
1349         For robustness the network cache should still limit the maximum redirect chain length.
1350
1351         This patch adds a limit of five redirects both when storing and retrieving cache entries.
1352
1353         * NetworkProcess/NetworkResourceLoader.cpp:
1354         (WebKit::NetworkResourceLoader::canUseCache):
1355         (WebKit::NetworkResourceLoader::canUseCachedRedirect):
1356         (WebKit::NetworkResourceLoader::willSendRedirectedRequest):
1357         (WebKit::NetworkResourceLoader::continueWillSendRequest):
1358         (WebKit::NetworkResourceLoader::dispatchWillSendRequestForCacheEntry):
1359         * NetworkProcess/NetworkResourceLoader.h:
1360
1361 2015-12-21  Dan Bernstein  <mitz@apple.com>
1362
1363         Different and incorrect flags are passed to sendSync when accessibility is enabled, SpinRunLoopWhileWaitingForReply
1364         https://bugs.webkit.org/show_bug.cgi?id=126021
1365
1366         Reviewed by Darin Adler.
1367
1368         Get rid of SpinRunLoopWhileWaitingForReply because it’s not used anymore.
1369
1370         * Platform/IPC/Connection.cpp:
1371         (IPC::Connection::waitForSyncReply): Removed the SpinRunLoopWhileWaitingForReply branch.
1372
1373         * Platform/IPC/Connection.h: Removed SpinRunLoopWhileWaitingForReply.
1374
1375         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
1376         (WebKit::WebChromeClient::runBeforeUnloadConfirmPanel): Don’t check
1377           WebPage::synchronousMessagesShouldSpinRunLoop() and don’t specify
1378           SpinRunLoopWhileWaitingForReply.
1379         (WebKit::WebChromeClient::runJavaScriptAlert): Ditto.
1380         (WebKit::WebChromeClient::runJavaScriptConfirm): Ditto.
1381         (WebKit::WebChromeClient::runJavaScriptPrompt): Ditto.
1382         (WebKit::WebChromeClient::print): Ditto.
1383         (WebKit::WebChromeClient::exceededDatabaseQuota): Ditto.
1384         (WebKit::WebChromeClient::reachedApplicationCacheOriginQuota): Ditto.
1385
1386         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1387         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse): Ditto.
1388
1389         * WebProcess/WebPage/WebPage.cpp:
1390         (WebKit::WebPage::synchronousMessagesShouldSpinRunLoop): Deleted.
1391         * WebProcess/WebPage/WebPage.h:
1392
1393 2015-12-20  Joonghun Park  <jh718.park@samsung.com>
1394
1395         [WK2][EFL] Use WebsiteDataStore instead of WebDatabaseManager which has been deleted in r194295
1396         https://bugs.webkit.org/show_bug.cgi?id=152460
1397
1398         Reviewed by Gyuyoung Kim.
1399
1400         Use WebsiteDataStore to support EFL WebDatabase API and to fix build break.
1401
1402         * PlatformEfl.cmake:
1403         * UIProcess/API/APIWebsiteDataStore.cpp:
1404         * UIProcess/API/efl/APIWebsiteDataStoreEfl.cpp: Copied from Source/WebKit2/UIProcess/API/APIWebsiteDataStore.cpp.
1405         (API::WebsiteDataStore::defaultApplicationCacheDirectory):
1406         (API::WebsiteDataStore::defaultNetworkCacheDirectory):
1407         (API::WebsiteDataStore::defaultIndexedDBDatabaseDirectory):
1408         (API::WebsiteDataStore::defaultLocalStorageDirectory):
1409         (API::WebsiteDataStore::defaultMediaKeysStorageDirectory):
1410         (API::WebsiteDataStore::defaultWebSQLDatabaseDirectory):
1411         (API::WebsiteDataStore::cacheDirectoryFileSystemRepresentation):
1412         (API::WebsiteDataStore::websiteDataDirectoryFileSystemRepresentation):
1413         (API::WebsiteDataStore::defaultDataStoreConfiguration):
1414         * UIProcess/API/efl/ewk_context.cpp:
1415         (EwkContext::EwkContext):
1416         * UIProcess/API/efl/ewk_database_manager.cpp:
1417         (EwkDatabaseManager::EwkDatabaseManager):
1418         (EwkDatabaseManager::getDatabaseOrigins):
1419         * UIProcess/API/efl/ewk_database_manager_private.h:
1420         * UIProcess/efl/WebProcessPoolEfl.cpp:
1421         (WebKit::WebProcessPool::legacyPlatformDefaultApplicationCacheDirectory):
1422         (WebKit::WebProcessPool::legacyPlatformDefaultWebSQLDatabaseDirectory):
1423         (WebKit::WebProcessPool::legacyPlatformDefaultIndexedDBDatabaseDirectory):
1424         (WebKit::WebProcessPool::legacyPlatformDefaultLocalStorageDirectory):
1425         (WebKit::WebProcessPool::legacyPlatformDefaultMediaKeysStorageDirectory):
1426         (WebKit::WebProcessPool::legacyPlatformDefaultNetworkCacheDirectory):
1427
1428 2015-12-20  Dan Bernstein  <mitz@apple.com>
1429
1430         Remove unused setToolbarHeight
1431         https://bugs.webkit.org/show_bug.cgi?id=152466
1432
1433         Reviewed by Darin Adler.
1434
1435         * UIProcess/WebInspectorProxy.cpp:
1436         (WebKit::WebInspectorProxy::platformSetToolbarHeight): Deleted.
1437         * UIProcess/WebInspectorProxy.h:
1438         (WebKit::WebInspectorProxy::setToolbarHeight): Deleted.
1439         * UIProcess/WebInspectorProxy.messages.in:
1440         * UIProcess/efl/WebInspectorProxyEfl.cpp:
1441         (WebKit::WebInspectorProxy::platformSetToolbarHeight): Deleted.
1442         * UIProcess/gtk/WebInspectorProxyGtk.cpp:
1443         (WebKit::WebInspectorProxy::platformSetToolbarHeight): Deleted.
1444         * UIProcess/mac/WebInspectorProxyMac.mm:
1445         (WebKit::WebInspectorProxy::platformSetToolbarHeight): Deleted.
1446         * WebProcess/WebPage/WebInspectorUI.cpp:
1447         (WebKit::WebInspectorUI::setToolbarHeight): Deleted.
1448         * WebProcess/WebPage/WebInspectorUI.h:
1449
1450 2015-12-19  Dan Bernstein  <mitz@apple.com>
1451
1452         [Mac] WebKit contains dead source code for OS X Mavericks and earlier
1453         https://bugs.webkit.org/show_bug.cgi?id=152462
1454
1455         Reviewed by Alexey Proskuryakov.
1456
1457         - Removed build setting definitions for OS X 10.9 and earlier, and simplified defintions
1458           that became uniform across all OS X versions as a result:
1459
1460         * Configurations/BaseTarget.xcconfig:
1461         * Configurations/BaseXPCService.xcconfig:
1462         * Configurations/DebugRelease.xcconfig:
1463         * Configurations/FeatureDefines.xcconfig:
1464         * Configurations/Version.xcconfig:
1465         * Configurations/WebKit.xcconfig:
1466
1467         - Removed the definition of BUNDLE_LOCALIZATION_KEY:
1468
1469         * Configurations/WebContentService.Development.xcconfig:
1470         * Configurations/WebContentService.xcconfig:
1471
1472         - Added CFBundleFollowParentLocalization set to true:
1473
1474         * WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/Info-OSX.plist:
1475         * WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/Info-iOS.plist:
1476         * WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-OSX-10.9-10.10.plist:
1477         * WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-OSX.plist:
1478         * WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-iOS.plist:
1479
1480         * WebKit2.xcodeproj/project.pbxproj: Removed the “Add CFBundle Localization Info.plist Key”
1481           script build phases from the Web Content Service targets.
1482
1483         - Simplified expressions involving __MAC_OS_X_VERSION_MIN_REQUIRED and removed code that was
1484           never getting compiled:
1485
1486         * DatabaseProcess/mac/com.apple.WebKit.Databases.sb.in:
1487         * NetworkProcess/cocoa/NetworkProcessCocoa.mm:
1488         * NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in:
1489         * Platform/IPC/mac/ConnectionMac.mm:
1490         * Platform/IPC/mac/ImportanceAssertion.h:
1491         * Platform/mac/MenuUtilities.h:
1492         * Platform/mac/MenuUtilities.mm:
1493         * Platform/mac/StringUtilities.h:
1494         * Platform/mac/StringUtilities.mm:
1495         * Shared/API/Cocoa/WKFoundation.h:
1496         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.Development.mm:
1497         * UIProcess/API/Cocoa/WKViewPrivate.h:
1498         * UIProcess/API/Cocoa/WKWebView.mm:
1499         * UIProcess/API/Cocoa/WKWebViewPrivate.h:
1500         * UIProcess/API/mac/WKView.mm:
1501         * UIProcess/Cocoa/WebProcessPoolCocoa.mm:
1502         * UIProcess/Cocoa/WebViewImpl.h:
1503         * UIProcess/Cocoa/WebViewImpl.mm:
1504         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
1505         * UIProcess/mac/PageClientImpl.mm:
1506         * UIProcess/mac/WKImmediateActionController.h:
1507         * UIProcess/mac/WKImmediateActionController.mm:
1508         * UIProcess/mac/WebInspectorProxyMac.mm:
1509         * WebProcess/WebPage/FindController.cpp:
1510         * WebProcess/WebPage/WebPage.cpp:
1511         * WebProcess/com.apple.WebProcess.sb.in:
1512         * config.h:
1513
1514 2015-12-18  Antti Koivisto  <antti@apple.com>
1515
1516         Cache redirects as separate entries
1517         https://bugs.webkit.org/show_bug.cgi?id=152424
1518
1519         Reviewed by Alex Christensen.
1520
1521         We are currently caching redirect chains. This has correctness issues and can be inefficient in cases
1522         where multiple URLs redirect to the same destination.
1523
1524         After this patch we write a cache entry for each redirect individually.
1525
1526         * NetworkProcess/NetworkLoad.cpp:
1527         (WebKit::NetworkLoad::sharedWillSendRedirectedRequest):
1528         * NetworkProcess/NetworkLoad.h:
1529         (WebKit::NetworkLoad::currentRequest):
1530         (WebKit::NetworkLoad::clearCurrentRequest):
1531         * NetworkProcess/NetworkLoadClient.h:
1532
1533             Add original request as a parameter for willSendRedirectedRequest.
1534
1535         * NetworkProcess/NetworkResourceLoader.cpp:
1536         (WebKit::NetworkResourceLoader::~NetworkResourceLoader):
1537         (WebKit::NetworkResourceLoader::canUseCache):
1538
1539             Factor to a function.
1540
1541         (WebKit::NetworkResourceLoader::isSynchronous):
1542         (WebKit::NetworkResourceLoader::start):
1543         (WebKit::NetworkResourceLoader::retrieveCacheEntry):
1544
1545             Factor to a function.
1546             Call dispatchWillSendRequestForCacheEntry for cached redirects.
1547
1548         (WebKit::NetworkResourceLoader::startNetworkLoad):
1549
1550             Make this take request as argument instead of always loading originalRequest().
1551
1552         (WebKit::NetworkResourceLoader::abort):
1553         (WebKit::NetworkResourceLoader::didFinishLoading):
1554
1555             Remove redirect chain code.
1556             Store cache entry for current request instead of the original request.
1557
1558         (WebKit::NetworkResourceLoader::didFailLoading):
1559         (WebKit::NetworkResourceLoader::willSendRedirectedRequest):
1560
1561             Write cache entry for redirect.
1562
1563         (WebKit::NetworkResourceLoader::continueWillSendRequest):
1564
1565             If we are playing back cached redirect continue with another cache lookup.
1566
1567         (WebKit::NetworkResourceLoader::didRetrieveCacheEntry):
1568
1569             No need to synthesize fake willSendRequest anymore.
1570
1571         (WebKit::NetworkResourceLoader::validateCacheEntry):
1572         (WebKit::NetworkResourceLoader::dispatchWillSendRequestForCacheEntry):
1573
1574             Route via web process willSendRequest so cached redirects looks exactly like network ones.
1575
1576         (WebKit::NetworkResourceLoader::messageSenderConnection):
1577         * NetworkProcess/NetworkResourceLoader.h:
1578         * NetworkProcess/cache/NetworkCache.cpp:
1579         (WebKit::NetworkCache::makeUseDecision):
1580
1581             Ignore validation headers for cached redirects.
1582
1583         (WebKit::NetworkCache::makeRetrieveDecision):
1584         (WebKit::NetworkCache::makeStoreDecision):
1585         (WebKit::NetworkCache::Cache::retrieve):
1586         (WebKit::NetworkCache::Cache::store):
1587
1588             Rename originalRequest -> request since it is not really the original request anymore in all cases.
1589
1590         (WebKit::NetworkCache::Cache::storeRedirect):
1591
1592             Stored redirects include the network layer generated ResourceRequest instead of body data.
1593
1594         (WebKit::NetworkCache::Cache::update):
1595         * NetworkProcess/cache/NetworkCache.h:
1596         * NetworkProcess/cache/NetworkCacheEntry.cpp:
1597         (WebKit::NetworkCache::Entry::Entry):
1598
1599             New constructor for making redirect entries.
1600
1601         (WebKit::NetworkCache::Entry::encodeAsStorageRecord):
1602         (WebKit::NetworkCache::Entry::decodeStorageRecord):
1603
1604             Encoding support.
1605
1606         * NetworkProcess/cache/NetworkCacheEntry.h:
1607         (WebKit::NetworkCache::Entry::varyingRequestHeaders):
1608         (WebKit::NetworkCache::Entry::redirectRequest):
1609         * NetworkProcess/cache/NetworkCacheSpeculativeLoad.cpp:
1610         (WebKit::NetworkCache::SpeculativeLoad::~SpeculativeLoad):
1611         (WebKit::NetworkCache::SpeculativeLoad::willSendRedirectedRequest):
1612         * NetworkProcess/cache/NetworkCacheSpeculativeLoad.h:
1613         * NetworkProcess/cache/NetworkCacheStatistics.cpp:
1614         (WebKit::NetworkCache::cachedEntryReuseFailureToDiagnosticKey):
1615
1616 2015-12-18  Michael Catanzaro  <mcatanzaro@igalia.com>
1617
1618         Avoid triggering clang's -Wundefined-bool-conversion
1619         https://bugs.webkit.org/show_bug.cgi?id=152408
1620
1621         Reviewed by Mark Lam.
1622
1623         Use ASSERT_THIS_GC_OBJECT_INHERITS where needed.
1624
1625         * WebProcess/Plugins/Netscape/JSNPObject.cpp:
1626         (WebKit::JSNPObject::callMethod):
1627         (WebKit::JSNPObject::callObject):
1628         (WebKit::JSNPObject::callConstructor):
1629         (WebKit::JSNPObject::deleteProperty):
1630
1631 2015-12-15  Anders Carlsson  <andersca@apple.com>
1632
1633         Get rid of WebDatabaseManager, it's been replaced by WebsiteDataStore
1634         https://bugs.webkit.org/show_bug.cgi?id=152318
1635
1636         Reviewed by Tim Horton.
1637
1638         Build fixes by Ossy.
1639
1640         * DerivedSources.make:
1641         * Shared/API/APIObject.h:
1642         * Shared/API/c/WKBase.h:
1643         * UIProcess/API/C/WKAPICast.h:
1644         * UIProcess/API/C/WKContext.cpp:
1645         (WKContextGetDatabaseManager): Deleted.
1646         * UIProcess/API/C/WKContext.h:
1647         * UIProcess/API/C/WKDatabaseManager.cpp: Removed.
1648         (WKDatabaseManagerGetTypeID): Deleted.
1649         (WKDatabaseManagerGetOriginKey): Deleted.
1650         (WKDatabaseManagerGetOriginQuotaKey): Deleted.
1651         (WKDatabaseManagerGetOriginUsageKey): Deleted.
1652         (WKDatabaseManagerGetDatabaseDetailsKey): Deleted.
1653         (WKDatabaseManagerGetDatabaseDetailsNameKey): Deleted.
1654         (WKDatabaseManagerGetDatabaseDetailsDisplayNameKey): Deleted.
1655         (WKDatabaseManagerGetDatabaseDetailsExpectedUsageKey): Deleted.
1656         (WKDatabaseManagerGetDatabaseDetailsCurrentUsageKey): Deleted.
1657         (WKDatabaseManagerGetDatabaseDetailsCreationTimeKey): Deleted.
1658         (WKDatabaseManagerGetDatabaseDetailsModificationTimeKey): Deleted.
1659         (WKDatabaseManagerSetClient): Deleted.
1660         (WKDatabaseManagerGetDatabasesByOrigin): Deleted.
1661         (WKDatabaseManagerGetDatabaseOrigins): Deleted.
1662         (WKDatabaseManagerDeleteDatabasesWithNameForOrigin): Deleted.
1663         (WKDatabaseManagerDeleteDatabasesForOrigin): Deleted.
1664         (WKDatabaseManagerDeleteAllDatabases): Deleted.
1665         (WKDatabaseManagerSetQuotaForOrigin): Deleted.
1666         * UIProcess/API/C/WKDatabaseManager.h: Removed.
1667         * UIProcess/WebDatabaseManagerProxy.cpp: Removed.
1668         (WebKit::WebDatabaseManagerProxy::supplementName): Deleted.
1669         (WebKit::WebDatabaseManagerProxy::originKey): Deleted.
1670         (WebKit::WebDatabaseManagerProxy::originQuotaKey): Deleted.
1671         (WebKit::WebDatabaseManagerProxy::originUsageKey): Deleted.
1672         (WebKit::WebDatabaseManagerProxy::databaseDetailsKey): Deleted.
1673         (WebKit::WebDatabaseManagerProxy::databaseDetailsNameKey): Deleted.
1674         (WebKit::WebDatabaseManagerProxy::databaseDetailsDisplayNameKey): Deleted.
1675         (WebKit::WebDatabaseManagerProxy::databaseDetailsExpectedUsageKey): Deleted.
1676         (WebKit::WebDatabaseManagerProxy::databaseDetailsCurrentUsageKey): Deleted.
1677         (WebKit::WebDatabaseManagerProxy::databaseDetailsCreationTimeKey): Deleted.
1678         (WebKit::WebDatabaseManagerProxy::databaseDetailsModificationTimeKey): Deleted.
1679         (WebKit::WebDatabaseManagerProxy::create): Deleted.
1680         (WebKit::WebDatabaseManagerProxy::WebDatabaseManagerProxy): Deleted.
1681         (WebKit::WebDatabaseManagerProxy::~WebDatabaseManagerProxy): Deleted.
1682         (WebKit::WebDatabaseManagerProxy::initializeClient): Deleted.
1683         (WebKit::WebDatabaseManagerProxy::processPoolDestroyed): Deleted.
1684         (WebKit::WebDatabaseManagerProxy::processDidClose): Deleted.
1685         (WebKit::WebDatabaseManagerProxy::shouldTerminate): Deleted.
1686         (WebKit::WebDatabaseManagerProxy::refWebContextSupplement): Deleted.
1687         (WebKit::WebDatabaseManagerProxy::derefWebContextSupplement): Deleted.
1688         (WebKit::WebDatabaseManagerProxy::getDatabasesByOrigin): Deleted.
1689         (WebKit::WebDatabaseManagerProxy::didGetDatabasesByOrigin): Deleted.
1690         (WebKit::WebDatabaseManagerProxy::getDatabaseOrigins): Deleted.
1691         (WebKit::WebDatabaseManagerProxy::didGetDatabaseOrigins): Deleted.
1692         (WebKit::WebDatabaseManagerProxy::deleteDatabaseWithNameForOrigin): Deleted.
1693         (WebKit::WebDatabaseManagerProxy::deleteDatabasesForOrigin): Deleted.
1694         (WebKit::WebDatabaseManagerProxy::deleteAllDatabases): Deleted.
1695         (WebKit::WebDatabaseManagerProxy::setQuotaForOrigin): Deleted.
1696         (WebKit::WebDatabaseManagerProxy::didModifyOrigin): Deleted.
1697         (WebKit::WebDatabaseManagerProxy::didModifyDatabase): Deleted.
1698         * UIProcess/WebDatabaseManagerProxy.h: Removed.
1699         * UIProcess/WebDatabaseManagerProxy.messages.in: Removed.
1700         * UIProcess/WebDatabaseManagerProxyClient.cpp: Removed.
1701         (WebKit::WebDatabaseManagerProxyClient::didModifyOrigin): Deleted.
1702         (WebKit::WebDatabaseManagerProxyClient::didModifyDatabase): Deleted.
1703         * UIProcess/WebDatabaseManagerProxyClient.h: Removed.
1704         * UIProcess/WebProcessPool.cpp:
1705         * WebKit2.xcodeproj/project.pbxproj:
1706         * WebProcess/InjectedBundle/InjectedBundle.cpp:
1707         * WebProcess/WebCoreSupport/WebDatabaseManager.cpp: Removed.
1708         (WebKit::WebDatabaseManager::supplementName): Deleted.
1709         (WebKit::WebDatabaseManager::WebDatabaseManager): Deleted.
1710         (WebKit::WebDatabaseManager::initialize): Deleted.
1711         (WebKit::WebDatabaseManager::getDatabasesByOrigin): Deleted.
1712         (WebKit::WebDatabaseManager::getDatabaseOrigins): Deleted.
1713         (WebKit::WebDatabaseManager::deleteDatabaseWithNameForOrigin): Deleted.
1714         (WebKit::WebDatabaseManager::deleteDatabasesForOrigin): Deleted.
1715         (WebKit::WebDatabaseManager::deleteAllDatabases): Deleted.
1716         (WebKit::WebDatabaseManager::closeAllDatabases): Deleted.
1717         (WebKit::WebDatabaseManager::setQuotaForOrigin): Deleted.
1718         (WebKit::WebDatabaseManager::dispatchDidModifyOrigin): Deleted.
1719         (WebKit::WebDatabaseManager::dispatchDidModifyDatabase): Deleted.
1720         * WebProcess/WebCoreSupport/WebDatabaseManager.h: Removed.
1721         * WebProcess/WebCoreSupport/WebDatabaseManager.messages.in: Removed.
1722         * WebProcess/WebCoreSupport/ios/WebDatabaseManagerIOS.mm: Removed.
1723         (WebKit::WebDatabaseManager::dispatchDidAddNewOrigin): Deleted.
1724         (WebKit::WebDatabaseManager::dispatchDidDeleteDatabase): Deleted.
1725         (WebKit::WebDatabaseManager::dispatchDidDeleteDatabaseOrigin): Deleted.
1726         * WebProcess/WebProcess.cpp:
1727         (WebKit::WebProcess::processWillSuspendImminently):
1728         (WebKit::m_webSQLiteDatabaseTracker): Deleted.
1729
1730 2015-12-18  Michael Catanzaro  <mcatanzaro@igalia.com>
1731
1732         [GTK] Unreviewed, fix GtkDoc after r193620
1733
1734         * UIProcess/API/gtk/docs/webkit2gtk-docs.sgml:
1735
1736 2015-12-18  Dan Bernstein  <mitz@apple.com>
1737
1738         WebPage::didCompleteUserMediaPermissionCheck and WebPage::didReceiveUserMediaPermissionDecision are exported
1739         https://bugs.webkit.org/show_bug.cgi?id=152429
1740
1741         Reviewed by Tim Horton.
1742
1743         * WebProcess/WebPage/WebPage.h: Removed WK_EXPORT specifiers from these two declarations.
1744
1745 2015-12-18  Alex Christensen  <achristensen@webkit.org>
1746
1747         Move networking code from Shared to NetworkProcess
1748         https://bugs.webkit.org/show_bug.cgi?id=152421
1749
1750         Reviewed by Antti Koivisto.
1751
1752         Since recently removing the non-NetworkProcess configurations, this code is no longer shared with the WebProcess.
1753
1754         * CMakeLists.txt:
1755         * DerivedSources.make:
1756         * NetworkProcess/CustomProtocols: Copied from Source/WebKit2/Shared/Network/CustomProtocols.
1757         * NetworkProcess/Downloads: Copied from Source/WebKit2/Shared/Downloads.
1758         * NetworkProcess/Downloads/Download.cpp: Copied from Source/WebKit2/Shared/Downloads/Download.cpp.
1759         * NetworkProcess/Downloads/Download.h: Copied from Source/WebKit2/Shared/Downloads/Download.h.
1760         * NetworkProcess/Downloads/DownloadID.h: Copied from Source/WebKit2/Shared/Downloads/DownloadID.h.
1761         * NetworkProcess/Downloads/DownloadManager.cpp: Copied from Source/WebKit2/Shared/Downloads/DownloadManager.cpp.
1762         * NetworkProcess/Downloads/DownloadManager.h: Copied from Source/WebKit2/Shared/Downloads/DownloadManager.h.
1763         * NetworkProcess/NetworkProcessCreationParameters.cpp: Copied from Source/WebKit2/Shared/Network/NetworkProcessCreationParameters.cpp.
1764         * NetworkProcess/NetworkProcessCreationParameters.h: Copied from Source/WebKit2/Shared/Network/NetworkProcessCreationParameters.h.
1765         * NetworkProcess/NetworkProcessSupplement.h: Copied from Source/WebKit2/Shared/Network/NetworkProcessSupplement.h.
1766         * NetworkProcess/NetworkResourceLoadParameters.cpp: Copied from Source/WebKit2/Shared/Network/NetworkResourceLoadParameters.cpp.
1767         * NetworkProcess/NetworkResourceLoadParameters.h: Copied from Source/WebKit2/Shared/Network/NetworkResourceLoadParameters.h.
1768         * PlatformEfl.cmake:
1769         * PlatformGTK.cmake:
1770         * PlatformMac.cmake:
1771         * Shared/Downloads: Removed.
1772         * Shared/Downloads/Download.cpp: Removed.
1773         * Shared/Downloads/Download.h: Removed.
1774         * Shared/Downloads/DownloadAuthenticationClient.cpp: Removed.
1775         * Shared/Downloads/DownloadAuthenticationClient.h: Removed.
1776         * Shared/Downloads/DownloadID.h: Removed.
1777         * Shared/Downloads/DownloadManager.cpp: Removed.
1778         * Shared/Downloads/DownloadManager.h: Removed.
1779         * Shared/Downloads/cocoa: Removed.
1780         * Shared/Downloads/cocoa/DownloadCocoa.mm: Removed.
1781         * Shared/Downloads/efl: Removed.
1782         * Shared/Downloads/efl/DownloadSoupErrorsEfl.cpp: Removed.
1783         * Shared/Downloads/gtk: Removed.
1784         * Shared/Downloads/gtk/DownloadSoupErrorsGtk.cpp: Removed.
1785         * Shared/Downloads/ios: Removed.
1786         * Shared/Downloads/ios/DownloadIOS.mm: Removed.
1787         * Shared/Downloads/mac: Removed.
1788         * Shared/Downloads/mac/DownloadMac.mm: Removed.
1789         * Shared/Downloads/soup: Removed.
1790         * Shared/Downloads/soup/DownloadSoup.cpp: Removed.
1791         * Shared/Downloads/soup/DownloadSoupErrors.h: Removed.
1792         * Shared/Network: Removed.
1793         * Shared/Network/CustomProtocols: Removed.
1794         * Shared/Network/CustomProtocols/Cocoa: Removed.
1795         * Shared/Network/CustomProtocols/Cocoa/CustomProtocolManagerCocoa.mm: Removed.
1796         * Shared/Network/CustomProtocols/CustomProtocolManager.h: Removed.
1797         * Shared/Network/CustomProtocols/CustomProtocolManager.messages.in: Removed.
1798         * Shared/Network/CustomProtocols/soup: Removed.
1799         * Shared/Network/CustomProtocols/soup/CustomProtocolManagerImpl.cpp: Removed.
1800         * Shared/Network/CustomProtocols/soup/CustomProtocolManagerImpl.h: Removed.
1801         * Shared/Network/CustomProtocols/soup/CustomProtocolManagerSoup.cpp: Removed.
1802         * Shared/Network/NetworkProcessCreationParameters.cpp: Removed.
1803         * Shared/Network/NetworkProcessCreationParameters.h: Removed.
1804         * Shared/Network/NetworkProcessSupplement.h: Removed.
1805         * Shared/Network/NetworkResourceLoadParameters.cpp: Removed.
1806         * Shared/Network/NetworkResourceLoadParameters.h: Removed.
1807         * WebKit2.xcodeproj/project.pbxproj:
1808
1809 2015-12-18  Michael Catanzaro  <mcatanzaro@igalia.com>
1810
1811         LayerTreeHostGtk triggers -Wunused-private-field
1812         https://bugs.webkit.org/show_bug.cgi?id=152410
1813
1814         Reviewed by Carlos Garcia Campos.
1815
1816         Remove the unused member variable.
1817
1818         * WebProcess/WebPage/gtk/LayerTreeHostGtk.h:
1819
1820 2015-12-18  Alex Christensen  <achristensen@webkit.org>
1821
1822         Add types for DownloadID and TaskIdentifier
1823         https://bugs.webkit.org/show_bug.cgi?id=152401
1824
1825         Reviewed by Brady Eidson.
1826
1827         DownloadID and TaskIdentifier used to both be just uint64_t's.
1828         It is confusing to distinguish between them, so now they both have names.
1829         We need a HashMap<TaskIdentifier, DownloadID> instead of a HashMap<uint64_t, uint64_t>.
1830
1831         * NetworkProcess/NetworkConnectionToWebProcess.cpp:
1832         (WebKit::storageSession):
1833         (WebKit::NetworkConnectionToWebProcess::startDownload):
1834         (WebKit::NetworkConnectionToWebProcess::convertMainResourceLoadToDownload):
1835         * NetworkProcess/NetworkConnectionToWebProcess.h:
1836         * NetworkProcess/NetworkConnectionToWebProcess.messages.in:
1837         * NetworkProcess/NetworkProcess.cpp:
1838         (WebKit::NetworkProcess::deleteWebsiteDataForOrigins):
1839         (WebKit::NetworkProcess::downloadRequest):
1840         (WebKit::NetworkProcess::resumeDownload):
1841         (WebKit::NetworkProcess::cancelDownload):
1842         (WebKit::NetworkProcess::getNetworkProcessStatistics):
1843         (WebKit::NetworkProcess::logDiagnosticMessage):
1844         (WebKit::NetworkProcess::logDiagnosticMessageWithResult):
1845         (WebKit::NetworkProcess::logDiagnosticMessageWithValue):
1846         * NetworkProcess/NetworkProcess.h:
1847         * NetworkProcess/NetworkProcess.messages.in:
1848         * NetworkProcess/NetworkSession.h:
1849         * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
1850         (WebKit::NetworkSession::createDataTaskWithRequest):
1851         (WebKit::NetworkSession::dataTaskForIdentifier):
1852         (WebKit::NetworkDataTask::resume):
1853         (WebKit::NetworkDataTask::taskIdentifier): Deleted.
1854         * Shared/Downloads/Download.cpp:
1855         (WebKit::Download::Download):
1856         (WebKit::Download::messageSenderDestinationID):
1857         * Shared/Downloads/Download.h:
1858         (WebKit::Download::downloadID):
1859         * Shared/Downloads/DownloadID.h: Added.
1860         (WebKit::DownloadID::DownloadID):
1861         (WebKit::DownloadID::operator==):
1862         (WebKit::DownloadID::downloadID):
1863         (IPC::ArgumentCoder<WebKit::DownloadID>::encode):
1864         (IPC::ArgumentCoder<WebKit::DownloadID>::decode):
1865         (WTF::DownloadIDHash::hash):
1866         (WTF::DownloadIDHash::equal):
1867         (WTF::HashTraits<WebKit::DownloadID>::emptyValue):
1868         (WTF::HashTraits<WebKit::DownloadID>::constructDeletedValue):
1869         (WTF::HashTraits<WebKit::DownloadID>::isDeletedValue):
1870         * Shared/Downloads/DownloadManager.cpp:
1871         (WebKit::DownloadManager::DownloadManager):
1872         (WebKit::DownloadManager::startDownload):
1873         (WebKit::DownloadManager::convertHandleToDownload):
1874         (WebKit::DownloadManager::resumeDownload):
1875         (WebKit::DownloadManager::cancelDownload):
1876         * Shared/Downloads/DownloadManager.h:
1877         (WebKit::DownloadManager::isDownloading):
1878         * UIProcess/API/C/WKDownload.cpp:
1879         (WKDownloadGetID):
1880         (WKDownloadCopyRequest):
1881         * UIProcess/Downloads/DownloadProxy.h:
1882         (WebKit::DownloadProxy::downloadID):
1883         (WebKit::DownloadProxy::request):
1884         (WebKit::DownloadProxy::resumeData):
1885         * UIProcess/Downloads/DownloadProxyMap.cpp:
1886         (WebKit::DownloadProxyMap::createDownloadProxy):
1887         (WebKit::DownloadProxyMap::downloadFinished):
1888         (WebKit::DownloadProxyMap::processDidClose):
1889         * UIProcess/Downloads/DownloadProxyMap.h:
1890         * UIProcess/WebPageProxy.cpp:
1891         (WebKit::WebPageProxy::receivedPolicyDecision):
1892         (WebKit::WebPageProxy::frameDidBecomeFrameSet):
1893         (WebKit::WebPageProxy::decidePolicyForNavigationAction):
1894         (WebKit::WebPageProxy::decidePolicyForResponse):
1895         (WebKit::WebPageProxy::decidePolicyForResponseSync):
1896         * UIProcess/WebPageProxy.h:
1897         * UIProcess/WebPageProxy.messages.in:
1898         * WebKit2.xcodeproj/project.pbxproj:
1899         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1900         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse):
1901         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
1902         * WebProcess/WebPage/WebFrame.cpp:
1903         (WebKit::WebFrame::invalidatePolicyListener):
1904         (WebKit::WebFrame::didReceivePolicyDecision):
1905         (WebKit::WebFrame::startDownload):
1906         (WebKit::WebFrame::convertMainResourceLoadToDownload):
1907         * WebProcess/WebPage/WebFrame.h:
1908         * WebProcess/WebPage/WebPage.cpp:
1909         (WebKit::WebPage::setSessionID):
1910         (WebKit::WebPage::didReceivePolicyDecision):
1911         * WebProcess/WebPage/WebPage.h:
1912         * WebProcess/WebPage/WebPage.messages.in:
1913
1914 2015-12-17  Dan Bernstein  <mitz@apple.com>
1915
1916         Fixed a typo from r194022.
1917
1918         * Configurations/WebKit.xcconfig: Changed PlugInProcessShim.dylib to PluginProcessShim.dylib.
1919
1920 2015-12-17  Commit Queue  <commit-queue@webkit.org>
1921
1922         Unreviewed, rolling out r194250 and r194254.
1923         https://bugs.webkit.org/show_bug.cgi?id=152414
1924
1925         broke api tests (Requested by alexchristensen on #webkit).
1926
1927         Reverted changesets:
1928
1929         "Add types for DownloadID and TaskIdentifier"
1930         https://bugs.webkit.org/show_bug.cgi?id=152401
1931         http://trac.webkit.org/changeset/194250
1932
1933         "Build fix after r194250"
1934         http://trac.webkit.org/changeset/194254
1935
1936 2015-12-17  Alex Christensen  <achristensen@webkit.org>
1937
1938         Build fix after r194250
1939
1940         * WebKit2.xcodeproj/project.pbxproj:
1941         Change target membership from all to WebKit.
1942
1943 2015-12-17  Alex Christensen  <achristensen@webkit.org>
1944
1945         Add types for DownloadID and TaskIdentifier
1946         https://bugs.webkit.org/show_bug.cgi?id=152401
1947
1948         Reviewed by Brady Eidson.
1949
1950         DownloadID and TaskIdentifier used to both be just uint64_t's.
1951         It is confusing to distinguish between them, so now they both have names.
1952         We need a HashMap<TaskIdentifier, DownloadID> instead of a HashMap<uint64_t, uint64_t>.
1953
1954         * NetworkProcess/NetworkConnectionToWebProcess.cpp:
1955         (WebKit::storageSession):
1956         (WebKit::NetworkConnectionToWebProcess::startDownload):
1957         (WebKit::NetworkConnectionToWebProcess::convertMainResourceLoadToDownload):
1958         * NetworkProcess/NetworkConnectionToWebProcess.h:
1959         * NetworkProcess/NetworkConnectionToWebProcess.messages.in:
1960         * NetworkProcess/NetworkProcess.cpp:
1961         (WebKit::NetworkProcess::deleteWebsiteDataForOrigins):
1962         (WebKit::NetworkProcess::downloadRequest):
1963         (WebKit::NetworkProcess::resumeDownload):
1964         (WebKit::NetworkProcess::cancelDownload):
1965         (WebKit::NetworkProcess::getNetworkProcessStatistics):
1966         (WebKit::NetworkProcess::logDiagnosticMessage):
1967         (WebKit::NetworkProcess::logDiagnosticMessageWithResult):
1968         (WebKit::NetworkProcess::logDiagnosticMessageWithValue):
1969         * NetworkProcess/NetworkProcess.h:
1970         * NetworkProcess/NetworkProcess.messages.in:
1971         * NetworkProcess/NetworkSession.h:
1972         * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
1973         (WebKit::NetworkSession::createDataTaskWithRequest):
1974         (WebKit::NetworkSession::dataTaskForIdentifier):
1975         (WebKit::NetworkDataTask::resume):
1976         (WebKit::NetworkDataTask::taskIdentifier): Deleted.
1977         * Shared/Downloads/Download.cpp:
1978         (WebKit::Download::Download):
1979         (WebKit::Download::messageSenderDestinationID):
1980         * Shared/Downloads/Download.h:
1981         (WebKit::Download::downloadID):
1982         * Shared/Downloads/DownloadID.h: Added.
1983         (WebKit::DownloadID::DownloadID):
1984         (WebKit::DownloadID::operator==):
1985         (WebKit::DownloadID::downloadID):
1986         (IPC::ArgumentCoder<WebKit::DownloadID>::encode):
1987         (IPC::ArgumentCoder<WebKit::DownloadID>::decode):
1988         (WTF::DownloadIDHash::hash):
1989         (WTF::DownloadIDHash::equal):
1990         (WTF::HashTraits<WebKit::DownloadID>::emptyValue):
1991         (WTF::HashTraits<WebKit::DownloadID>::constructDeletedValue):
1992         (WTF::HashTraits<WebKit::DownloadID>::isDeletedValue):
1993         * Shared/Downloads/DownloadManager.cpp:
1994         (WebKit::DownloadManager::DownloadManager):
1995         (WebKit::DownloadManager::startDownload):
1996         (WebKit::DownloadManager::convertHandleToDownload):
1997         (WebKit::DownloadManager::resumeDownload):
1998         (WebKit::DownloadManager::cancelDownload):
1999         * Shared/Downloads/DownloadManager.h:
2000         (WebKit::DownloadManager::isDownloading):
2001         * UIProcess/API/C/WKDownload.cpp:
2002         (WKDownloadGetID):
2003         (WKDownloadCopyRequest):
2004         * UIProcess/Downloads/DownloadProxy.h:
2005         (WebKit::DownloadProxy::downloadID):
2006         (WebKit::DownloadProxy::request):
2007         (WebKit::DownloadProxy::resumeData):
2008         * UIProcess/Downloads/DownloadProxyMap.cpp:
2009         (WebKit::DownloadProxyMap::createDownloadProxy):
2010         (WebKit::DownloadProxyMap::downloadFinished):
2011         (WebKit::DownloadProxyMap::processDidClose):
2012         * UIProcess/Downloads/DownloadProxyMap.h:
2013         * UIProcess/WebPageProxy.cpp:
2014         (WebKit::WebPageProxy::receivedPolicyDecision):
2015         (WebKit::WebPageProxy::frameDidBecomeFrameSet):
2016         (WebKit::WebPageProxy::decidePolicyForNavigationAction):
2017         (WebKit::WebPageProxy::decidePolicyForResponse):
2018         (WebKit::WebPageProxy::decidePolicyForResponseSync):
2019         * UIProcess/WebPageProxy.h:
2020         * UIProcess/WebPageProxy.messages.in:
2021         * WebKit2.xcodeproj/project.pbxproj:
2022         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2023         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse):
2024         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
2025         * WebProcess/WebPage/WebFrame.cpp:
2026         (WebKit::WebFrame::invalidatePolicyListener):
2027         (WebKit::WebFrame::didReceivePolicyDecision):
2028         (WebKit::WebFrame::startDownload):
2029         (WebKit::WebFrame::convertMainResourceLoadToDownload):
2030         * WebProcess/WebPage/WebFrame.h:
2031         * WebProcess/WebPage/WebPage.cpp:
2032         (WebKit::WebPage::setSessionID):
2033         (WebKit::WebPage::didReceivePolicyDecision):
2034         * WebProcess/WebPage/WebPage.h:
2035         * WebProcess/WebPage/WebPage.messages.in:
2036
2037 2015-12-17  Simon Fraser  <simon.fraser@apple.com>
2038
2039         Disable viewport "shrink to fit" outside of multitasking mode
2040         https://bugs.webkit.org/show_bug.cgi?id=152403
2041         rdar://problem/23818102
2042
2043         Reviewed by Tim Horton.
2044         
2045         Plumb through a value that indicates whether the WKWebView is in split screen,
2046         and use it to conditionally enable shrink-to-fit mode only in split screen.
2047         
2048         * Shared/VisibleContentRectUpdateInfo.cpp: Added m_allowShrinkToFit, and sort
2049         the member variables, and encoding order, to optimize packing, with some initializers.
2050         (WebKit::VisibleContentRectUpdateInfo::encode):
2051         (WebKit::VisibleContentRectUpdateInfo::decode):
2052         * Shared/VisibleContentRectUpdateInfo.h:
2053         (WebKit::VisibleContentRectUpdateInfo::VisibleContentRectUpdateInfo):
2054         (WebKit::VisibleContentRectUpdateInfo::allowShrinkToFit):
2055         (WebKit::operator==):
2056         * UIProcess/API/Cocoa/WKWebView.mm: Add _allowsViewportShrinkToFit member variable,
2057         with getter and setter.
2058         (-[WKWebView _updateVisibleContentRects]): Unwrap the line.
2059         (-[WKWebView _setAllowsViewportShrinkToFit:]):
2060         (-[WKWebView _allowsViewportShrinkToFit]):
2061         * UIProcess/API/Cocoa/WKWebViewPrivate.h: _allowsViewportShrinkToFit SPI.
2062         * UIProcess/WebPageProxy.h: Pass allowShrinkToFit through.
2063         * UIProcess/ios/WKContentView.mm: Ditto.
2064         (-[WKContentView didUpdateVisibleRect:unobscuredRect:unobscuredRectInScrollViewCoordinates:scale:minimumScale:inStableState:isChangingObscuredInsetsInteractively:]):
2065         * UIProcess/ios/WebPageProxyIOS.mm:
2066         (WebKit::WebPageProxy::updateVisibleContentRects): Padd allowShrinkToFit to the web process via the VisibleContentRectUpdateInfo.
2067         * WebProcess/WebPage/WebPage.cpp:
2068         (WebKit::WebPage::updatePreferences): Store m_ignoreViewportScalingConstraints in a member variable since we can't
2069         get back to the prefs later.
2070         * WebProcess/WebPage/WebPage.h:
2071         * WebProcess/WebPage/ios/WebPageIOS.mm:
2072         (WebKit::WebPage::updateVisibleContentRects): This is the behavior change: call setCanIgnoreScalingConstraints()
2073         on the viewport configuration, consulting the pref (via m_ignoreViewportScalingConstraints) and the new
2074         visibleContentRectUpdateInfo.allowShrinkToFit().
2075
2076 2015-12-16  Simon Fraser  <simon.fraser@apple.com>
2077
2078         ViewportConfiguration functions should return a bool to say if anything changed
2079         https://bugs.webkit.org/show_bug.cgi?id=152353
2080
2081         Reviewed by Tim Horton.
2082
2083         Rather than callers all checking whether setting ViewportConfiguration values
2084         changes state, have its functions return a bool if the values change.
2085
2086         * WebProcess/WebPage/WebPage.cpp:
2087         (WebKit::WebPage::mainFrameDidLayout):
2088         (WebKit::WebPage::didCommitLoad):
2089         * WebProcess/WebPage/ios/WebPageIOS.mm:
2090         (WebKit::WebPage::viewportPropertiesDidChange):
2091         (WebKit::WebPage::setViewportConfigurationMinimumLayoutSize):
2092
2093 2015-12-16  Alex Christensen  <achristensen@webkit.org>
2094
2095         Progress towards implementing downloads with NetworkSession
2096         https://bugs.webkit.org/show_bug.cgi?id=152371
2097
2098         Reviewed by Darin Adler.
2099
2100         * NetworkProcess/NetworkProcess.cpp:
2101         (WebKit::NetworkProcess::downloadRequest):
2102         (WebKit::NetworkProcess::resumeDownload):
2103         (WebKit::NetworkProcess::cancelDownload):
2104         * NetworkProcess/NetworkProcess.h:
2105         * NetworkProcess/NetworkProcess.messages.in:
2106         * Shared/Authentication/AuthenticationManager.cpp:
2107         (WebKit::AuthenticationManager::didReceiveAuthenticationChallenge):
2108         * Shared/Authentication/AuthenticationManager.h:
2109         * Shared/Downloads/Download.cpp:
2110         (WebKit::Download::Download):
2111         (WebKit::Download::didReceiveAuthenticationChallenge):
2112         * Shared/Downloads/Download.h:
2113         * Shared/Downloads/DownloadManager.cpp:
2114         (WebKit::DownloadManager::startDownload):
2115         (WebKit::DownloadManager::convertHandleToDownload):
2116         (WebKit::DownloadManager::resumeDownload):
2117         (WebKit::DownloadManager::cancelDownload):
2118         (WebKit::DownloadManager::downloadFinished):
2119         (WebKit::DownloadManager::didCreateDownload):
2120         * Shared/Downloads/DownloadManager.h:
2121         * Shared/Downloads/cocoa: Added.
2122         * Shared/Downloads/cocoa/DownloadCocoa.mm: Added.
2123         (WebKit::Download::start):
2124         (WebKit::Download::resume):
2125         (WebKit::Download::cancel):
2126         (WebKit::Download::platformInvalidate):
2127         * Shared/Downloads/ios/DownloadIOS.mm:
2128         * Shared/Downloads/mac/DownloadMac.mm:
2129         (WebKit::Download::start):
2130         (WebKit::Download::startWithHandle):
2131         (WebKit::Download::resume):
2132         * UIProcess/WebProcessPool.cpp:
2133         (WebKit::WebProcessPool::resumeDownload):
2134         * UIProcess/WebProcessPool.h:
2135         * WebKit2.xcodeproj/project.pbxproj:
2136
2137 2015-12-16  Simon Fraser  <simon.fraser@apple.com>
2138
2139         ViewportConfiguration functions should return a bool to say if anything changed
2140         https://bugs.webkit.org/show_bug.cgi?id=152353
2141
2142         Reviewed by Tim Horton.
2143
2144         Rather than callers all checking whether setting ViewportConfiguration values
2145         changes state, have its functions return a bool if the values change.
2146
2147         * WebProcess/WebPage/WebPage.cpp:
2148         (WebKit::WebPage::mainFrameDidLayout):
2149         (WebKit::WebPage::didCommitLoad):
2150         * WebProcess/WebPage/ios/WebPageIOS.mm:
2151         (WebKit::WebPage::viewportPropertiesDidChange):
2152         (WebKit::WebPage::setViewportConfigurationMinimumLayoutSize):
2153
2154 2015-12-16  Tim Horton  <timothy_horton@apple.com>
2155
2156         REGRESSION (r191299): Zoom gestures are enabled even if allowsMagnification=NO
2157         https://bugs.webkit.org/show_bug.cgi?id=152373
2158         <rdar://problem/23931998>
2159
2160         Reviewed by Simon Fraser.
2161
2162         * UIProcess/Cocoa/WebViewImpl.mm:
2163         (WebKit::WebViewImpl::gestureEventWasNotHandledByWebCoreFromViewOnly):
2164         Don't pass the event on to ViewGestureController if we shouldn't handle it,
2165         just like we would have done in magnifyWithEvent before.
2166
2167 2015-12-16  Tim Horton  <timothy_horton@apple.com>
2168
2169         REGRESSION (r194125): Crashes in touchesEndedWithEvent on occasion when interacting with the page
2170         https://bugs.webkit.org/show_bug.cgi?id=152366
2171         <rdar://problem/23929672>
2172
2173         Reviewed by Beth Dakin.
2174
2175         * UIProcess/Cocoa/WebViewImpl.mm:
2176         (WebKit::WebViewImpl::touchesEndedWithEvent):
2177         (WebKit::WebViewImpl::touchesCancelledWithEvent):
2178         NSTouch identifiers aren't pointer-comparable. We need to use isEqual to
2179         compare them and find the ones to remove.
2180
2181 2015-12-16  Simon Fraser  <simon.fraser@apple.com>
2182
2183         Simplify isOverlayScrollbar() logic
2184         https://bugs.webkit.org/show_bug.cgi?id=152357
2185
2186         Reviewed by Beth Dakin.
2187
2188         Replace code that checks for isOverlayScrollbar() explicitly with calls to new
2189         occupiedWidth()/occupiedHeight() functions on Scrollbar, which do the overlay
2190         scrollbar check internally.
2191         
2192         Add ScrollableArea::scrollbarIntrusion() which returns an IntSize with the occupiedWidth
2193         and occupiedHeight of any scrollbars, and use it in a few places.
2194
2195         * WebProcess/Plugins/PDF/DeprecatedPDFPlugin.mm:
2196         (WebKit::PDFPlugin::updateScrollbars):
2197         (WebKit::PDFPlugin::maximumScrollPosition):
2198
2199 2015-12-16  Alex Christensen  <achristensen@webkit.org>
2200
2201         Build fix when using NETWORK_SESSION after r193972.
2202
2203         Rubber-stamped by Joseph Pecoraro.
2204
2205         Renamed NetworkSessionDelegate to WKNetworkSessionDelegate to conform to the 
2206         newly-enforced style rule in check-for-inappropriate-objc-class-names.
2207
2208         * NetworkProcess/NetworkSession.h:
2209         * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
2210         (toNSURLSessionAuthChallengeDisposition):
2211         (-[WKNetworkSessionDelegate initWithNetworkSession:]):
2212         (WebKit::NetworkSession::NetworkSession):
2213         (-[NetworkSessionDelegate initWithNetworkSession:]): Deleted.
2214
2215 2015-12-16  Alex Christensen  <achristensen@webkit.org>
2216
2217         Implement Web Timing when using NETWORK_SESSION
2218         https://bugs.webkit.org/show_bug.cgi?id=152285
2219
2220         Reviewed by Darin Adler.
2221
2222         * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
2223         (-[NetworkSessionDelegate URLSession:dataTask:didReceiveResponse:completionHandler:]):
2224         (WebKit::NetworkSession::NetworkSession):
2225         Use functions moved to ResourceLoadTiming.h.  setCollectsTimingData is for Mavericks, _timingDataOptions is post-Mavericks.
2226
2227 2015-12-16  Youenn Fablet  <youenn.fablet@crf.canon.fr>
2228
2229         [Fetch API] Add fetch API compile time flag
2230         https://bugs.webkit.org/show_bug.cgi?id=152254
2231
2232         Reviewed by Darin Adler.
2233
2234         * Configurations/FeatureDefines.xcconfig:
2235
2236 2015-12-15  Tim Horton  <timothy_horton@apple.com>
2237
2238         [Mac] Gesture Events should not have negative scale
2239         https://bugs.webkit.org/show_bug.cgi?id=151065
2240         <rdar://problem/23474123>
2241
2242         Reviewed by Anders Carlsson.
2243
2244         * Shared/NativeWebGestureEvent.h:
2245         * Shared/mac/NativeWebGestureEventMac.mm:
2246         (WebKit::distanceForTouches):
2247         (WebKit::NativeWebGestureEvent::NativeWebGestureEvent):
2248         Compute the distance between the two oldest touches, and use that as
2249         the scale (really the gesture diameter) on the event, instead of
2250         passing through AppKit's magnification (which is computed differently).
2251         This matches the documented behavior of the existing gesture events on iOS.
2252
2253         * UIProcess/API/Cocoa/WKWebView.mm:
2254         (-[WKWebView touchesBeganWithEvent:]):
2255         (-[WKWebView touchesMovedWithEvent:]):
2256         (-[WKWebView touchesEndedWithEvent:]):
2257         (-[WKWebView touchesCancelledWithEvent:]):
2258         * UIProcess/API/mac/WKView.mm:
2259         (-[WKView touchesBeganWithEvent:]):
2260         (-[WKView touchesMovedWithEvent:]):
2261         (-[WKView touchesEndedWithEvent:]):
2262         (-[WKView touchesCancelledWithEvent:]):
2263         Plumb touch events through to WebViewImpl.
2264
2265         * UIProcess/Cocoa/WebViewImpl.h:
2266         * UIProcess/Cocoa/WebViewImpl.mm:
2267         (WebKit::WebViewImpl::WebViewImpl):
2268         (WebKit::WebViewImpl::magnifyWithEvent):
2269         (WebKit::WebViewImpl::touchesOrderedByAge):
2270         (WebKit::WebViewImpl::touchesBeganWithEvent):
2271         (WebKit::WebViewImpl::touchesMovedWithEvent):
2272         (WebKit::WebViewImpl::touchesEndedWithEvent):
2273         (WebKit::WebViewImpl::touchesCancelledWithEvent):
2274         (WebKit::WebViewImpl::rotateWithEvent):
2275         Keep track of the most recent incoming touches, by identifier, in age order.
2276         Pass them through to NativeWebGestureEvent so it can determine the gesture diameter.
2277
2278 2015-12-15  Anders Carlsson  <andersca@apple.com>
2279
2280         Call DatabaseManager directly from WKBundle.cpp
2281         https://bugs.webkit.org/show_bug.cgi?id=152317
2282
2283         Reviewed by Tim Horton.
2284
2285         This is in preparation for getting rid of some old database manager code.
2286
2287         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
2288         (WKBundleClearAllDatabases):
2289         (WKBundleSetDatabaseQuota):
2290         * WebProcess/InjectedBundle/InjectedBundle.cpp:
2291         (WebKit::InjectedBundle::clearAllDatabases): Deleted.
2292         (WebKit::InjectedBundle::setDatabaseQuota): Deleted.
2293         * WebProcess/InjectedBundle/InjectedBundle.h:
2294
2295 2015-12-15  Daniel Bates  <dabates@apple.com>
2296
2297         Guard code that uses class LayerTreeHost with USE(COORDINATED_GRAPHICS) or USE(TEXTURE_MAPPER)
2298         https://bugs.webkit.org/show_bug.cgi?id=152265
2299
2300         Reviewed by Tim Horton.
2301
2302         We neither make use of LayerTreeHost on Mac nor on iOS. We should guard code that makes
2303         use of this class as applicable. This also fixes the iOS Simulator build when using
2304         Apple Internal software.
2305
2306         * WebProcess/WebCoreSupport/WebChromeClient.cpp: Guard code that used LayerTreeHost.
2307         * WebProcess/WebPage/LayerTreeHost.cpp: Guard contents of file with USE(COORDINATED_GRAPHICS) || USE(TEXTURE_MAPPER).
2308         * WebProcess/WebPage/LayerTreeHost.h: Ditto.
2309         * WebProcess/WebPage/WebPage.cpp:
2310         (WebKit::WebPage::scalePage): Ditto.
2311         (WebKit::WebPage::setDeviceScaleFactor): Ditto.
2312         * WebProcess/WebPage/WebPage.h: Substitute header LayerTreeContext.h for LayerTreeHost.h since we make use
2313         of the enum class LayerHostingMode.
2314         * WebProcess/WebPage/ios/WebPageIOS.mm:
2315         (WebKit::WebPage::updateVisibleContentRects): Remove unnecessary code; DrawingArea::layerTreeHost() always
2316         returns nullptr on iOS.
2317
2318 2015-12-15  Zan Dobersek  <zdobersek@igalia.com>
2319
2320         [TexMap] Operate with a reference to the TextureMapper wherever possible
2321         https://bugs.webkit.org/show_bug.cgi?id=152118
2322
2323         Reviewed by Martin Robinson.
2324
2325         Replace pointers to the TextureMapper object with references.
2326
2327         * Shared/CoordinatedGraphics/CoordinatedBackingStore.cpp:
2328         (WebKit::CoordinatedBackingStoreTile::swapBuffers):
2329         (WebKit::CoordinatedBackingStore::paintTilesToTextureMapper):
2330         (WebKit::CoordinatedBackingStore::paintToTextureMapper):
2331         (WebKit::CoordinatedBackingStore::drawBorder):
2332         (WebKit::CoordinatedBackingStore::drawRepaintCounter):
2333         (WebKit::CoordinatedBackingStore::commitTileOperations):
2334         * Shared/CoordinatedGraphics/CoordinatedBackingStore.h:
2335         * Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp:
2336         (WebKit::CoordinatedGraphicsScene::paintToCurrentGLContext):
2337         (WebKit::CoordinatedGraphicsScene::paintToGraphicsContext):
2338         (WebKit::CoordinatedGraphicsScene::commitPendingBackingStoreOperations):
2339
2340 2015-12-14  YongGeol Jung  <yg48.jung@samsung.com>
2341
2342         [Coordinated Graphics] CSS transition effect is not shown when transformed with "%" unit.
2343         https://bugs.webkit.org/show_bug.cgi?id=152278
2344
2345         Reviewed by Darin Adler.
2346
2347         boxSize is encoded as FloatSize type but decoded as IntSize type.
2348         So boxSize gets invalid value after decoding.
2349         Due to this layer goes to out of screen during animation.
2350
2351         * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
2352         (IPC::ArgumentCoder<TextureMapperAnimation>::decode):
2353
2354 2015-12-14  Dan Bernstein  <mitz@apple.com>
2355
2356         <rdar://problem/23886216> REGRESSION (r194022): Production builds of PluginProcess crash on launch when not installed in /System
2357         https://bugs.webkit.org/show_bug.cgi?id=152291
2358
2359         Reviewed by Darin Adler.
2360
2361         * Configurations/PluginProcess.xcconfig: Added a FIXME.
2362         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
2363         (WebKit::addDYLDEnvironmentAdditions): Set DYLD_LIBRARY_PATH to point to where the shims
2364         are. This is needed because starting in El Capitan, the processes’ main executables link
2365         directly against the shims, so the dynamic linker needs to be able to find them in the
2366         non-/System location. Also added a FIXME about not having to set DYLD_INSERT_LIBRARIES when
2367         the main executables link the them directly.
2368
2369 2015-12-14  Simon Fraser  <simon.fraser@apple.com>
2370
2371         Dump some more data in the RemoteLayerTreeTransaction
2372         https://bugs.webkit.org/show_bug.cgi?id=152283
2373
2374         Reviewed by Dean Jackson.
2375         
2376         Dump some scale factors, viewport meta tag width and render tree size.
2377
2378         * Shared/mac/RemoteLayerTreeTransaction.mm:
2379         (WebKit::RemoteLayerTreeTransaction::description):
2380
2381 2015-12-14  Tim Horton  <timothy_horton@apple.com>
2382
2383         Frequent crash under -[WKPDFView web_setMinimumSize:]_block_invoke
2384         https://bugs.webkit.org/show_bug.cgi?id=152266
2385         <rdar://problem/22092676>
2386
2387         Reviewed by Simon Fraser.
2388
2389         * UIProcess/ios/WKPDFView.mm:
2390         (-[WKPDFView web_setMinimumSize:]):
2391         We weren't retaining the UIScrollView, but depending on it surviving
2392         into this block's invocation.
2393
2394         We don't need to do this asynchronously anymore because the referenced
2395         bug is fixed, so make it happen synchronously. This also fixes the crash
2396         because there's no opportunity for the scroll view to be released.
2397
2398 2015-12-14  Tim Horton  <timothy_horton@apple.com>
2399
2400         TiledCoreAnimationDrawingAreaProxy::createFenceForGeometryUpdate() sets fence port on context twice
2401         https://bugs.webkit.org/show_bug.cgi?id=152239
2402         <rdar://problem/22893289>
2403
2404         Reviewed by Darin Adler.
2405
2406         * UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm:
2407         (WebKit::TiledCoreAnimationDrawingAreaProxy::createFenceForGeometryUpdate):
2408         No need to setFencePort; createFencePort also installs it on the creating context.
2409
2410 2015-12-12  Alex Christensen  <achristensen@webkit.org>
2411
2412         Use existing code for redirects when using NETWORK_SESSION
2413         https://bugs.webkit.org/show_bug.cgi?id=152207
2414         rdar://problem/23860624
2415
2416         Reviewed by Darin Adler.
2417         
2418         This fixes http/tests/cookies/set-cookie-on-redirect.html when using NETWORK_SESSION.
2419
2420         * NetworkProcess/NetworkLoad.cpp:
2421         (WebKit::NetworkLoad::continueWillSendRequest):
2422         (WebKit::NetworkLoad::convertTaskToDownload):
2423         (WebKit::NetworkLoad::willPerformHTTPRedirection):
2424         (WebKit::NetworkLoad::didReceiveChallenge):
2425         * NetworkProcess/NetworkLoad.h:
2426         * NetworkProcess/NetworkSession.h:
2427
2428 2015-12-13  Tim Horton  <timothy_horton@apple.com>
2429
2430         Adopt CGIOSurfaceContextCreateImageReference to avoid unnecessary readback
2431         https://bugs.webkit.org/show_bug.cgi?id=150988
2432         <rdar://problem/18993594>
2433
2434         Reviewed by Darin Adler.
2435
2436         * WebProcess/WebPage/WebFrame.cpp:
2437         (WebKit::WebFrame::createSelectionSnapshot):
2438         Adopt sinkIntoImage and drawConsumingImageBuffer in a few places.
2439
2440 2015-12-13  Dan Bernstein  <mitz@apple.com>
2441
2442         Another fix after r194018.
2443
2444         * Configurations/BaseTarget.xcconfig:
2445         * Configurations/BaseXPCService.xcconfig:
2446
2447 2015-12-13  Dan Bernstein  <mitz@apple.com>
2448
2449         [Mac] Shims used by XPC services are installed inside legacy process bundles
2450         https://bugs.webkit.org/show_bug.cgi?id=152233
2451
2452         Reviewed by Sam Weinig.
2453
2454         Have the shim dylibs installed in the framework’s Frameworks directory instead.
2455
2456         * Configurations/BaseLegacyProcess.xcconfig: Simplified now that EXCLUDED_SHIM_FILE_NAME is
2457           no longer defined, because shims aren’t copied into legacy processes.
2458
2459         * Configurations/NetworkProcess.xcconfig: Removed definition of EXCLUDED_SHIM_FILE_NAME.
2460         * Configurations/PluginProcess.xcconfig: Ditto.
2461         * Configurations/WebContentProcess.xcconfig: Ditto.
2462
2463         * Configurations/Shim.xcconfig: Install the shims when building for OS X. Added definitions
2464           of INSTALL_PATH and DYLIB_INSTALL_NAME_BASE which are now common to all shims.
2465
2466         * Configurations/PluginProcessShim.xcconfig: Removed definitions of INSTALL_PATH and
2467           DYLIB_INSTALL_NAME_BASE from here, now that they are defined for all shims in
2468           Shim.xcconfig.
2469         * Configurations/SecItemShim.xcconfig: Ditto.
2470         * Configurations/WebProcessShim.xcconfig:
2471
2472         * Configurations/WebKit.xcconfig: Added the shims to EXCLUDED_SOURCE_FILE_NAMES for iOS.
2473
2474         * NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info-OSX-10.9-10.10.plist: Changed
2475           the value of DYLD_INSERT_LIBRARIES to point to the shim’s new location.
2476         * PluginProcess/EntryPoint/mac/XPCService/PluginService.32-64-10.9-10.10.Info.plist: Ditto.
2477         * WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-OSX-10.9-10.10.plist: Ditto.
2478
2479         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
2480         (WebKit::computeProcessShimPath): Changed to return the new paths, which are all inside the
2481           framework’s Frameworks directory.
2482
2483         * WebKit2.xcodeproj/project.pbxproj:
2484         - Removed references to WRAPPER_NAME from the “Copy XPC services for engineering builds”
2485           build phase in the All target, becase WRAPPER_NAME is empty in an aggregate target.
2486         - Removed the PlugInProcess target’s dependency on the PluginProcessShim target and its
2487           Copy Plug-in Process Shim build phase.
2488         - Removed the NetworkProcess target’s dependency on the SecItemShim target and its Copy
2489           Sec Item Shim build phase.
2490         - Removed the WebProcess target’s dependency on the WebProcessShim target and its Copy
2491           WebProcessShim build phase.
2492         - Made the WebKit target depend on the shim targets, and added to it a Copy Shims build
2493           phase that copies the shims into the framework’s Frameworks directory.
2494
2495 2015-12-13  Dan Bernstein  <mitz@apple.com>
2496
2497         Build fix.
2498
2499         * Configurations/PluginProcess.xcconfig:
2500
2501 2015-12-13  Dan Bernstein  <mitz@apple.com>
2502
2503         [Mac] Shims aren’t inserted properly on Yosemite when building with the El Capitan SDK
2504         https://bugs.webkit.org/show_bug.cgi?id=152229
2505
2506         Reviewed by Darin Adler.
2507
2508         * Configurations/BaseTarget.xcconfig: Defined WK_LINK_SHIM on OS X to YES or NO based on the
2509           target version.
2510         * Configurations/BaseXPCService.xcconfig: Define WK_XPC_SERVICE_INFOPLIST_SUFFIX to
2511           "-10.9-10.10" when targeting those OS X versions.
2512         * Configurations/NetworkService.xcconfig: Use WK_XPC_SERVICE_INFOPLIST_SUFFIX in the
2513           definition of INFOPLIST_FILE. Use WK_LINK_SHIM in the definition of OTHER_LDFLAGS.
2514         * Configurations/PluginProcess.xcconfig: Use WK_LINK_SHIM in the definition of
2515           LDFLAGS_SHIM_Production for OS X.
2516         * Configurations/PluginService.32.xcconfig: Use WK_XPC_SERVICE_INFOPLIST_SUFFIX in the
2517           definition of INFOPLIST_FILE. Use WK_LINK_SHIM in the definition of OTHER_LDFLAGS.
2518         * Configurations/PluginService.64.xcconfig: Ditto.
2519         * Configurations/WebContentService.xcconfig: Ditto.
2520
2521 2015-12-12  Katlyn Graff  <kgraff@apple.com>
2522
2523         Safari background tabs should be fully suspended where possible.
2524         https://bugs.webkit.org/show_bug.cgi?id=150515
2525
2526         Reviewed by Ryosuke Niwa.
2527
2528         Added a runtime flag enabling tab suspension, default off.
2529
2530         * Shared/WebProcessCreationParameters.cpp:
2531         (WebKit::WebProcessCreationParameters::WebProcessCreationParameters):
2532         (WebKit::WebProcessCreationParameters::encode):
2533         (WebKit::WebProcessCreationParameters::decode):
2534         * Shared/WebProcessCreationParameters.h:
2535         * UIProcess/Cocoa/WebProcessPoolCocoa.mm:
2536         (WebKit::registerUserDefaultsIfNeeded):
2537         (WebKit::WebProcessPool::platformInitializeWebProcess):
2538         * WebProcess/cocoa/WebProcessCocoa.mm:
2539         (WebKit::WebProcess::platformInitializeWebProcess):
2540
2541 2015-12-11  Eric Carlson  <eric.carlson@apple.com>
2542
2543         [MediaStream] Add a setting to allow the mock media capture devices to be enabled and disabled
2544         https://bugs.webkit.org/show_bug.cgi?id=152197
2545
2546         Reviewed by Dean Jackson.
2547
2548         * Shared/WebPreferencesDefinitions.h:
2549         * UIProcess/API/C/WKPreferences.cpp:
2550         (WKPreferencesSetMockCaptureDevicesEnabled):
2551         (WKPreferencesGetMockCaptureDevicesEnabled):
2552         * UIProcess/API/C/WKPreferencesRefPrivate.h:
2553         * UIProcess/API/Cocoa/WKPreferences.mm:
2554         (-[WKPreferences _mockCaptureDevicesEnabled]):
2555         (-[WKPreferences _setMockCaptureDevicesEnabled:]):
2556         * WebProcess/WebPage/WebPage.cpp:
2557         (WebKit::WebPage::updatePreferences):
2558
2559 2015-12-11  Joseph Pecoraro  <pecoraro@apple.com>
2560
2561         check-for-inappropriate-objc-class-names should check all class names, not just externally visible ones
2562         https://bugs.webkit.org/show_bug.cgi?id=152156
2563
2564         Reviewed by Dan Bernstein.
2565
2566         * UIProcess/ios/WebVideoFullscreenManagerProxy.mm:
2567         (WebKit::WebVideoFullscreenManagerProxy::setupFullscreenWithID):
2568         * UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.h:
2569         * UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:
2570         (WebKit::RemoteLayerTreeDrawingAreaProxy::RemoteLayerTreeDrawingAreaProxy):
2571         Rename internal classes with "_WK" prefix.
2572
2573 2015-12-10  Eric Carlson  <eric.carlson@apple.com>
2574
2575         [MediaStream] Expose media capture devices persistent permissions to WebCore
2576         https://bugs.webkit.org/show_bug.cgi?id=152087
2577
2578         Reviewed by Chris Dumez.
2579
2580         * CMakeLists.txt: Add UserMediaPermissionCheckProxy.cpp and WKUserMediaPermissionCheck.cpp.
2581
2582         * Shared/API/APIObject.h: Define UserMediaPermissionCheck.
2583
2584         * Shared/API/c/WKBase.h: Add WKUserMediaPermissionCheckRef typedef.
2585
2586         * UIProcess/API/APIUIClient.h:
2587         (API::UIClient::checkUserMediaPermissionForOrigin): New.
2588
2589         * UIProcess/API/C/WKAPICast.h: Add WKUserMediaPermissionCheckRef/UserMediaPermissionCheckProxy mapping.
2590
2591         * UIProcess/API/C/WKPage.cpp:
2592         (WKPageSetPageUIClient): Implement checkUserMediaPermissionForOrigin.
2593
2594         * UIProcess/API/C/WKPageUIClient.h: Add WKCheckUserMediaPermissionCallback typedef and add
2595           checkUserMediaPermissionForOrigin to WKPageUIClientV6.
2596
2597         * UIProcess/API/C/WKUserMediaPermissionCheck.cpp: Added.
2598         (WKUserMediaPermissionCheckGetTypeID):
2599         (WKUserMediaPermissionCheckSetHasPermission):
2600
2601         * UIProcess/API/C/WKUserMediaPermissionCheck.h: Added.
2602
2603         * UIProcess/UserMediaPermissionCheckProxy.cpp: Added.
2604         (WebKit::UserMediaPermissionCheckProxy::UserMediaPermissionCheckProxy):
2605         (WebKit::UserMediaPermissionCheckProxy::setHasPermission):
2606         (WebKit::UserMediaPermissionCheckProxy::invalidate):
2607         * UIProcess/UserMediaPermissionCheckProxy.h: Added.
2608         (WebKit::UserMediaPermissionCheckProxy::create):
2609         * UIProcess/UserMediaPermissionRequestManagerProxy.cpp:
2610         (WebKit::UserMediaPermissionRequestManagerProxy::invalidateRequests):
2611         (WebKit::UserMediaPermissionRequestManagerProxy::createRequest):
2612         (WebKit::UserMediaPermissionRequestManagerProxy::didReceiveUserMediaPermissionDecision):
2613         (WebKit::UserMediaPermissionRequestManagerProxy::createUserMediaPermissionCheck):
2614         (WebKit::UserMediaPermissionRequestManagerProxy::didCompleteUserMediaPermissionCheck):
2615         * UIProcess/UserMediaPermissionRequestManagerProxy.h:
2616         * UIProcess/WebPageProxy.cpp:
2617         (WebKit::WebPageProxy::requestUserMediaPermissionForFrame):
2618         (WebKit::WebPageProxy::checkUserMediaPermissionForFrame):
2619         (WebKit::WebPageProxy::requestNotificationPermission):
2620         * UIProcess/WebPageProxy.h:
2621         * UIProcess/WebPageProxy.messages.in:
2622
2623         * WebKit2.xcodeproj/project.pbxproj: Add UserMediaPermissionCheckProxy.*, and WKUserMediaPermissionCheck.*.
2624
2625         * WebProcess/MediaStream/UserMediaPermissionRequestManager.cpp:
2626         (WebKit::UserMediaPermissionRequestManager::startUserMediaRequest): Renamed from startRequest.
2627         (WebKit::UserMediaPermissionRequestManager::cancelUserMediaRequest): Renamed from cancelRequest.
2628         (WebKit::UserMediaPermissionRequestManager::didReceiveUserMediaPermissionDecision): m_requestToIDMap ->
2629           m_userMediaRequestToIDMap.remove.
2630         (WebKit::UserMediaPermissionRequestManager::startUserMediaPermissionCheck): New, start the request.
2631         (WebKit::UserMediaPermissionRequestManager::cancelUserMediaPermissionCheck): New, cancel
2632           the request.
2633         (WebKit::UserMediaPermissionRequestManager::didCompleteUserMediaPermissionCheck): New, 
2634           all the request completion method.
2635         (WebKit::UserMediaPermissionRequestManager::startRequest): Deleted.
2636         (WebKit::UserMediaPermissionRequestManager::cancelRequest): Deleted.
2637         * WebProcess/MediaStream/UserMediaPermissionRequestManager.h:
2638
2639         * WebProcess/WebCoreSupport/WebUserMediaClient.cpp:
2640         (WebKit::WebUserMediaClient::requestUserMediaAccess): startRequest -> startUserMediaRequest.
2641         (WebKit::WebUserMediaClient::cancelUserMediaAccessRequest): cancelRequest -> cancelUserMediaRequest.
2642         (WebKit::WebUserMediaClient::checkUserMediaPermission): New.
2643         (WebKit::WebUserMediaClient::cancelUserMediaPermissionCheck): New.
2644         * WebProcess/WebCoreSupport/WebUserMediaClient.h:
2645
2646         * WebProcess/WebPage/WebPage.cpp:
2647         (WebKit::WebPage::didCompleteUserMediaPermissionCheck): New.
2648         * WebProcess/WebPage/WebPage.h:
2649         * WebProcess/WebPage/WebPage.messages.in: Add DidCompleteUserMediaPermissionCheck.
2650
2651 2015-12-10  Joseph Pecoraro  <pecoraro@apple.com>
2652
2653         Remote Inspector: Verify the identity of the other side of XPC connections
2654         https://bugs.webkit.org/show_bug.cgi?id=152153
2655
2656         Reviewed by Brian Burg.
2657
2658         * Shared/mac/SandboxUtilities.mm:
2659         * UIProcess/ApplicationStateTracker.mm:
2660         Use new header.
2661
2662 2015-12-10  Alex Christensen  <achristensen@webkit.org>
2663
2664         REGRESSION (r192796) WKBundlePageResourceLoadClient should be able to setHTTPBody in willSendRequestForFrame
2665         https://bugs.webkit.org/show_bug.cgi?id=152022
2666         rdar://problem/23763584
2667
2668         Reviewed by Darin Adler.
2669
2670         * Shared/API/c/WKURLRequest.cpp:
2671         (WKURLRequestCopyHTTPMethod):
2672         (WKURLRequestCopyWithHTTPBody):
2673         (WKURLRequestSetDefaultTimeoutInterval):
2674         * Shared/API/c/WKURLRequest.h:
2675         Make WKURLRequestCopyWithHTTPBody SPI for testing.
2676         * Shared/API/c/mac/WKURLRequestNS.mm:
2677         (WKURLRequestCreateWithNSURLRequest):
2678         Crash if someone tries to use an NSURLRequest with HTTPBodyStream, which will not work with the network process.
2679         * WebProcess/InjectedBundle/InjectedBundlePageResourceLoadClient.cpp:
2680         (WebKit::InjectedBundlePageResourceLoadClient::willSendRequestForFrame):
2681         Use an HTTP body if the client's willSendRequestForFrame returned one.
2682         This is the functional change of this patch.
2683
2684 2015-12-10  Zan Dobersek  <zdobersek@igalia.com>
2685
2686         [CoordinatedGraphics] Reserve capacity for the children vector in CoordinatedGraphicsScene::setLayerChildrenIfNeeded()
2687         https://bugs.webkit.org/show_bug.cgi?id=152117
2688
2689         Reviewed by Martin Robinson.
2690
2691         * Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp:
2692         (WebKit::CoordinatedGraphicsScene::setLayerChildrenIfNeeded): Reserve the capacity
2693         for the new Vector that will contain the same number of items as the Vector
2694         on the CoordinatedGraphicsLayerState object.
2695
2696 2015-12-09  Daniel Bates  <dabates@apple.com>
2697
2698         [iOS] Bail out if the page proxy is invalid when WebPageProxy::processWillBecome{Foreground, Suspended}() are called
2699         https://bugs.webkit.org/show_bug.cgi?id=151877
2700
2701         Reviewed by Darin Adler.
2702
2703         We cannot assume that a WebPageProxy is in a valid state when WebPageProxy::processWillBecome{Foreground, Suspended}()
2704         are called because these callbacks may occur after the web process crashed and before a
2705         WebPageProxy attaches to a new web process (and hence is considered in a valid state).
2706
2707         * UIProcess/WebPageProxy.cpp:
2708         (WebKit::WebPageProxy::processWillBecomeSuspended): Early return if the page proxy is invalid.
2709         (WebKit::WebPageProxy::processWillBecomeForeground): Ditto.
2710
2711 2015-12-09  Commit Queue  <commit-queue@webkit.org>
2712
2713         Unreviewed, rolling out r193864.
2714         https://bugs.webkit.org/show_bug.cgi?id=152100
2715
2716         caused all inspector tests to assert in WK2 Debug (Requested
2717         by brrian on #webkit).
2718
2719         Reverted changeset:
2720
2721         "Web Inspector: reproducible debug ASSERT when inspecting the
2722         inspector (WK2)"
2723         https://bugs.webkit.org/show_bug.cgi?id=152080
2724         http://trac.webkit.org/changeset/193864
2725
2726 2015-12-09  Brian Burg  <bburg@apple.com>
2727
2728         Web Inspector: reproducible debug ASSERT when inspecting the inspector (WK2)
2729         https://bugs.webkit.org/show_bug.cgi?id=152080
2730
2731         Reviewed by Timothy Hatcher.
2732
2733         We hit an assert underneath ChildProcessProxy::addMessageReceiver because
2734         we tried to connect the inspector page and inspected page more than once.
2735         This relationship is already set up in the constructor of WebProcessProxy.
2736
2737         * UIProcess/WebInspectorProxy.cpp:
2738         (WebKit::WebInspectorProxy::eagerlyCreateInspectorPage):
2739
2740 2015-12-09  Gyuyoung Kim  <gyuyoung.kim@webkit.org>
2741
2742         [EFL] Need to change expectation result in ewk_settings_offline_web_application_cache_enabled API test
2743         https://bugs.webkit.org/show_bug.cgi?id=152063
2744
2745         Reviewed by Csaba Osztrogonác.
2746
2747         Expect false initial value of ewk_settings_offline_web_application_cache_enabled_get()
2748         because r193812 didn't enable it by default.
2749
2750         * UIProcess/API/efl/tests/test_ewk2_settings.cpp:
2751         (TEST_F):
2752
2753 2015-12-09  Gwang Yoon Hwang  <yoon@igalia.com>
2754
2755         [ThreadedCompositor] Add support for HiDPI
2756         https://bugs.webkit.org/show_bug.cgi?id=152071
2757
2758         Reviewed by Carlos Garcia Campos.
2759
2760         * Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp:
2761         (WebKit::ThreadedCompositor::setDeviceScaleFactor): Added to receive the
2762         device scale factor from the layer tree host.
2763         (WebKit::ThreadedCompositor::renderLayerTree):
2764         Apply device scale factor before rendering the page.
2765         * Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h:
2766         * WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.cpp:
2767         (WebKit::ThreadedCoordinatedLayerTreeHost::deviceOrPageScaleFactorChanged):
2768         Send a updated device scale factor to the compositing thread.
2769
2770 2015-12-09  Ryuan Choi  <ryuan.choi@navercorp.com>
2771
2772         [CoordinatedGraphics] Remove unnecessary guards in CoordinatedDrawingArea
2773         https://bugs.webkit.org/show_bug.cgi?id=152068
2774
2775         Reviewed by Gyuyoung Kim.
2776
2777         CoordinatedDrawingArea is only for UI side compositor of CoordinatedGraphics.
2778         So, COORDINATED_GRAPHICS_MULTIPROCESS guards are not necessary.
2779         This patch also removes COORDINATED_GRAPHICS_MULTIPROCESS guards from DrawingAreaImpl
2780         because of same reason.
2781
2782         * UIProcess/CoordinatedGraphics/CoordinatedDrawingAreaProxy.cpp:
2783         (WebKit::CoordinatedDrawingAreaProxy::CoordinatedDrawingAreaProxy): Deleted.
2784         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.cpp:
2785         (WebKit::CoordinatedDrawingArea::CoordinatedDrawingArea): Deleted.
2786         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.h:
2787         * WebProcess/WebPage/DrawingAreaImpl.h:
2788
2789 2015-12-09  Mario Sanchez Prada  <mario@endlessm.com>
2790
2791         [GTK] Crash in WebProcess when loading large content with custom URI schemes
2792         https://bugs.webkit.org/show_bug.cgi?id=144262
2793
2794         Reviewed by Carlos Garcia Campos.
2795
2796         Properly handle scenarios where errors happen after reading the first
2797         chunk of data coming from the GInputStream provided by the application.
2798
2799         * UIProcess/API/gtk/WebKitWebContextPrivate.h:
2800         * UIProcess/API/gtk/WebKitWebContext.cpp:
2801         (webkitWebContextIsLoadingCustomProtocol): New, checks whether a load
2802         is still in progress, after the startLoading method has been called.
2803         * UIProcess/API/gtk/WebKitURISchemeRequest.cpp:
2804         (webkitURISchemeRequestReadCallback): Early return if the stream has been
2805         cancelled on finish_error, so that we make sure we don't keep on reading
2806         the GInputStream after that point.
2807         (webkit_uri_scheme_request_finish_error): Don't send a didFailWithError
2808         message to the Network process if the load is not longer in progress.
2809         * Shared/Network/CustomProtocols/soup/CustomProtocolManagerImpl.cpp:
2810         (WebKit::CustomProtocolManagerImpl::didFailWithError): Handle the case where
2811         an error is notified from the UI process after the first chunk has been read.
2812         (WebKit::CustomProtocolManagerImpl::didReceiveResponse): Handle the case where
2813         data might no longer be available if an error happened even before this point.
2814         * WebProcess/soup/WebKitSoupRequestInputStream.h:
2815         * WebProcess/soup/WebKitSoupRequestInputStream.cpp:
2816         (webkitSoupRequestInputStreamDidFailWithError): Notify the custom GInputStream
2817         that we no longer want to keep reading data in chunks due to a specific error.
2818         (webkitSoupRequestInputStreamReadAsync): Early finish the GTask with a specific
2819         error whenever webkitSoupRequestInputStreamDidFailWithError() has been called.
2820
2821 2015-12-09  Ryuan Choi  <ryuan.choi@navercorp.com>
2822
2823         [CoordinatedGraphics][EFL] Fix unhandled web process message when launching MiniBrowser
2824         https://bugs.webkit.org/show_bug.cgi?id=152048
2825
2826         Reviewed by Gyuyoung Kim.
2827
2828         WebPage should be initialized before updating preferences.
2829
2830         * UIProcess/API/C/CoordinatedGraphics/WKView.cpp:
2831         (WKViewInitialize): Deleted.
2832         * UIProcess/API/C/CoordinatedGraphics/WKView.h:
2833         * UIProcess/API/efl/EwkView.cpp:
2834         (EwkView::EwkView):
2835         Calls WKViewSetIsActive instead of WKViewInitialize not to change the behavior
2836         of EFL port.
2837         * UIProcess/CoordinatedGraphics/WebView.cpp:
2838         (WebKit::WebView::WebView):
2839         Initialize just before creating WebPage because there is not use case to separate
2840         initializing WebPage from creating in CoordinatedGraphics.
2841         (WebKit::WebView::initialize): Deleted.
2842         * UIProcess/CoordinatedGraphics/WebView.h:
2843
2844 2015-12-09  Carlos Garcia Campos  <cgarcia@igalia.com>
2845
2846         [GTK] Add API to handle beforeunload events
2847         https://bugs.webkit.org/show_bug.cgi?id=139090
2848
2849         Reviewed by Gustavo Noronha Silva.
2850
2851         beforeunload is fired when a page is about to be closed, to ask
2852         the user for confirmation. This happens when reloading a page,
2853         when navigating to another page or when the page is closed by a
2854         user action (a tab or window closed). In the first two cases, the
2855         event is automatically fired by WebCore, but in the case of a user
2856         action we need additional API to ensure the event is fired before
2857         the page is closed. A new script dialog type has been added to
2858         handle beforeunload events and webkit_web_view_try_close() to
2859         allow applications to try to close the page.
2860
2861         * UIProcess/API/gtk/WebKitScriptDialog.cpp:
2862         (webkit_script_dialog_confirm_set_confirmed): BeforeUnloadConfirm
2863         dialogs can also be confirmed.
2864         * UIProcess/API/gtk/WebKitScriptDialog.h: Add
2865         WEBKIT_SCRIPT_DIALOG_BEFORE_UNLOAD_CONFIRM script dialog type.
2866         * UIProcess/API/gtk/WebKitUIClient.cpp: Implement
2867         canRunBeforeUnloadConfirmPanel() and runBeforeUnloadConfirmPanel().
2868         * UIProcess/API/gtk/WebKitWebView.cpp:
2869         (webkitWebViewCreateJavaScriptDialog): Add secondaryText optional
2870         parameter for BeforeUnloadConfirm dialogs. Do not set the default
2871         response if the dialog was created without buttons.
2872         (webkitWebViewScriptDialog): Handle
2873         WEBKIT_SCRIPT_DIALOG_BEFORE_UNLOAD_CONFIRM script dialog type to
2874         create a message dialog for beforeunlos events.
2875         (webkit_web_view_class_init): Update documentation of
2876         WebKitWebView::close and WebKitWebView::script-dialog.
2877         (webkitWebViewRunJavaScriptBeforeUnloadConfirm): Emit WebKitWebView::script-dialog.
2878         (webkit_web_view_try_close): Try to close the page.
2879         * UIProcess/API/gtk/WebKitWebView.h:
2880         * UIProcess/API/gtk/WebKitWebViewPrivate.h:
2881         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbol.
2882
2883 2015-12-09  Gyuyoung Kim  <gyuyoung.kim@webkit.org>
2884
2885         [EFL] Missing to set ignoreTLSError to NetworkProcess
2886         https://bugs.webkit.org/show_bug.cgi?id=152047
2887
2888         Reviewed by Csaba Osztrogonác.
2889
2890         NetworkProcess has been enabled for all ports since r192796 though, EFL port
2891         didn't send the ignoreTLSError value to NetworkProcess. This has caused failure of EFL API tests
2892         related with ssl feature.
2893
2894         * UIProcess/efl/WebProcessPoolEfl.cpp:
2895         (WebKit::WebProcessPool::setIgnoreTLSErrors):
2896
2897 2015-12-09  Gyuyoung Kim  <gyuyoung.kim@webkit.org>
2898
2899         [EFL] REGRESSION(r193616): WKPreferences test has been failed since r193616
2900         https://bugs.webkit.org/show_bug.cgi?id=151942
2901
2902         Reviewed by Darin Adler.
2903
2904         As wkpreference settings were moved from EwkView to WKPreferenceEfl, the offline-web-application-cache feature
2905         is enabled by default when running API test. It seems this option should be enabled by MiniBrowser.
2906
2907         * UIProcess/efl/WebPreferencesEfl.cpp:
2908         (WebKit::WebPreferences::platformInitializeStore): Remove to enable web application cache feature here.
2909
2910 2015-12-09  Ryuan Choi  <ryuan.choi@navercorp.com>
2911
2912         [CoordinatedGraphics] layerTreeHost always exist in CoordinatedDrawingArea
2913         https://bugs.webkit.org/show_bug.cgi?id=151987
2914
2915         Reviewed by Darin Adler.
2916
2917         CoordinatedGraphics using UI side compositor always forces accelerated compositing.
2918         This patch cleans up dead code for layerTreeHost which always exists.
2919
2920         * UIProcess/CoordinatedGraphics/CoordinatedDrawingAreaProxy.cpp:
2921         (WebKit::CoordinatedDrawingAreaProxy::paint): Deleted.
2922         (WebKit::CoordinatedDrawingAreaProxy::setBackingStoreIsDiscardable): Deleted.
2923         (WebKit::CoordinatedDrawingAreaProxy::update): Deleted.
2924         (WebKit::CoordinatedDrawingAreaProxy::didUpdateBackingStoreState): Deleted.
2925         (WebKit::CoordinatedDrawingAreaProxy::exitAcceleratedCompositingMode): Deleted.
2926         (WebKit::CoordinatedDrawingAreaProxy::incorporateUpdate): Deleted.
2927         (WebKit::CoordinatedDrawingAreaProxy::enterAcceleratedCompositingMode): Deleted.
2928         (WebKit::CoordinatedDrawingAreaProxy::discardBackingStoreSoon): Deleted.
2929         (WebKit::CoordinatedDrawingAreaProxy::discardBackingStore): Deleted.
2930         * UIProcess/CoordinatedGraphics/CoordinatedDrawingAreaProxy.h:
2931         (WebKit::CoordinatedDrawingAreaProxy::setBackingStoreIsDiscardable):
2932         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.cpp:
2933         (WebKit::CoordinatedDrawingArea::CoordinatedDrawingArea): Deleted.
2934         (WebKit::CoordinatedDrawingArea::layerHostDidFlushLayers): Deleted.
2935         (WebKit::CoordinatedDrawingArea::scheduleCompositingLayerFlush): Deleted.
2936         (WebKit::CoordinatedDrawingArea::didUpdate): Deleted.
2937         (WebKit::CoordinatedDrawingArea::enterAcceleratedCompositingMode): Deleted.
2938         (WebKit::CoordinatedDrawingArea::scheduleDisplay): Deleted.
2939         (WebKit::CoordinatedDrawingArea::displayTimerFired): Deleted.
2940         (WebKit::CoordinatedDrawingArea::display): Deleted.
2941         (WebKit::shouldPaintBoundsRect): Deleted.
2942         (WebKit::CoordinatedDrawingArea::attachViewOverlayGraphicsLayer): Deleted.
2943         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.h:
2944
2945 2015-12-08  Alex Christensen  <achristensen@webkit.org>
2946
2947         Progress towards implementing downloads with NetworkSession
2948         https://bugs.webkit.org/show_bug.cgi?id=151883
2949
2950         Reviewed by Brady Eidson.
2951
2952         * NetworkProcess/NetworkConnectionToWebProcess.cpp:
2953         (WebKit::NetworkConnectionToWebProcess::convertMainResourceLoadToDownload):
2954         * NetworkProcess/NetworkLoad.cpp:
2955         (WebKit::NetworkLoad::~NetworkLoad):
2956         (WebKit::NetworkLoad::continueDidReceiveResponse):
2957         (WebKit::NetworkLoad::convertTaskToDownload):
2958         (WebKit::NetworkLoad::willPerformHTTPRedirection):
2959         (WebKit::NetworkLoad::didReceiveChallenge):
2960         (WebKit::NetworkLoad::didReceiveResponse):
2961         (WebKit::NetworkLoad::didReceiveData):
2962         (WebKit::NetworkLoad::didCompleteWithError):
2963         (WebKit::NetworkLoad::didBecomeDownload):
2964         (WebKit::NetworkLoad::didReceiveResponseAsync):
2965         (WebKit::NetworkLoad::continueCanAuthenticateAgainstProtectionSpace):
2966         * NetworkProcess/NetworkLoad.h:
2967         * NetworkProcess/NetworkLoadClient.h:
2968         * NetworkProcess/NetworkResourceLoader.cpp:
2969         (WebKit::NetworkResourceLoader::cleanup):
2970         (WebKit::NetworkResourceLoader::didConvertToDownload):
2971         (WebKit::NetworkResourceLoader::abort):
2972         (WebKit::NetworkResourceLoader::didConvertHandleToDownload): Deleted.
2973         * NetworkProcess/NetworkResourceLoader.h:
2974         * NetworkProcess/NetworkSession.h:
2975         (WebKit::NetworkSessionTaskClient::~NetworkSessionTaskClient):
2976         (WebKit::NetworkSession::~NetworkSession): Deleted.
2977         * NetworkProcess/cache/NetworkCacheSpeculativeLoad.h:
2978         * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
2979         (-[NetworkSessionDelegate URLSession:downloadTask:didWriteData:totalBytesWritten:totalBytesExpectedToWrite:]):
2980         (-[NetworkSessionDelegate URLSession:dataTask:didBecomeDownloadTask:]):
2981         (WebKit::NetworkSession::NetworkSession):
2982         (WebKit::NetworkSession::~NetworkSession):
2983         (WebKit::NetworkSession::createDataTaskWithRequest):
2984         * Shared/Downloads/Download.h:
2985         * Shared/Downloads/DownloadManager.h:
2986         (WebKit::DownloadManager::isDownloading):
2987         (WebKit::DownloadManager::activeDownloadCount):
2988
2989 2015-12-08  Joseph Pecoraro  <pecoraro@apple.com>
2990
2991         Create a Sandbox SPI header
2992         https://bugs.webkit.org/show_bug.cgi?id=151981
2993
2994         Reviewed by Andy Estes.
2995
2996         * PluginProcess/mac/PluginProcessShim.mm:
2997         * Shared/ios/ChildProcessIOS.mm:
2998         * Shared/mac/ChildProcessMac.mm:
2999         * Shared/mac/SandboxUtilities.mm:
3000
3001 2015-12-08  Eric Carlson  <eric.carlson@apple.com>
3002
3003         [MediaStream] Rename UserMediaClient and UserMediaController methods
3004         https://bugs.webkit.org/show_bug.cgi?id=152001
3005
3006         Reviewed by Brady Eidson.
3007
3008         * WebProcess/WebCoreSupport/WebUserMediaClient.cpp:
3009         (WebKit::WebUserMediaClient::pageDestroyed):
3010         (WebKit::WebUserMediaClient::requestUserMediaAccess):
3011         (WebKit::WebUserMediaClient::cancelUserMediaAccessRequest):
3012         (WebKit::WebUserMediaClient::requestPermission): Deleted.
3013         (WebKit::WebUserMediaClient::cancelRequest): Deleted.
3014         * WebProcess/WebCoreSupport/WebUserMediaClient.h:
3015
3016 2015-12-08  Tomas Popela  <tpopela@redhat.com>
3017
3018         [GTK] Remove an unused variable from WebKitWebContext
3019         https://bugs.webkit.org/show_bug.cgi?id=151999
3020
3021         Reviewed by Carlos Garcia Campos.
3022
3023         * UIProcess/API/gtk/WebKitWebContext.cpp:
3024
3025 2015-12-08  Chris Dumez  <cdumez@apple.com>
3026
3027         Add diagnostic logging to measure speculative revalidation accuracy
3028         https://bugs.webkit.org/show_bug.cgi?id=151953
3029         <rdar://problem/23092196>
3030
3031         Reviewed by Darin Adler.
3032
3033         We track the following:
3034         1. Resources we knew about AND did not get requested
3035            A. We did not speculate (Good)
3036            B. We speculated but did not go to network (Bad)
3037            C. We speculated and went to network (Very bad)
3038         2. Resources we did not know about (Neutral)
3039         3. Resources we knew about AND got requested
3040            A. We did not speculate (Bad)
3041            B. We speculated but did not go to network (Good)
3042            C. We speculated and went to network (Very good)
3043
3044         * NetworkProcess/cache/NetworkCache.cpp:
3045         (WebKit::NetworkCache::Cache::retrieve):
3046         * NetworkProcess/cache/NetworkCacheSpeculativeLoadManager.cpp:
3047         (WebKit::NetworkCache::allSpeculativeLoadingDiagnosticMessages):
3048         (WebKit::NetworkCache::printSpeculativeLoadingDiagnosticMessageCounts):
3049         (WebKit::NetworkCache::logSpeculativeLoadingDiagnosticMessage):
3050         (WebKit::NetworkCache::SpeculativeLoadManager::ExpiringEntry::ExpiringEntry):
3051         (WebKit::NetworkCache::SpeculativeLoadManager::PreloadedEntry::PreloadedEntry):
3052         (WebKit::NetworkCache::SpeculativeLoadManager::PreloadedEntry::wasRevalidated):
3053         (WebKit::NetworkCache::SpeculativeLoadManager::PendingFrameLoad::markLoadAsCompleted):
3054         (WebKit::NetworkCache::SpeculativeLoadManager::retrieve):
3055         (WebKit::NetworkCache::SpeculativeLoadManager::addPreloadedEntry):
3056         (WebKit::NetworkCache::SpeculativeLoadManager::revalidateEntry):
3057         (WebKit::NetworkCache::SpeculativeLoadManager::preloadEntry):
3058         (WebKit::NetworkCache::SpeculativeLoadManager::startSpeculativeRevalidation):
3059         (WebKit::NetworkCache::makeSubresourcesKey): Deleted.
3060         (WebKit::NetworkCache::constructRevalidationRequest): Deleted.
3061         (WebKit::NetworkCache::responseNeedsRevalidation): Deleted.
3062         (WebKit::NetworkCache::SpeculativeLoadManager::PendingFrameLoad::saveToDiskIfReady): Deleted.
3063         (WebKit::NetworkCache::SpeculativeLoadManager::retrieveEntryFromStorage): Deleted.
3064         (WebKit::NetworkCache::SpeculativeLoadManager::satisfyPendingRequests): Deleted.
3065         * NetworkProcess/cache/NetworkCacheSpeculativeLoadManager.h:
3066
3067 2015-12-08  Csaba Osztrogonác  <ossy@webkit.org>
3068
3069         [EFL] REGRESSION(r173394): MiniBrowser stucked in an infinite loop if NETWORK_CACHE is disabled
3070         https://bugs.webkit.org/show_bug.cgi?id=137692
3071
3072         Reviewed by Darin Adler.
3073
3074         * WebProcess/Network/WebLoaderStrategy.cpp:
3075         (WebKit::maximumBufferingTime): Disable caching if NETWORK_CACHE is disabled.
3076
3077 2015-12-08  Ryuan Choi  <ryuan.choi@navercorp.com>
3078
3079         [EFL] Add API to provide preferences before creating ewk_view
3080         https://bugs.webkit.org/show_bug.cgi?id=151587
3081
3082         Reviewed by Gyuyoung Kim.
3083
3084         This patch adds ewk_view_configuration_settings_get to provide preferences
3085         before createing ewk_view.
3086
3087         * PlatformEfl.cmake:
3088         * UIProcess/API/efl/ewk_view_configuration.cpp:
3089         (EwkViewConfiguration::EwkViewConfiguration):
3090         (ewk_view_configuration_settings_get):
3091         * UIProcess/API/efl/ewk_view_configuration.h:
3092         * UIProcess/API/efl/ewk_view_configuration_private.h:
3093         (EwkViewConfiguration::pageGroup):
3094         * UIProcess/API/efl/tests/test_ewk2_view_configuration.cpp:
3095         (TEST_F): Added test case for ewk_view_configuration_settings_get().
3096
3097 2015-12-07  Gustavo Noronha Silva  <gns@gnome.org>
3098
3099         [GTK] Notify WebCore when notification is clicked
3100         https://bugs.webkit.org/show_bug.cgi?id=151951
3101
3102         Reviewed by Carlos Garcia Campos.
3103
3104         * UIProcess/API/gtk/WebKitNotification.cpp:
3105         (webkit_notification_class_init): new clicked signal.
3106         (webkit_notification_clicked): method to emit the clicked signal.
3107         * UIProcess/API/gtk/WebKitNotification.h:
3108         * UIProcess/API/gtk/WebKitNotificationProvider.cpp:
3109         (WebKitNotificationProvider::notificationClickedCallback): handle the clicked signal and tell WebProcess about the click.
3110         (WebKitNotificationProvider::show): connect to the clicked signal in addition to closed.
3111         * UIProcess/API/gtk/WebKitNotificationProvider.h:
3112         * UIProcess/API/gtk/WebKitWebView.cpp:
3113         (notifyNotificationClicked): handle the click on our libnotify notification.
3114         (webkitWebViewShowNotification): add the "default" action to our libnotify notification to be notified of the click.
3115         * UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt:
3116
3117 2015-12-07  Commit Queue  <commit-queue@webkit.org>
3118
3119         Unreviewed, rolling out r193655.
3120         https://bugs.webkit.org/show_bug.cgi?id=151970
3121
3122         This change broke existing LayoutTests on mac-wk2 (Requested
3123         by ryanhaddad on #webkit).
3124
3125         Reverted changeset:
3126
3127         "UIProcess should determine AppNap state for WebPage"
3128         https://bugs.webkit.org/show_bug.cgi?id=151964
3129         http://trac.webkit.org/changeset/193655
3130
3131 2015-12-05  Gavin Barraclough  <barraclough@apple.com>
3132
3133         UIProcess should determine AppNap state for WebPage
3134         https://bugs.webkit.org/show_bug.cgi?id=151964
3135
3136         Reviewed by Anders Carlson.
3137
3138         Step 1 in unifying this with the iOS process suppression mechanism is to move the decision out of the WebContent process.
3139
3140         * UIProcess/WebPageProxy.cpp:
3141         (WebKit::WebPageProxy::WebPageProxy):
3142         (WebKit::WebPageProxy::dispatchViewStateChange):
3143         (WebKit::WebPageProxy::setPageActivityState):
3144         (WebKit::WebPageProxy::updateActivityToken):
3145         (WebKit::WebPageProxy::preferencesDidChange):
3146         * UIProcess/WebPageProxy.h:
3147         (WebKit::WebPageProxy::isInWindow):
3148         (WebKit::WebPageProxy::didUpdateViewState):
3149         * UIProcess/WebPageProxy.messages.in:
3150             - WebPage now propagates PageActivityState to the WebPageProxy, for use
3151               determining the supression state of the WebProcess.
3152         * WebProcess/WebPage/WebPage.cpp:
3153         (WebKit::m_shouldDispatchFakeMouseMoveEvents):
3154         (WebKit::WebPage::setPageActivityState):
3155         (WebKit::WebPage::setUserActivityStarted):
3156         (WebKit::WebPage::setViewState):
3157         (WebKit::WebPage::updatePreferences):
3158         (WebKit::WebPage::updateUserActivity): Deleted.
3159         * WebProcess/WebPage/WebPage.h:
3160         * WebProcess/WebPage/WebPage.messages.in:
3161             - WebPage no longer determines when to update it's own UserActivity - instead,
3162               let the UI process do so. As such, no longer need to track whether process
3163               supression is enabled. Instead, add message to
3164
3165 2015-12-07  Chris Dumez  <cdumez@apple.com>
3166
3167         [WK2] Regression(r187691): If a page is showing an auth pane in one tab, any new tabs with same page hang until credentials are entered in first tab
3168         https://bugs.webkit.org/show_bug.cgi?id=151960
3169         <rdar://problem/23618112>
3170
3171         Reviewed by Alex Christensen.
3172
3173         After r187691, if a page is showing an auth pane in one tab, any new
3174         tabs with same page hang until credentials are entered in first tab.
3175         This is because we coalescing all authentication challenges from the
3176         same domain, no matter what tab they are for. This can be confusing
3177         so we now only coalesce authentication challenges within each tab,
3178         by leveraging the pageID (in addition to the domain).
3179
3180         * Shared/Authentication/AuthenticationManager.cpp:
3181         (WebKit::AuthenticationManager::shouldCoalesceChallenge):
3182         (WebKit::AuthenticationManager::coalesceChallengesMatching):
3183         (WebKit::AuthenticationManager::didReceiveAuthenticationChallenge):
3184         * Shared/Authentication/AuthenticationManager.h:
3185
3186 2015-12-07  Beth Dakin  <bdakin@apple.com>
3187
3188         Hook up request and show for typing candidates in WK1
3189         https://bugs.webkit.org/show_bug.cgi?id=151831
3190         -and corresponding-
3191         <rdar://problem/23751214>
3192
3193         Reviewed by Enrica Casucci.
3194
3195         Empty client for now.
3196         * WebProcess/WebCoreSupport/WebEditorClient.h:
3197
3198 2015-12-07  Philippe Normand  <pnormand@igalia.com>
3199
3200         [GTK][Mac] socketpair assertion failure
3201         https://bugs.webkit.org/show_bug.cgi?id=151293
3202
3203         Reviewed by Carlos Garcia Campos.
3204
3205         * Platform/IPC/unix/ConnectionUnix.cpp: Don't use SEQPACKET sockets on Darwin.
3206
3207 2015-12-07  Gwang Yoon Hwang  <yoon@igalia.com>
3208
3209         [ThreadedCompositor] Add support for PlatformLayer.
3210         https://bugs.webkit.org/show_bug.cgi?id=143299
3211
3212         Reviewed by Žan Doberšek.
3213
3214         * Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp:
3215         (WebKit::CoordinatedGraphicsScene::paintToCurrentGLContext):
3216         Swap pending buffers of TextureMapperPlatformLayerProxies before painting contents.
3217         (WebKit::CoordinatedGraphicsScene::syncPlatformLayerIfNeeded):
3218         In threaded compositor, CoordinatedGraphicsScence only cares about creation and deletion
3219         of platform layers.
3220
3221         (WebKit::CoordinatedGraphicsScene::onNewBufferAvailable):
3222         Whenever new buffer comes via TextureMapperPlatformLayerProxy, CoordinatedGraphicsScene will
3223         update the scene if it is needed.
3224
3225 2015-12-07  Mario Sanchez Prada  <mario@endlessm.com>
3226
3227         [GTK] Allow applications to force Accelerated Compositing mode
3228         https://bugs.webkit.org/show_bug.cgi?id=150558
3229
3230         Reviewed by Carlos Garcia Campos.
3231
3232         Enable forcing Accelerated Compositing mode to be always on if
3233         a WEBKIT_FORCE_COMPOSITING_MODE environment variable is set.
3234
3235         This can be useful for controlled environments where we know that
3236         AC always on works well enough, to get smoother animations.
3237
3238         * UIProcess/gtk/WebPreferencesGtk.cpp:
3239         (WebKit::WebPreferences::platformInitializeStore): Set forceCompositingMode
3240         setting to true if the environment variable is found.
3241
3242 2015-12-07  Jon Forsberg  <jon.orebro@gmail.com>
3243
3244         [GTK] Add webkit_uri_request_get_http_method
3245         https://bugs.webkit.org/show_bug.cgi?id=151601
3246
3247         Reviewed by Martin Robinson.
3248
3249         Add a method to get the HTTP method of a WebKitURIRequest.
3250
3251         * UIProcess/API/gtk/WebKitURIRequest.cpp:
3252         (webkit_uri_request_get_http_method):
3253         * UIProcess/API/gtk/WebKitURIRequest.h:
3254         * UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt:
3255
3256 2015-12-07  Carlos Garcia Campos  <cgarcia@igalia.com>
3257
3258         [GTK] Add WebKitWebPage::console-message-sent signal to Web Extensions API
3259         https://bugs.webkit.org/show_bug.cgi?id=79918
3260
3261         Reviewed by Gustavo Noronha Silva.
3262
3263         Add WebKitConsoleMessage boxed type that is passed to the
3264         WebKitWebPage::console-message-sent signal with all the details
3265         about the message.
3266
3267         * PlatformGTK.cmake: Add new files to compilation.
3268         * UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt: Add new symbols.
3269         * UIProcess/API/gtk/docs/webkit2gtk-4.0.types: Add webkit_console_message_get_type.
3270         * UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: Add new section to the docs.
3271         * WebProcess/InjectedBundle/API/APIInjectedBundlePageUIClient.h:
3272         (API::InjectedBundle::PageUIClient::willAddMessageToConsole): Add
3273         paramaters for all console message details.
3274         * WebProcess/InjectedBundle/API/gtk/WebKitConsoleMessage.cpp: Added.
3275         (webkit_console_message_copy):
3276         (webkit_console_message_free):
3277         (webkit_console_message_get_source):
3278         (webkit_console_message_get_level):
3279         (webkit_console_message_get_text):
3280         (webkit_console_message_get_line):
3281         (webkit_console_message_get_source_id):
3282         * WebProcess/InjectedBundle/API/gtk/WebKitConsoleMessage.h: Added.
3283         * WebProcess/InjectedBundle/API/gtk/WebKitConsoleMessagePrivate.h: Added.
3284         (_WebKitConsoleMessage::_WebKitConsoleMessage):
3285         * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
3286         (webkitWebPageDidSendConsoleMessage): Emit the
3287         WebKitWebPage::console-message-sent signal.
3288         (didReceiveResponseForResource): Generate a console message in
3289         case of HTTP failure >= 400 for consistency with the inspector.
3290         (didFailLoadForResource): Generate a console message in case of
3291         resource load failure for consistency with the inspector.
3292         (webkit_web_page_class_init): Add WebKitWebPage::console-message-sent signal.
3293         (webkitWebPageCreate): Set custom UI client.
3294         * WebProcess/InjectedBundle/API/gtk/webkit-web-extension.h:
3295         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
3296         (WebKit::InjectedBundlePageUIClient::willAddMessageToConsole):
3297         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
3298         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
3299         (WebKit::WebChromeClient::addMessageToConsole): Pass all the
3300         console message details to the ui client.
3301
3302 2015-12-07  Ryuan Choi  <ryuan.choi@navercorp.com>
3303
3304         [EFL] MiniBrowser doesn't exit when called ewk_view_try_close()
3305         https://bugs.webkit.org/show_bug.cgi?id=151934
3306
3307         Reviewed by Csaba Osztrogonác.
3308
3309         * UIProcess/API/efl/ewk_view.cpp:
3310         (ewk_view_try_close):
3311         Called window_close callback immediately when WKPageTryClose returns true.
3312         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
3313         (TEST_F): Improved test cases for try_close to test when content does not contain
3314         onbeforeunload callback.
3315
3316 2015-12-07  Jaehun Lim  <ljaehun.lim@samsung.com>
3317
3318         [EFL] Moving preference settings from EwkView to WebPreferencesEfl
3319         https://bugs.webkit.org/show_bug.cgi?id=151928
3320
3321         Reviewed by Gyuyoung Kim.
3322
3323         It implements WebPreferences::platformInitializeStore() in WebPreferencesEfl.cpp.
3324
3325         * UIProcess/API/efl/EwkView.cpp:
3326         (EwkView::EwkView):
3327         * UIProcess/efl/WebPreferencesEfl.cpp:
3328         (WebKit::WebPreferences::platformInitializeStore):
3329
3330 2015-12-04  Anders Carlsson  <andersca@apple.com>
3331
3332         Crash when secondary clicking on a link on yahoo.com
3333         https://bugs.webkit.org/show_bug.cgi?id=151900
3334         rdar://problem/23765149
3335
3336         Reviewed by Beth Dakin.
3337
3338         Don't use +[NSURL URLWithString:] since it doesn't handle invalid URLs as well as WebCore::URL.
3339
3340         * UIProcess/mac/WebContextMenuProxyMac.mm:
3341         (WebKit::WebContextMenuProxyMac::createShareMenuItem):
3342
3343 2015-12-04  Beth Dakin  <bdakin@apple.com>
3344
3345         Crash in clients using userData in 
3346         _immediateActionAnimationControllerForHitTestResult
3347         https://bugs.webkit.org/show_bug.cgi?id=151887
3348
3349         Rubber-stamped by Anders Carlsson.
3350
3351         Follow-up fix to handle null userData.
3352         * UIProcess/API/Cocoa/WKWebView.mm:
3353         (-[WKWebView _web_immediateActionAnimationControllerForHitTestResultInternal:withType:userData:]):
3354
3355 2015-12-04  Beth Dakin  <bdakin@apple.com>
3356
3357         Crash in clients using userData in 
3358         _immediateActionAnimationControllerForHitTestResult
3359         https://bugs.webkit.org/show_bug.cgi?id=151887
3360
3361         Reviewed by Sam Weinig.
3362
3363         Cast this correctly.
3364         * UIProcess/API/Cocoa/WKWebView.mm:
3365         (-[WKWebView _web_immediateActionAnimationControllerForHitTestResultInternal:withType:userData:]):
3366
3367 2015-12-04  Gavin Barraclough  <barraclough@apple.com>
3368
3369         Background state not being tracked correctly for PDFs on iOS
3370         https://bugs.webkit.org/show_bug.cgi?id=151886
3371
3372         Reviewed by Anders Carlson.
3373
3374         The problem here is that when viewing a PDF we don't have an ApplicationStateTracker.
3375         (While we do have a content view - which normally holds the ApplicationStateTracker -
3376         the content view is not in a window, and only has an ApplicationStateTracker while in a
3377         window). For now, let's give the WKPDFView an ApplicationStateTracker of its very own.
3378         In the future we may want to refactor ownership of the ApplicationStateTracker up to
3379         the WKWebView.
3380
3381         * UIProcess/API/Cocoa/WKWebView.mm:
3382         (-[WKWebView _isBackground]):
3383             - Added, checks background state of content/PDF view.
3384         * UIProcess/API/Cocoa/WKWebViewInternal.h:
3385             - expose _isBackground to PageClientImplIOS.
3386         * UIProcess/ApplicationStateTracker.h:
3387         (WebKit::ApplicationStateTracker::isInBackground):
3388         * UIProcess/ApplicationStateTracker.mm:
3389         (WebKit::isBackgroundState):
3390         (WebKit::ApplicationStateTracker::ApplicationStateTracker):
3391             - generalize WKContentView -> UIView, so this may now also be a WKPDFView.
3392         * UIProcess/ios/PageClientImplIOS.mm:
3393         (WebKit::PageClientImpl::isViewVisible):
3394             - check background state via the WKWebView.
3395         * UIProcess/ios/WKPDFView.h:
3396         * UIProcess/ios/WKPDFView.mm:
3397         (-[WKPDFView willMoveToWindow:]):
3398         (-[WKPDFView didMoveToWindow]):
3399         (-[WKPDFView isBackground]):
3400         (-[WKPDFView _applicationDidEnterBackground]):
3401         (-[WKPDFView _applicationWillEnterForeground]):
3402             - added methods to initialize ApplicationStateTracker, access background state, & callbacks to the page proxy.
3403
3404 2015-12-04  Antti Koivisto  <antti@apple.com>
3405
3406         Rename WebResourceLoadScheduler to WebLoaderStrategy
3407         https://bugs.webkit.org/show_bug.cgi?id=151854
3408
3409         Reviewed by Anders Carlsson.
3410
3411         It implements WebCore::LoaderStrategy and doesn't do any scheduling.
3412
3413         * CMakeLists.txt:
3414         * WebKit2.xcodeproj/project.pbxproj:
3415         * WebProcess/Network/NetworkProcessConnection.cpp:
3416         (WebKit::NetworkProcessConnection::didReceiveMessage):
3417         * WebProcess/Network/WebLoaderStrategy.cpp: Copied from Source/WebKit2/WebProcess/Network/WebResourceLoadScheduler.cpp.
3418         (WebKit::WebLoaderStrategy::WebLoaderStrategy):
3419         (WebKit::WebLoaderStrategy::~WebLoaderStrategy):
3420         (WebKit::WebLoaderStrategy::loadResource):
3421         (WebKit::WebLoaderStrategy::schedulePluginStreamLoad):
3422         (WebKit::maximumBufferingTime):
3423         (WebKit::WebLoaderStrategy::scheduleLoad):
3424         (WebKit::WebLoaderStrategy::scheduleInternallyFailedLoad):
3425         (WebKit::WebLoaderStrategy::internallyFailedLoadTimerFired):
3426         (WebKit::WebLoaderStrategy::startLocalLoad):
3427         (WebKit::WebLoaderStrategy::remove):
3428         (WebKit::WebLoaderStrategy::setDefersLoading):
3429         (WebKit::WebLoaderStrategy::crossOriginRedirectReceived):
3430         (WebKit::WebLoaderStrategy::servePendingRequests):
3431         (WebKit::WebLoaderStrategy::suspendPendingRequests):
3432         (WebKit::WebLoaderStrategy::resumePendingRequests):
3433         (WebKit::WebLoaderStrategy::networkProcessCrashed):
3434         (WebKit::WebLoaderStrategy::loadResourceSynchronously):
3435         (WebKit::WebLoaderStrategy::createPingHandle):
3436         (WebKit::WebResourceLoadScheduler::WebResourceLoadScheduler): Deleted.
3437         (WebKit::WebResourceLoadScheduler::~WebResourceLoadScheduler): Deleted.
3438         (WebKit::WebResourceLoadScheduler::loadResource): Deleted.
3439         (WebKit::WebResourceLoadScheduler::schedulePluginStreamLoad): Deleted.
3440         (WebKit::WebResourceLoadScheduler::scheduleLoad): Deleted.
3441         (WebKit::WebResourceLoadScheduler::scheduleInternallyFailedLoad): Deleted.
3442         (WebKit::WebResourceLoadScheduler::internallyFailedLoadTimerFired): Deleted.
3443         (WebKit::WebResourceLoadScheduler::startLocalLoad): Deleted.
3444         (WebKit::WebResourceLoadScheduler::remove): Deleted.
3445         (WebKit::WebResourceLoadScheduler::setDefersLoading): Deleted.
3446         (WebKit::WebResourceLoadScheduler::crossOriginRedirectReceived): Deleted.
3447         (WebKit::WebResourceLoadScheduler::servePendingRequests): Deleted.
3448         (WebKit::WebResourceLoadScheduler::suspendPendingRequests): Deleted.
3449         (WebKit::WebResourceLoadScheduler::resumePendingRequests): Deleted.
3450         (WebKit::WebResourceLoadScheduler::networkProcessCrashed): Deleted.
3451         (WebKit::WebResourceLoadScheduler::loadResourceSynchronously): Deleted.
3452         (WebKit::WebResourceLoadScheduler::createPingHandle): Deleted.
3453         * WebProcess/Network/WebLoaderStrategy.h: Copied from Source/WebKit2/WebProcess/Network/WebResourceLoadScheduler.h.
3454         (WebKit::WebLoaderStrategy::webResourceLoaderForIdentifier):
3455         (WebKit::WebResourceLoadScheduler::webResourceLoaderForIdentifier): Deleted.
3456         * WebProcess/Network/WebResourceLoadScheduler.cpp: Removed.
3457         * WebProcess/Network/WebResourceLoadScheduler.h: Removed.
3458         * WebProcess/Plugins/PluginView.cpp:
3459         (WebKit::PluginView::Stream::start):
3460         (WebKit::PluginView::Stream::cancel):
3461         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
3462         (WebKit::WebPlatformStrategies::createLoaderStrategy):
3463         (WebKit::WebPlatformStrategies::createPasteboardStrategy):
3464         * WebProcess/WebProcess.cpp:
3465         (WebKit::WebProcess::WebProcess):
3466         (WebKit::WebProcess::initializeWebProcess):
3467         (WebKit::WebProcess::networkProcessConnectionClosed):
3468         (WebKit::WebProcess::webLoaderStrategy):
3469         (WebKit::WebProcess::webResourceLoadScheduler): Deleted.
3470         * WebProcess/WebProcess.h:
3471
3472 2015-12-03  Simon Fraser  <simon.fraser@apple.com>
3473
3474         Have layer memory use consult the backing store format
3475         https://bugs.webkit.org/show_bug.cgi?id=151827
3476         rdar://problem/23746497
3477
3478         Reviewed by Dean Jackson.
3479
3480         When computing the backing store memory size, take the pixel format into account,
3481         rather than assuming 4 bytes per pixel.
3482
3483         * Shared/mac/RemoteLayerBackingStore.h:
3484         * Shared/mac/RemoteLayerBackingStore.mm:
3485         (WebKit::RemoteLayerBackingStore::bytesPerPixel):
3486         * WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
3487         (WebKit::PlatformCALayerRemote::backingStoreBytesPerPixel):
3488         * WebProcess/WebPage/mac/PlatformCALayerRemote.h:
3489
3490 2015-12-03  Jer Noble  <jer.noble@apple.com>
3491
3492         Expose WebCore's InvisibleAutoplayNotPermitted setting to WebKit & WebKit2
3493         https://bugs.webkit.org/show_bug.cgi?id=151830
3494
3495         Reviewed by Anders Carlsson.
3496
3497         Add a new, private WKWebViewConfiguration property _invisibleAutoplayNotPermitted.
3498
3499         * Shared/WebPreferencesDefinitions.h:
3500         * UIProcess/API/Cocoa/WKWebView.mm:
3501         (-[WKWebView initWithFrame:configuration:]):
3502         * UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
3503         (-[WKWebViewConfiguration init]):
3504         (-[WKWebViewConfiguration copyWithZone:]):
3505         (-[WKWebViewConfiguration _invisibleAutoplayNotPermitted]):
3506         (-[WKWebViewConfiguration _setInvisibleAutoplayNotPermitted:]):
3507         * UIProcess/API/Cocoa/WKWebViewConfigurationPrivate.h:
3508         * WebProcess/WebPage/WebPage.cpp:
3509         (WebKit::WebPage::updatePreferences):
3510
3511 2015-12-03  Sam Weinig  <sam@webkit.org>
3512
3513         It should be possible to use version 6 of the WKPageUIClient without adopting the new createNewPage
3514         https://bugs.webkit.org/show_bug.cgi?id=151826
3515
3516         Reviewed by Anders Carlsson.
3517
3518         * UIProcess/API/C/WKPage.cpp:
3519         (WKPageSetPageUIClient):
3520         Pick which variant of createNewPage to use based on which function pointer is available,
3521         not the version number.
3522
3523 2015-12-03  Anders Carlsson  <andersca@apple.com>
3524
3525         Remove Objective-C GC support
3526         https://bugs.webkit.org/show_bug.cgi?id=151819
3527         rdar://problem/23746991
3528
3529         Reviewed by Dan Bernstein.
3530
3531         * Configurations/Base.xcconfig:
3532         * Configurations/BaseLegacyProcess.xcconfig:
3533         * Configurations/BaseXPCService.xcconfig:
3534         * Shared/Cocoa/APIObject.mm:
3535         (API::Object::newObject): Deleted.
3536
3537 2015-12-03  Jer Noble  <jer.noble@apple.com>
3538
3539         Unreviewed build-fix; fix !HAVE(AVKIT) build after r193340.
3540
3541         * UIProcess/ios/WebVideoFullscreenManagerProxy.mm:
3542         (WebKit::WebVideoFullscreenManagerProxy::applicationDidBecomeActive):
3543
3544 2015-12-03  Sam Weinig  <sam@webkit.org>
3545
3546         Need completionHandler-based WebKit C SPI for alert, confirm, and prompt
3547         <rdar://problem/23320863>
3548         https://bugs.webkit.org/show_bug.cgi?id=151708
3549
3550         (Add missing function definitions)
3551
3552         * UIProcess/API/C/WKPage.cpp:
3553         (WKPageRunJavaScriptAlertResultListenerGetTypeID):
3554         (WKPageRunJavaScriptAlertResultListenerCall):
3555         (WKPageRunJavaScriptConfirmResultListenerGetTypeID):
3556         (WKPageRunJavaScriptConfirmResultListenerCall):
3557         (WKPageRunJavaScriptPromptResultListenerGetTypeID):
3558         (WKPageRunJavaScriptPromptResultListenerCall):
3559
3560 2015-12-03  Jer Noble  <jer.noble@apple.com>
3561
3562         [iOS] Fullscreen -> PiP should resume to Fullscreen, not inline
3563         https://bugs.webkit.org/show_bug.cgi?id=150906
3564
3565         Reviewed by Simon Fraser.
3566
3567         Add methods to pass isVisible(), applicationDidBecomeActive(), and requestFullscreenMode()
3568         to and from models and interfaces.
3569
3570         * UIProcess/ios/WebPageProxyIOS.mm:
3571         (WebKit::WebPageProxy::applicationDidBecomeActive): Notify the fullscreen manager, if preset.
3572
3573         * UIProcess/ios/WebVideoFullscreenManagerProxy.mm:
3574         (WebKit::WebVideoFullscreenModelContext::requestFullscreenMode): Renamed from requestExitFullscreen(); takes a mode enum.
3575         (WebKit::WebVideoFullscreenModelContext::isVisible): Added.
3576         (WebKit::WebVideoFullscreenManagerProxy::applicationDidBecomeActive): Pass to all existing interfaces.
3577         (WebKit::WebVideoFullscreenManagerProxy::setupFullscreenWithID): Do not re-create the view if it already exists.
3578         (WebKit::WebVideoFullscreenManagerProxy::requestFullscreenMode): Renamed from requestExitFullscreen(); takes a mode enum.
3579         (WebKit::WebVideoFullscreenManagerProxy::isVisible): Added. Query Page::isVisible() and Page::isInWindow(), the latter because
3580                 PiP will cause Page::isVisible() to be TRUE even when the containing tab is backgrounded.
3581         (WebKit::WebVideoFullscreenModelContext::requestExitFullscreen): Deleted.
3582         (WebKit::WebVideoFullscreenManagerProxy::requestExitFullscreen): Deleted.
3583         * WebProcess/ios/WebVideoFullscreenManager.mm:
3584         (WebKit::WebVideoFullscreenManager::enterVideoFullscreenForVideoElement): Only resize the view if we are not already in one of
3585                 the fullscreen modes.
3586         (WebKit::WebVideoFullscreenManager::requestFullscreenMode): Renamed from requestExitFullscreen().
3587         (WebKit::WebVideoFullscreenManager::requestExitFullscreen): Deleted.
3588
3589 2015-12-02  Antti Koivisto  <antti@apple.com>
3590
3591         Move ResourceLoadScheduler to WebKit1
3592         https://bugs.webkit.org/show_bug.cgi?id=151743
3593
3594         Reviewed by Alex Christensen.
3595
3596         * NetworkProcess/NetworkProcessPlatformStrategies.cpp:
3597         (WebKit::NetworkProcessPlatformStrategies::createCookiesStrategy):
3598         (WebKit::NetworkProcessPlatformStrategies::createLoaderStrategy):
3599         (WebKit::NetworkProcessPlatformStrategies::createPasteboardStrategy):
3600         (WebKit::NetworkProcessPlatformStrategies::createPluginStrategy):
3601         (WebKit::NetworkProcessPlatformStrategies::createBlobRegistry):
3602         (WebKit::NetworkProcessPlatformStrategies::resourceLoadScheduler): Deleted.
3603         (WebKit::NetworkProcessPlatformStrategies::loadResourceSynchronously): Deleted.
3604         * NetworkProcess/NetworkProcessPlatformStrategies.h:
3605         * WebProcess/InjectedBundle/InjectedBundle.cpp:
3606         * WebProcess/Network/WebResourceLoadScheduler.cpp:
3607         (WebKit::WebResourceLoadScheduler::~WebResourceLoadScheduler):
3608         (WebKit::WebResourceLoadScheduler::loadResource):
3609         (WebKit::WebResourceLoadScheduler::resumePendingRequests):
3610         (WebKit::WebResourceLoadScheduler::networkProcessCrashed):
3611         (WebKit::WebResourceLoadScheduler::loadResourceSynchronously):
3612         (WebKit::WebResourceLoadScheduler::createPingHandle):
3613         (WebKit::WebResourceLoadScheduler::scheduleSubresourceLoad): Deleted.
3614         (WebKit::WebResourceLoadScheduler::setSerialLoadingEnabled): Deleted.
3615         * WebProcess/Network/WebResourceLoadScheduler.h:
3616         (WebKit::WebResourceLoadScheduler::webResourceLoaderForIdentifier):
3617         * WebProcess/Plugins/PluginView.cpp:
3618         (WebKit::PluginView::Stream::start):
3619         (WebKit::PluginView::Stream::cancel):
3620         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
3621         (WebKit::WebPlatformStrategies::createLoaderStrategy):
3622         (WebKit::WebPlatformStrategies::createPasteboardStrategy):
3623         (WebKit::WebPlatformStrategies::createPluginStrategy):
3624         (WebKit::WebPlatformStrategies::createBlobRegistry):
3625         (WebKit::WebPlatformStrategies::cookiesForDOM):
3626         (WebKit::WebPlatformStrategies::deleteCookie):
3627         (WebKit::WebPlatformStrategies::refreshPlugins):
3628         (WebKit::WebPlatformStrategies::resourceLoadScheduler): Deleted.
3629         (WebKit::WebPlatformStrategies::loadResourceSynchronously): Deleted.
3630         (WebKit::WebPlatformStrategies::createPingHandle): Deleted.
3631         * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
3632
3633 2015-12-02  Alex Christensen  <achristensen@webkit.org>
3634
3635         Fix authentication requests with NetworkSession and canHandleHTTPSServerTrustEvaluation true
3636         https://bugs.webkit.org/show_bug.cgi?id=151775
3637         rdar://problem/23586265
3638
3639         Reviewed by Chris Dumez.
3640
3641         In https://bugs.webkit.org/show_bug.cgi?id=150968 I copied functionality from 
3642         NetworkLoad::canAuthenticateAgainstProtectionSpaceAsync into NetworkLoad::didReceiveChallenge
3643         but I overlooked the call to m_client.canAuthenticateAgainstProtectionSpaceAsync which is needed
3644         if canHandleHTTPSServerTrustEvaluation is true.  This adds that call and moves what should happen
3645         after that to NetworkLoad::continueCanAuthenticateAgainstProtectionSpace.
3646
3647         * NetworkProcess/NetworkLoad.cpp:
3648         (WebKit::NetworkLoad::didReceiveChallenge):
3649         (WebKit::NetworkLoad::didReceiveResponse):
3650         (WebKit::NetworkLoad::continueCanAuthenticateAgainstProtectionSpace):
3651         * NetworkProcess/NetworkLoad.h:
3652         * NetworkProcess/NetworkSession.h:
3653         * Shared/Authentication/AuthenticationManager.h:
3654
3655 2015-12-01  Hunseop Jeong  <hs85.jeong@samsung.com>
3656
3657         Unreviewed, fix build after r192931.
3658
3659         * CMakeLists.txt: Remove the WKOriginDataManager in CMakeLists.txt.
3660
3661 2015-12-01  Yusuke Suzuki  <utatane.tea@gmail.com>
3662
3663         [ES6] Implement LLInt/Baseline Support for ES6 Generators and enable this feature
3664         https://bugs.webkit.org/show_bug.cgi?id=150792
3665
3666         Reviewed by Saam Barati.
3667
3668         * Configurations/FeatureDefines.xcconfig:
3669
3670 2015-12-01  Commit Queue  <commit-queue@webkit.org>
3671
3672         Unreviewed, rolling out r192914.
3673         https://bugs.webkit.org/show_bug.cgi?id=151734
3674
3675         JSC tests for this change are failing on 32 and 64-bit bots
3676         (Requested by ryanhaddad on #webkit).
3677
3678         Reverted changeset:
3679
3680         "[ES6] Implement LLInt/Baseline Support for ES6 Generators and
3681         enable this feature"
3682         https://bugs.webkit.org/show_bug.cgi?id=150792
3683         http://trac.webkit.org/changeset/192914
3684
3685 2015-12-01  Anders Carlsson  <andersca@apple.com>
3686
3687         Remove WKOriginDataManager
3688         https://bugs.webkit.org/show_bug.cgi?id=151723
3689
3690         Reviewed by Andy Estes.
3691
3692         * UIProcess/API/C/WKOriginDataManager.cpp: Removed.
3693         (WKOriginDataManagerGetTypeID): Deleted.
3694         (WKOriginDataManagerGetOrigins): Deleted.
3695         (WKOriginDataManagerDeleteEntriesForOrigin): Deleted.
3696         (WKOriginDataManagerDeleteEntriesModifiedBetweenDates): Deleted.
3697         (WKOriginDataManagerDeleteAllEntries): Deleted.
3698         * UIProcess/API/C/WKOriginDataManager.h: Removed.
3699         * WebKit2.xcodeproj/project.pbxproj:
3700
3701 2015-12-01  Yusuke Suzuki  <utatane.tea@gmail.com>
3702
3703         [ES6] Implement LLInt/Baseline Support for ES6 Generators and enable this feature
3704         https://bugs.webkit.org/show_bug.cgi?id=150792
3705
3706         Reviewed by Saam Barati.
3707
3708         * Configurations/FeatureDefines.xcconfig:
3709
3710 2015-12-01  Sam Weinig  <sam@webkit.org>
3711
3712         Need completionHandler-based WebKit C SPI for alert, confirm, and prompt
3713         <rdar://problem/23320863>
3714         https://bugs.webkit.org/show_bug.cgi?id=151708
3715
3716         Reviewed by Anders Carlsson.
3717
3718         Add listener based versions of alert, confirm and prompt.
3719
3720         * Shared/API/APIObject.h:
3721         * Shared/API/c/WKBase.h:
3722         * UIProcess/API/C/WKPage.cpp:
3723         (WebKit::RunJavaScriptAlertResultListener::create):
3724         (WebKit::RunJavaScriptAlertResultListener::~RunJavaScriptAlertResultListener):
3725         (WebKit::RunJavaScriptAlertResultListener::call):
3726         (WebKit::RunJavaScriptAlertResultListener::RunJavaScriptAlertResultListener):
3727         (WebKit::RunJavaScriptConfirmResultListener::create):
3728         (WebKit::RunJavaScriptConfirmResultListener::~RunJavaScriptConfirmResultListener):
3729         (WebKit::RunJavaScriptConfirmResultListener::call):
3730         (WebKit::RunJavaScriptConfirmResultListener::RunJavaScriptConfirmResultListener):
3731         (WebKit::RunJavaScriptPromptResultListener::create):
3732         (WebKit::RunJavaScriptPromptResultListener::~RunJavaScriptPromptResultListener):
3733         (WebKit::RunJavaScriptPromptResultListener::call):
3734         (WebKit::RunJavaScriptPromptResultListener::RunJavaScriptPromptResultListener):
3735         (WKPageSetPageUIClient):
3736         * UIProcess/API/C/WKPageUIClient.h:
3737
3738 2015-12-01  Anders Carlsson  <andersca@apple.com>
3739
3740         Remove WebKit2.framework
3741         https://bugs.webkit.org/show_bug.cgi?id=151715
3742
3743         Reviewed by Dan Bernstein.
3744
3745         * Configurations/WebKit2.xcconfig: Removed.
3746         * UIProcess/API/Cocoa/WebKit2.h: Removed.
3747         * WebKit2.xcodeproj/project.pbxproj:
3748         * mac/Info-WebKit2.plist: Removed.
3749         * mac/MigrateHeadersToWebKit2.make: Removed.
3750         * mac/WebKit2.m: Removed.
3751
3752 2015-12-01  Alex Christensen  <achristensen@webkit.org>
3753
3754         Use Optional for matrix inverses
3755         https://bugs.webkit.org/show_bug.cgi?id=151575
3756
3757         Reviewed by Myles C. Maxfield.
3758
3759         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
3760         (WebKit::NetscapePlugin::convertFromRootView):
3761         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
3762         (WebKit::NetscapePlugin::convertPoint):
3763         * WebProcess/Plugins/PDF/DeprecatedPDFPlugin.mm:
3764         (WebKit::PDFPlugin::convertFromPDFViewToRootView):
3765         (WebKit::PDFPlugin::convertFromPDFViewToScreen):
3766         (WebKit::PDFPlugin::boundsOnScreen):
3767         (WebKit::PDFPlugin::geometryDidChange):
3768         * WebProcess/Plugins/PDF/PDFPlugin.mm:
3769         (WebKit::PDFPlugin::geometryDidChange):
3770
3771 2015-12-01  Tim Horton  <timothy_horton@apple.com>
3772
3773         Remove swipe snapshot before main document load if scroll position is already restored
3774         https://bugs.webkit.org/show_bug.cgi?id=151224
3775
3776         Reviewed by Darin Adler.
3777
3778         * UIProcess/Cocoa/WebViewImpl.h:
3779         * UIProcess/Cocoa/WebViewImpl.mm:
3780         (WebKit::WebViewImpl::didRestoreScrollPosition):
3781         * UIProcess/PageClient.h:
3782         * UIProcess/WebPageProxy.cpp:
3783         (WebKit::WebPageProxy::didRestoreScrollPosition):
3784         * UIProcess/WebPageProxy.h:
3785         * UIProcess/WebPageProxy.messages.in:
3786         * UIProcess/mac/PageClientImpl.h:
3787         * UIProcess/mac/PageClientImpl.mm:
3788         (WebKit::PageClientImpl::didRestoreScrollPosition):
3789         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
3790         (WebKit::WebFrameLoaderClient::didRestoreScrollPosition):
3791         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
3792         * WebProcess/WebPage/WebPage.cpp:
3793         (WebKit::WebPage::didRestoreScrollPosition):
3794         * WebProcess/WebPage/WebPage.h:
3795         Plumb didRestoreScrollPosition through to ViewGestureController (yikes!).
3796
3797         * UIProcess/ViewGestureController.cpp:
3798         (WebKit::ViewGestureController::didFirstVisuallyNonEmptyLayoutForMainFrame):
3799         Cancel waiting for any more loads if we get to firstVisuallyNonEmptyLayout.
3800
3801         (WebKit::ViewGestureController::didReachMainFrameLoadTerminalState):
3802         Cancel waiting for scroll position restoration if we make it to main frame load,
3803         because there is a chance we won't be able to restore the old scroll position, and
3804         by main frame load time we've tried as hard as we're going to to restore it.
3805
3806         * UIProcess/mac/ViewGestureControllerMac.mm:
3807         (WebKit::ViewGestureController::endSwipeGesture):
3808         Make some legacy-style-only code clearer that it's legacy-style-only.
3809         Wait for scroll position restoration.
3810
3811 2015-12-01  Carlos Garcia Campos  <cgarcia@igalia.com>
3812
3813         REGRESSION(r192834): [GTK] Test /webkit2/WebKitWebView/editor-state/typing-attributes times out after r192834
3814         https://bugs.webkit.org/show_bug.cgi?id=151699
3815
3816         Reviewed by Tim Horton.
3817
3818         In r192834 the code to send EditorStateChanged message to the UI
3819         process from WebPage::didChangeSelection was removed for non-mac
3820         ports.
3821
3822         * WebProcess/WebPage/WebPage.cpp:
3823         (WebKit::WebPage::didChangeSelection): Send EditorStateChanged
3824         message to the UI process also for non-mac ports, as before r192834.
3825
3826 2015-12-01  Carlos Garcia Campos  <cgarcia@igalia.com>
3827
3828         Unreviewed. Fix timeouts in several HTTP layout tests in GTK+ after r192796.
3829
3830         In r192796, the initialization of m_ignoreTLSErrors in
3831         WebProcessPool was removed by mistake, making all HTTP tests that use
3832         HTTPS fail due to invalid certificate errors.
3833
3834         * UIProcess/WebProcessPool.h: Bring back m_ignoreTLSErrors initialization.
3835
3836 2015-12-01  Carlos Garcia Campos  <cgarcia@igalia.com>
3837
3838         REGRESSION(r192247): [GTK] ASSERTION FAILED: type == WebCore::ActionType || type == WebCore::CheckableActionType || type == WebCore::SeparatorType
3839         https://bugs.webkit.org/show_bug.cgi?id=151513
3840
3841         Reviewed by Martin Robinson.
3842
3843         This happens because we are using our own WebContextMenuItemGtk
3844         derived from WebContextMenuItemData, but using our own submenu
3845         items handling. We are using the non-submenu
3846         WebContextMenuItemData constructor to create our submenu items
3847         too, because WebContextMenuItemData always expect the submenu
3848         items to be passed to the constructor, but we have a set_submenu
3849         method in the public API. So we consider that a
3850         WebContextMenuItemGtk is SubmenuType if it has submenu items, but
3851         we use the action type internally. When converting a
3852         WebContextMenuItemGtk to a generic WebContextMenuItemData, we
3853         correctly set the type and pass the submenu items to the
3854         approriate constructor.
3855
3856         * Shared/gtk/WebContextMenuItemGtk.cpp:
3857         (WebKit::WebContextMenuItemGtk::WebContextMenuItemGtk): When
3858         constructing from a WebContextMenuItemData, set the type as
3859         ActionType when it's a submenu type.
3860         * Shared/gtk/WebContextMenuItemGtk.h:
3861         (WebKit::WebContextMenuItemGtk::type): Return SubmenuType if
3862         submenu items vector is not empty, otherwise use the parent method.
3863         * UIProcess/API/gtk/WebKitContextMenuItem.cpp:
3864         (webkit_context_menu_item_new_with_submenu): Create the
3865         WebContextMenuItemGtk as ActionType.
3866
3867 2015-12-01  Carlos Garcia Campos  <cgarcia@igalia.com>
3868
3869         Unreviewed. Add missing inspector files to the GTK+ build.
3870
3871         * PlatformGTK.cmake: Add also Debug css files.
3872
3873 2015-11-30  Alexey Proskuryakov  <ap@apple.com>
3874
3875         Build fix for some compiler versions.
3876
3877         * UIProcess/ios/forms/WKAirPlayRoutePicker.mm: Disable deprecation warnings while
3878         processing SOFT_LINK_CLASS too.
3879
3880 2015-11-30  Jiewen Tan  <jiewen_tan@apple.com>
3881
3882         Null dereference loading Blink layout test http/tests/misc/detach-during-notifyDone.html
3883         https://bugs.webkit.org/show_bug.cgi?id=149309
3884         <rdar://problem/22748363>
3885
3886         Reviewed by Brent Fulgham.
3887
3888         Callback of bundle clients could kill the documentloader. Therefore, make a copy
3889         of the navigationID before invoking the callback.
3890
3891         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
3892         (WebKit::WebFrameLoaderClient::dispatchDidChangeLocationWithinPage):
3893         (WebKit::WebFrameLoaderClient::dispatchDidPushStateWithinPage):
3894         (WebKit::WebFrameLoaderClient::dispatchDidReplaceStateWithinPage):
3895         (WebKit::WebFrameLoaderClient::dispatchDidPopStateWithinPage):
3896         (WebKit::WebFrameLoaderClient::dispatchDidFailLoad):
3897         (WebKit::WebFrameLoaderClient::dispatchDidFinishDocumentLoad):
3898         (WebKit::WebFrameLoaderClient::dispatchDidFinishLoad):
3899
3900 2015-11-30  Tim Horton  <timothy_horton@apple.com>
3901
3902         Get rid of the !USE(ASYNC_NSTEXTINPUTCLIENT) codepath
3903         https://bugs.webkit.org/show_bug.cgi?id=151673
3904
3905         Reviewed by Anders Carlsson.
3906
3907         * UIProcess/API/Cocoa/WKWebView.mm:
3908         * UIProcess/API/mac/WKView.mm:
3909         * UIProcess/Cocoa/WebViewImpl.h:
3910         * UIProcess/Cocoa/WebViewImpl.mm:
3911         (WebKit::WebViewImpl::resignFirstResponder): Deleted.
3912         (WebKit::WebViewImpl::interpretKeyEvent): Deleted.
3913         (WebKit::WebViewImpl::executeSavedKeypressCommands): Deleted.
3914         (WebKit::WebViewImpl::doCommandBySelector): Deleted.
3915         (WebKit::WebViewImpl::insertText): Deleted.
3916         (WebKit::WebViewImpl::inputContext): Deleted.
3917         (WebKit::WebViewImpl::selectedRange): Deleted.
3918         (WebKit::WebViewImpl::hasMarkedText): Deleted.
3919         (WebKit::WebViewImpl::unmarkText): Deleted.
3920         (WebKit::WebViewImpl::setMarkedText): Deleted.
3921         (WebKit::WebViewImpl::markedRange): Deleted.
3922         (WebKit::WebViewImpl::attributedSubstringForProposedRange): Deleted.
3923         (WebKit::WebViewImpl::characterIndexForPoint): Deleted.
3924         (WebKit::WebViewImpl::firstRectForCharacterRange): Deleted.
3925         (WebKit::WebViewImpl::performKeyEquivalent): Deleted.
3926         (WebKit::WebViewImpl::keyUp): Deleted.
3927         (WebKit::WebViewImpl::keyDown): Deleted.
3928         (WebKit::WebViewImpl::flagsChanged): Deleted.
3929         * UIProcess/PageClient.h:
3930         * UIProcess/WebPageProxy.cpp:
3931         (WebKit::WebPageProxy::WebPageProxy): Deleted.
3932         (WebKit::WebPageProxy::resetStateAfterProcessExited): Deleted.
3933         * UIProcess/WebPageProxy.h:
3934         * UIProcess/mac/PageClientImpl.h:
3935         * UIProcess/mac/PageClientImpl.mm:
3936         (WebKit::PageClientImpl::notifyApplicationAboutInputContextChange): Deleted.
3937         * UIProcess/mac/WebPageProxyMac.mm:
3938         (WebKit::WebPageProxy::setComposition): Deleted.
3939         (WebKit::WebPageProxy::confirmComposition): Deleted.
3940         (WebKit::WebPageProxy::insertText): Deleted.
3941         (WebKit::WebPageProxy::insertDictatedText): Deleted.
3942         (WebKit::WebPageProxy::getMarkedRange): Deleted.
3943         (WebKit::WebPageProxy::getSelectedRange): Deleted.
3944         (WebKit::WebPageProxy::getAttributedSubstringFromRange): Deleted.
3945         (WebKit::WebPageProxy::characterIndexForPoint): Deleted.
3946         (WebKit::WebPageProxy::firstRectForCharacterRange): Deleted.
3947         (WebKit::WebPageProxy::executeKeypressCommands): Deleted.
3948         (WebKit::WebPageProxy::cancelComposition): Deleted.
3949         (WebKit::WebPageProxy::editorStateChanged): Deleted.
3950         * WebProcess/WebPage/WebPage.cpp:
3951         (WebKit::WebPage::didChangeSelection):
3952         * WebProcess/WebPage/WebPage.h:
3953         * WebProcess/WebPage/WebPage.messages.in:
3954         * WebProcess/WebPage/mac/WebPageMac.mm:
3955         (WebKit::WebPage::setComposition): Deleted.
3956         (WebKit::WebPage::confirmComposition): Deleted.
3957         (WebKit::WebPage::insertText): Deleted.
3958         (WebKit::WebPage::insertDictatedText): Deleted.
3959         (WebKit::WebPage::getMarkedRange): Deleted.
3960         (WebKit::WebPage::getSelectedRange): Deleted.
3961         (WebKit::WebPage::getAttributedSubstringFromRange): Deleted.
3962         (WebKit::WebPage::characterIndexForPoint): Deleted.
3963         (WebKit::WebPage::firstRectForCharacterRange): Deleted.
3964         (WebKit::WebPage::executeKeypressCommands): Deleted.
3965         (WebKit::WebPage::cancelComposition): Deleted.
3966
3967 2015-11-30  Tim Horton  <timothy_horton@apple.com>
3968
3969         Remove some unused synchronous drawing SPI
3970         https://bugs.webkit.org/show_bug.cgi?id=151672
3971
3972         Reviewed by Anders Carlsson.
3973
3974         * UIProcess/API/Cocoa/WKViewPrivate.h:
3975         * UIProcess/API/mac/WKView.mm:
3976         (-[WKView forceAsyncDrawingAreaSizeUpdate:]): Deleted.
3977         (-[WKView waitForAsyncDrawingAreaSizeUpdate]): Deleted.
3978         * UIProcess/Cocoa/WebViewImpl.h:
3979         * UIProcess/Cocoa/WebViewImpl.mm:
3980         (WebKit::WebViewImpl::forceAsyncDrawingAreaSizeUpdate): Deleted.
3981         (WebKit::WebViewImpl::waitForAsyncDrawingAreaSizeUpdate): Deleted.
3982
3983 2015-11-30  Tim Horton  <timothy_horton@apple.com>
3984
3985         Get rid of the legacy swipe shadow style
3986         https://bugs.webkit.org/show_bug.cgi?id=151671
3987
3988         Reviewed by Anders Carlsson.
3989
3990         * UIProcess/mac/ViewGestureControllerMac.mm:
3991         (WebKit::ViewGestureController::beginSwipeGesture): Deleted.
3992         (WebKit::ViewGestureController::handleSwipeGesture): Deleted.
3993         (WebKit::ViewGestureController::removeSwipeSnapshot): Deleted.
3994         It is no longer needed.
3995
3996 2015-11-30  Tim Horton  <timothy_horton@apple.com>
3997
3998         [iOS] Option-up and Option-down should scroll a little less than a full page
3999         https://bugs.webkit.org/show_bug.cgi?id=151538
4000         <rdar://problem/23642675>
4001
4002         Reviewed by Simon Fraser.
4003
4004         * UIProcess/ios/WKContentViewInteraction.mm:
4005         (-[WKContentView _scrollOffsetForEvent:]):
4006         (-[WKContentView _interpretKeyEvent:isCharEvent:]):
4007         Clean up the code a little, and adjust&nbs