View state change callbacks are sometimes dropped on the floor
[WebKit-https.git] / Source / WebKit2 / ChangeLog
1 2015-01-06  Timothy Horton  <timothy_horton@apple.com>
2
3         View state change callbacks are sometimes dropped on the floor
4         https://bugs.webkit.org/show_bug.cgi?id=140156
5         <rdar://problem/19255417>
6
7         Reviewed by Anders Carlsson.
8
9         * UIProcess/WebPageProxy.cpp:
10         (WebKit::WebPageProxy::dispatchViewStateChange):
11         Always send SetViewState to the Web process if we have any
12         registered view state change callbacks. Otherwise, if nothing changed,
13         we can end up never calling the callback.
14
15 2015-01-06  Timothy Horton  <timothy_horton@apple.com>
16
17         Make explicit which TextIndicator animations are driven manually, and which run automatically
18         https://bugs.webkit.org/show_bug.cgi?id=140113
19         <rdar://problem/19383425>
20
21         Reviewed by Darin Adler.
22
23         * UIProcess/mac/PageClientImpl.mm:
24         (WebKit::PageClientImpl::didPerformDictionaryLookup):
25         Delete an inaccurate comment.
26
27 2015-01-06  Anders Carlsson  <andersca@apple.com>
28
29         Remove now unused IndexedDB code
30         https://bugs.webkit.org/show_bug.cgi?id=140128
31
32         Reviewed by Darin Adler.
33
34         Remove a function.
35
36         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
37         (WebKit::WebPlatformStrategies::createIDBFactoryBackend): Deleted.
38         * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
39
40 2015-01-06  Darin Adler  <darin@apple.com>
41
42         Fix race in FindController code
43         https://bugs.webkit.org/show_bug.cgi?id=140114
44
45         Reviewed by Anders Carlsson.
46
47         No idea how to reproduce this. Just ran into the crash in my local testing.
48
49         * WebProcess/WebPage/FindController.cpp:
50         (WebKit::FindController::findString): Use a RefPtr to guarantee the FindController is
51         not deleted while a this pointer is stored in a function.
52
53 2015-01-05  Anders Carlsson  <andersca@apple.com>
54
55         Add a DatabaseProvider subclass in WebKit2 and use it for IndexedDB
56         https://bugs.webkit.org/show_bug.cgi?id=140108
57
58         Reviewed by Darin Adler.
59
60         * CMakeLists.txt:
61         * WebKit2.xcodeproj/project.pbxproj:
62         * WebProcess/Databases/WebDatabaseProvider.cpp: Added.
63         (WebKit::databaseProviders):
64         (WebKit::WebDatabaseProvider::getOrCreate):
65         (WebKit::WebDatabaseProvider::WebDatabaseProvider):
66         (WebKit::WebDatabaseProvider::~WebDatabaseProvider):
67         (WebKit::WebDatabaseProvider::createIDBFactoryBackend):
68         * WebProcess/Databases/WebDatabaseProvider.h: Added.
69         * WebProcess/WebPage/WebPage.cpp:
70         (WebKit::WebPage::WebPage):
71
72 2015-01-05  Matt Baker  <mattbaker@apple.com>
73
74         Web Inspector: inspector view top inset should not include height of web view banners
75         https://bugs.webkit.org/show_bug.cgi?id=140076
76
77         Reviewed by Anders Carlsson.
78
79         Added _totalHeightOfBanners property to WKView, which is used by the WebInspectorProxy
80         to calculate the correct vertical position of the Inspector view frame. The browser is
81         responsible for setting the property value whenever banners are installed or uninstalled from
82         the view.
83
84         * UIProcess/API/Cocoa/WKViewPrivate.h:
85         * UIProcess/API/mac/WKView.mm:
86         (-[WKView _setTotalHeightOfBanners:]):
87         (-[WKView _totalHeightOfBanners]):
88         * UIProcess/mac/WebInspectorProxyMac.mm:
89         (WebKit::WebInspectorProxy::inspectedViewFrameDidChange):
90
91 2015-01-05  Timothy Horton  <timothy_horton@apple.com>
92
93         Implicitly dismissed DD popovers don't clear immediate action state, prematurely dismissing the next DD highlight
94         https://bugs.webkit.org/show_bug.cgi?id=140088
95         <rdar://problem/19298391>
96
97         Reviewed by Anders Carlsson.
98
99         * UIProcess/mac/WKImmediateActionController.mm:
100         (-[WKImmediateActionController _menuItemForDataDetectedText]):
101         Instead of just tearing down the TextIndicator, clear all state.
102
103 2015-01-05  Csaba Osztrogonác  <ossy@webkit.org>
104
105         One more URTBF after r177917.
106
107         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:
108         * WebProcess/Battery/WebBatteryManager.h:
109         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.cpp:
110         (WebKit::CoordinatedDrawingArea::didReceiveCoordinatedLayerTreeHostMessage):
111         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.h:
112         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
113         * WebProcess/WebPage/LayerTreeHost.h:
114
115 2015-01-05  Anders Carlsson  <andersca@apple.com>
116
117         Get rid of PassRefPtr from IPC::Connection
118         https://bugs.webkit.org/show_bug.cgi?id=140092
119
120         Reviewed by Andreas Kling.
121
122         * DatabaseProcess/DatabaseToWebProcessConnection.cpp:
123         (WebKit::DatabaseToWebProcessConnection::DatabaseToWebProcessConnection):
124         * NetworkProcess/NetworkConnectionToWebProcess.cpp:
125         (WebKit::NetworkConnectionToWebProcess::NetworkConnectionToWebProcess):
126         * Platform/IPC/Connection.cpp:
127         (IPC::Connection::createServerConnection):
128         (IPC::Connection::createClientConnection):
129         (IPC::Connection::Connection):
130         * Platform/IPC/Connection.h:
131         * PluginProcess/WebProcessConnection.cpp:
132         (WebKit::WebProcessConnection::WebProcessConnection):
133         * Shared/ChildProcess.cpp:
134         (WebKit::ChildProcess::initialize):
135         * Shared/ChildProcessProxy.cpp:
136         (WebKit::ChildProcessProxy::didFinishLaunching):
137         * UIProcess/Plugins/PluginProcessProxy.cpp:
138         (WebKit::PluginProcessProxy::didFinishLaunching):
139         * WebProcess/Databases/WebToDatabaseProcessConnection.cpp:
140         (WebKit::WebToDatabaseProcessConnection::WebToDatabaseProcessConnection):
141         * WebProcess/Network/NetworkProcessConnection.cpp:
142         (WebKit::NetworkProcessConnection::NetworkProcessConnection):
143         * WebProcess/Plugins/PluginProcessConnection.cpp:
144         (WebKit::PluginProcessConnection::PluginProcessConnection):
145         * WebProcess/WebPage/WebInspector.cpp:
146         (WebKit::WebInspector::createInspectorPage):
147         * WebProcess/WebPage/WebInspectorUI.cpp:
148         (WebKit::WebInspectorUI::establishConnection):
149
150 2015-01-05  Csaba Osztrogonác  <ossy@webkit.org>
151
152         URTBF after r177917.
153
154         * UIProcess/WebBatteryManagerProxy.h:
155         * UIProcess/WebVibrationProxy.h:
156
157 2015-01-05  Anders Carlsson  <andersca@apple.com>
158
159         Clean up Connection::SyncMessageState
160         https://bugs.webkit.org/show_bug.cgi?id=140087
161
162         Reviewed by Andreas Kling.
163
164         * Platform/IPC/Connection.cpp:
165         (IPC::Connection::SyncMessageState::syncMessageStateMapMutex):
166         Change this to return an std::mutex and use std::call_once to initialize it properly.
167
168         (IPC::Connection::SyncMessageState::getOrCreate):
169         Return a Ref.
170
171         (IPC::Connection::SyncMessageState::~SyncMessageState):
172         Use an std::lock_guard.
173
174         (IPC::Connection::SyncMessageState::processIncomingMessage):
175         Replace a bind call with a lambda.
176
177         (IPC::Connection::SyncMessageState::dispatchMessages):
178         ConnectionAndIncomingMessage now holds a Ref<Connection>.
179
180         (IPC::Connection::SyncMessageState::dispatchMessageAndResetDidScheduleDispatchMessagesForConnection):
181         Change Connection to a reference.
182
183         (IPC::Connection::processIncomingMessage):
184         Change Connection to a reference.
185
186 2015-01-05  Anders Carlsson  <andersca@apple.com>
187
188         Clean up the storage manager some more
189         https://bugs.webkit.org/show_bug.cgi?id=140086
190
191         Reviewed by Andreas Kling.
192
193         Use lambdas instead of WTF::bind and get rid of a couple of internal functions.
194
195         * UIProcess/Storage/StorageManager.cpp:
196         (WebKit::StorageManager::createSessionStorageNamespace):
197         (WebKit::StorageManager::destroySessionStorageNamespace):
198         (WebKit::StorageManager::setAllowedSessionStorageNamespaceConnection):
199         (WebKit::StorageManager::cloneSessionStorageNamespace):
200         (WebKit::StorageManager::processWillCloseConnection):
201         (WebKit::StorageManager::createSessionStorageNamespaceInternal): Deleted.
202         (WebKit::StorageManager::destroySessionStorageNamespaceInternal): Deleted.
203         (WebKit::StorageManager::setAllowedSessionStorageNamespaceConnectionInternal): Deleted.
204         (WebKit::StorageManager::cloneSessionStorageNamespaceInternal): Deleted.
205         (WebKit::StorageManager::invalidateConnectionInternal): Deleted.
206         * UIProcess/Storage/StorageManager.h:
207
208 2015-01-05  Anders Carlsson  <andersca@apple.com>
209
210         Change more connection pointers to references
211         https://bugs.webkit.org/show_bug.cgi?id=140085
212
213         Reviewed by Andreas Kling.
214
215         * UIProcess/Storage/StorageManager.cpp:
216         (WebKit::StorageManager::StorageArea::addListener):
217         (WebKit::StorageManager::StorageArea::removeListener):
218         (WebKit::StorageManager::createLocalStorageMap):
219         (WebKit::StorageManager::createTransientLocalStorageMap):
220         (WebKit::StorageManager::createSessionStorageMap):
221         (WebKit::StorageManager::destroyStorageMap):
222         (WebKit::StorageManager::getValues):
223         (WebKit::StorageManager::setItem):
224         (WebKit::StorageManager::removeItem):
225         (WebKit::StorageManager::clear):
226         (WebKit::StorageManager::applicationWillTerminate):
227         (WebKit::StorageManager::invalidateConnectionInternal):
228         (WebKit::StorageManager::findStorageArea):
229         * UIProcess/Storage/StorageManager.h:
230
231 2015-01-05  Anders Carlsson  <andersca@apple.com>
232
233         Change more of the IPC code to take connections by reference
234         https://bugs.webkit.org/show_bug.cgi?id=140083
235
236         Reviewed by Andreas Kling.
237
238         * DatabaseProcess/DatabaseProcess.cpp:
239         (WebKit::DatabaseProcess::didReceiveMessage):
240         * DatabaseProcess/DatabaseProcess.h:
241         * DatabaseProcess/DatabaseToWebProcessConnection.cpp:
242         (WebKit::DatabaseToWebProcessConnection::didReceiveMessage):
243         (WebKit::DatabaseToWebProcessConnection::didReceiveSyncMessage):
244         * DatabaseProcess/DatabaseToWebProcessConnection.h:
245         * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.h:
246         * NetworkProcess/NetworkConnectionToWebProcess.cpp:
247         (WebKit::NetworkConnectionToWebProcess::didReceiveMessage):
248         (WebKit::NetworkConnectionToWebProcess::didReceiveSyncMessage):
249         * NetworkProcess/NetworkConnectionToWebProcess.h:
250         * NetworkProcess/NetworkProcess.cpp:
251         (WebKit::NetworkProcess::didReceiveMessage):
252         (WebKit::NetworkProcess::didReceiveSyncMessage):
253         * NetworkProcess/NetworkProcess.h:
254         * NetworkProcess/NetworkResourceLoader.h:
255         * Platform/IPC/Connection.cpp:
256         (IPC::Connection::dispatchWorkQueueMessageReceiverMessage):
257         (IPC::Connection::dispatchSyncMessage):
258         (IPC::Connection::dispatchMessage):
259         * Platform/IPC/Connection.h:
260         (IPC::Connection::waitForAndDispatchImmediately):
261         * Platform/IPC/MessageReceiver.h:
262         (IPC::MessageReceiver::didReceiveSyncMessage):
263         * Platform/IPC/MessageReceiverMap.cpp:
264         (IPC::MessageReceiverMap::dispatchMessage):
265         (IPC::MessageReceiverMap::dispatchSyncMessage):
266         * Platform/IPC/MessageReceiverMap.h:
267         * PluginProcess/PluginControllerProxy.h:
268         * PluginProcess/PluginProcess.cpp:
269         (WebKit::PluginProcess::didReceiveMessage):
270         * PluginProcess/PluginProcess.h:
271         * PluginProcess/WebProcessConnection.cpp:
272         (WebKit::WebProcessConnection::didReceiveMessage):
273         (WebKit::WebProcessConnection::didReceiveSyncMessage):
274         * PluginProcess/WebProcessConnection.h:
275         * Scripts/webkit/messages.py:
276         (async_message_statement):
277         (sync_message_statement):
278         (generate_message_handler):
279         * Shared/API/Cocoa/RemoteObjectRegistry.h:
280         * Shared/Authentication/AuthenticationManager.h:
281         * Shared/ChildProcessProxy.cpp:
282         (WebKit::ChildProcessProxy::dispatchMessage):
283         (WebKit::ChildProcessProxy::dispatchSyncMessage):
284         * Shared/ChildProcessProxy.h:
285         * Shared/Network/CustomProtocols/CustomProtocolManager.h:
286         * Shared/Plugins/NPObjectMessageReceiver.h:
287         * Shared/Plugins/NPRemoteObjectMap.cpp:
288         (WebKit::NPRemoteObjectMap::didReceiveSyncMessage):
289         * Shared/Plugins/NPRemoteObjectMap.h:
290         * Shared/WebConnection.h:
291         * Shared/mac/SecItemShim.h:
292         * UIProcess/Databases/DatabaseProcessProxy.cpp:
293         (WebKit::DatabaseProcessProxy::didReceiveMessage):
294         * UIProcess/Databases/DatabaseProcessProxy.h:
295         * UIProcess/Downloads/DownloadProxy.h:
296         * UIProcess/DrawingAreaProxy.h:
297         * UIProcess/Network/CustomProtocols/CustomProtocolManagerProxy.h:
298         * UIProcess/Network/NetworkProcessProxy.cpp:
299         (WebKit::NetworkProcessProxy::didReceiveMessage):
300         (WebKit::NetworkProcessProxy::didReceiveSyncMessage):
301         * UIProcess/Network/NetworkProcessProxy.h:
302         * UIProcess/Plugins/PluginProcessProxy.h:
303         * UIProcess/Storage/StorageManager.h:
304         * UIProcess/UserContent/WebUserContentControllerProxy.h:
305         * UIProcess/VisitedLinkProvider.h:
306         * UIProcess/WebApplicationCacheManagerProxy.h:
307         * UIProcess/WebCookieManagerProxy.h:
308         * UIProcess/WebDatabaseManagerProxy.h:
309         * UIProcess/WebFullScreenManagerProxy.h:
310         * UIProcess/WebGeolocationManagerProxy.h:
311         * UIProcess/WebIconDatabase.h:
312         * UIProcess/WebInspectorProxy.h:
313         * UIProcess/WebMediaCacheManagerProxy.h:
314         * UIProcess/WebOriginDataManagerProxy.h:
315         * UIProcess/WebPageProxy.h:
316         * UIProcess/WebPasteboardProxy.h:
317         * UIProcess/WebProcessPool.cpp:
318         (WebKit::WebProcessPool::dispatchMessage):
319         (WebKit::WebProcessPool::dispatchSyncMessage):
320         * UIProcess/WebProcessPool.h:
321         * UIProcess/WebProcessProxy.cpp:
322         (WebKit::WebProcessProxy::didReceiveMessage):
323         (WebKit::WebProcessProxy::didReceiveSyncMessage):
324         * UIProcess/WebProcessProxy.h:
325         * UIProcess/WebResourceCacheManagerProxy.h:
326         * UIProcess/ios/SmartMagnificationController.h:
327         * UIProcess/ios/WebVideoFullscreenManagerProxy.h:
328         * UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.h:
329         * UIProcess/mac/SecItemShimProxy.h:
330         * UIProcess/mac/ViewGestureController.h:
331         * WebProcess/ApplicationCache/WebApplicationCacheManager.h:
332         * WebProcess/Cookies/WebCookieManager.h:
333         * WebProcess/Databases/IndexedDB/WebIDBServerConnection.h:
334         * WebProcess/Databases/WebToDatabaseProcessConnection.cpp:
335         (WebKit::WebToDatabaseProcessConnection::didReceiveMessage):
336         * WebProcess/Databases/WebToDatabaseProcessConnection.h:
337         * WebProcess/FullScreen/WebFullScreenManager.cpp:
338         (WebKit::WebFullScreenManager::didReceiveMessage):
339         * WebProcess/FullScreen/WebFullScreenManager.h:
340         * WebProcess/Geolocation/WebGeolocationManager.h:
341         * WebProcess/IconDatabase/WebIconDatabaseProxy.h:
342         * WebProcess/MediaCache/WebMediaCacheManager.h:
343         * WebProcess/Network/NetworkProcessConnection.cpp:
344         (WebKit::NetworkProcessConnection::didReceiveMessage):
345         (WebKit::NetworkProcessConnection::didReceiveSyncMessage):
346         * WebProcess/Network/NetworkProcessConnection.h:
347         * WebProcess/Network/WebResourceLoader.h:
348         * WebProcess/Notifications/WebNotificationManager.h:
349         * WebProcess/OriginData/WebOriginDataManager.h:
350         * WebProcess/Plugins/PluginProcessConnection.cpp:
351         (WebKit::PluginProcessConnection::didReceiveMessage):
352         (WebKit::PluginProcessConnection::didReceiveSyncMessage):
353         * WebProcess/Plugins/PluginProcessConnection.h:
354         * WebProcess/Plugins/PluginProcessConnectionManager.h:
355         * WebProcess/Plugins/PluginProxy.h:
356         * WebProcess/ResourceCache/WebResourceCacheManager.h:
357         * WebProcess/Scrolling/RemoteScrollingCoordinator.h:
358         * WebProcess/Storage/StorageAreaMap.h:
359         * WebProcess/UserContent/WebUserContentController.h:
360         * WebProcess/WebCoreSupport/WebDatabaseManager.h:
361         * WebProcess/WebPage/DrawingArea.h:
362         * WebProcess/WebPage/EventDispatcher.h:
363         * WebProcess/WebPage/ViewGestureGeometryCollector.h:
364         * WebProcess/WebPage/ViewUpdateDispatcher.h:
365         * WebProcess/WebPage/VisitedLinkTableController.h:
366         * WebProcess/WebPage/WebInspector.h:
367         * WebProcess/WebPage/WebInspectorUI.h:
368         * WebProcess/WebPage/WebPage.cpp:
369         (WebKit::WebPage::didReceiveMessage):
370         (WebKit::WebPage::didReceiveSyncMessage):
371         * WebProcess/WebPage/WebPage.h:
372         * WebProcess/WebPage/WebPageGroupProxy.h:
373         * WebProcess/WebProcess.cpp:
374         (WebKit::WebProcess::didReceiveSyncMessage):
375         (WebKit::WebProcess::didReceiveMessage):
376         * WebProcess/WebProcess.h:
377         * WebProcess/ios/WebVideoFullscreenManager.h:
378
379 2015-01-05  Anders Carlsson  <andersca@apple.com>
380
381         Pass IPC::Connection by reference to IPC message handlers
382         https://bugs.webkit.org/show_bug.cgi?id=140082
383
384         Reviewed by Darin Adler.
385
386         * Platform/IPC/HandleMessage.h:
387         (IPC::callMemberFunctionImpl):
388         (IPC::callMemberFunction):
389         (IPC::handleMessage):
390         (IPC::handleMessageDelayed):
391         * Scripts/webkit/messages.py:
392         (async_message_statement):
393         (sync_message_statement):
394         * UIProcess/Storage/StorageManager.cpp:
395         (WebKit::StorageManager::createLocalStorageMap):
396         (WebKit::StorageManager::createTransientLocalStorageMap):
397         (WebKit::StorageManager::createSessionStorageMap):
398         (WebKit::StorageManager::destroyStorageMap):
399         (WebKit::StorageManager::getValues):
400         (WebKit::StorageManager::setItem):
401         (WebKit::StorageManager::removeItem):
402         (WebKit::StorageManager::clear):
403         * UIProcess/Storage/StorageManager.h:
404         * UIProcess/UserContent/WebUserContentControllerProxy.cpp:
405         (WebKit::WebUserContentControllerProxy::didPostMessage):
406         * UIProcess/UserContent/WebUserContentControllerProxy.h:
407         * UIProcess/WebGeolocationManagerProxy.cpp:
408         (WebKit::WebGeolocationManagerProxy::startUpdating):
409         (WebKit::WebGeolocationManagerProxy::stopUpdating):
410         (WebKit::WebGeolocationManagerProxy::setEnableHighAccuracy):
411         * UIProcess/WebGeolocationManagerProxy.h:
412         * UIProcess/WebOriginDataManagerProxy.cpp:
413         (WebKit::WebOriginDataManagerProxy::didGetOrigins):
414         (WebKit::WebOriginDataManagerProxy::didDeleteEntries):
415         (WebKit::WebOriginDataManagerProxy::didDeleteAllEntries):
416         * UIProcess/WebOriginDataManagerProxy.h:
417         * UIProcess/WebProcessPool.cpp:
418         (WebKit::WebProcessPool::handleMessage):
419         (WebKit::WebProcessPool::handleSynchronousMessage):
420         * UIProcess/WebProcessPool.h:
421         * UIProcess/mac/SecItemShimProxy.cpp:
422         (WebKit::SecItemShimProxy::secItemRequest):
423         * UIProcess/mac/SecItemShimProxy.h:
424
425 2015-01-04  Anders Carlsson  <andersca@apple.com>
426
427         Clean up some of the IPC code
428         https://bugs.webkit.org/show_bug.cgi?id=140057
429
430         Reviewed by Antti Koivisto.
431
432         Use std::mutex instead of WTF::Mutex. Change a couple of pointers to references in the connection client.
433
434         * DatabaseProcess/DatabaseProcess.cpp:
435         (WebKit::DatabaseProcess::didClose):
436         (WebKit::DatabaseProcess::didReceiveInvalidMessage):
437         * DatabaseProcess/DatabaseProcess.h:
438         * DatabaseProcess/DatabaseToWebProcessConnection.cpp:
439         (WebKit::DatabaseToWebProcessConnection::didClose):
440         (WebKit::DatabaseToWebProcessConnection::didReceiveInvalidMessage):
441         * DatabaseProcess/DatabaseToWebProcessConnection.h:
442         * NetworkProcess/NetworkConnectionToWebProcess.cpp:
443         (WebKit::NetworkConnectionToWebProcess::didClose):
444         (WebKit::NetworkConnectionToWebProcess::didReceiveInvalidMessage):
445         * NetworkProcess/NetworkConnectionToWebProcess.h:
446         * NetworkProcess/NetworkProcess.cpp:
447         (WebKit::NetworkProcess::didClose):
448         (WebKit::NetworkProcess::didReceiveInvalidMessage):
449         * NetworkProcess/NetworkProcess.h:
450         * Platform/IPC/Connection.cpp:
451         (IPC::Connection::sendMessage):
452         (IPC::Connection::waitForMessage):
453         (IPC::Connection::connectionDidClose):
454         (IPC::Connection::sendOutgoingMessages):
455         (IPC::Connection::dispatchDidReceiveInvalidMessage):
456         (IPC::Connection::enqueueIncomingMessage):
457         (IPC::Connection::dispatchMessage):
458         (IPC::Connection::dispatchOneMessage):
459         * Platform/IPC/Connection.h:
460         * PluginProcess/PluginProcess.cpp:
461         (WebKit::PluginProcess::didClose):
462         (WebKit::PluginProcess::didReceiveInvalidMessage):
463         * PluginProcess/PluginProcess.h:
464         * PluginProcess/WebProcessConnection.cpp:
465         (WebKit::WebProcessConnection::didClose):
466         (WebKit::WebProcessConnection::didReceiveInvalidMessage):
467         * PluginProcess/WebProcessConnection.h:
468         * UIProcess/Databases/DatabaseProcessProxy.cpp:
469         (WebKit::DatabaseProcessProxy::didClose):
470         (WebKit::DatabaseProcessProxy::didReceiveInvalidMessage):
471         * UIProcess/Databases/DatabaseProcessProxy.h:
472         * UIProcess/Network/NetworkProcessProxy.cpp:
473         (WebKit::NetworkProcessProxy::didClose):
474         (WebKit::NetworkProcessProxy::didReceiveInvalidMessage):
475         * UIProcess/Network/NetworkProcessProxy.h:
476         * UIProcess/Plugins/PluginProcessProxy.cpp:
477         (WebKit::PluginProcessProxy::didClose):
478         (WebKit::PluginProcessProxy::didReceiveInvalidMessage):
479         * UIProcess/Plugins/PluginProcessProxy.h:
480         * UIProcess/WebProcessProxy.cpp:
481         (WebKit::WebProcessProxy::didClose):
482         (WebKit::WebProcessProxy::didReceiveInvalidMessage):
483         * UIProcess/WebProcessProxy.h:
484         * WebProcess/Databases/WebToDatabaseProcessConnection.cpp:
485         (WebKit::WebToDatabaseProcessConnection::didClose):
486         (WebKit::WebToDatabaseProcessConnection::didReceiveInvalidMessage):
487         * WebProcess/Databases/WebToDatabaseProcessConnection.h:
488         * WebProcess/Network/NetworkProcessConnection.cpp:
489         (WebKit::NetworkProcessConnection::didClose):
490         (WebKit::NetworkProcessConnection::didReceiveInvalidMessage):
491         * WebProcess/Network/NetworkProcessConnection.h:
492         * WebProcess/Plugins/PluginProcessConnection.cpp:
493         (WebKit::PluginProcessConnection::didClose):
494         (WebKit::PluginProcessConnection::didReceiveInvalidMessage):
495         * WebProcess/Plugins/PluginProcessConnection.h:
496         * WebProcess/WebPage/WebInspector.h:
497         * WebProcess/WebPage/WebInspectorUI.h:
498         * WebProcess/WebProcess.cpp:
499         (WebKit::WebProcess::didClose):
500         (WebKit::WebProcess::didReceiveInvalidMessage):
501         * WebProcess/WebProcess.h:
502
503 2015-01-01  Sam Weinig  <sam@webkit.org>
504
505         Remove GroupSettings
506         https://bugs.webkit.org/show_bug.cgi?id=140037
507
508         Reviewed by Dan Bernstein.
509
510         Remove unused databaseDirectoryIdentifier parameters.
511
512         * WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.cpp:
513         (WebKit::WebIDBFactoryBackend::WebIDBFactoryBackend):
514         (WebKit::WebIDBFactoryBackend::getDatabaseNames):
515         (WebKit::WebIDBFactoryBackend::deleteDatabase):
516         * WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.h:
517         * WebProcess/Storage/StorageNamespaceImpl.cpp:
518         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
519         (WebKit::WebPlatformStrategies::createIDBFactoryBackend):
520         * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
521
522 2015-01-01  Jeff Miller  <jeffm@apple.com>
523
524         Update user-visible copyright strings to include 2015
525         https://bugs.webkit.org/show_bug.cgi?id=139880
526
527         Reviewed by Darin Adler.
528
529         * DatabaseProcess/EntryPoint/mac/LegacyProcess/Info.plist:
530         * DatabaseProcess/EntryPoint/mac/XPCService/DatabaseService.Development/Info.plist:
531         * DatabaseProcess/EntryPoint/mac/XPCService/DatabaseService/Info.plist:
532         * Info.plist:
533         * NetworkProcess/EntryPoint/mac/LegacyProcess/Info.plist:
534         * NetworkProcess/EntryPoint/mac/XPCService/NetworkService.Development/Info-OSX.plist:
535         * NetworkProcess/EntryPoint/mac/XPCService/NetworkService.Development/Info-iOS.plist:
536         * NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info-OSX.plist:
537         * NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info-iOS.plist:
538         * PluginProcess/EntryPoint/mac/LegacyProcess/Info.plist:
539         * PluginProcess/EntryPoint/mac/XPCService/PluginService.32-64.Info.plist:
540         * PluginProcess/EntryPoint/mac/XPCService/PluginService.Development/Info.plist:
541         * WebProcess/EntryPoint/mac/LegacyProcess/Info.plist:
542         * WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/Info-OSX.plist:
543         * WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/Info-iOS.plist:
544         * WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-OSX.plist:
545         * WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-iOS.plist:
546         * mac/Info-WebKit2.plist:
547
548 2014-12-31  Sam Weinig  <sam@webkit.org>
549
550         Move scrolling code off of WTF::bind
551         https://bugs.webkit.org/show_bug.cgi?id=140019
552
553         Reviewed by Darin Adler.
554
555         * WebProcess/WebPage/EventDispatcher.cpp:
556         (WebKit::EventDispatcher::wheelEvent):
557         (WebKit::EventDispatcher::touchEvent):
558         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
559         (WebKit::TiledCoreAnimationDrawingArea::updatePreferences):
560
561 2015-01-01  Darin Adler  <darin@apple.com>
562
563         We often misspell identifier as "identifer"
564         https://bugs.webkit.org/show_bug.cgi?id=140025
565
566         Reviewed by Michael Saboff.
567
568         * Shared/WebPageGroupData.cpp:
569         (WebKit::WebPageGroupData::encode):
570         (WebKit::WebPageGroupData::decode):
571         * Shared/WebPageGroupData.h:
572         * UIProcess/WebPageGroup.cpp:
573         (WebKit::pageGroupData):
574         (WebKit::WebPageGroup::WebPageGroup):
575         * UIProcess/WebPageGroup.h:
576         (WebKit::WebPageGroup::identifier):
577         * WebProcess/WebPage/WebInspector.cpp:
578         (WebKit::WebInspector::createInspectorPage):
579         * WebProcess/WebPage/WebPageGroupProxy.cpp:
580         (WebKit::WebPageGroupProxy::WebPageGroupProxy):
581         * WebProcess/WebPage/WebPageGroupProxy.h:
582         (WebKit::WebPageGroupProxy::identifier):
583         Fix misspellings.
584
585 2014-12-31  Yusuke Suzuki  <utatane.tea@gmail.com>
586
587         [GTK] Suppress unused parameter warnings in ui clients
588         https://bugs.webkit.org/show_bug.cgi?id=140012
589
590         Drop the parameter name of WebKitUIClient::isPlayingAudioDidChange
591         to suppress warnings.
592
593         Reviewed by Benjamin Poulain.
594
595         * UIProcess/API/gtk/WebKitUIClient.cpp:
596
597 2014-12-31  Sam Weinig  <sam@webkit.org>
598
599         Remove the remaining uses of OwnPtr from WebKit2
600         https://bugs.webkit.org/show_bug.cgi?id=140017
601
602         Reviewed by Dan Bernstein.
603
604         * Shared/Scrolling/RemoteScrollingCoordinatorTransaction.cpp:
605         (WebKit::RemoteScrollingCoordinatorTransaction::decode):
606         * Shared/Scrolling/RemoteScrollingCoordinatorTransaction.h:
607         (WebKit::RemoteScrollingCoordinatorTransaction::setStateTreeToEncode):
608         (WebKit::RemoteScrollingCoordinatorTransaction::scrollingStateTree):
609         * UIProcess/Launcher/mac/DynamicLinkerEnvironmentExtractor.mm:
610         * UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.cpp:
611         (WebKit::RemoteScrollingCoordinatorProxy::updateScrollingTree):
612         * UIProcess/mac/PageClientImpl.h:
613         * UIProcess/mac/PageClientImpl.mm:
614         (WebKit::PageClientImpl::PageClientImpl):
615         * UIProcess/mac/WKFullScreenWindowController.h:
616         * UIProcess/mac/WKPrintingView.mm:
617         (-[WKPrintingView _preparePDFDataForPrintingOnSecondaryThread]):
618         (-[WKPrintingView _askPageToComputePageRects]):
619         (-[WKPrintingView _drawPreview:]):
620         * WebProcess/InjectedBundle/API/c/mac/WKBundlePageBannerMac.mm:
621
622 2014-12-31  Bartlomiej Gajda  <b.gajda@samsung.com>
623
624         Fix build warnings after r177792.
625         https://bugs.webkit.org/show_bug.cgi?id=140005.
626
627         Reviewed by Anders Carlsson.
628
629         Add UNUSED_PARAM(connection) for async messages.
630
631         * Scripts/webkit/messages.py:
632         (generate_message_handler):
633
634 2014-12-31  Zan Dobersek  <zdobersek@igalia.com>
635
636         Unreviewed build fix for the GTK port.
637
638         Move the ArgumentCodersGtk.h inclusion from WebPageProxy.cpp to
639         WebPageProxy.h. This makes GTK-specific IPC coders available to
640         WebPageProxyMessageReceiver, fixing a build error due to missing
641         ArgumentCoder template specializations for WebCore::DragData type
642         that is used in the GTK-specific StartDrag message.
643
644         * UIProcess/WebPageProxy.cpp:
645         * UIProcess/WebPageProxy.h:
646
647 2014-12-31  Commit Queue  <commit-queue@webkit.org>
648
649         Unreviewed, rolling out r177824 and r177826.
650         https://bugs.webkit.org/show_bug.cgi?id=140011
651
652         The new test crashes (Requested by ap on #webkit).
653
654         Reverted changesets:
655
656         "Too large plugins are crashing."
657         https://bugs.webkit.org/show_bug.cgi?id=139856
658         http://trac.webkit.org/changeset/177824
659
660         "Fix bug number typo in the previous commit."
661         http://trac.webkit.org/changeset/177826
662
663 2014-12-30  Gabor Rapcsanyi  <rgabor@webkit.org>
664
665         Too large plugins are crashing.
666         https://bugs.webkit.org/show_bug.cgi?id=139868
667
668         Reviewed by Darin Adler.
669
670         * WebProcess/Plugins/PluginProxy.cpp:
671         (WebKit::PluginProxy::updateBackingStore): Return false if backingStore cannot be allocated.
672
673 2014-12-30  Anders Carlsson  <andersca@apple.com>
674
675         Transient local storage namespaces need to ref their storage areas
676         https://bugs.webkit.org/show_bug.cgi?id=140006
677         <rdar://problem/19225389>
678
679         Reviewed by Sam Weinig.
680
681         We need to keep transient storage areas around even if they have no active connections,
682         so use a RefPtr instead of a raw pointer. This matches what we do for session storage namespaces.
683
684         * UIProcess/Storage/StorageManager.cpp:
685
686 2014-12-29  Anders Carlsson  <andersca@apple.com>
687
688         Remove unneeded StorageNamespace functions
689         https://bugs.webkit.org/show_bug.cgi?id=139997
690
691         Reviewed by Sam Weinig.
692
693         * WebProcess/Storage/StorageNamespaceImpl.cpp:
694         (WebKit::StorageNamespaceImpl::close): Deleted.
695         (WebKit::StorageNamespaceImpl::clearOriginForDeletion): Deleted.
696         (WebKit::StorageNamespaceImpl::clearAllOriginsForDeletion): Deleted.
697         (WebKit::StorageNamespaceImpl::sync): Deleted.
698         (WebKit::StorageNamespaceImpl::closeIdleLocalStorageDatabases): Deleted.
699         * WebProcess/Storage/StorageNamespaceImpl.h:
700
701 2014-12-29  Anders Carlsson  <andersca@apple.com>
702
703         Move storage code from WebCore to WebKit
704         https://bugs.webkit.org/show_bug.cgi?id=139558
705
706         Reviewed by Darin Adler.
707
708         * WebProcess/WebProcess.cpp:
709
710 2014-12-29  Dan Bernstein  <mitz@apple.com>
711
712         Fixed the iOS build.
713
714         * WebProcess/WebPage/ios/WebPageIOS.mm:
715
716 2014-12-29  Anders Carlsson  <andersca@apple.com>
717
718         Another iOS build fix.
719
720         * WebProcess/WebPage/ios/WebPageIOS.mm:
721         (WebKit::WebPage::elementDidFocus):
722
723 2014-12-29  Anders Carlsson  <andersca@apple.com>
724
725         Turn on transient local storage support again
726         https://bugs.webkit.org/show_bug.cgi?id=139995
727
728         Reviewed by Sam Weinig.
729
730         Using transient local storage caused weird crashes in the UI process so that change had to
731         be backed out - let's turn it on and see if it still happens.
732
733         * WebProcess/Storage/WebStorageNamespaceProvider.cpp:
734         (WebKit::WebStorageNamespaceProvider::createTransientLocalStorageNamespace):
735
736 2014-12-29  Anders Carlsson  <andersca@apple.com>
737
738         Remove more old coder code gunk.
739
740         Rubber-stamped by Sam Weinig.
741
742         * Scripts/webkit/messages.py:
743         (argument_coder_headers_for_type):
744         (handler_function): Deleted.
745
746 2014-12-29  Anders Carlsson  <andersca@apple.com>
747
748         Try to fix the iOS build.
749
750         * UIProcess/ios/WebPageProxyIOS.mm:
751         (WebKit::WebPageProxy::startAssistingNode):
752         * WebProcess/WebPage/ios/WebPageIOS.mm:
753         (WebKit::WebPage::elementDidFocus):
754
755 2014-12-29  Csaba Osztrogonác  <ossy@webkit.org>
756
757         URTBF after r177805.
758
759         * CMakeLists.txt:
760
761 2014-12-29  Anders Carlsson  <andersca@apple.com>
762
763         Remove the old user message coder code
764         https://bugs.webkit.org/show_bug.cgi?id=139994
765
766         Reviewed by Sam Weinig.
767
768         * Platform/IPC/HandleMessage.h:
769         (IPC::callMemberFunctionImpl): Deleted.
770         (IPC::callMemberFunction): Deleted.
771         (IPC::handleMessageVariadic): Deleted.
772         * Scripts/webkit/messages.py:
773         (decode_type):
774         (async_message_statement):
775         (sync_message_statement):
776         * Shared/UserMessageCoders.h: Removed.
777         * Shared/mac/ObjCObjectGraphCoders.h: Removed.
778         * Shared/mac/ObjCObjectGraphCoders.mm: Removed.
779         * UIProcess/WebConnectionToWebProcess.cpp:
780         * UIProcess/WebContextUserMessageCoders.h: Removed.
781         * UIProcess/WebPageProxy.cpp:
782         * UIProcess/WebProcessPool.cpp:
783         * WebKit2.xcodeproj/project.pbxproj:
784         * WebProcess/InjectedBundle/InjectedBundle.cpp:
785         * WebProcess/InjectedBundle/InjectedBundleUserMessageCoders.h: Removed.
786         * WebProcess/WebConnectionToUIProcess.cpp:
787         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
788         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
789         * WebProcess/WebPage/WebContextMenu.cpp:
790         * WebProcess/WebPage/WebPage.cpp:
791         * WebProcess/WebPage/mac/WebPageMac.mm:
792         * WebProcess/WebProcess.cpp:
793
794 2014-12-29  Sam Weinig  <sam@webkit.org>
795
796         Move WebPasteboardProxy from Shared to UIProcess, where it should have been all along
797         Rubber-stamped by Anders Carlsson.
798
799         * Shared/WebPasteboardProxy.cpp: Removed.
800         * Shared/WebPasteboardProxy.h: Removed.
801         * Shared/WebPasteboardProxy.messages.in: Removed.
802         * UIProcess/WebPasteboardProxy.cpp: Copied from Shared/WebPasteboardProxy.cpp.
803         * UIProcess/WebPasteboardProxy.h: Copied from Shared/WebPasteboardProxy.h.
804         * UIProcess/WebPasteboardProxy.messages.in: Copied from Shared/WebPasteboardProxy.messages.in.
805         * WebKit2.xcodeproj/project.pbxproj:
806
807 2014-12-29  Sam Weinig  <sam@webkit.org>
808
809         Try to fix the iOS build.
810
811         * Shared/WebPasteboardProxy.h:
812
813 2014-12-29  Anders Carlsson  <andersca@apple.com>
814
815         Convert injected bundle message posting to UserData
816         https://bugs.webkit.org/show_bug.cgi?id=139993
817
818         Reviewed by Sam Weinig.
819
820         * UIProcess/WebProcessPool.cpp:
821         (WebKit::WebProcessPool::createNewWebProcess):
822         (WebKit::WebProcessPool::postMessageToInjectedBundle):
823         * WebProcess/WebProcess.cpp:
824         (WebKit::WebProcess::handleInjectedBundleMessage):
825         (WebKit::WebProcess::postInjectedBundleMessage): Deleted.
826         * WebProcess/WebProcess.h:
827         * WebProcess/WebProcess.messages.in:
828
829 2014-12-29  Sam Weinig  <sam@webkit.org>
830
831         Try to fix the iOS build.
832
833         * Shared/WebPasteboardProxy.h:
834
835 2014-12-29  Csaba Osztrogonác  <ossy@webkit.org>
836
837         One more speculative buildfix after r177794.
838
839         * CMakeLists.txt:
840
841 2014-12-29  Sam Weinig  <sam@webkit.org>
842
843         Try to fix the iOS build.
844
845         * Shared/WebPasteboardProxy.h:
846
847 2014-12-29  Csaba Osztrogonác  <ossy@webkit.org>
848
849         Speculative buildfix after r177793.
850
851         * WebProcess/soup/WebProcessSoup.cpp:
852         (WebKit::WebProcess::platformInitializeWebProcess):
853
854 2014-12-29  Csaba Osztrogonác  <ossy@webkit.org>
855
856         Speculative buildfix after r177794.
857
858         * CMakeLists.txt:
859
860 2014-12-29  Sam Weinig  <sam@webkit.org>
861
862         Removes some unnecessary use of LegacyReceiver
863         https://bugs.webkit.org/show_bug.cgi?id=139992
864
865         Reviewed by Anders Carlsson.
866
867         * Shared/WebConnection.cpp:
868         (WebKit::WebConnection::didReceiveMessage): Deleted.
869         * Shared/WebConnection.h:
870         * Shared/WebConnection.messages.in:
871         * UIProcess/WebProcessPool.cpp:
872         (WebKit::WebProcessPool::didReceiveMessage): Deleted.
873         (WebKit::WebProcessPool::didReceiveSyncMessage): Deleted.
874         * UIProcess/WebProcessPool.h:
875         * UIProcess/WebProcessPool.messages.in:
876         Remove unnecessary use of LegacyReceiver.
877
878         * UIProcess/WebPageProxy.h:
879         Remove declarations for functions that don't exist.
880
881 2014-12-29  Anders Carlsson  <andersca@apple.com>
882
883         Convert all variadic web process messages to UserData
884         https://bugs.webkit.org/show_bug.cgi?id=139991
885
886         Reviewed by Sam Weinig.
887
888         * UIProcess/WebPageProxy.cpp:
889         (WebKit::WebPageProxy::loadRequest):
890         (WebKit::WebPageProxy::loadFile):
891         (WebKit::WebPageProxy::loadData):
892         (WebKit::WebPageProxy::loadHTMLString):
893         (WebKit::WebPageProxy::loadAlternateHTMLString):
894         (WebKit::WebPageProxy::loadPlainTextString):
895         (WebKit::WebPageProxy::loadWebArchiveData):
896         (WebKit::WebPageProxy::postMessageToInjectedBundle):
897         * WebProcess/WebPage/WebPage.cpp:
898         (WebKit::WebPage::loadRequest):
899         (WebKit::WebPage::loadDataImpl):
900         (WebKit::WebPage::loadString):
901         (WebKit::WebPage::loadData):
902         (WebKit::WebPage::loadHTMLString):
903         (WebKit::WebPage::loadAlternateHTMLString):
904         (WebKit::WebPage::loadPlainTextString):
905         (WebKit::WebPage::loadWebArchiveData):
906         (WebKit::WebPage::postInjectedBundleMessage):
907         * WebProcess/WebPage/WebPage.h:
908         * WebProcess/WebPage/WebPage.messages.in:
909
910 2014-12-29  Anders Carlsson  <andersca@apple.com>
911
912         Convert all variadic WebProcessProxy message over to UserData
913         https://bugs.webkit.org/show_bug.cgi?id=139990
914
915         Reviewed by Sam Weinig.
916
917         * UIProcess/WebPageProxy.cpp:
918         (WebKit::WebPageProxy::willGoToBackForwardListItem):
919         (WebKit::WebPageProxy::didStartProvisionalLoadForFrame):
920         (WebKit::WebPageProxy::didReceiveServerRedirectForProvisionalLoadForFrame):
921         (WebKit::WebPageProxy::didFailProvisionalLoadForFrame):
922         (WebKit::WebPageProxy::didCommitLoadForFrame):
923         (WebKit::WebPageProxy::didFinishDocumentLoadForFrame):
924         (WebKit::WebPageProxy::didFinishLoadForFrame):
925         (WebKit::WebPageProxy::didFailLoadForFrame):
926         (WebKit::WebPageProxy::didSameDocumentNavigationForFrame):
927         (WebKit::WebPageProxy::didReceiveTitleForFrame):
928         (WebKit::WebPageProxy::didFirstLayoutForFrame):
929         (WebKit::WebPageProxy::didFirstVisuallyNonEmptyLayoutForFrame):
930         (WebKit::WebPageProxy::didLayout):
931         (WebKit::WebPageProxy::didRemoveFrameFromHierarchy):
932         (WebKit::WebPageProxy::didDisplayInsecureContentForFrame):
933         (WebKit::WebPageProxy::didRunInsecureContentForFrame):
934         (WebKit::WebPageProxy::didDetectXSSForFrame):
935         (WebKit::WebPageProxy::decidePolicyForNavigationAction):
936         (WebKit::WebPageProxy::decidePolicyForNewWindowAction):
937         (WebKit::WebPageProxy::decidePolicyForResponse):
938         (WebKit::WebPageProxy::decidePolicyForResponseSync):
939         (WebKit::WebPageProxy::unableToImplementPolicy):
940         (WebKit::WebPageProxy::willSubmitForm):
941         (WebKit::WebPageProxy::mouseDidMoveOverElement):
942         (WebKit::WebPageProxy::didBeginTrackingPotentialLongMousePress):
943         (WebKit::WebPageProxy::didRecognizeLongMousePress):
944         (WebKit::WebPageProxy::didCancelTrackingPotentialLongMousePress):
945         (WebKit::WebPageProxy::showContextMenu):
946         (WebKit::WebPageProxy::internalShowContextMenu):
947         (WebKit::WebPageProxy::didPerformActionMenuHitTest):
948         * UIProcess/WebPageProxy.h:
949         * UIProcess/WebPageProxy.messages.in:
950         * UIProcess/mac/WebPageProxyMac.mm:
951         (WebKit::WebPageProxy::showSelectionServiceMenu):
952         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
953         (WebKit::WebChromeClient::mouseDidMoveOverElement):
954         (WebKit::WebChromeClient::didBeginTrackingPotentialLongMousePress):
955         (WebKit::WebChromeClient::didRecognizeLongMousePress):
956         (WebKit::WebChromeClient::didCancelTrackingPotentialLongMousePress):
957         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
958         (WebKit::WebFrameLoaderClient::detachedFromParent2):
959         (WebKit::WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad):
960         (WebKit::WebFrameLoaderClient::dispatchDidChangeLocationWithinPage):
961         (WebKit::WebFrameLoaderClient::dispatchDidPushStateWithinPage):
962         (WebKit::WebFrameLoaderClient::dispatchDidReplaceStateWithinPage):
963         (WebKit::WebFrameLoaderClient::dispatchDidPopStateWithinPage):
964         (WebKit::WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
965         (WebKit::WebFrameLoaderClient::dispatchDidReceiveTitle):
966         (WebKit::WebFrameLoaderClient::dispatchDidCommitLoad):
967         (WebKit::WebFrameLoaderClient::dispatchDidFailProvisionalLoad):
968         (WebKit::WebFrameLoaderClient::dispatchDidFailLoad):
969         (WebKit::WebFrameLoaderClient::dispatchDidFinishDocumentLoad):
970         (WebKit::WebFrameLoaderClient::dispatchDidFinishLoad):
971         (WebKit::WebFrameLoaderClient::dispatchDidLayout):
972         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse):
973         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
974         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
975         (WebKit::WebFrameLoaderClient::dispatchUnableToImplementPolicy):
976         (WebKit::WebFrameLoaderClient::dispatchWillSubmitForm):
977         (WebKit::WebFrameLoaderClient::shouldGoToHistoryItem):
978         (WebKit::WebFrameLoaderClient::didDisplayInsecureContent):
979         (WebKit::WebFrameLoaderClient::didRunInsecureContent):
980         (WebKit::WebFrameLoaderClient::didDetectXSS):
981         * WebProcess/WebPage/WebContextMenu.cpp:
982         (WebKit::WebContextMenu::show):
983         * WebProcess/WebPage/mac/WebPageMac.mm:
984         (WebKit::WebPage::performActionMenuHitTestAtLocation):
985
986 2014-12-29  Sam Weinig  <sam@webkit.org>
987
988         Move Pasteboard code out of WebProcessPool and into its own singleton class
989         https://bugs.webkit.org/show_bug.cgi?id=139987
990
991         Reviewed by Anders Carlsson.
992
993         * DerivedSources.make:
994         * Shared/WebPasteboardProxy.cpp: Added.
995         (WebKit::WebPasteboardProxy::shared):
996         (WebKit::WebPasteboardProxy::WebPasteboardProxy):
997         (WebKit::WebPasteboardProxy::addWebProcessProxy):
998         * Shared/WebPasteboardProxy.h: Added.
999         * Shared/WebPasteboardProxy.messages.in: Added.
1000         * UIProcess/Cocoa/WebPasteboardProxyCocoa.mm: Added.
1001         * UIProcess/Cocoa/WebProcessPoolCocoa.mm:
1002         * UIProcess/WebProcessPool.cpp:
1003         (WebKit::WebProcessPool::didReceiveSyncMessage):
1004         (WebKit::WebProcessPool::dummy): Deleted.
1005         * UIProcess/WebProcessPool.h:
1006         * UIProcess/WebProcessPool.messages.in:
1007         * UIProcess/WebProcessProxy.cpp:
1008         (WebKit::WebProcessProxy::WebProcessProxy):
1009         * WebKit2.xcodeproj/project.pbxproj:
1010         * WebProcess/Plugins/PDF/PDFPlugin.mm:
1011         (WebKit::PDFPlugin::writeItemsToPasteboard):
1012         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
1013
1014 2014-12-29  Anders Carlsson  <andersca@apple.com>
1015
1016         Use UserData for bundle initialization data
1017         https://bugs.webkit.org/show_bug.cgi?id=139989
1018
1019         Reviewed by Sam Weinig.
1020
1021         * Shared/WebProcessCreationParameters.cpp:
1022         (WebKit::WebProcessCreationParameters::~WebProcessCreationParameters):
1023         (WebKit::WebProcessCreationParameters::encode):
1024         (WebKit::WebProcessCreationParameters::decode):
1025         * Shared/WebProcessCreationParameters.h:
1026         * UIProcess/WebProcessPool.cpp:
1027         (WebKit::WebProcessPool::createNewWebProcess):
1028         * WebProcess/WebProcess.cpp:
1029         (WebKit::WebProcess::initializeWebProcess):
1030         * WebProcess/WebProcess.h:
1031         * WebProcess/WebProcess.messages.in:
1032         * WebProcess/cocoa/WebProcessCocoa.mm:
1033         (WebKit::WebProcess::platformInitializeWebProcess):
1034
1035 2014-12-28  Anders Carlsson  <andersca@apple.com>
1036
1037         Use UserData when sending messages to the process pool
1038         https://bugs.webkit.org/show_bug.cgi?id=139978
1039
1040         Reviewed by Sam Weinig.
1041
1042         * Scripts/webkit/messages.py:
1043         (generate_message_handler):
1044         Include the connection parameter for legacy receivers as well.
1045
1046         * Shared/CoreIPCSupport/WebContextMessageKinds.h:
1047         Remove this, it's no longer needed.
1048
1049         * UIProcess/WebProcessPool.cpp:
1050         (WebKit::WebProcessPool::didReceiveMessage):
1051         No need to special case the postMessage message.
1052
1053         (WebKit::WebProcessPool::didReceiveSyncMessage):
1054         No need to special case the postSynchronousMessageMessage message.
1055
1056         (WebKit::WebProcessPool::handleMessage):
1057         Convert handles to objects and call didReceiveMessageFromInjectedBundle.
1058
1059         (WebKit::WebProcessPool::handleSynchronousMessage):
1060         Convert handles to objects, call didReceiveSynchronousMessageFromInjectedBundle, and then
1061         convert objects back to handles in the reply.
1062
1063         (WebKit::WebProcessPool::didReceiveMessageFromInjectedBundle): Deleted.
1064         (WebKit::WebProcessPool::didReceiveSynchronousMessageFromInjectedBundle): Deleted.
1065         (WebKit::WebProcessPool::dummy): Deleted.
1066         * UIProcess/WebProcessPool.h:
1067         Add handleMessage and handleSynchronousMessage message handlers.
1068
1069         * UIProcess/WebProcessPool.messages.in:
1070         Add new messages.
1071
1072         * WebKit2.xcodeproj/project.pbxproj:
1073         Remove a now unused file.
1074
1075         * WebProcess/InjectedBundle/InjectedBundle.cpp:
1076         (WebKit::InjectedBundle::postMessage):
1077         Convert objects to handles in the message body and then send the HandleMessage to the UI process.
1078
1079         (WebKit::InjectedBundle::postSynchronousMessage):
1080         Convert objects to handles in the message body, send the HandleSynchronousMessage message to the UI process,
1081         and then convert handles back to objects in the reply.
1082
1083 2014-12-28  Anders Carlsson  <andersca@apple.com>
1084
1085         Transform nested objects inside arrays
1086         https://bugs.webkit.org/show_bug.cgi?id=139976
1087
1088         Reviewed by Oliver Hunt.
1089
1090         Call transformGraph on each element so that we'll transform other nested objects correctly.
1091
1092         * Shared/UserData.cpp:
1093         (WebKit::transformGraph):
1094
1095 2014-12-27  Dan Bernstein  <mitz@apple.com>
1096
1097         iOS build fix after r177765.
1098
1099         * Shared/mac/ObjCObjectGraph.mm:
1100         (WebKit::ObjCObjectGraph::encode):
1101
1102 2014-12-27  Anders Carlsson  <andersca@apple.com>
1103
1104         Switch WebConnection over to sending objects with UserData
1105         https://bugs.webkit.org/show_bug.cgi?id=139967
1106
1107         Reviewed by Oliver Hunt.
1108
1109         * Shared/WebConnection.cpp:
1110         (WebKit::WebConnection::postMessage):
1111         No need to construct the message manually anymore.
1112
1113         (WebKit::WebConnection::handleMessage):
1114         No need to decode the message manually, just get the object from the UserData message body,
1115         convert any handles to objects, and dispatch the message.
1116
1117         * Shared/WebConnection.h:
1118         Remove now unused members.
1119
1120         * Shared/WebConnection.messages.in:
1121         Give HandleMessage a proper signature.
1122
1123         * UIProcess/WebConnectionToWebProcess.cpp:
1124         (WebKit::WebConnectionToWebProcess::transformHandlesToObjects):
1125         (WebKit::WebConnectionToWebProcess::transformObjectsToHandles):
1126         Call the WebProcessProxy version.
1127
1128         (WebKit::WebConnectionToWebProcess::encodeMessageBody): Deleted.
1129         (WebKit::WebConnectionToWebProcess::decodeMessageBody): Deleted.
1130
1131         * UIProcess/WebConnectionToWebProcess.h:
1132         * WebProcess/WebConnectionToUIProcess.cpp:
1133         (WebKit::WebConnectionToUIProcess::encodeMessageBody): Deleted.
1134         (WebKit::WebConnectionToUIProcess::decodeMessageBody): Deleted.
1135         * WebProcess/WebConnectionToUIProcess.h:
1136         Delete more unused members.
1137
1138 2014-12-27  Anders Carlsson  <andersca@apple.com>
1139
1140         Encode and decode WKTypeRefWrapper objects
1141         https://bugs.webkit.org/show_bug.cgi?id=139966
1142
1143         Reviewed by Oliver Hunt.
1144
1145         * Shared/UserData.cpp:
1146         (WebKit::UserData::encode):
1147         * Shared/UserData.h:
1148         * Shared/mac/ObjCObjectGraph.mm:
1149         (WebKit::typeFromObject):
1150         (WebKit::ObjCObjectGraph::encode):
1151         (WebKit::ObjCObjectGraph::decode):
1152
1153 2014-12-27  Anders Carlsson  <andersca@apple.com>
1154
1155         Implement encoding and decoding of ObjCObjectGraph objects
1156         https://bugs.webkit.org/show_bug.cgi?id=139965
1157
1158         Reviewed by Oliver Hunt.
1159
1160         * Shared/UserData.cpp:
1161         (WebKit::UserData::encode):
1162         (WebKit::UserData::decode):
1163         * Shared/mac/ObjCObjectGraph.h:
1164         * Shared/mac/ObjCObjectGraph.mm:
1165         (WebKit::typeFromObject):
1166         (WebKit::ObjCObjectGraph::encode):
1167         (WebKit::ObjCObjectGraph::decode):
1168
1169 2014-12-27  Dan Bernstein  <mitz@apple.com>
1170
1171         [Cocoa] WKWebProcessPlugInLoadDelegate uses the deprecated WKRenderingProgressEvents enum
1172         https://bugs.webkit.org/show_bug.cgi?id=139964
1173
1174         Reviewed by Anders Carlsson.
1175
1176         * Shared/API/Cocoa/WKRenderingProgressEventsInternal.h: Removed.
1177
1178         * Shared/API/Cocoa/_WKRenderingProgressEvents.h: Added. Moved the enum definition from
1179         WKWebViewPrivate.h to here.
1180
1181         * Shared/API/Cocoa/_WKRenderingProgressEventsInternal.h: Added.
1182         (renderingProgressEvents): Moved from NavigationState.mm to here.
1183
1184         * UIProcess/API/Cocoa/WKBrowsingContextController.h: Removed observedRenderingProgressEvents
1185         property declaration.
1186         * UIProcess/API/Cocoa/WKBrowsingContextController.mm:
1187         (layoutMilestones): Deleted.
1188         (-[WKBrowsingContextController setObservedRenderingProgressEvents:]): Deleted. This is not
1189         needed for binary compatibility.
1190         (didLayout): Deleted.
1191         (setUpPageLoaderClient): Removed setting up didLayout callback.
1192         * UIProcess/API/Cocoa/WKBrowsingContextLoadDelegate.h: Removed unused delegate method.
1193
1194         * UIProcess/API/Cocoa/WKWebViewPrivate.h: Import definition of _WKRenderingProgressEvents
1195         from new header.
1196
1197         * UIProcess/Cocoa/NavigationState.mm:
1198         (WebKit::renderingProgressEvents): Moved into its own header.
1199
1200         * WebKit2.xcodeproj/project.pbxproj: Updated for file additions and removeals, and moved
1201         WKRenderingProgressEvents.h into a new Deprecated group.
1202
1203         * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInLoadDelegate.h: Changed the type of
1204         a delegate method parameter to _WKRenderingProgressEvents.
1205         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
1206         (didLayout): Pass the new type.
1207
1208 2014-12-26  Conrad Shultz  <conrad_shultz@apple.com>
1209
1210         Safari build crashes when "zooming into"/choosing a tab from tab view
1211         https://bugs.webkit.org/show_bug.cgi?id=139934
1212
1213         Reviewed by Dan Bernstein.
1214
1215         * UIProcess/API/mac/WKView.mm:
1216         (-[WKView _setIgnoresNonWheelEvents:]):
1217         Trying to add a nil gesture recognizer raises an exception. Stop assuming that a
1218         gesture recognizer is non-nil.
1219
1220 2014-12-26  Anders Carlsson  <andersca@apple.com>
1221
1222         Handle more types in the UserData encode/decode functions
1223         https://bugs.webkit.org/show_bug.cgi?id=139959
1224
1225         Reviewed by Dan Bernstein.
1226
1227         * Shared/UserData.cpp:
1228         (WebKit::UserData::encode):
1229         (WebKit::UserData::decode):
1230
1231 2014-12-26  Anders Carlsson  <andersca@apple.com>
1232
1233         Move handle encoding functions to their respective implementation files
1234         https://bugs.webkit.org/show_bug.cgi?id=139957
1235
1236         Reviewed by Dan Bernstein.
1237
1238         * Shared/API/APIFrameHandle.cpp:
1239         (API::FrameHandle::encode):
1240         (API::FrameHandle::decode):
1241         * Shared/API/APIFrameHandle.h:
1242         * Shared/API/APIPageGroupHandle.cpp:
1243         (API::PageGroupHandle::PageGroupHandle):
1244         (API::PageGroupHandle::encode):
1245         (API::PageGroupHandle::decode):
1246         * Shared/API/APIPageGroupHandle.h:
1247         * Shared/API/APIPageHandle.cpp:
1248         (API::PageHandle::encode):
1249         (API::PageHandle::decode):
1250         * Shared/API/APIPageHandle.h:
1251         * Shared/UserData.cpp:
1252         (WebKit::UserData::encode):
1253         (WebKit::UserData::decode):
1254
1255 2014-12-26  Anders Carlsson  <andersca@apple.com>
1256
1257         Add the notion of auto-converting page and frame handles
1258         https://bugs.webkit.org/show_bug.cgi?id=139954
1259
1260         Reviewed by Dan Bernstein.
1261
1262         This makes it possible to tell the difference between page and frame handles that
1263         should be converted to their respective UI or web process object representations
1264         and handles that should stay the same (for the modern API for example).
1265         
1266         * Shared/API/APIFrameHandle.cpp:
1267         (API::FrameHandle::create):
1268         (API::FrameHandle::createAutoconverting):
1269         (API::FrameHandle::FrameHandle):
1270         * Shared/API/APIFrameHandle.h:
1271         (API::FrameHandle::isAutoconverting):
1272         * Shared/API/APIPageHandle.cpp:
1273         (API::PageHandle::create):
1274         (API::PageHandle::createAutoconverting):
1275         (API::PageHandle::PageHandle):
1276         * Shared/API/APIPageHandle.h:
1277         (API::PageHandle::isAutoconverting):
1278         * Shared/API/Cocoa/_WKFrameHandle.mm:
1279         (-[_WKFrameHandle initWithCoder:]):
1280         * Shared/UserData.cpp:
1281         (WebKit::shouldTransform):
1282         * Shared/UserData.h:
1283         * UIProcess/Cocoa/UIDelegate.mm:
1284         (WebKit::UIDelegate::UIClient::printFrame):
1285         * UIProcess/WebProcessProxy.cpp:
1286         (WebKit::WebProcessProxy::transformHandlesToObjects):
1287         (WebKit::WebProcessProxy::transformObjectsToHandles):
1288         * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFrame.mm:
1289         (-[WKWebProcessPlugInFrame handle]):
1290         * WebProcess/WebProcess.cpp:
1291         (WebKit::WebProcess::transformHandlesToObjects):
1292         (WebKit::WebProcess::transformObjectsToHandles):
1293
1294 2014-12-26  Dan Bernstein  <mitz@apple.com>
1295
1296         [Cocoa] Some modern SPI changes have missing or incorrect availability annotations
1297         https://bugs.webkit.org/show_bug.cgi?id=139940
1298
1299         Reviewed by Darin Adler.
1300
1301         * Shared/API/c/WKDeclarationSpecifiers.h: Renamed WK_DEPRECATED to WK_C_DEPRECATED.
1302
1303         * Shared/API/Cocoa/WKFoundation.h: Define WK_DEPRECATED when API availability is not enabled
1304         to mean that the declaration is currently deprecated.
1305
1306         * Shared/API/c/WKConnectionRef.h: Updated for the renaming of the existing WK_DEPRECATED to
1307         WK_C_DEPRECATED.
1308         * UIProcess/API/C/WKContext.h: Ditto.
1309         * UIProcess/API/C/WKContextConnectionClient.h: Ditto.
1310         * UIProcess/API/C/WKContextDownloadClient.h: Ditto.
1311         * UIProcess/API/C/WKContextHistoryClient.h: Ditto.
1312         * UIProcess/API/C/WKContextInjectedBundleClient.h: Ditto.
1313         * UIProcess/API/C/WKCookieManager.h: Ditto.
1314         * UIProcess/API/C/WKDatabaseManager.h: Ditto.
1315         * UIProcess/API/C/WKGeolocationManager.h: Ditto.
1316         * UIProcess/API/C/WKIconDatabase.h: Ditto.
1317         * UIProcess/API/C/WKNotificationProvider.h: Ditto.
1318         * UIProcess/API/C/WKPageContextMenuClient.h: Ditto.
1319         * UIProcess/API/C/WKPageFindClient.h: Ditto.
1320         * UIProcess/API/C/WKPageFindMatchesClient.h: Ditto.
1321         * UIProcess/API/C/WKPageFormClient.h: Ditto.
1322         * UIProcess/API/C/WKPageUIClient.h: Ditto.
1323         * WebProcess/InjectedBundle/API/c/WKBundle.h: Ditto.
1324         * WebProcess/InjectedBundle/API/c/WKBundlePageBanner.h: Ditto.
1325         * WebProcess/InjectedBundle/API/c/WKBundlePageContextMenuClient.h: Ditto.
1326         * WebProcess/InjectedBundle/API/c/WKBundlePageDiagnosticLoggingClient.h: Ditto.
1327         * WebProcess/InjectedBundle/API/c/WKBundlePageEditorClient.h: Ditto.
1328         * WebProcess/InjectedBundle/API/c/WKBundlePageFormClient.h: Ditto.
1329         * WebProcess/InjectedBundle/API/c/WKBundlePageFullScreenClient.h: Ditto.
1330         * WebProcess/InjectedBundle/API/c/WKBundlePageLoaderClient.h: Ditto.
1331         * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.h: Ditto.
1332         * WebProcess/InjectedBundle/API/c/WKBundlePagePolicyClient.h: Ditto.
1333         * WebProcess/InjectedBundle/API/c/WKBundlePageResourceLoadClient.h: Ditto.
1334         * WebProcess/InjectedBundle/API/c/WKBundlePageUIClient.h: Ditto.
1335
1336         * Shared/API/Cocoa/WKRenderingProgressEvents.h: Added missing availability annotation.
1337
1338         * UIProcess/API/Cocoa/WKPreferencesPrivate.h: Changed to use WK_MAC_TBA and WK_IOS_TBA for
1339         _WKDebugOverlayRegions enum. Added availability annotations to new properties.
1340
1341         * UIProcess/API/Cocoa/WKProcessPoolPrivate.h: Added availability annotation to new method.
1342
1343         * UIProcess/API/Cocoa/WKWebViewConfigurationPrivate.h: Annotated new method, changed Mac
1344         availability of iOS-only method to NA.
1345
1346         * UIProcess/API/Cocoa/WKWebViewPrivate.h: Added availability annotation to new enum value,
1347         new property, and new method. Added deprecation annotation to one method.
1348
1349         * UIProcess/API/Cocoa/_WKWebsiteDataStore.h: Annotated new method.
1350
1351         * mac/rewrite-availability-macros.sh: Rewrite WK_DEPRECATED to NS_DEPRECATED.
1352
1353 2014-12-26  Dan Bernstein  <mitz@apple.com>
1354
1355         <rdar://problem/19348208> REGRESSION (r177027): iOS builds use the wrong toolchain
1356         https://bugs.webkit.org/show_bug.cgi?id=139950
1357
1358         Reviewed by David Kilzer.
1359
1360         * Configurations/Base.xcconfig: Only define TOOLCHAINS when building for OS X, doing so
1361         in a manner that works with Xcode 5.1.1.
1362
1363 2014-12-25  Hunseop Jeong  <hs85.jeong@samsung.com>
1364
1365         Fix build warning after r177700
1366         https://bugs.webkit.org/show_bug.cgi?id=139948
1367
1368         Reviewed by Alexey Proskuryakov.
1369
1370         * UIProcess/WebConnectionToWebProcess.cpp:
1371         (WebKit::WebConnectionToWebProcess::transformHandlesToObjects):
1372         (WebKit::WebConnectionToWebProcess::transformObjectsToHandles):
1373
1374 2014-12-25  Chris Dumez  <cdumez@apple.com>
1375
1376         [iOS] Log better using FeatureCounter why PageCache is failing due to pruned resources
1377         https://bugs.webkit.org/show_bug.cgi?id=139921
1378
1379         Reviewed by Gavin Barraclough and Alexey Proskuryakov.
1380
1381         Call PageCache::pruneToCapacityNow() instead of multiple calls to
1382         setCapacity() as it does exactly what we want. Also pass the new
1383         PrunedReason argument so help us do better logging.
1384
1385         * WebProcess/WebProcess.cpp:
1386         (WebKit::WebProcess::releasePageCache):
1387
1388 2014-12-25  Commit Queue  <commit-queue@webkit.org>
1389
1390         Unreviewed, rolling out r177712 and r177717.
1391         https://bugs.webkit.org/show_bug.cgi?id=139944
1392
1393         Caused flaky assertion failures (Requested by ap on #webkit).
1394
1395         Reverted changesets:
1396
1397         "[iOS] Log better using FeatureCounter why PageCache is
1398         failing due to pruned resources"
1399         https://bugs.webkit.org/show_bug.cgi?id=139921
1400         http://trac.webkit.org/changeset/177712
1401
1402         "Unreviewed, fix build warning after r177712"
1403         http://trac.webkit.org/changeset/177717
1404
1405 2014-12-24  Dan Bernstein  <mitz@apple.com>
1406
1407         [Cocoa] WebKit private headers shouldn’t contain “inappropriate” macros
1408         https://bugs.webkit.org/show_bug.cgi?id=139942
1409
1410         Reviewed by Darin Adler.
1411
1412         * WebKit2.xcodeproj/project.pbxproj: In the Check For Inappropriate Macros in External
1413         Headers script build phase, check the PrivateHeaders directory as well.
1414
1415 2014-12-24  Dan Bernstein  <mitz@apple.com>
1416
1417         Addressed a linker warning about the definition of a method in a category overridng a method from the class.
1418
1419         * UIProcess/API/mac/WKView.mm:
1420         (-[WKView(Private) _targetWindowForMovePreparation]): Deleted. This was identical to the
1421         definition in the main WKView implementation above.
1422
1423 2014-12-23  ChangSeok Oh  <changseok.oh@collabora.com>
1424
1425         [GTK] Build fix after r177692
1426         https://bugs.webkit.org/show_bug.cgi?id=139919
1427
1428         Reviewed by Gyuyoung Kim.
1429
1430         This change addresses build failures introduced after r177692.
1431
1432         * PlatformEfl.cmake: Renamed WebContextSoup to WebProcessPoolSoup.cpp
1433         * PlatformGTK.cmake: ditto.
1434         * UIProcess/API/gtk/PageClientImpl.cpp:
1435         * UIProcess/API/gtk/WebKitDownloadClient.cpp:
1436         * UIProcess/API/gtk/WebKitFormSubmissionRequest.cpp:
1437         (webkitFormSubmissionRequestCreate):
1438         (webkit_form_submission_request_get_text_fields):
1439         * UIProcess/API/gtk/WebKitFormSubmissionRequestPrivate.h:
1440         * UIProcess/API/gtk/WebKitInjectedBundleClient.cpp:
1441         (didReceiveWebViewMessageFromInjectedBundle):
1442         (didReceiveMessageFromInjectedBundle):
1443         * UIProcess/API/gtk/WebKitSecurityManager.cpp:
1444         (registerSecurityPolicyForURIScheme):
1445         * UIProcess/API/gtk/WebKitWebContext.cpp:
1446         (webkitWebContextConstructed):
1447         (webkit_web_context_prefetch_dns):
1448         (webkitWebContextGetContext):
1449         * UIProcess/API/gtk/WebKitWebContextPrivate.h:
1450         * UIProcess/API/gtk/WebKitWebView.cpp:
1451         (webkit_web_view_get_snapshot):
1452         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
1453         (webkitWebViewBaseCreate):
1454         (webkitWebViewBaseCreateWebPage):
1455         * UIProcess/API/gtk/WebKitWebViewBasePrivate.h:
1456         * UIProcess/API/gtk/WebKitWindowProperties.cpp:
1457         * UIProcess/gtk/WebInspectorProxyGtk.cpp:
1458         (WebKit::WebInspectorProxy::platformCreateInspectorPage):
1459         * UIProcess/gtk/WebProcessPoolGtk.cpp: Renamed from Source/WebKit2/UIProcess/gtk/WebContextGtk.cpp.
1460         (WebKit::initInspectorServer):
1461         (WebKit::WebProcessPool::platformDefaultApplicationCacheDirectory):
1462         (WebKit::WebProcessPool::platformInitializeWebProcess):
1463         (WebKit::WebProcessPool::platformInvalidateContext):
1464         (WebKit::WebProcessPool::platformDefaultWebSQLDatabaseDirectory):
1465         (WebKit::WebProcessPool::platformDefaultIndexedDBDatabaseDirectory):
1466         (WebKit::WebProcessPool::platformDefaultIconDatabasePath):
1467         (WebKit::WebProcessPool::platformDefaultLocalStorageDirectory):
1468         (WebKit::WebProcessPool::platformDefaultMediaKeysStorageDirectory):
1469         (WebKit::WebProcessPool::platformDefaultDiskCacheDirectory):
1470         (WebKit::WebProcessPool::platformDefaultCookieStorageDirectory):
1471         (WebKit::WebProcessPool::setIgnoreTLSErrors):
1472         * UIProcess/soup/WebProcessPoolSoup.cpp: Renamed from Source/WebKit2/UIProcess/soup/WebContextSoup.cpp.
1473         (WebKit::WebProcessPool::platformInitializeNetworkProcess):
1474         * WebProcess/InjectedBundle/API/gtk/WebKitWebExtension.cpp:
1475         (webkitWebExtensionDidReceiveMessage):
1476         * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
1477         (didInitiateLoadForResource):
1478         (willSendRequestForFrame):
1479         (didReceiveResponseForResource):
1480         (didReceiveContentLengthForResource):
1481         (didFinishLoadForResource):
1482         (didFailLoadForResource):
1483         (webkitWebPageDidReceiveMessage):
1484         * WebProcess/InjectedBundle/API/gtk/WebKitWebPagePrivate.h:
1485
1486 2014-12-23  Dan Bernstein  <mitz@apple.com>
1487
1488         iOS build fix
1489
1490         * UIProcess/API/Cocoa/WKProcessGroup.mm:
1491         (-[WKProcessGroup _geolocationProvider]):
1492
1493 2014-12-23  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1494
1495         [EFL][WK2] Fix a lot of build break since r177692 
1496         https://bugs.webkit.org/show_bug.cgi?id=139932
1497
1498         Unreviewed EFL build fix.
1499
1500         Rename WebContext with WebProcessPool in EFL port files.
1501
1502         * CMakeLists.txt:
1503         * UIProcess/API/efl/EwkView.cpp:
1504         * UIProcess/API/efl/ewk_context.cpp:
1505         * UIProcess/API/efl/tests/test_ewk2_context.cpp:
1506         (TEST_F):
1507         * UIProcess/CoordinatedGraphics/WebView.cpp:
1508         (WebKit::WebView::WebView):
1509         * UIProcess/CoordinatedGraphics/WebView.h:
1510         * UIProcess/Network/CustomProtocols/soup/CustomProtocolManagerProxySoup.cpp:
1511         (WebKit::CustomProtocolManagerProxy::CustomProtocolManagerProxy):
1512         (WebKit::CustomProtocolManagerProxy::startLoading):
1513         (WebKit::CustomProtocolManagerProxy::stopLoading):
1514         * UIProcess/Network/CustomProtocols/soup/WebSoupCustomProtocolRequestManager.cpp:
1515         (WebKit::WebSoupCustomProtocolRequestManager::create):
1516         (WebKit::WebSoupCustomProtocolRequestManager::WebSoupCustomProtocolRequestManager):
1517         (WebKit::WebSoupCustomProtocolRequestManager::registerSchemeForCustomProtocol):
1518         (WebKit::WebSoupCustomProtocolRequestManager::unregisterSchemeForCustomProtocol):
1519         (WebKit::WebSoupCustomProtocolRequestManager::didReceiveResponse):
1520         (WebKit::WebSoupCustomProtocolRequestManager::didLoadData):
1521         (WebKit::WebSoupCustomProtocolRequestManager::didFailWithError):
1522         (WebKit::WebSoupCustomProtocolRequestManager::didFinishLoading):
1523         * UIProcess/Network/CustomProtocols/soup/WebSoupCustomProtocolRequestManager.h:
1524         * UIProcess/WebBatteryManagerProxy.cpp:
1525         (WebKit::WebBatteryManagerProxy::create):
1526         (WebKit::WebBatteryManagerProxy::WebBatteryManagerProxy):
1527         (WebKit::WebBatteryManagerProxy::providerDidChangeBatteryStatus):
1528         (WebKit::WebBatteryManagerProxy::providerUpdateBatteryStatus):
1529         * UIProcess/WebBatteryManagerProxy.h:
1530         * UIProcess/WebTextChecker.cpp:
1531         (WebKit::updateStateForAllContexts):
1532         * UIProcess/WebVibrationProxy.cpp:
1533         (WebKit::WebVibrationProxy::WebVibrationProxy):
1534         (WebKit::WebVibrationProxy::~WebVibrationProxy):
1535         * UIProcess/efl/RequestManagerClientEfl.h:
1536         * UIProcess/efl/WebContextEfl.cpp:
1537         (WebKit::WebProcessPool::platformDefaultApplicationCacheDirectory):
1538         (WebKit::WebProcessPool::platformInitializeWebProcess):
1539         (WebKit::WebProcessPool::platformInvalidateContext):
1540         (WebKit::WebProcessPool::platformDefaultWebSQLDatabaseDirectory):
1541         (WebKit::WebProcessPool::platformDefaultIndexedDBDatabaseDirectory):
1542         (WebKit::WebProcessPool::platformDefaultIconDatabasePath):
1543         (WebKit::WebProcessPool::platformDefaultLocalStorageDirectory):
1544         (WebKit::WebProcessPool::platformDefaultMediaKeysStorageDirectory):
1545         (WebKit::WebProcessPool::platformDefaultDiskCacheDirectory):
1546         (WebKit::WebProcessPool::platformDefaultCookieStorageDirectory):
1547         (WebKit::WebProcessPool::setIgnoreTLSErrors):
1548         (WebKit::WebContext::platformDefaultApplicationCacheDirectory): Deleted.
1549         (WebKit::WebContext::platformInitializeWebProcess): Deleted.
1550         (WebKit::WebContext::platformInvalidateContext): Deleted.
1551         (WebKit::WebContext::platformDefaultWebSQLDatabaseDirectory): Deleted.
1552         (WebKit::WebContext::platformDefaultIndexedDBDatabaseDirectory): Deleted.
1553         (WebKit::WebContext::platformDefaultIconDatabasePath): Deleted.
1554         (WebKit::WebContext::platformDefaultLocalStorageDirectory): Deleted.
1555         (WebKit::WebContext::platformDefaultMediaKeysStorageDirectory): Deleted.
1556         (WebKit::WebContext::platformDefaultDiskCacheDirectory): Deleted.
1557         (WebKit::WebContext::platformDefaultCookieStorageDirectory): Deleted.
1558         (WebKit::WebContext::setIgnoreTLSErrors): Deleted.
1559         * UIProcess/efl/WebInspectorProxyEfl.cpp:
1560         (WebKit::WebInspectorProxy::platformCreateInspectorPage):
1561         * UIProcess/efl/WebViewEfl.cpp:
1562         (WebKit::WebView::create):
1563         (WebKit::WebViewEfl::WebViewEfl):
1564         * UIProcess/efl/WebViewEfl.h:
1565         * UIProcess/soup/WebContextSoup.cpp:
1566         (WebKit::WebProcessPool::platformInitializeNetworkProcess):
1567         (WebKit::WebContext::platformInitializeNetworkProcess): Deleted.
1568         * UIProcess/soup/WebCookieManagerProxySoup.cpp:
1569         (WebKit::WebCookieManagerProxy::setCookiePersistentStorage):
1570         * UIProcess/soup/WebSoupRequestManagerProxy.h:
1571
1572 2014-12-23  Sam Weinig  <sam@webkit.org>
1573
1574         Remove telephone number context support from ContextMenuContextData, it is unused
1575         https://bugs.webkit.org/show_bug.cgi?id=139931
1576
1577         Reviewed by Alexey Proskuryakov.
1578
1579         m_isTelephoneNumberContext was only ever set to true in the ContextMenuContextData
1580         constructor that took a TelephoneNumberContextTag, which never got called. Remove it
1581         all.
1582
1583         * Shared/ContextMenuContextData.cpp:
1584         (WebKit::ContextMenuContextData::ContextMenuContextData):
1585         (WebKit::ContextMenuContextData::encode):
1586         (WebKit::ContextMenuContextData::decode):
1587         * Shared/ContextMenuContextData.h:
1588         (WebKit::ContextMenuContextData::ContextMenuContextData):
1589         (WebKit::ContextMenuContextData::isTelephoneNumberContext): Deleted.
1590         * UIProcess/mac/WebContextMenuProxyMac.mm:
1591         (WebKit::WebContextMenuProxyMac::showContextMenu):
1592
1593 2014-12-23  Sam Weinig  <sam@webkit.org>
1594
1595         Attempt to fix the Mountain Lion build.
1596
1597         * Shared/ContextMenuContextData.h:
1598         (WebKit::ContextMenuContextData::isTelephoneNumberContext):
1599
1600 2014-12-23  Anders Carlsson  <andersca@apple.com>
1601
1602         Handle WKTypeRefWrapper when converting object graphs
1603         https://bugs.webkit.org/show_bug.cgi?id=139927
1604
1605         Reviewed by Tim Horton.
1606
1607         * UIProcess/Cocoa/WebProcessProxyCocoa.mm:
1608         (WebKit::WebProcessProxy::transformHandlesToObjects):
1609         (WebKit::WebProcessProxy::transformObjectsToHandles):
1610         * WebProcess/cocoa/WebProcessCocoa.mm:
1611         (WebKit::WebProcess::transformHandlesToObjects):
1612         (WebKit::WebProcess::transformObjectsToHandles):
1613
1614 2014-12-23  Chris Dumez  <cdumez@apple.com>
1615
1616         [iOS] Log better using FeatureCounter why PageCache is failing due to pruned resources
1617         https://bugs.webkit.org/show_bug.cgi?id=139921
1618         <rdar://problem/19255690>
1619
1620         Reviewed by Gavin Barraclough.
1621
1622         Call PageCache::pruneToCapacityNow() instead of multiple calls to
1623         setCapacity() as it does exactly what we want. Also pass the new
1624         PrunedReason argument so help us do better logging.
1625
1626         * WebProcess/WebProcess.cpp:
1627         (WebKit::WebProcess::releasePageCache):
1628
1629 2014-12-23  Sam Weinig  <sam@webkit.org>
1630
1631         Attempt to fix the iOS build.
1632
1633         * UIProcess/API/Cocoa/WKProcessGroup.mm:
1634         (-[WKProcessGroup _geolocationProvider]):
1635         * UIProcess/API/ios/WKViewIOS.mm:
1636         (-[WKView _commonInitializationWithContextRef:pageGroupRef:relatedToPage:]):
1637
1638 2014-12-23  Anders Carlsson  <andersca@apple.com>
1639
1640         Handle coding object graphs in the UI process
1641         https://bugs.webkit.org/show_bug.cgi?id=139925
1642
1643         Reviewed by Sam Weinig.
1644
1645         * UIProcess/Cocoa/WebProcessProxyCocoa.mm: Added.
1646         (WebKit::WebProcessProxy::transformHandlesToObjects):
1647         (WebKit::WebProcessProxy::transformObjectsToHandles):
1648         * UIProcess/WebProcessProxy.cpp:
1649         (WebKit::WebProcessProxy::transformHandlesToObjects):
1650         (WebKit::WebProcessProxy::transformObjectsToHandles):
1651         * UIProcess/WebProcessProxy.h:
1652         * WebKit2.xcodeproj/project.pbxproj:
1653         * WebProcess/WebProcess.cpp:
1654         (WebKit::WebProcess::transformObjectsToHandles):
1655         * WebProcess/WebProcess.h:
1656
1657 2014-12-23  Sam Weinig  <sam@webkit.org>
1658
1659         ContextMenuContextData should store a ShareableBitmap not a ShareableBitmap::Handle
1660         https://bugs.webkit.org/show_bug.cgi?id=139924
1661
1662         Reviewed by Anders Carlsson.
1663
1664         Replaces the ShareableBitmap::Handle in ContextMenuContextData with a RefPtr<ShareableBitmap>.
1665         Removes the now unnecessary override copy-constructor and assignment-operator.
1666
1667         * Shared/ContextMenuContextData.cpp:
1668         (WebKit::ContextMenuContextData::ContextMenuContextData):
1669         (WebKit::ContextMenuContextData::encode):
1670         (WebKit::ContextMenuContextData::decode):
1671         (WebKit::ContextMenuContextData::controlledDataIsEditable):
1672         (WebKit::ContextMenuContextData::operator=): Deleted.
1673         * Shared/ContextMenuContextData.h:
1674         (WebKit::ContextMenuContextData::ContextMenuContextData):
1675         (WebKit::ContextMenuContextData::controlledImage):
1676         (WebKit::ContextMenuContextData::needsServicesMenu):
1677         (WebKit::ContextMenuContextData::controlledImageHandle): Deleted.
1678         * UIProcess/WebPageProxy.cpp:
1679         (WebKit::WebPageProxy::internalShowContextMenu):
1680         * UIProcess/mac/WebContextMenuProxyMac.mm:
1681         (WebKit::WebContextMenuProxyMac::setupServicesMenu):
1682
1683 2014-12-23  Chris Dumez  <cdumez@apple.com>
1684
1685         Unreviewed iOS build fix after 177692.
1686
1687         Missing WebKit:: namespace.
1688
1689         * UIProcess/ios/WKContentView.h:
1690
1691 2014-12-23  Anders Carlsson  <andersca@apple.com>
1692
1693         Fix 32-build.
1694
1695         * WebProcess/cocoa/WebProcessCocoa.mm:
1696         (WebKit::WebProcess::transformHandlesToObjects):
1697         (WebKit::WebProcess::transformObjectsToHandles):
1698
1699 2014-12-23  Timothy Horton  <timothy_horton@apple.com>
1700
1701         Install a TextIndicator for link immediate actions
1702         https://bugs.webkit.org/show_bug.cgi?id=139897
1703         <rdar://problem/19333076>
1704
1705         Reviewed by Anders Carlsson.
1706
1707         * UIProcess/mac/WKImmediateActionController.mm:
1708         (-[WKImmediateActionController _defaultAnimationController]):
1709         Install the link's TextIndicator.
1710
1711         (-[WKImmediateActionController menuItemDidClose:]):
1712         Dismiss the TextIndicator and clean up when the item closes.
1713
1714 2014-12-23  Timothy Horton  <timothy_horton@apple.com>
1715
1716         Expose ElementBoundingBox on WKHitTestResult
1717         https://bugs.webkit.org/show_bug.cgi?id=139895
1718         <rdar://problem/19333075>
1719
1720         Reviewed by Dan Bernstein.
1721
1722         * UIProcess/API/C/WKHitTestResult.cpp:
1723         (WKHitTestResultGetElementBoundingBox):
1724         * UIProcess/API/C/WKHitTestResult.h:
1725         Expose the rect.
1726
1727 2014-12-23  Timothy Horton  <timothy_horton@apple.com>
1728
1729         Remove the custom web page preview code
1730         https://bugs.webkit.org/show_bug.cgi?id=139894
1731         <rdar://problem/19333074>
1732
1733         Reviewed by Dan Bernstein.
1734
1735         * UIProcess/API/Cocoa/WKViewPrivate.h:
1736         * UIProcess/API/mac/WKView.mm:
1737         (-[WKView _dismissContentRelativeChildWindows]):
1738         (-[WKView _viewForPreviewingURL:initialFrameSize:]): Deleted.
1739         (-[WKView _titleForPreviewOfURL:]): Deleted.
1740         (-[WKView _setPreviewTitle:]): Deleted.
1741         (-[WKView _setPreviewLoading:]): Deleted.
1742         (-[WKView _setPreviewOverrideImage:]): Deleted.
1743         (-[WKView _finishPreviewingURL:withPreviewView:]): Deleted.
1744         (-[WKView _handleClickInPreviewView:URL:]): Deleted.
1745         (-[WKView _shouldUseStandardQuickLookPreview]): Deleted.
1746         * UIProcess/mac/WKImmediateActionController.h:
1747         * UIProcess/mac/WKImmediateActionController.mm:
1748         (-[WKImmediateActionController willDestroyView:]):
1749         (-[WKImmediateActionController _clearImmediateActionState]):
1750         (-[WKImmediateActionController immediateActionRecognizerWillPrepare:]):
1751         (-[WKImmediateActionController _defaultAnimationController]):
1752         (-[WKImmediateActionController hidePreview]): Deleted.
1753         (-[WKImmediateActionController setPreviewTitle:]): Deleted.
1754         (-[WKImmediateActionController setPreviewLoading:]): Deleted.
1755         (-[WKImmediateActionController setPreviewOverrideImage:]): Deleted.
1756         (-[WKImmediateActionController _animationControllerForCustomPreview]): Deleted.
1757         * UIProcess/mac/WKPagePreviewViewController.h: Removed.
1758         * UIProcess/mac/WKPagePreviewViewController.mm: Removed.
1759         * UIProcess/mac/WKPreviewPopoverAnimationController.h: Removed.
1760         * UIProcess/mac/WKPreviewPopoverAnimationController.mm: Removed.
1761         * WebKit2.xcodeproj/project.pbxproj:
1762         Remove all of the custom web page preview code. Clients that want the custom
1763         preview can implement it by overriding the immediate action.
1764
1765 2014-12-23  Anders Carlsson  <andersca@apple.com>
1766
1767         Add WebProcessProxy::transformHandlesToObjects
1768         https://bugs.webkit.org/show_bug.cgi?id=139922
1769
1770         Reviewed by Tim Horton.
1771
1772         This will be used to convert between the handles and their respective UI side objects.
1773
1774         * UIProcess/WebProcessProxy.cpp:
1775         (WebKit::WebProcessProxy::transformHandlesToObjects):
1776         (WebKit::WebProcessProxy::transformObjectsToHandles):
1777         (WebKit::WebProcessProxy::apiObjectByConvertingToHandles): Deleted.
1778         * UIProcess/WebProcessProxy.h:
1779
1780 2014-12-23  Anders Carlsson  <andersca@apple.com>
1781
1782         Add handle transform functions to WebConnection
1783         https://bugs.webkit.org/show_bug.cgi?id=139920
1784
1785         Reviewed by Sam Weinig.
1786
1787         This will be used by the web connection code to convert between objects and their respective handles.
1788
1789         * Shared/WebConnection.h:
1790         * UIProcess/WebConnectionToWebProcess.cpp:
1791         (WebKit::WebConnectionToWebProcess::transformHandlesToObjects):
1792         (WebKit::WebConnectionToWebProcess::transformObjectsToHandles):
1793         * UIProcess/WebConnectionToWebProcess.h:
1794         * WebProcess/WebConnectionToUIProcess.cpp:
1795         (WebKit::WebConnectionToUIProcess::transformHandlesToObjects):
1796         (WebKit::WebConnectionToUIProcess::transformObjectsToHandles):
1797         * WebProcess/WebConnectionToUIProcess.h:
1798
1799 2014-12-23  Sam Weinig  <sam@webkit.org>
1800
1801         Rename ImmutableDictionary to API::Dictionary and merge MutableDictionary into it
1802         https://bugs.webkit.org/show_bug.cgi?id=139917
1803
1804         Reviewed by Anders Carlsson.
1805
1806         - Renames ImmutableDictionary -> API::Dictionary
1807         - Merges MutableDictionary into the new API::Dictionary
1808             (as a result WKDictionaryIsMutable() now always returns true)
1809
1810         * File list elided *
1811
1812 2014-12-23  Anders Carlsson  <andersca@apple.com>
1813
1814         Add WebProcess::transformObjectsToHandles
1815         https://bugs.webkit.org/show_bug.cgi?id=139918
1816
1817         Reviewed by Tim Horton.
1818
1819         This function will be used for transforming bundle objects to their respective handle types
1820         when sending messages to the UI process.
1821
1822         * WebProcess/WebProcess.cpp:
1823         (WebKit::WebProcess::transformHandlesToObjects):
1824         (WebKit::WebProcess::transformObjectsToHandles):
1825         * WebProcess/WebProcess.h:
1826         * WebProcess/cocoa/WebProcessCocoa.mm:
1827         (WebKit::WebProcess::transformHandlesToObjects):
1828         (WebKit::WebProcess::transformObjectsToHandles):
1829
1830 2014-12-23  Anders Carlsson  <andersca@apple.com>
1831
1832         Move dynamic_objc_cast to RetainPtr.h
1833         https://bugs.webkit.org/show_bug.cgi?id=139915
1834
1835         Reviewed by Sam Weinig.
1836
1837         * Shared/mac/ObjCObjectGraph.mm:
1838         (WebKit::dynamic_objc_cast): Deleted.
1839
1840 2014-12-23  Anders Carlsson  <andersca@apple.com>
1841
1842         Add WebProcess::transformHandlesToObjects
1843         https://bugs.webkit.org/show_bug.cgi?id=139913
1844
1845         Reviewed by Tim Horton.
1846
1847         Rename objectGraphByTransformingObjectsToHandles to transformObjectsToHandles and add
1848         transformHandlesToObjects that will try to convert handles to the actual bundle type objects.
1849
1850         * WebProcess/WebProcess.h:
1851         * WebProcess/cocoa/WebProcessCocoa.mm:
1852         (WebKit::WebProcess::transformHandlesToObjects):
1853         (WebKit::WebProcess::transformObjectsToHandles):
1854         (WebKit::WebProcess::objectGraphByTransformingObjectsToHandles): Deleted.
1855
1856 2014-12-23  Anders Carlsson  <andersca@apple.com>
1857
1858         Add WebProcess::objectGraphByTransformingObjectsToHandles
1859         https://bugs.webkit.org/show_bug.cgi?id=139912
1860
1861         Reviewed by Tim Horton.
1862
1863         This will be used to convert Objective-C object graphs containing bundle types to their handle counterparts.
1864
1865         * WebProcess/WebProcess.cpp:
1866         (WebKit::WebProcess::transformHandlesToObjects):
1867         (WebKit::WebProcess::apiObjectByConvertingFromHandles): Deleted.
1868         Rename apiObjectByConvertingFromHandles to transformHandlesToObjects.
1869
1870         * WebProcess/WebProcess.h:
1871         * WebProcess/cocoa/WebProcessCocoa.mm:
1872         (WebKit::WebProcess::objectGraphByTransformingObjectsToHandles):
1873
1874 2014-12-23  Anders Carlsson  <andersca@apple.com>
1875
1876         Fix UserMessage::transform to only call shouldTransform once
1877         https://bugs.webkit.org/show_bug.cgi?id=139911
1878
1879         Reviewed by Sam Weinig.
1880
1881         Also, make it possible for transformers to return null objects and change the transformers
1882         to return the passed in object when there's no need to do a transform.
1883
1884         * Shared/UserData.cpp:
1885         (WebKit::transformGraph):
1886         (WebKit::UserData::transform):
1887         (WebKit::UserData::encode): Deleted.
1888         (WebKit::UserData::decode): Deleted.
1889         * UIProcess/WebProcessProxy.cpp:
1890         (WebKit::WebProcessProxy::apiObjectByConvertingToHandles):
1891         * WebProcess/WebProcess.cpp:
1892         (WebKit::WebProcess::apiObjectByConvertingFromHandles):
1893
1894 2014-12-23  Sam Weinig  <sam@webkit.org>
1895
1896         Rename WebContext to WebProcessPool
1897         https://bugs.webkit.org/show_bug.cgi?id=139909
1898
1899         Rubber-stamped by Anders Carlsson.
1900
1901         - Major renames:
1902             WebContext -> WebProcessPool
1903             WebContextConfiguration -> WebProcessPoolConfiguration
1904             API::ContextConfiguration -> API::ProcessPoolConfiguration
1905
1906         * File list elided *
1907
1908 2014-12-23  Anders Carlsson  <andersca@apple.com>
1909
1910         Only call shouldTransformGraph once per graph
1911         https://bugs.webkit.org/show_bug.cgi?id=139910
1912
1913         Reviewed by Sam Weinig.
1914
1915         Don't call shouldTransformGraph for each node in the object graph. Instead, call it once
1916         and then transform the entire graph if needed.
1917
1918         * Shared/mac/ObjCObjectGraph.h:
1919         * Shared/mac/ObjCObjectGraph.mm:
1920         (WebKit::shouldTransformGraph):
1921         (WebKit::transformGraph):
1922         (WebKit::ObjCObjectGraph::transform):
1923         (WebKit::shouldTransform): Deleted.
1924
1925 2014-12-22  Anders Carlsson  <andersca@apple.com>
1926
1927         Use a Transformer for UserData as well, to avoid always copying arrays and dictionaries
1928         https://bugs.webkit.org/show_bug.cgi?id=139896
1929
1930         Reviewed by Darin Adler.
1931
1932         * Shared/UserData.cpp:
1933         (WebKit::shouldTransform):
1934         (WebKit::UserData::transform):
1935         * Shared/UserData.h:
1936         (WebKit::UserData::Transformer::~Transformer):
1937         * UIProcess/WebProcessProxy.cpp:
1938         (WebKit::WebProcessProxy::apiObjectByConvertingToHandles):
1939         * WebProcess/WebProcess.cpp:
1940         (WebKit::WebProcess::apiObjectByConvertingFromHandles):
1941
1942 2014-12-22  Anders Carlsson  <andersca@apple.com>
1943
1944         Make it possible to transform Objective-C object graphs, replacing certain elements with others
1945         https://bugs.webkit.org/show_bug.cgi?id=139893
1946
1947         Reviewed by Sam Weinig.
1948
1949         * Shared/mac/ObjCObjectGraph.h:
1950         (WebKit::ObjCObjectGraph::Transformer::~Transformer):
1951         * Shared/mac/ObjCObjectGraph.mm:
1952         (WebKit::dynamic_objc_cast):
1953         (WebKit::shouldTransform):
1954         (WebKit::ObjCObjectGraph::transform):
1955
1956 2014-12-22  Jaehun Lim  <ljaehun.lim@samsung.com>
1957
1958         Unreviewed build fix after r177661 and r177662
1959
1960         * CMakeLists.txt: Add APIPageGroupHandle.cpp to the source list.
1961
1962 2014-12-22  Anders Carlsson  <andersca@apple.com>
1963
1964         Convert pages and page groups to their respective handle objects
1965         https://bugs.webkit.org/show_bug.cgi?id=139891
1966
1967         Reviewed by Tim Horton.
1968
1969         * UIProcess/WebProcessProxy.cpp:
1970         (WebKit::WebProcessProxy::apiObjectByConvertingToHandles):
1971         * WebProcess/WebProcess.cpp:
1972         (WebKit::WebProcess::apiObjectByConvertingFromHandles):
1973
1974 2014-12-22  Anders Carlsson  <andersca@apple.com>
1975
1976         Add a bunch of missing header includes in preparation for making toImpl require the complete type
1977         https://bugs.webkit.org/show_bug.cgi?id=139887
1978
1979         Reviewed by Andreas Kling.
1980
1981         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
1982         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
1983         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
1984         * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp:
1985         * WebProcess/InjectedBundle/InjectedBundlePageContextMenuClient.cpp:
1986         * WebProcess/InjectedBundle/InjectedBundlePageDiagnosticLoggingClient.cpp:
1987         * WebProcess/InjectedBundle/InjectedBundlePageEditorClient.cpp:
1988         * WebProcess/InjectedBundle/InjectedBundlePageFormClient.cpp:
1989         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
1990         * WebProcess/InjectedBundle/InjectedBundlePageResourceLoadClient.cpp:
1991         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
1992
1993 2014-12-22  Chris Dumez  <cdumez@apple.com>
1994
1995         [iOS] Log using FeatureCounter user-triggered zooming
1996         https://bugs.webkit.org/show_bug.cgi?id=139879
1997         <rdar://problem/19329130>
1998
1999         Reviewed by Benjamin Poulain.
2000
2001         Log using FeatureCounter user-triggered zooming on iOS.
2002
2003         * WebProcess/WebPage/ios/WebPageIOS.mm:
2004         (WebKit::WebPage::willStartUserTriggeredZooming):
2005
2006 2014-12-22  Anders Carlsson  <andersca@apple.com>
2007
2008         Add an API::PageGroupHandle object
2009         https://bugs.webkit.org/show_bug.cgi?id=139881
2010
2011         Reviewed by Sam Weinig.
2012
2013         API::PageGroupHandle won't be exposed to any API, it will only be used to facilitate passing page groups
2014         between the UI and web process inside UserData objects.
2015
2016         * Shared/API/APIObject.h:
2017         * Shared/API/APIPageGroupHandle.cpp: Added.
2018         (API::PageGroupHandle::create):
2019         (API::PageGroupHandle::~PageGroupHandle):
2020         (API::PageGroupHandle::PageGroupHandle):
2021         * Shared/API/APIPageGroupHandle.h: Added.
2022         (API::PageGroupHandle::webPageGroupData):
2023         * Shared/UserData.cpp:
2024         (WebKit::UserData::UserData):
2025         (WebKit::UserData::encode):
2026         (WebKit::UserData::decode):
2027         * Shared/UserData.h:
2028         * UIProcess/WebPageGroup.h:
2029         (WebKit::WebPageGroup::data):
2030         * UIProcess/WebProcessProxy.cpp:
2031         (WebKit::WebProcessProxy::apiObjectByConvertingToHandles):
2032         * WebKit2.xcodeproj/project.pbxproj:
2033
2034 2014-12-22  Daniel Bates  <dabates@apple.com>
2035
2036         Fix the iOS build after <https://trac.webkit.org/changeset/177639>
2037         (https://bugs.webkit.org/show_bug.cgi?id=139866)
2038
2039         Substitute APISecurityOrigin.h for WebSecurityOrigin.h as the latter was renamed to the former.
2040
2041         * UIProcess/ios/WKGeolocationProviderIOS.mm:
2042
2043 2014-12-22  Csaba Osztrogonác  <ossy@webkit.org>
2044
2045         URTBF after r177649.
2046
2047         * CMakeLists.txt:
2048
2049 2014-12-22  Csaba Osztrogonác  <ossy@webkit.org>
2050
2051         Last URTBF after r177639, GTK builds now.
2052
2053         * UIProcess/API/gtk/WebKitJavascriptResult.cpp:
2054         * UIProcess/API/gtk/WebKitUIClient.cpp:
2055         * UIProcess/API/gtk/WebKitUserContentManager.cpp:
2056         * UIProcess/API/gtk/WebKitUserMediaPermissionRequest.cpp:
2057         (webkitUserMediaPermissionRequestCreate):
2058         * UIProcess/API/gtk/WebKitUserMediaPermissionRequestPrivate.h:
2059         * UIProcess/API/gtk/WebKitWebView.cpp:
2060         (webkitWebViewRunJavaScriptCallback):
2061         (webkit_web_view_run_javascript):
2062         (resourcesStreamReadCallback):
2063
2064 2014-12-22  Anders Carlsson  <andersca@apple.com>
2065
2066         Move more API classes from Shared to Shared/API.
2067
2068         Rubber-stamped by Sam Weinig.
2069
2070         * Shared/API/APIArray.cpp: Renamed from Source/WebKit2/Shared/APIArray.cpp.
2071         * Shared/API/APIArray.h: Renamed from Source/WebKit2/Shared/APIArray.h.
2072         * Shared/API/APIClient.h: Renamed from Source/WebKit2/Shared/APIClient.h.
2073         * Shared/API/APIData.cpp: Renamed from Source/WebKit2/Shared/APIData.cpp.
2074         * Shared/API/APIData.h: Renamed from Source/WebKit2/Shared/APIData.h.
2075         * Shared/API/APIError.cpp: Renamed from Source/WebKit2/Shared/APIError.cpp.
2076         * Shared/API/APIError.h: Renamed from Source/WebKit2/Shared/APIError.h.
2077         * Shared/API/APIFrameHandle.cpp: Renamed from Source/WebKit2/Shared/APIFrameHandle.cpp.
2078         * Shared/API/APIFrameHandle.h: Renamed from Source/WebKit2/Shared/APIFrameHandle.h.
2079         * Shared/API/APIGeometry.cpp: Renamed from Source/WebKit2/Shared/APIGeometry.cpp.
2080         * Shared/API/APIGeometry.h: Renamed from Source/WebKit2/Shared/APIGeometry.h.
2081         * Shared/API/APINumber.h: Renamed from Source/WebKit2/Shared/APINumber.h.
2082         * Shared/API/APIObject.cpp: Renamed from Source/WebKit2/Shared/APIObject.cpp.
2083         * Shared/API/APIObject.h: Renamed from Source/WebKit2/Shared/APIObject.h.
2084         * Shared/API/APIPageHandle.cpp: Renamed from Source/WebKit2/Shared/APIPageHandle.cpp.
2085         * Shared/API/APIPageHandle.h: Renamed from Source/WebKit2/Shared/APIPageHandle.h.
2086         * Shared/API/APIString.h: Renamed from Source/WebKit2/Shared/APIString.h.
2087         * Shared/API/APIURL.h: Renamed from Source/WebKit2/Shared/APIURL.h.
2088         * Shared/API/APIURLRequest.cpp: Renamed from Source/WebKit2/Shared/APIURLRequest.cpp.
2089         * Shared/API/APIURLRequest.h: Renamed from Source/WebKit2/Shared/APIURLRequest.h.
2090         * Shared/API/APIURLResponse.cpp: Renamed from Source/WebKit2/Shared/APIURLResponse.cpp.
2091         * Shared/API/APIURLResponse.h: Renamed from Source/WebKit2/Shared/APIURLResponse.h.
2092
2093 2014-12-22  Csaba Osztrogonác  <ossy@webkit.org>
2094
2095         One more URTBF after r177639 to try to make GTK happy.
2096
2097         * UIProcess/API/gtk/WebKitUserContentManager.cpp:
2098
2099 2014-12-22  Csaba Osztrogonác  <ossy@webkit.org>
2100
2101         URTBF after r177639 to try to make GTK happy.
2102
2103         * UIProcess/API/gtk/WebKitJavascriptResult.cpp:
2104
2105 2014-12-22  Anders Carlsson  <andersca@apple.com>
2106
2107         Rename a bunch of API classes and move them to Shared/API
2108         https://bugs.webkit.org/show_bug.cgi?id=139866
2109
2110         Reviewed by Sam Weinig.
2111
2112         * Shared/API/APISecurityOrigin.h: Renamed from Source/WebKit2/Shared/WebSecurityOrigin.h.
2113         (API::SecurityOrigin::createFromString):
2114         (API::SecurityOrigin::create):
2115         (API::SecurityOrigin::securityOrigin):
2116         (API::SecurityOrigin::SecurityOrigin):
2117         * Shared/API/APISerializedScriptValue.h: Renamed from Source/WebKit2/Shared/WebSerializedScriptValue.h.
2118         (API::SerializedScriptValue::create):
2119         (API::SerializedScriptValue::adopt):
2120         (API::SerializedScriptValue::deserialize):
2121         (API::SerializedScriptValue::dataReference):
2122         (API::SerializedScriptValue::internalRepresentation):
2123         (API::SerializedScriptValue::SerializedScriptValue):
2124         * Shared/API/APIUserContentURLPattern.h: Renamed from Source/WebKit2/Shared/WebUserContentURLPattern.h.
2125         (API::UserContentURLPattern::create):
2126         (API::UserContentURLPattern::host):
2127         (API::UserContentURLPattern::scheme):
2128         (API::UserContentURLPattern::isValid):
2129         (API::UserContentURLPattern::matchesURL):
2130         (API::UserContentURLPattern::matchesSubdomains):
2131         (API::UserContentURLPattern::patternString):
2132         (API::UserContentURLPattern::UserContentURLPattern):
2133         * Shared/API/c/WKSecurityOrigin.cpp:
2134         (WKSecurityOriginGetTypeID):
2135         (WKSecurityOriginCreateFromString):
2136         (WKSecurityOriginCreateFromDatabaseIdentifier):
2137         (WKSecurityOriginCreate):
2138         * Shared/API/c/WKSerializedScriptValue.cpp:
2139         (WKSerializedScriptValueGetTypeID):
2140         (WKSerializedScriptValueCreate):
2141         (WKSerializedScriptValueCreateWithInternalRepresentation):
2142         * Shared/API/c/WKSharedAPICast.h:
2143         (WebKit::toCopiedAPI):
2144         * Shared/API/c/WKUserContentURLPattern.cpp:
2145         (WKUserContentURLPatternGetTypeID):
2146         (WKUserContentURLPatternCreate):
2147         * Shared/SecurityOriginData.cpp:
2148         (WebKit::performAPICallbackWithSecurityOriginDataVector):
2149         * Shared/UserData.cpp:
2150         (WebKit::UserData::encode):
2151         (WebKit::UserData::decode):
2152         * Shared/UserMessageCoders.h:
2153         (WebKit::UserMessageEncoder::baseEncode):
2154         (WebKit::UserMessageDecoder::baseDecode):
2155         * UIProcess/API/APIUIClient.h:
2156         (API::UIClient::exceededDatabaseQuota):
2157         (API::UIClient::decidePolicyForGeolocationPermissionRequest):
2158         (API::UIClient::decidePolicyForUserMediaPermissionRequest):
2159         (API::UIClient::decidePolicyForNotificationPermissionRequest):
2160         * UIProcess/API/C/WKNotification.cpp:
2161         * UIProcess/API/C/WKPage.cpp:
2162         (WKPageSetPageUIClient):
2163         * UIProcess/API/Cocoa/WKWebView.mm:
2164         (-[WKWebView evaluateJavaScript:completionHandler:]):
2165         * UIProcess/Cocoa/UIDelegate.h:
2166         * UIProcess/Cocoa/UIDelegate.mm:
2167         (WebKit::UIDelegate::UIClient::exceededDatabaseQuota):
2168         * UIProcess/GenericCallback.h:
2169         * UIProcess/Notifications/WebNotification.cpp:
2170         (WebKit::WebNotification::WebNotification):
2171         * UIProcess/Notifications/WebNotification.h:
2172         (WebKit::WebNotification::origin):
2173         * UIProcess/Notifications/WebNotificationManagerProxy.cpp:
2174         (WebKit::WebNotificationManagerProxy::providerDidUpdateNotificationPolicy):
2175         (WebKit::WebNotificationManagerProxy::providerDidRemoveNotificationPolicies):
2176         * UIProcess/Notifications/WebNotificationManagerProxy.h:
2177         * UIProcess/Notifications/WebNotificationProvider.cpp:
2178         * UIProcess/Notifications/WebNotificationProvider.h:
2179         * UIProcess/PageClient.h:
2180         (WebKit::PageClient::decidePolicyForGeolocationPermissionRequest):
2181         * UIProcess/WebApplicationCacheManagerProxy.cpp:
2182         (WebKit::WebApplicationCacheManagerProxy::deleteEntriesForOrigin):
2183         * UIProcess/WebApplicationCacheManagerProxy.h:
2184         * UIProcess/WebCookieManagerProxy.cpp:
2185         * UIProcess/WebDatabaseManagerProxy.cpp:
2186         (WebKit::WebDatabaseManagerProxy::didGetDatabasesByOrigin):
2187         (WebKit::WebDatabaseManagerProxy::didGetDatabaseOrigins):
2188         (WebKit::WebDatabaseManagerProxy::deleteDatabaseWithNameForOrigin):
2189         (WebKit::WebDatabaseManagerProxy::deleteDatabasesForOrigin):
2190         (WebKit::WebDatabaseManagerProxy::setQuotaForOrigin):
2191         (WebKit::WebDatabaseManagerProxy::didModifyOrigin):
2192         (WebKit::WebDatabaseManagerProxy::didModifyDatabase):
2193         * UIProcess/WebDatabaseManagerProxy.h:
2194         * UIProcess/WebDatabaseManagerProxyClient.cpp:
2195         (WebKit::WebDatabaseManagerProxyClient::didModifyOrigin):
2196         (WebKit::WebDatabaseManagerProxyClient::didModifyDatabase):
2197         * UIProcess/WebDatabaseManagerProxyClient.h:
2198         * UIProcess/WebKeyValueStorageManager.cpp:
2199         (WebKit::WebKeyValueStorageManager::getKeyValueStorageOrigins):
2200         (WebKit::WebKeyValueStorageManager::getStorageDetailsByOrigin):
2201         (WebKit::WebKeyValueStorageManager::deleteEntriesForOrigin):
2202         * UIProcess/WebKeyValueStorageManager.h:
2203         * UIProcess/WebMediaCacheManagerProxy.cpp:
2204         * UIProcess/WebOriginDataManagerProxy.cpp:
2205         (WebKit::WebOriginDataManagerProxy::didGetOrigins):
2206         (WebKit::WebOriginDataManagerProxy::deleteEntriesForOrigin):
2207         * UIProcess/WebOriginDataManagerProxy.h:
2208         * UIProcess/WebPageProxy.cpp:
2209         (WebKit::WebPageProxy::runJavaScriptInMainFrame):
2210         (WebKit::WebPageProxy::scriptValueCallback):
2211         (WebKit::WebPageProxy::exceededDatabaseQuota):
2212         (WebKit::WebPageProxy::requestGeolocationPermissionForFrame):
2213         (WebKit::WebPageProxy::requestUserMediaPermissionForFrame):
2214         (WebKit::WebPageProxy::requestNotificationPermission):
2215         * UIProcess/WebPageProxy.h:
2216         * UIProcess/WebResourceCacheManagerProxy.cpp:
2217         (WebKit::WebResourceCacheManagerProxy::clearCacheForOrigin):
2218         * UIProcess/WebResourceCacheManagerProxy.h:
2219         * UIProcess/ios/PageClientImplIOS.h:
2220         * UIProcess/ios/PageClientImplIOS.mm:
2221         (WebKit::PageClientImpl::decidePolicyForGeolocationPermissionRequest):
2222         * UIProcess/ios/WKContentView.h:
2223         * WebKit2.xcodeproj/project.pbxproj:
2224         * WebProcess/InjectedBundle/API/APIInjectedBundlePageUIClient.h:
2225         (API::InjectedBundle::PageUIClient::didReachApplicationCacheOriginQuota):
2226         (API::InjectedBundle::PageUIClient::didExceedDatabaseQuota):
2227         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
2228         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
2229         (WebKit::InjectedBundlePageUIClient::didReachApplicationCacheOriginQuota):
2230         (WebKit::InjectedBundlePageUIClient::didExceedDatabaseQuota):
2231         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
2232         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
2233         (WebKit::WebChromeClient::exceededDatabaseQuota):
2234         (WebKit::WebChromeClient::reachedApplicationCacheOriginQuota):
2235
2236 2014-12-21  Sam Weinig  <sam@webkit.org>
2237
2238         Allow the WebContext's history client to coexist with WKWebView's history delegate
2239         https://bugs.webkit.org/show_bug.cgi?id=139857
2240
2241         Reviewed by Anders Carlsson.
2242
2243         - Renames API::HistoryClient to API::LegacyContextHistoryClient to make it clear what it is for.
2244         - Re-routes the history client functions from the WebProcessProxy to the WebPageProxy.
2245         - Add history client functions to API::LoaderClient and implement them for NavigationState's 
2246           LoaderClient subclass. Removes the need for WKProcessPool to have to setup a history client and
2247           forward to the NavigationState.
2248
2249         * UIProcess/API/APIHistoryClient.h: Removed.
2250         * UIProcess/API/APILegacyContextHistoryClient.h: Copied from Source/WebKit2/UIProcess/API/APIHistoryClient.h.
2251         (API::LegacyContextHistoryClient::~LegacyContextHistoryClient):
2252         (API::LegacyContextHistoryClient::didNavigateWithNavigationData):
2253         (API::LegacyContextHistoryClient::didPerformClientRedirect):
2254         (API::LegacyContextHistoryClient::didPerformServerRedirect):
2255         (API::LegacyContextHistoryClient::didUpdateHistoryTitle):
2256         (API::LegacyContextHistoryClient::populateVisitedLinks):
2257         (API::HistoryClient::~HistoryClient): Deleted.
2258         (API::HistoryClient::didNavigateWithNavigationData): Deleted.
2259         (API::HistoryClient::didPerformClientRedirect): Deleted.
2260         (API::HistoryClient::didPerformServerRedirect): Deleted.
2261         (API::HistoryClient::didUpdateHistoryTitle): Deleted.
2262         (API::HistoryClient::populateVisitedLinks): Deleted.
2263         * UIProcess/API/APILoaderClient.h:
2264         (API::LoaderClient::didNavigateWithNavigationData):
2265         (API::LoaderClient::didPerformClientRedirect):
2266         (API::LoaderClient::didPerformServerRedirect):
2267         (API::LoaderClient::didUpdateHistoryTitle):
2268         * UIProcess/API/C/WKContext.cpp:
2269         (WKContextSetHistoryClient):
2270         * UIProcess/API/Cocoa/WKProcessPool.mm:
2271         (-[WKProcessPool _initWithConfiguration:]):
2272         * UIProcess/API/mac/WKView.mm:
2273         * UIProcess/Cocoa/HistoryClient.h: Removed.
2274         * UIProcess/Cocoa/HistoryClient.mm: Removed.
2275         * UIProcess/Cocoa/NavigationState.h:
2276         * UIProcess/Cocoa/NavigationState.mm:
2277         (WebKit::NavigationState::LoaderClient::didNavigateWithNavigationData):
2278         (WebKit::NavigationState::LoaderClient::didPerformClientRedirect):
2279         (WebKit::NavigationState::LoaderClient::didPerformServerRedirect):
2280         (WebKit::NavigationState::LoaderClient::didUpdateHistoryTitle):
2281         (WebKit::NavigationState::didNavigateWithNavigationData): Deleted.
2282         (WebKit::NavigationState::didPerformClientRedirect): Deleted.
2283         (WebKit::NavigationState::didPerformServerRedirect): Deleted.
2284         (WebKit::NavigationState::didUpdateHistoryTitle): Deleted.
2285         * UIProcess/WebContext.cpp:
2286         (WebKit::WebContext::WebContext):
2287         (WebKit::WebContext::setHistoryClient):
2288         (WebKit::WebContext::populateVisitedLinks):
2289         * UIProcess/WebContext.h:
2290         (WebKit::WebContext::historyClient):
2291         * UIProcess/WebPageProxy.cpp:
2292         (WebKit::WebPageProxy::didNavigateWithNavigationData):
2293         (WebKit::WebPageProxy::didPerformClientRedirect):
2294         (WebKit::WebPageProxy::didPerformServerRedirect):
2295         (WebKit::WebPageProxy::didUpdateHistoryTitle):
2296         * UIProcess/WebPageProxy.h:
2297         * UIProcess/WebPageProxy.messages.in:
2298         * UIProcess/WebProcessProxy.cpp:
2299         (WebKit::WebProcessProxy::didNavigateWithNavigationData): Deleted.
2300         (WebKit::WebProcessProxy::didPerformClientRedirect): Deleted.
2301         (WebKit::WebProcessProxy::didPerformServerRedirect): Deleted.
2302         (WebKit::WebProcessProxy::didUpdateHistoryTitle): Deleted.
2303         * UIProcess/WebProcessProxy.h:
2304         * UIProcess/WebProcessProxy.messages.in:
2305         * WebKit2.xcodeproj/project.pbxproj:
2306         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2307         (WebKit::WebFrameLoaderClient::updateGlobalHistory):
2308         (WebKit::WebFrameLoaderClient::updateGlobalHistoryRedirectLinks):
2309         (WebKit::WebFrameLoaderClient::setTitle):
2310
2311 2014-12-22  Michael Catanzaro  <mcatanzaro@igalia.com>
2312
2313         [GTK] another outdated comment
2314         https://bugs.webkit.org/show_bug.cgi?id=139863
2315
2316         Reviewed by Darin Adler.
2317
2318         Remove outdated comment. We nowadays block untrusted connections by
2319         default.
2320
2321         * WebProcess/gtk/WebProcessMainGtk.cpp:
2322
2323 2014-12-21  Eric Carlson  <eric.carlson@apple.com>
2324
2325         [iOS] avoid WebVideoFullscreenManager crash
2326         https://bugs.webkit.org/show_bug.cgi?id=139852
2327         <rdar://problem/19319302>
2328
2329         Reviewed by Darin Adler.
2330
2331         * WebProcess/ios/WebVideoFullscreenManager.mm:
2332         (WebKit::WebVideoFullscreenManager::didExitFullscreen): NULL-check m_layerHostingContext and m_page.
2333         (WebKit::WebVideoFullscreenManager::setVideoLayerFrameFenced): NULL-check m_layerHostingContext.
2334
2335 2014-12-21  David Kilzer  <ddkilzer@apple.com>
2336
2337         Fix WebKit2 build with newer clang compiler
2338
2339         Fixes the following build error:
2340
2341             In file included from DerivedSources/WebKit2/WebVideoFullscreenManagerProxyMessageReceiver.cpp:32:
2342             Source/WebKit2/Platform/IPC/HandleMessage.h:16:25: error: non-const lvalue reference to type 'Vector<[3 * ...]>' cannot bind to a temporary of type 'Vector<[3 * ...]>'
2343                 (object->*function)(std::get<ArgsIndex>(std::forward<ArgsTuple>(args))...);
2344                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2345             Source/WebKit2/Platform/IPC/HandleMessage.h:22:5: note: in instantiation of function template specialization 'IPC::callMemberFunctionImpl<WebKit::WebVideoFullscreenManagerProxy, void (WebKit::WebVideoFullscreenManagerProxy::*)(WTF::Vector<std::__1::pair<double, double>, 0, WTF::CrashOnOverflow> &), std::__1::tuple<WTF::Vector<std::__1::pair<double, double>, 0, WTF::CrashOnOverflow> >, 0>' requested here
2346                 callMemberFunctionImpl(object, function, std::forward<ArgsTuple>(args), ArgsIndicies());
2347                 ^
2348             Source/WebKit2/Platform/IPC/HandleMessage.h:120:5: note: in instantiation of function template specialization 'IPC::callMemberFunction<WebKit::WebVideoFullscreenManagerProxy, void (WebKit::WebVideoFullscreenManagerProxy::*)(WTF::Vector<std::__1::pair<double, double>, 0, WTF::CrashOnOverflow> &), std::__1::tuple<WTF::Vector<std::__1::pair<double, double>, 0, WTF::CrashOnOverflow> >, std::make_index_sequence<1> >' requested here
2349                 callMemberFunction(WTF::move(arguments), object, function);
2350                 ^
2351             DerivedSources/WebKit2/WebVideoFullscreenManagerProxyMessageReceiver.cpp:55:14: note: in instantiation of function template specialization 'IPC::handleMessage<Messages::WebVideoFullscreenManagerProxy::SetSeekableRangesVector, WebKit::WebVideoFullscreenManagerProxy, void (WebKit::WebVideoFullscreenManagerProxy::*)(WTF::Vector<std::__1::pair<double, double>, 0, WTF::CrashOnOverflow> &)>' requested here
2352                     IPC::handleMessage<Messages::WebVideoFullscreenManagerProxy::SetSeekableRangesVector>(decoder, this, &WebVideoFullscreenManagerProxy::setSeekableRangesVector);
2353                          ^
2354
2355         * UIProcess/ios/WebVideoFullscreenManagerProxy.h:
2356         * UIProcess/ios/WebVideoFullscreenManagerProxy.mm:
2357         (WebKit::WebVideoFullscreenManagerProxy::setSeekableRangesVector):
2358         Make Vector<std::pair<double, double>>& argument const because a
2359         temporary is not allowed to bind to a non-const reference.
2360
2361 2014-12-20  Eric Carlson  <eric.carlson@apple.com>
2362
2363         [iOS] add optimized fullscreen API
2364         https://bugs.webkit.org/show_bug.cgi?id=139833
2365         <rdar://problem/18844486>
2366
2367         Reviewed by Simon Fraser.
2368
2369         * Configurations/FeatureDefines.xcconfig: Add ENABLE_VIDEO_PRESENTATION_MODE.
2370
2371 2014-12-20  David Kilzer  <ddkilzer@apple.com>
2372
2373         Switch from using PLATFORM_NAME to SDK selectors in WebCore, WebInspectorUI, WebKit, WebKit2
2374         <http://webkit.org/b/139463>
2375
2376         Reviewed by Mark Rowe.
2377
2378         * Configurations/All.xcconfig:
2379         - Only set EXCLUDED_SOURCE_FILE_NAMES on iOS.
2380         * Configurations/Base.xcconfig:
2381         - Only set FRAMEWORK_CONTENT_DIRECTORY, GCC_ENABLE_OBJC_GC and
2382           TOOLCHAINS on OS X.
2383         * Configurations/BaseLegacyProcess.xcconfig:
2384         - Only set SKIP_INSTALL on iOS.
2385         * Configurations/BaseTarget.xcconfig:
2386         - Set WEBKIT_FRAMEWORKS_DIR and UMBRELLA_FRAMEWORKS_DIR based on
2387           SDK, and simply them.
2388         * Configurations/BaseXPCService.xcconfig:
2389         - Set INSTALL_PATH_ACTUAL_Normal based on SDK.
2390         * Configurations/DebugRelease.xcconfig:
2391         - Only set MACOSX_DEPLOYMENT_TARGET and SDKROOT on OS X.
2392         - Set WEBKIT_SYSTEM_INTERFACE_LIBRARY based on SDK.
2393         * Configurations/NetworkProcess.xcconfig:
2394         - Only set EXCLUDED_SHIM_FILE_NAME and CODE_SIGN_ENTITLEMENTS on
2395           iOS.
2396         * Configurations/NetworkService.Development.xcconfig:
2397         - Set INFOPLIST_FILE based on SDK.
2398         - Simplify CODE_SIGN_ENTITLEMENTS for iOS.
2399         * Configurations/NetworkService.xcconfig:
2400         - Set INFOPLIST_FILE based on SDK.
2401         - Simplify CODE_SIGN_ENTITLEMENTS for iOS.
2402         * Configurations/PluginProcess.xcconfig:
2403         - Only set EXCLUDED_SHIM_FILE_NAME and SKIP_INSTALL on iOS.
2404         * Configurations/PluginProcessShim.xcconfig:
2405         - Set OTHER_LDFLAGS based on SDK.
2406         * Configurations/PluginService.32.xcconfig:
2407         - Only set VALID_ARCHS on OS X.
2408         - Set OTHER_LDFLAGS based on platform-specific values.
2409         - Only set SKIP_INSTALL on iOS.
2410         * Configurations/PluginService.64.xcconfig:
2411         - Set ARCHS based on SDK.
2412         - Set OTHER_LDFLAGS based on platform-specific values.
2413         - Only set SKIP_INSTALL on iOS.
2414         * Configurations/PluginService.Development.xcconfig:
2415         - Only set SKIP_INSTALL on iOS.
2416         - Set OTHER_LDFLAGS based on platform-specific values.
2417         * Configurations/SecItemShim.xcconfig:
2418         - Set OTHER_LDFLAGS based on platform-specific values.
2419         * Configurations/Version.xcconfig:
2420         - Set SYSTEM_VERSION_PREFIX separately for iOS and OS X.
2421         * Configurations/WebContentProcess.xcconfig:
2422         - Only set EXCLUDED_SHIM_FILE_NAME on iOS.
2423         - Only set CODE_SIGN_ENTITLEMENTS on iOS Simulator.
2424         * Configurations/WebContentService.Development.xcconfig:
2425         - Set INFOPLIST_FILE and BUNDLE_LOCALIZATION_KEY based on SDK.
2426         - Only set CODE_SIGN_ENTITLEMENTS on iOS hardware.
2427         - Set OTHER_LDFLAGS based on platform-specific values.
2428         * Configurations/WebContentService.xcconfig: Ditto.
2429         * Configurations/WebKit.xcconfig:
2430         - Set FRAMEWORK_AND_LIBRARY_LDFLAGS, SECTORDER_FLAGS, and
2431           WK_API_AVAILABILITY_ENABLED based on SDK.
2432         - Set OTHER_LDFLAGS based on platform-specific values.
2433         - Only set EXCLUDED_SOURCE_FILE_NAMES on iOS.
2434         * Configurations/WebKit2.xcconfig:
2435         - Set INSTALL_PATH, INSTALL_PATH_ACTUAL, DYLIB_INSTALL_NAME_BASE,
2436           NORMAL_WEBKIT2_FRAMEWORKS_DIR, WEBKIT2_FRAMEWORKS_DIR and
2437           NORMAL_PRODUCTION_FRAMEWORKS_DIR based on SDK.
2438         - Set SKIP_INSTALL on iOS.
2439         * Configurations/WebProcessShim.xcconfig:
2440         - Set OTHER_LDFLAGS based on platform-specific values.
2441
2442 2014-12-19  Jessie Berlin  <jberlin@webkit.org>
2443
2444         Build fix.
2445
2446         * UIProcess/mac/WebInspectorProxyMac.mm:
2447
2448 2014-12-19  Jessie Berlin  <jberlin@webkit.org>
2449
2450         Simplify the build fixes from r177615 and r177617.
2451
2452         Rubber-stamped by Dan Bernstein.
2453
2454         * UIProcess/mac/WebInspectorProxyMac.mm:
2455
2456 2014-12-19  Jessie Berlin  <jberlin@webkit.org>
2457
2458         Another attempt at a speculative build fix.
2459
2460         * UIProcess/mac/WebInspectorProxyMac.mm:
2461
2462 2014-12-19  Jessie Berlin  <jberlin@webkit.org>
2463
2464         Speculative build fix after r177610.
2465
2466         * UIProcess/mac/WebInspectorProxyMac.mm:
2467
2468 2014-12-19  Chris Dumez  <cdumez@apple.com>
2469
2470         [iOS] Add didEnterFullscreen / didExitFullscreen callbacks to WKUIDelegatePrivate
2471         https://bugs.webkit.org/show_bug.cgi?id=139835
2472         <rdar://problem/19312042>
2473
2474         Reviewed by Anders Carlsson.
2475
2476         Add didEnterFullscreen / didExitFullscreen callbacks to WKUIDelegatePrivate
2477         so that they can be implemented in MobileSafari.
2478
2479         * UIProcess/API/APIUIClient.h:
2480         (API::UIClient::didEnterFullscreen):
2481         (API::UIClient::didExitFullscreen):
2482         * UIProcess/API/Cocoa/WKUIDelegatePrivate.h:
2483         * UIProcess/Cocoa/UIDelegate.h:
2484         * UIProcess/Cocoa/UIDelegate.mm:
2485         (WebKit::UIDelegate::setDelegate):
2486         (WebKit::UIDelegate::UIClient::didEnterFullscreen):
2487         (WebKit::UIDelegate::UIClient::didExitFullscreen):
2488         * UIProcess/WebPageProxy.cpp:
2489         (WebKit::WebPageProxy::didEnterFullscreen):
2490         (WebKit::WebPageProxy::didExitFullscreen):
2491         * UIProcess/WebPageProxy.h:
2492         * UIProcess/ios/WebVideoFullscreenManagerProxy.mm:
2493         (WebKit::WebVideoFullscreenManagerProxy::didExitFullscreen):
2494         (WebKit::WebVideoFullscreenManagerProxy::didEnterFullscreen):
2495
2496 2014-12-19  Joseph Pecoraro  <pecoraro@apple.com>
2497
2498         Web Inspector: Inspector does not reopen correctly after Inspector Process crashes
2499         https://bugs.webkit.org/show_bug.cgi?id=139838
2500
2501         Reviewed by Timothy Hatcher.
2502
2503         When the WebContentProcess holding the Inspector Frontend crashes, we
2504         would properly tear down the inspector objects. However, the next time
2505         the inspector is opened, when creating the new page in the Inspector
2506         Page Group, a WebPageProxy is created with a Terminated WebProcessProxy.
2507
2508         That Terminated WebProcessProxy is automatically replaced with the next
2509         load request is given. The newly created process was missing the
2510         message listeners and assumed URL access settings that the
2511         WebInspectorProxy had set on the old process.
2512
2513         So, WebInspectorProxy now listens for and resets the process properties
2514         when the inspector process is recreated.
2515
2516         * UIProcess/WebInspectorProxy.h:
2517         * UIProcess/WebInspectorProxy.cpp:
2518         (WebKit::WebInspectorProxy::didRelaunchInspectorPageProcess):
2519         Reset process properties when the process is relaunched.
2520
2521         (WebKit::WebInspectorProxy::createInspectorPage):
2522         (WebKit::WebInspectorProxy::didClose):
2523         Save connection identifier if we need to establish connections later.
2524
2525         * UIProcess/mac/WebInspectorProxyMac.mm:
2526         (-[WKWebInspectorProxyObjCAdapter didRelaunchProcess]):
2527         (-[WKWebInspectorWKView _didRelaunchProcess]):
2528         (WebKit::WebInspectorProxy::closeTimerFired):
2529         (WebKit::WebInspectorProxy::platformCreateInspectorPage):
2530         Send WebInspectorProxy a message when the process underlying the
2531         WKView is relaunched.
2532
2533 2014-12-19  Anders Carlsson  <andersca@apple.com>
2534
2535         Get rid of the hardcoded set of structs in the message generation script
2536         https://bugs.webkit.org/show_bug.cgi?id=139844
2537
2538         Reviewed by Tim Horton.
2539
2540         Instead, make it possible to use 'struct' in front of the type name to declare that the type is a struct.
2541
2542         * DatabaseProcess/DatabaseProcess.messages.in:
2543         * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.messages.in:
2544         * NetworkProcess/NetworkProcess.messages.in:
2545         * PluginProcess/PluginProcess.messages.in:
2546         * PluginProcess/WebProcessConnection.messages.in:
2547         * Scripts/webkit/messages.py:
2548         (struct_or_class):
2549         (forward_declarations_for_namespace):
2550         (forward_declarations_and_headers):
2551         * Scripts/webkit/model.py:
2552         (Parameter.__init__):
2553         * Scripts/webkit/parser.py:
2554         (parse_parameters_string):
2555         * UIProcess/Storage/StorageManager.messages.in:
2556         * UIProcess/WebContext.messages.in:
2557         * UIProcess/WebPageProxy.messages.in:
2558         * UIProcess/WebProcessProxy.messages.in:
2559         * WebProcess/ApplicationCache/WebApplicationCacheManager.messages.in:
2560         * WebProcess/Databases/IndexedDB/WebIDBServerConnection.messages.in:
2561         * WebProcess/OriginData/WebOriginDataManager.messages.in:
2562         * WebProcess/ResourceCache/WebResourceCacheManager.messages.in:
2563         * WebProcess/WebPage/DrawingArea.messages.in:
2564         * WebProcess/WebPage/WebPage.messages.in:
2565         * WebProcess/WebProcess.messages.in:
2566
2567 2014-12-19  Timothy Horton  <timothy_horton@apple.com>
2568
2569         Fix the build.
2570
2571         * UIProcess/API/mac/WKView.mm:
2572         (-[WKView _setIgnoresNonWheelEvents:]):
2573
2574 2014-12-19  Beth Dakin  <bdakin@apple.com>
2575
2576         Preview popovers don't show an arrow for large links
2577         https://bugs.webkit.org/show_bug.cgi?id=139842
2578         -and corresponding-
2579         <rdar://problem/19301470>
2580
2581         Reviewed by Tim Horton.
2582
2583         This patch addresses the case where the link is so large that there is no 
2584         available space on any side once you factor in screen padding. In that case, we 
2585         should give up early on not obscuring the link.
2586         * UIProcess/mac/WKPreviewPopoverAnimationController.mm:
2587         (-[WKPreviewPopoverAnimationController _targetSizeForPagePreview]):
2588         (-[WKPreviewPopoverAnimationController _effectivePaddingWithPreviewPadding:]):
2589         (-[WKPreviewPopoverAnimationController _maxSpaceAvailableOnYEdgeForOriginRect:withScreenRect:previewPadding:]):
2590         (-[WKPreviewPopoverAnimationController _maxSpaceAvailableOnXEdgeForOriginRect:withScreenRect:previewPadding:]):
2591         (-[WKPreviewPopoverAnimationController _preferredPopoverSizeWithPreviewPadding:forTargetSize:]):
2592
2593 2014-12-19  Timothy Horton  <timothy_horton@apple.com>
2594
2595         WKView's ignoresNonWheelEvents should ignore immediate actions
2596         https://bugs.webkit.org/show_bug.cgi?id=139839
2597         <rdar://problem/19312111>
2598
2599         Reviewed by Anders Carlsson.
2600
2601         * UIProcess/API/mac/WKView.mm:
2602         (-[WKView initWithFrame:context:configuration:webView:]):
2603         (-[WKView _setIgnoresNonWheelEvents:]):
2604         Install/uninstall the immediate action gesture recognizer when
2605         toggling ignoresNonWheelEvents.
2606
2607 2014-12-19  Csaba Osztrogonác  <ossy@webkit.org>
2608
2609         URTBF after r177593.
2610
2611         * PluginProcess/PluginProcess.h:
2612         * PluginProcess/unix/PluginProcessUnix.cpp:
2613         (WebKit::PluginProcess::platformInitializePluginProcess):
2614         * Shared/WebProcessCreationParameters.h:
2615         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
2616         * WebProcess/WebProcess.h:
2617         * WebProcess/soup/WebProcessSoup.cpp:
2618         (WebKit::WebProcess::platformInitializeWebProcess):
2619
2620 2014-12-19  Anders Carlsson  <andersca@apple.com>
2621
2622         Use WebCore::MachSendRights for the compositing render server port
2623         https://bugs.webkit.org/show_bug.cgi?id=139834
2624
2625         Reviewed by Tim Horton.
2626
2627         * Platform/IPC/HandleMessage.h:
2628         (IPC::callMemberFunctionImpl):
2629         * Platform/mac/LayerHostingContext.h:
2630         * Platform/mac/LayerHostingContext.mm:
2631         (WebKit::LayerHostingContext::createForPort):
2632         * PluginProcess/PluginControllerProxy.h:
2633         * PluginProcess/PluginProcess.cpp:
2634         (WebKit::PluginProcess::PluginProcess):
2635         (WebKit::PluginProcess::initializePluginProcess):
2636         * PluginProcess/PluginProcess.h:
2637         (WebKit::PluginProcess::compositingRenderServerPort):
2638         * PluginProcess/mac/PluginControllerProxyMac.mm:
2639         (WebKit::PluginControllerProxy::compositingRenderServerPort):
2640         * PluginProcess/mac/PluginProcessMac.mm:
2641         (WebKit::PluginProcess::platformInitializePluginProcess):
2642         * Shared/Plugins/PluginProcessCreationParameters.cpp:
2643         * Shared/Plugins/PluginProcessCreationParameters.h:
2644         * Shared/WebCoreArgumentCoders.h:
2645         * Shared/WebProcessCreationParameters.h:
2646         * Shared/mac/WebCoreArgumentCodersMac.mm:
2647         (IPC::ArgumentCoder<MachSendRight>::encode):
2648         * UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
2649         (WebKit::PluginProcessProxy::platformInitializePluginProcess):
2650         * UIProcess/mac/WebContextMac.mm:
2651         (WebKit::WebContext::platformInitializeWebProcess):
2652         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
2653         (WebKit::NPN_GetValue):
2654         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
2655         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
2656         (WebKit::NetscapePlugin::compositingRenderServerPort):
2657         (WebKit::NetscapePlugin::setLayerHostingMode):
2658         * WebProcess/Plugins/PluginController.h:
2659         * WebProcess/Plugins/PluginView.cpp:
2660         (WebKit::PluginView::compositingRenderServerPort):
2661         * WebProcess/Plugins/PluginView.h:
2662         * WebProcess/WebProcess.cpp:
2663         (WebKit::WebProcess::WebProcess):
2664         (WebKit::WebProcess::initializeWebProcess):
2665         * WebProcess/WebProcess.h:
2666         (WebKit::WebProcess::compositingRenderServerPort):
2667         * WebProcess/cocoa/WebProcessCocoa.mm:
2668         (WebKit::WebProcess::platformInitializeWebProcess):
2669
2670 2014-12-19  Andreas Kling  <akling@apple.com>
2671
2672         Ref-ify TextIterator API.
2673         <https://webkit.org/b/139823>
2674
2675         Reviewed by Antti Koivisto.
2676
2677         * WebProcess/InjectedBundle/API/mac/WKDOMTextIterator.mm:
2678         (-[WKDOMTextIterator currentRange]):
2679
2680 2014-12-19  Commit Queue  <commit-queue@webkit.org>
2681
2682         Unreviewed, rolling out r177574.
2683         https://bugs.webkit.org/show_bug.cgi?id=139821
2684
2685         "Broke Production builds by installing
2686         libWebCoreTestSupport.dylib in the wrong directory" (Requested
2687         by ddkilzer on #webkit).
2688
2689         Reverted changeset:
2690
2691         "Switch from using PLATFORM_NAME to SDK selectors in WebCore,
2692         WebInspectorUI, WebKit, WebKit2"
2693         https://bugs.webkit.org/show_bug.cgi?id=139463
2694         http://trac.webkit.org/changeset/177574
2695
2696 2014-12-19  David Kilzer  <ddkilzer@apple.com>
2697
2698         Switch from using PLATFORM_NAME to SDK selectors in WebCore, WebInspectorUI, WebKit, WebKit2
2699         <http://webkit.org/b/139463>
2700
2701         Reviewed by Mark Rowe.
2702
2703         * Configurations/All.xcconfig:
2704         - Only set EXCLUDED_SOURCE_FILE_NAMES on iOS.
2705         * Configurations/Base.xcconfig:
2706         - Only set FRAMEWORK_CONTENT_DIRECTORY, GCC_ENABLE_OBJC_GC and
2707           TOOLCHAINS on OS X.
2708         * Configurations/BaseLegacyProcess.xcconfig:
2709         - Only set SKIP_INSTALL on iOS.
2710         * Configurations/BaseTarget.xcconfig:
2711         - Set WEBKIT_FRAMEWORKS_DIR and UMBRELLA_FRAMEWORKS_DIR based on
2712           SDK, and simply them.
2713         * Configurations/BaseXPCService.xcconfig:
2714         - Set INSTALL_PATH_ACTUAL_Normal based on SDK.
2715         * Configurations/DebugRelease.xcconfig:
2716         - Only set MACOSX_DEPLOYMENT_TARGET and SDKROOT on OS X.
2717         - Set WEBKIT_SYSTEM_INTERFACE_LIBRARY based on SDK.
2718         * Configurations/NetworkProcess.xcconfig:
2719         - Only set EXCLUDED_SHIM_FILE_NAME and CODE_SIGN_ENTITLEMENTS on
2720           iOS.
2721         * Configurations/NetworkService.Development.xcconfig:
2722         - Set INFOPLIST_FILE based on SDK.
2723         - Simplify CODE_SIGN_ENTITLEMENTS for iOS.
2724         * Configurations/NetworkService.xcconfig:
2725         - Set INFOPLIST_FILE based on SDK.
2726         - Simplify CODE_SIGN_ENTITLEMENTS for iOS.
2727         * Configurations/PluginProcess.xcconfig:
2728         - Only set EXCLUDED_SHIM_FILE_NAME and SKIP_INSTALL on iOS.
2729         * Configurations/PluginProcessShim.xcconfig:
2730         - Set OTHER_LDFLAGS based on SDK.
2731         * Configurations/PluginService.32.xcconfig:
2732         - Only set VALID_ARCHS on OS X.
2733         - Set OTHER_LDFLAGS based on platform-specific values.
2734         - Only set SKIP_INSTALL on iOS.
2735         * Configurations/PluginService.64.xcconfig:
2736         - Set ARCHS based on SDK.
2737         - Set OTHER_LDFLAGS based on platform-specific values.
2738         - Only set SKIP_INSTALL on iOS.
2739         * Configurations/PluginService.Development.xcconfig:
2740         - Only set SKIP_INSTALL on iOS.
2741         - Set OTHER_LDFLAGS based on platform-specific values.
2742         * Configurations/SecItemShim.xcconfig:
2743         - Set OTHER_LDFLAGS based on platform-specific values.
2744         * Configurations/Version.xcconfig:
2745         - Set SYSTEM_VERSION_PREFIX separately for iOS and OS X.
2746         * Configurations/WebContentProcess.xcconfig:
2747         - Only set EXCLUDED_SHIM_FILE_NAME on iOS.
2748         - Only set CODE_SIGN_ENTITLEMENTS on iOS Simulator.
2749         * Configurations/WebContentService.Development.xcconfig:
2750         - Set INFOPLIST_FILE and BUNDLE_LOCALIZATION_KEY based on SDK.
2751         - Only set CODE_SIGN_ENTITLEMENTS on iOS hardware.
2752         - Set OTHER_LDFLAGS based on platform-specific values.
2753         * Configurations/WebContentService.xcconfig: Ditto.
2754         * Configurations/WebKit.xcconfig:
2755         - Set FRAMEWORK_AND_LIBRARY_LDFLAGS, SECTORDER_FLAGS, and
2756           WK_API_AVAILABILITY_ENABLED based on SDK.
2757         - Set OTHER_LDFLAGS based on platform-specific values.
2758         - Only set EXCLUDED_SOURCE_FILE_NAMES on iOS.
2759         * Configurations/WebKit2.xcconfig:
2760         - Set INSTALL_PATH, INSTALL_PATH_ACTUAL, DYLIB_INSTALL_NAME_BASE,
2761           NORMAL_WEBKIT2_FRAMEWORKS_DIR, WEBKIT2_FRAMEWORKS_DIR and
2762           NORMAL_PRODUCTION_FRAMEWORKS_DIR based on SDK.
2763         - Set SKIP_INSTALL on iOS.
2764         * Configurations/WebProcessShim.xcconfig:
2765         - Set OTHER_LDFLAGS based on platform-specific values.
2766
2767 2014-12-18  Jon Honeycutt  <jhoneycutt@apple.com>
2768
2769         iOS build fix.
2770
2771         * UIProcess/mac/WKPreviewPopoverAnimationController.mm:
2772
2773 2014-12-18  Jessie Berlin  <jberlin@webkit.org>
2774
2775         Speculative build-fix after r177522.
2776
2777         * UIProcess/mac/WKPreviewPopoverAnimationController.mm:
2778         (-[WKPreviewPopoverAnimationController setPreviewOverrideImage:]):
2779
2780 2014-12-18  Andreas Kling  <akling@apple.com>
2781
2782         Ref-ify various Document-related things.
2783         <https://webkit.org/b/139796>
2784
2785         Reviewed by Anders Carlsson.
2786
2787         * WebProcess/InjectedBundle/API/mac/WKDOMDocument.mm:
2788         (-[WKDOMDocument createTextNode:]):
2789
2790 2014-12-18  Beth Dakin  <bdakin@apple.com>
2791
2792         Speculative build fix.
2793
2794         * UIProcess/ProcessThrottler.h:
2795
2796 2014-12-18  Anders Carlsson  <andersca@apple.com>
2797
2798         Use MachSendRight in WebKit2
2799         https://bugs.webkit.org/show_bug.cgi?id=139800
2800
2801         Reviewed by Tim Horton.
2802
2803         * Platform/IPC/ArgumentEncoder.h:
2804         (IPC::ArgumentEncoder::encode):
2805         (IPC::ArgumentEncoder::operator<<):
2806         * Shared/WebCoreArgumentCoders.h:
2807         * Shared/mac/RemoteLayerBackingStore.mm:
2808         (WebKit::RemoteLayerBackingStore::encode):
2809         (WebKit::RemoteLayerBackingStore::decode):
2810         * Shared/mac/WebCoreArgumentCodersMac.mm:
2811         (IPC::ArgumentCoder<MachSendRight>::encode):
2812         (IPC::ArgumentCoder<MachSendRight>::decode):
2813
2814 2014-12-18  Gavin Barraclough  <barraclough@apple.com>
2815
2816         Remove custom token mechanism from ProcessThrottler
2817         https://bugs.webkit.org/show_bug.cgi?id=139744
2818
2819         Reviewed by Geoff Garen.
2820
2821         ProcessThrottler implements its own token-based counter mechanism, but should
2822         just use RefCounter.
2823
2824         * UIProcess/Cocoa/NavigationState.h:
2825             - remove std::unique_ptr.
2826         * UIProcess/Cocoa/NavigationState.mm:
2827         (WebKit::NavigationState::didChangeIsLoading):
2828             - remove std::make_unique.
2829         * UIProcess/GenericCallback.h:
2830         (WebKit::CallbackBase::CallbackBase):
2831         (WebKit::GenericCallback::create):
2832         (WebKit::GenericCallback::GenericCallback):
2833         (WebKit::CallbackMap::put):
2834             - remove std::unique_ptr.
2835         * UIProcess/ProcessThrottler.cpp:
2836         (WebKit::ProcessThrottler::ProcessThrottler):
2837         (WebKit::m_backgroundCounter):
2838         (WebKit::ProcessThrottler::assertionState):
2839         (WebKit::ProcessThrottler::updateAssertion):
2840         (WebKit::ProcessThrottler::ForegroundActivityToken::ForegroundActivityToken): Deleted.
2841         (WebKit::ProcessThrottler::ForegroundActivityToken::~ForegroundActivityToken): Deleted.
2842         (WebKit::ProcessThrottler::BackgroundActivityToken::BackgroundActivityToken): Deleted.
2843         (WebKit::ProcessThrottler::BackgroundActivityToken::~BackgroundActivityToken): Deleted.
2844             - removed old implementation of ForegroundActivityToken/BackgroundActivityToken.
2845         * UIProcess/ProcessThrottler.h:
2846         (WebKit::ProcessThrottler::foregroundActivityToken):
2847         (WebKit::ProcessThrottler::backgroundActivityToken):
2848             - added accessors to create activity tokens.
2849         (WebKit::ProcessThrottler::weakPtr): Deleted.
2850             - removed members replaced by RefCounter types.
2851         * UIProcess/WebPageProxy.cpp:
2852         (WebKit::WebPageProxy::updateActivityToken):
2853         (WebKit::WebPageProxy::validateCommand):
2854         (WebKit::WebPageProxy::runJavaScriptInMainFrame):
2855         (WebKit::WebPageProxy::getRenderTreeExternalRepresentation):
2856         (WebKit::WebPageProxy::getSourceForFrame):
2857         (WebKit::WebPageProxy::getContentsAsString):
2858         (WebKit::WebPageProxy::getBytecodeProfile):
2859         (WebKit::WebPageProxy::getContentsAsMHTMLData):
2860         (WebKit::WebPageProxy::getSelectionOrContentsAsString):
2861         (WebKit::WebPageProxy::getSelectionAsWebArchiveData):
2862         (WebKit::WebPageProxy::getMainResourceDataOfFrame):
2863         (WebKit::WebPageProxy::getResourceDataFromFrame):
2864         (WebKit::WebPageProxy::getWebArchiveOfFrame):
2865         (WebKit::WebPageProxy::getMarkedRangeAsync):
2866         (WebKit::WebPageProxy::getSelectedRangeAsync):
2867         (WebKit::WebPageProxy::characterIndexForPointAsync):
2868         (WebKit::WebPageProxy::firstRectForCharacterRangeAsync):
2869         (WebKit::WebPageProxy::takeSnapshot):
2870         (WebKit::WebPageProxy::installViewStateChangeCompletionHandler):
2871             - remove std::make_unique.
2872         * UIProcess/WebPageProxy.h:
2873             - remove std::unique_ptr.
2874         * UIProcess/WebProcessProxy.cpp:
2875         (WebKit::WebProcessProxy::setIsHoldingLockedFiles):
2876             - remove std::make_unique.
2877         * UIProcess/WebProcessProxy.h:
2878             - remove std::unique_ptr.
2879         * UIProcess/ios/WebPageProxyIOS.mm:
2880         (WebKit::WebPageProxy::selectWithGesture):
2881         (WebKit::WebPageProxy::updateSelectionWithTouches):
2882         (WebKit::WebPageProxy::requestAutocorrectionData):
2883         (WebKit::WebPageProxy::applyAutocorrection):
2884         (WebKit::WebPageProxy::executeEditCommand):
2885         (WebKit::WebPageProxy::selectTextWithGranularityAtPoint):
2886         (WebKit::WebPageProxy::selectPositionAtBoundaryWithDirection):
2887         (WebKit::WebPageProxy::selectPositionAtPoint):
2888         (WebKit::WebPageProxy::beginSelectionInDirection):
2889         (WebKit::WebPageProxy::updateSelectionWithExtentPoint):
2890         (WebKit::WebPageProxy::requestDictationContext):
2891         (WebKit::WebPageProxy::requestAutocorrectionContext):
2892         (WebKit::WebPageProxy::selectWithTwoTouches):
2893         (WebKit::WebPageProxy::moveSelectionByOffset):
2894         (WebKit::WebPageProxy::focusNextAssistedNode):
2895             - remove std::make_unique.
2896         * UIProcess/mac/WebPageProxyMac.mm:
2897         (WebKit::WebPageProxy::attributedSubstringForCharacterRangeAsync):
2898             - remove std::make_unique.
2899
2900 2014-12-18  Gavin Barraclough  <barraclough@apple.com>
2901
2902         Add strong typing to RefCounter interface, return value as a bool.
2903         https://bugs.webkit.org/show_bug.cgi?id=139776
2904
2905         Reviewed by Geoff Garen.
2906
2907         Currently all token vended by a RefCounter have the same type - Ref<RefCounter::Count>.
2908         This means there is no compile time type checking to prevent mistakes. Update the count()
2909         method to token<>(), templated on type used to identify the token being returned.
2910         Calls to token<T>() will return a result of type RefCounter::Token<T>.
2911
2912         There are a few problems with the fact the counter will return you an exact count of the
2913         number of outstanding tokens:
2914           - It is desirable to only fire the callback on zero-edge changes; it is more consistent
2915             to do so if the value is only readable as a boolean.
2916           - It is desirable to provide the value as an argument to the callback, however to make
2917             this useful for integer values it is also necessary to indicate the direction of change
2918             (0->1 is often interesting where 2->1 is not).
2919           - There is a mismatch between the precision of returning a count, and the inherent
2920             imprecision of a token based mechanism, where it may be difficult to guarantee
2921             absolutely no unnecessary refcount churn, and thus unintentional counter values.
2922
2923         Removed PluginProcessManager::m_processSuppressionEnabled. Now the callback only fires on
2924         zero-edge transitions we no longer need this to filter changes.
2925
2926         * UIProcess/Plugins/PluginProcessManager.cpp:
2927         (WebKit::PluginProcessManager::PluginProcessManager):
2928             - updateProcessSuppressionState -> updateProcessSuppressionDisabled.
2929         * UIProcess/Plugins/PluginProcessManager.h:
2930         (WebKit::PluginProcessManager::processSuppressionDisabledForPageCount): Deleted.
2931         (WebKit::PluginProcessManager::processSuppressionDisabledToken):
2932             - processSuppressionDisabledForPageCount -> processSuppressionDisabledToken.
2933         (WebKit::PluginProcessManager::processSuppressionEnabled): Deleted.
2934         (WebKit::PluginProcessManager::processSuppressionDisabled):
2935             - processSuppressionEnabled -> processSuppressionDisabled.
2936         * UIProcess/Plugins/PluginProcessProxy.cpp:
2937         (WebKit::PluginProcessProxy::didFinishLaunching):
2938             - processSuppressionEnabled -> processSuppressionDisabled.
2939         * UIProcess/Plugins/mac/PluginProcessManagerMac.mm:
2940         (WebKit::PluginProcessManager::updateProcessSuppressionState): Deleted.
2941         (WebKit::PluginProcessManager::updateProcessSuppressionDisabled):
2942             - updateProcessSuppressionState -> updateProcessSuppressionDisabled
2943         * UIProcess/ProcessThrottler.h:
2944             - added UserObservablePageToken, ProcessSuppressionDisabledToken types.
2945         * UIProcess/WebContext.cpp:
2946         (WebKit::WebContext::WebContext):
2947         (WebKit::m_processSuppressionDisabledForPageCounter):
2948             - lambda now has bool argument.
2949         * UIProcess/WebContext.h:
2950         (WebKit::WebContext::userObservablePageCount):
2951         (WebKit::WebContext::processSuppressionDisabledForPageCount):
2952             - count() -> token<>(), changed return type.
2953         * UIProcess/WebPageProxy.h:
2954             - changed types of token members.
2955         * UIProcess/mac/WebContextMac.mm:
2956         (WebKit::WebContext::updateProcessSuppressionState):
2957             renamed m_pluginProcessManagerProcessSuppressionDisabledCount -> m_pluginProcessManagerProcessSuppressionDisabledToken.
2958
2959 2014-12-18  Timothy Horton  <timothy_horton@apple.com>
2960
2961         Try to fix some builds.
2962
2963         * UIProcess/mac/WKPreviewPopoverAnimationController.mm:
2964
2965 2014-12-18  Anders Carlsson  <andersca@apple.com>
2966
2967         Fix build.
2968
2969         * UIProcess/API/mac/WKViewInternal.h:
2970
2971 2014-12-18  Chris Dumez  <cdumez@apple.com>
2972
2973         Add missing availability annotation on @property _featureCounterEnabled
2974         https://bugs.webkit.org/show_bug.cgi?id=139794
2975         <rdar://problem/19266254>
2976
2977         Rubber-stamped by Dan Bernstein.
2978
2979         Follow-up to r177526 adding availability annotation on @property
2980         _featureCounterEnabled.
2981
2982         * UIProcess/API/Cocoa/WKWebViewConfigurationPrivate.h:
2983
2984 2014-12-18  Beth Dakin  <bdakin@apple.com>
2985
2986         Need to re-enable action menus
2987         https://bugs.webkit.org/show_bug.cgi?id=139795
2988         -and corresponding-
2989         rdar://problem/19299367
2990
2991         Reviewed by Tim Horton.
2992
2993         Re-enable the menus by un-commenting the code to create the menu and controller.
2994         * UIProcess/API/mac/WKView.mm:
2995         (-[WKView initWithFrame:context:configuration:webView:]):
2996
2997         performActionMenuHitTest already takes a parameter indicating whether the hit test 
2998         is for an immediate action or not. The callback didPerformActionMenuHitTest needs 
2999         that information too so that it knows whether to call into the 
3000         ActionMenuController or the ImmediateActionController.
3001         (-[WKView _didPerformActionMenuHitTest:forImmediateAction:userData:]):
3002         (-[WKView _didPerformActionMenuHitTest:userData:]): Deleted.
3003         * UIProcess/API/mac/WKViewInternal.h:
3004         * UIProcess/PageClient.h:
3005         * UIProcess/WebPageProxy.cpp:
3006         (WebKit::WebPageProxy::didPerformActionMenuHitTest):
3007         * UIProcess/WebPageProxy.h:
3008         * UIProcess/WebPageProxy.messages.in:
3009         * UIProcess/mac/PageClientImpl.h:
3010         * UIProcess/mac/PageClientImpl.mm:
3011         (WebKit::PageClientImpl::didPerformActionMenuHitTest):
3012         * WebProcess/WebPage/mac/WebPageMac.mm:
3013         (WebKit::WebPage::performActionMenuHitTestAtLocation):
3014
3015 2014-12-18  Chris Dumez  <cdumez@apple.com>
3016
3017         [WK2] Stop using WKPreferencesPrivate API to toggle FeatureCounter support
3018         https://bugs.webkit.org/show_bug.cgi?id=139794
3019         <rdar://problem/19266254>
3020
3021         Reviewed by Anders Carlsson.
3022
3023         Stop using WKPreferencesPrivate API to toggle FeatureCounter support
3024         and use WKWebViewConfigurationPrivate API instead. FeatureCounter is
3025         not meant to change state after the view has been created.
3026
3027         * UIProcess/API/C/WKPreferences.cpp:
3028         (WKPreferencesSetFeatureCounterEnabled): Deleted.
3029         (WKPreferencesGetFeatureCounterEnabled): Deleted.
3030         * UIProcess/API/C/WKPreferencesRefPrivate.h:
3031         * UIProcess/API/Cocoa/WKPreferences.mm:
3032         (-[WKPreferences _featureCounterEnabled]): Deleted.
3033         (-[WKPreferences _setFeatureCounterEnabled:]): Deleted.
3034         * UIProcess/API/Cocoa/WKPreferencesPrivate.h:
3035         * UIProcess/API/Cocoa/WKWebView.mm:
3036         (-[WKWebView initWithFrame:configuration:]):
3037         * UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
3038         (-[WKWebViewConfiguration init]):
3039         (-[WKWebViewConfiguration copyWithZone:]):
3040         (-[WKWebViewConfiguration _featureCounterEnabled]):
3041         (-[WKWebViewConfiguration _setFeatureCounterEnabled:]):
3042         * UIProcess/API/Cocoa/WKWebViewConfigurationPrivate.h:
3043
3044 2014-12-18  Timothy Horton  <timothy_horton@apple.com>
3045
3046         Fix the build.
3047
3048         * UIProcess/API/mac/WKView.mm:
3049         (-[WKView _setPreviewOverrideImage:]):
3050
3051 2014-12-18  Timothy Horton  <timothy_horton@apple.com>
3052
3053         Change page preview loading order, and add a TextIndicator
3054         https://bugs.webkit.org/show_bug.cgi?id=139793
3055         <rdar://problem/19288547>
3056
3057         Reviewed by Beth Dakin.
3058
3059         * Shared/mac/ActionMenuHitTestResult.h:
3060         * Shared/mac/ActionMenuHitTestResult.mm:
3061         (WebKit::ActionMenuHitTestResult::encode):
3062         (WebKit::ActionMenuHitTestResult::decode):
3063         * WebProcess/WebPage/mac/WebPageMac.mm:
3064         (WebKit::WebPage::performActionMenuHitTestAtLocation):
3065         Build a TextIndicator for links.
3066
3067         * UIProcess/API/Cocoa/WKViewPrivate.h:
3068         * UIProcess/API/mac/WKView.mm:
3069         (-[WKView _dismissContentRelativeChildWindows]):
3070         (-[WKView _setPreviewTitle:]):
3071         (-[WKView _setPreviewLoading:]):
3072         Remove unneeded WK_API_ENABLED #ifs.
3073
3074         (-[WKView _setPreviewOverrideImage:]):
3075         Add; forward to WKImmediateActionController.
3076
3077         * UIProcess/mac/WKImmediateActionController.h:
3078         * UIProcess/mac/WKImmediateActionController.mm:
3079         (-[WKImmediateActionController willDestroyView:]):
3080         Shut down the WKPreviewPopoverAnimationController.
3081
3082         (-[WKImmediateActionController _clearImmediateActionState]):
3083         (-[WKImmediateActionController immediateActionRecognizerWillPrepare:]):
3084         Don't build an immediate action item here; we'll always build it in
3085         willBeginAnimation, and the one we build here is likely to be wrong.
3086
3087         (-[WKImmediateActionController _defaultAnimationController]):
3088         (-[WKImmediateActionController hidePreview]):
3089         (-[WKImmediateActionController setPreviewTitle:]):
3090         (-[WKImmediateActionController setPreviewLoading:]):
3091         (-[WKImmediateActionController setPreviewOverrideImage:]):
3092         (-[WKImmediateActionController _animationControllerForCustomPreview]):
3093         (-[WKImmediateActionController _createPreviewPopoverIfNeededForURL:]): Deleted.
3094         (-[WKImmediateActionController popoverWillClose:]): Deleted.
3095         (targetSizeFitsInAvailableSpace): Deleted.
3096         (-[WKImmediateActionController largestPopoverSize]): Deleted.
3097         (-[WKImmediateActionController _preferredPopoverSizeWithPreviewPadding:]): Deleted.
3098         (-[WKImmediateActionController pagePreviewViewController:viewForPreviewingURL:initialFrameSize:]): Deleted.
3099         (-[WKImmediateActionController pagePreviewViewController:titleForPreviewOfURL:]): Deleted.
3100         (-[WKImmediateActionController pagePreviewViewControllerWasClicked:]): Deleted.
3101         Move preview popover code to WKPreviewPopoverAnimationController.
3102         Install and uninstall the link text indicator when necessary.
3103
3104         * UIProcess/mac/WKPagePreviewViewController.h:
3105         * UIProcess/mac/WKPagePreviewViewController.mm:
3106         (-[WKPagePreviewViewController setLoading:]):
3107         (-[WKPagePreviewViewController loadView]):
3108         (-[WKPagePreviewViewController replacePreviewWithImage:atSize:]):
3109         Allow overriding the preview with a full-view NSImage.
3110         Hide the preview view until the loading spinner goes away.
3111
3112         * UIProcess/mac/WKPreviewPopoverAnimationController.h: Copied from Source/WebKit2/UIProcess/mac/WKImmediateActionController.h.
3113         * UIProcess/mac/WKPreviewPopoverAnimationController.mm: Added.
3114         (+[WKPreviewPopoverAnimationController _shouldImmediatelyShowPreview]):
3115         (-[WKPreviewPopoverAnimationController initWithURL:view:page:originRect:eventLocationInView:]):
3116         (-[WKPreviewPopoverAnimationController close]):
3117         (-[WKPreviewPopoverAnimationController setPreviewLoading:]):
3118         (-[WKPreviewPopoverAnimationController setPreviewOverrideImage:]):
3119         If we have shown the popover, choose a size strictly smaller than
3120         its current size.
3121
3122         (-[WKPreviewPopoverAnimationController _hidePreview]):
3123         (-[WKPreviewPopoverAnimationController setPreviewTitle:]):
3124         (-[WKPreviewPopoverAnimationController _createPreviewPopover]):
3125         (-[WKPreviewPopoverAnimationController _showPreview]):
3126         (targetSizeFitsInAvailableSpace):
3127         (-[WKPreviewPopoverAnimationController largestPopoverSize]):
3128         (-[WKPreviewPopoverAnimationController _targetSizeForPagePreview]):
3129         (-[WKPreviewPopoverAnimationController _preferredPopoverSizeWithPreviewPadding:forTargetSize:]):
3130         (-[WKPreviewPopoverAnimationController _previewWatchdogTimerFired:]):
3131         (-[WKPreviewPopoverAnimationController recognizerWillBeginAnimation:]):
3132         (-[WKPreviewPopoverAnimationController recognizerDidUpdateAnimation:]):
3133         (-[WKPreviewPopoverAnimationController recognizerDidCancelAnimation:]):
3134         (-[WKPreviewPopoverAnimationController recognizerDidCompleteAnimation:]):
3135         (-[WKPreviewPopoverAnimationController recognizerDidDismissAnimation:]):
3136         (-[WKPreviewPopoverAnimationController pagePreviewViewController:viewForPreviewingURL:initialFrameSize:]):
3137         (-[WKPreviewPopoverAnimationController pagePreviewViewController:titleForPreviewOfURL:]):
3138         (-[WKPreviewPopoverAnimationController pagePreviewViewControllerWasClicked:]):
3139         (-[WKPreviewPopoverAnimationController popoverWillClose:]):
3140         Move code in from WKImmediateActionController.
3141         Forward NSImmediateActionAnimationControllerDelegate methods
3142         to the popover's animation controller if we've popped it.
3143         Pop the popover if we've loaded or 1 second has passed, whichever
3144         comes first.
3145
3146         * WebKit2.xcodeproj/project.pbxproj:
3147
3148 2014-12-18  Anders Carlsson  <andersca@apple.com>
3149
3150         Add a MachSendRight class to WebCore and use it in IOSurface
3151         https://bugs.webkit.org/show_bug.cgi?id=139787
3152
3153         Reviewed by Tim Horton.
3154
3155         * Shared/mac/RemoteLayerBackingStore.mm:
3156         (WebKit::RemoteLayerBackingStore::encode):
3157
3158 2014-12-18  Daniel Bates  <dabates@apple.com>
3159
3160         Attempt to fix the iOS build after <http://trac.webkit.org/changeset/177486>
3161         (https://bugs.webkit.org/show_bug.cgi?id=139755)
3162
3163         * WebProcess/WebPage/ios/WebPageIOS.mm:
3164         (WebKit::WebPage::selectWithGesture): Wrap return value of Range::create() in RefPtr<Range>()
3165         to make the the compiler happy since it wants clauses of the ternary operator to have the same data type
3166         and Ref<Range> object does not support nullptr.
3167         (WebKit::WebPage::selectWordBackward): Substitute Ref::ptr() for PassRefPtr::get().
3168         (WebKit::WebPage::moveSelectionByOffset): Ditto.
3169         (WebKit::WebPage::selectPositionAtPoint): Ditto.
3170         (WebKit::WebPage::selectPositionAtBoundaryWithDirection): Ditto.
3171         (WebKit::WebPage::requestDictationContext): Ditto.
3172         (WebKit::computeAutocorrectionContext): Ditto.
3173
3174 2014-12-18  Antti Koivisto  <antti@apple.com>
3175
3176         Remove alwaysUseBaselineOfPrimaryFont setting
3177         https://bugs.webkit.org/show_bug.cgi?id=139770
3178
3179         Reviewed by Anders Carlsson.
3180
3181         * Shared/WebPreferencesDefinitions.h:
3182         * WebProcess/WebPage/WebPage.cpp:
3183         (WebKit::WebPage::updatePreferences):
3184
3185 2014-12-18  Adrian Perez de Castro  <aperez@igalia.com>
3186
3187         [GTK] Implement webkit_web_view_is_playing_audio()
3188         https://bugs.webkit.org/show_bug.cgi?id=138918
3189
3190         Reviewed by Carlos Garcia Campos.
3191
3192         Implements webkit_web_view_is_playing_audio(), and overrides
3193         UIClient::isPlayingAudioDidChange() to be able to emit change
3194         notification signals for the new WebKitWebView::is-playing-audio
3195         property.
3196
3197         * UIProcess/API/gtk/WebKitUIClient.cpp:
3198         (isPlayingAudioDidChange): Added.
3199         * UIProcess/API/gtk/WebKitWebView.cpp:
3200         (webkitWebViewIsPlayingAudioChanged): Helper function to emit the
3201         emit the notify::is-playing-audio signal when needed.
3202         (webkitWebViewGetProperty): Handle the WebKitWebView::is-playing-audio
3203         property.
3204         (webkit_web_view_class_init): Install the
3205         WebKitWebView::is-playing-audio property.
3206         (webkit_web_view_is_playing_audio): Added.
3207         * UIProcess/API/gtk/WebKitWebView.h:
3208         * UIProcess/API/gtk/WebKitWebViewPrivate.h:
3209         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add
3210         webkit_web_view_is_playing_audio() to the list of public API
3211         functions.
3212
3213 2014-12-18  Carlos Garcia Campos  <cgarcia@igalia.com>
3214
3215         [GTK] Allow to build with ENABLE_NETWORK_CACHE
3216         https://bugs.webkit.org/show_bug.cgi?id=139728
3217
3218         Reviewed by Antti Koivisto.
3219
3220         Just make it build for now.
3221
3222         * CMakeLists.txt: Add new files to compilation.
3223         * NetworkProcess/NetworkResourceLoader.cpp:
3224         (WebKit::NetworkResourceLoader::didRetrieveCacheEntry): Use
3225         ENABLE(SHAREABLE_RESOURCE) when ShareableResource is used.
3226         * NetworkProcess/cache/NetworkCache.cpp:
3227         (WebKit::decodeStorageEntry): Ditto.
3228         (WebKit::makeCacheKey): Use ENABLE(CACHE_PARTITIONING) for ResourceRequest::cachePartition().
3229         * NetworkProcess/cache/NetworkCache.h:
3230         * NetworkProcess/cache/NetworkCacheStorage.h:
3231         (WebKit::NetworkCacheStorage::Data::isNull): Move implementation
3232         to platform specific files.
3233         * NetworkProcess/cache/NetworkCacheStorageCocoa.mm:
3234         (WebKit::NetworkCacheStorage::Data::isNull): Moved from the header.
3235         * NetworkProcess/cache/NetworkCacheStorageSoup.cpp: Added.
3236         (WebKit::NetworkCacheStorage::Data::Data):
3237         (WebKit::NetworkCacheStorage::Data::data):
3238         (WebKit::NetworkCacheStorage::Data::isNull):
3239         (WebKit::NetworkCacheStorage::open):
3240         (WebKit::NetworkCacheStorage::NetworkCacheStorage):
3241         (WebKit::NetworkCacheStorage::initializeKeyFilter):
3242         (WebKit::NetworkCacheStorage::removeEntry):
3243         (WebKit::NetworkCacheStorage::dispatchRetrieveOperation):
3244         (WebKit::NetworkCacheStorage::dispatchPendingRetrieveOperations):
3245         (WebKit::NetworkCacheStorage::retrieve):
3246         (WebKit::NetworkCacheStorage::store):
3247         (WebKit::NetworkCacheStorage::setMaximumSize):
3248         (WebKit::NetworkCacheStorage::clear):
3249         * PlatformGTK.cmake: Add NetworkCacheStorageSoup.cpp.
3250         * config.h:
3251
3252 2014-12-17  Dan Bernstein  <mitz@apple.com>
3253
3254         <rdar://problem/19282508> WebKitLegacy is unusable due to bad dylib identifier
3255         https://bugs.webkit.org/show_bug.cgi?id=139760
3256
3257         Reviewed by Anders Carlsson.
3258
3259         * Configurations/WebKit2.xcconfig:
3260
3261 2014-12-17  Beth Dakin  <bdakin@apple.com>
3262
3263         Page previews are sometimes sized much smaller than it seems they should be
3264         https://bugs.webkit.org/show_bug.cgi?id=139754
3265         -and corresponding-
3266         rdar://problem/19286550        
3267
3268         Reviewed by Tim Horton.
3269
3270         Increase the minimum size and add in a missing else!!
3271         * UIProcess/mac/WKImmediateActionController.mm:
3272         (-[WKImmediateActionController _preferredPopoverSizeWithPreviewPadding:]):
3273
3274 2014-12-17  Anders Carlsson  <andersca@apple.com>
3275
3276         Ref-ify WebPageProxy and WebProcessProxy creation functions
3277         https://bugs.webkit.org/show_bug.cgi?id=139751
3278
3279         Reviewed by Andreas Kling.
3280
3281         * UIProcess/WebContext.cpp:
3282         (WebKit::WebContext::createNewWebProcess):
3283         * UIProcess/WebPageProxy.cpp:
3284         (WebKit::WebPageProxy::create):
3285         * UIProcess/WebPageProxy.h:
3286         * UIProcess/WebProcessProxy.cpp:
3287         (WebKit::WebProcessProxy::create):
3288         (WebKit::WebProcessProxy::createWebPage):
3289         * UIProcess/WebProcessProxy.h:
3290
3291 2014-12-17  Joseph Pecoraro  <pecoraro@apple.com>
3292
3293         Unreviewed iOS Build Fix after r177459.
3294
3295         * UIProcess/ios/WebInspectorProxyIOS.mm:
3296         (WebKit::WebInspectorProxy::platformInvalidate):
3297         (WebKit::WebInspectorProxy::platformHide):
3298         Add missing WebInspectorProxy platform methods.
3299
3300 2014-12-17  Enrica Casucci  <enrica@apple.com>
3301
3302         [iOS] Define button and action should respect profile settings.
3303         https://bugs.webkit.org/show_bug.cgi?id=139739
3304         rdar://problem/15461887
3305
3306         Reviewed by Joseph Pecoraro.
3307
3308         * UIProcess/ios/WKContentViewInteraction.mm:
3309         (-[WKContentView canPerformAction:withSender:]):
3310         (-[WKContentView _define:]):
3311
3312 2014-12-17  Joseph Pecoraro  <pecoraro@apple.com>
3313
3314         Web Inspector: [Mac] Occosional Crashes Closing Inspector
3315         https://bugs.webkit.org/show_bug.cgi?id=139740
3316
3317         Reviewed by Timothy Hatcher.
3318
3319         * UIProcess/WebPageProxy.cpp:
3320         (WebKit::WebPageProxy::didReceiveEvent):
3321         The WebPageProxy could have gotten destroyed in handling (e.g. keyboard shortcut
3322         to close the Inspector Window), so protect the object to avoid destruction
3323         during handling.
3324
3325         * UIProcess/WebInspectorProxy.h:
3326         * UIProcess/WebPageProxy.cpp:
3327         Add platformInvalidate opportunity for the platform to do invalidation work.
3328
3329         * UIProcess/efl/WebInspectorProxyEfl.cpp:
3330         (WebKit::WebInspectorProxy::platformInvalidate):
3331         * UIProcess/gtk/WebInspectorProxyGtk.cpp:
3332         (WebKit::WebInspectorProxy::platformInvalidate):
3333         Empty implementations, these ports do not need to do anything.
3334
3335         * UIProcess/WebInspectorProxy.h:
3336         * UIProcess/mac/WebInspectorProxyMac.mm:
3337         (WebKit::WebInspectorProxy::closeTimerFired):
3338         (WebKit::WebInspectorProxy::platformDidClose):
3339         (WebKit::WebInspectorProxy::platformInvalidate):
3340         When closing / invalidating make sure we close the WKView to clear client
3341         for any delayed callbacks.
3342
3343 2014-12-17  Chris Dumez  <cdumez@apple.com>
3344
3345         [iOS] Make it possible to toggle FeatureCounter support at runtime
3346         https://bugs.webkit.org/show_bug.cgi?id=139688
3347         <rdar://problem/19266254>
3348
3349         Reviewed by Andreas Kling.
3350
3351         Add private settings API to toggle FeatureCounter support on Safari and
3352         MobileSafari.
3353
3354         * Shared/WebPreferencesDefinitions.h:
3355         * UIProcess/API/C/WKPreferences.cpp:
3356         (WKPreferencesSetFeatureCounterEnabled):
3357         (WKPreferencesGetFeatureCounterEnabled):
3358         * UIProcess/API/C/WKPreferencesRefPrivate.h:
3359         * UIProcess/API/Cocoa/WKPreferences.mm:
3360         (-[WKPreferences _featureCounterEnabled]):
3361         (-[WKPreferences _setFeatureCounterEnabled:]):
3362         * UIProcess/API/Cocoa/WKPreferencesPrivate.h:
3363         * WebProcess/WebPage/WebPage.cpp:
3364         (WebKit::WebPage::updatePreferences):
3365
3366 2014-12-17  Anders Carlsson  <andersca@apple.com>
3367
3368         Clean up SQL statement building in SQLiteIDBCursor
3369         https://bugs.webkit.org/show_bug.cgi?id=139741
3370
3371         Reviewed by Andreas Kling.
3372
3373         This vastly simplifies the code and gets rid of the last
3374         uses of DEPRECATED_DEFINE_STATIC_LOCAL in WebKit2.
3375
3376         * DatabaseProcess/IndexedDB/sqlite/SQLiteIDBCursor.cpp:
3377         (WebKit::buildIndexStatement):
3378         (WebKit::buildObjectStoreStatement):
3379         (WebKit::SQLiteIDBCursor::establishStatement):
3380         (WebKit::getIndexStatement): Deleted.
3381         (WebKit::getObjectStoreStatement): Deleted.
3382
3383 2014-12-17  Andreas Kling  <akling@apple.com>
3384
3385         Purge PassRefPtr from Frame.
3386         <https://webkit.org/b/139731>
3387
3388         Reviewed by Anders Carlsson.
3389
3390         * WebProcess/WebPage/WebFrame.cpp:
3391         (WebKit::WebFrame::createSubframe):
3392
3393 2014-12-17  Dan Bernstein  <mitz@apple.com>
3394
3395         iOS build fix
3396
3397         * UIProcess/ios/PageClientImplIOS.h:
3398         * UIProcess/ios/PageClientImplIOS.mm:
3399         (WebKit::PageClientImpl::PageClient::setTextIndicatorAnimationProgress):
3400
3401 2014-12-17  Carlos Garcia Campos  <cgarcia@igalia.com>
3402
3403         Unreviewed. Fix GTK+ build after r177427.
3404
3405         * UIProcess/API/gtk/PageClientImpl.cpp:
3406         (WebKit::PageClientImpl::setTextIndicatorAnimationProgress):
3407         * UIProcess/API/gtk/PageClientImpl.h:
3408
3409 2014-12-16  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
3410
3411         Unreviewed, EFL build fix since r177427.
3412
3413         * UIProcess/CoordinatedGraphics/WebView.cpp:
3414         (WebKit::WebView::setTextIndicatorAnimationProgress): Added.
3415         * UIProcess/CoordinatedGraphics/WebView.h:
3416
3417 2014-12-16  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
3418
3419         Move WebCore/platform/graphics/surfaces to std::unique_ptr
3420         https://bugs.webkit.org/show_bug.cgi?id=139641
3421
3422         Reviewed by Andreas Kling.
3423
3424         * WebProcess/WebPage/gtk/LayerTreeHostGtk.h:
3425
3426 2014-12-16  Timothy Horton  <timothy_horton@apple.com>
3427
3428         Implement and adopt two new TextIndicator presentation animations
3429         https://bugs.webkit.org/show_bug.cgi?id=139715
3430         <rdar://problem/19237945>
3431
3432         Reviewed by Anders Carlsson.
3433
3434         * UIProcess/API/mac/WKView.mm:
3435         (-[WKView _setTextIndicator:fadeOut:]):
3436         (-[WKView _setTextIndicatorAnimationProgress:]):
3437         (-[WKView _setTextIndicator:fadeOut:animationCompletionHandler:]): Deleted.
3438         * UIProcess/API/mac/WKViewInternal.h:
3439         * UIProcess/PageClient.h:
3440         * UIProcess/WebPageProxy.cpp:
3441         (WebKit::WebPageProxy::WebPageProxy):
3442         (WebKit::WebPageProxy::setTextIndicatorAnimationProgress):
3443         (WebKit::WebPageProxy::performActionMenuHitTestAtLocation):
3444         * UIProcess/WebPageProxy.h:
3445         * UIProcess/mac/PageClientImpl.h:
3446         * UIProcess/mac/PageClientImpl.mm:
3447         (WebKit::PageClientImpl::setTextIndicatorAnimationProgress):
3448         (WebKit::PageClientImpl::didPerformDictionaryLookup):
3449         Remove the completion handler block argument from TextIndicator
3450         installation.
3451         Plumb animation progress through PageClient to TextIndicatorWindow.
3452
3453         * UIProcess/mac/WKActionMenuController.mm:
3454         (-[WKActionMenuController prepareForMenu:withEvent:]):
3455         (-[WKActionMenuController _defaultMenuItemsForDataDetectedText]):
3456         * UIProcess/mac/WKImmediateActionController.mm:
3457         (-[WKImmediateActionController _clearImmediateActionState]):
3458         (-[WKImmediateActionController immediateActionRecognizerWillPrepare:]):
3459         (-[WKImmediateActionController immediateActionRecognizerDidUpdateAnimation:]):
3460         (-[WKImmediateActionController immediateActionRecognizerDidCancelAnimation:]):
3461         (-[WKImmediateActionController immediateActionRecognizerDidCompleteAnimation:]):
3462         (-[WKImmediateActionController _menuItemForDataDetectedText]):
3463         (-[WKImmediateActionController _animationControllerForText]):
3464         Forward immediate action gesture recognizer animation progress
3465         to TextIndicator. Force us to keep the selection when immediate
3466         action popovers steal first responder status from the WebView.
3467
3468         * WebProcess/WebPage/WebPage.h:
3469         * WebProcess/WebPage/WebPage.messages.in:
3470         * WebProcess/WebPage/mac/WebPageMac.mm:
3471         (WebKit::textIndicatorTransitionForActionMenu):
3472         (WebKit::WebPage::performActionMenuHitTestAtLocation):
3473         Factor out the presentation animation decision code.
3474         For immediate actions, of the Lookup range is equal to the
3475         selection range, use a Crossfade animation; otherwise, use a FadeIn
3476         animation.
3477         Push whether the actionMenuHitTest is for an immediate action
3478         or a menu to the Web process, to make the presentation animation
3479         decision code live entirely in the Web process.
3480         Avoid extracting encoded image data if we know we're doing
3481         an immediate action and will never need it.
3482
3483 2014-12-16  Anders Carlsson  <andersca@apple.com>
3484
3485         Fix lambda and std::function formatting
3486   &nbs