[GTK] [CMake] Ensure that the autotools build and the CMake install the same files
[WebKit-https.git] / Source / WebKit2 / ChangeLog
1 2014-01-05  Martin Robinson  <mrobinson@igalia.com>
2
3         [GTK] [CMake] Ensure that the autotools build and the CMake install the same files
4         https://bugs.webkit.org/show_bug.cgi?id=116379
5
6         Reviewed by Gustavo Noronha Silva.
7
8         * CMakeLists.txt: Install the plugin process to the new LIBEXEC directory, which
9         for non-GTK+ platforms is the same as EXEC.
10         * PlatformGTK.cmake: Install API headers, gir files, and the pkg-config file. Move
11         a couple installed and generated headers to the installed headers list. Rename the
12         headers list to be consistent with the WebKit1 build. No longer use a variable for
13         the name of the plugin process, as it's unnecessary.
14
15 2014-01-05  Carlos Garcia Campos  <cgarcia@igalia.com>
16
17         [GTK] Stop installing WebKit2 C API headers
18         https://bugs.webkit.org/show_bug.cgi?id=126489
19
20         Reviewed by Martin Robinson.
21
22         We are not actually maintaining the API/ABI compatibility of the
23         WebKit2 C API, it's only used internally by the public GTK+ API
24         and nobody is using it.
25
26         * GNUmakefile.am:
27         * GNUmakefile.list.am:
28
29 2014-01-05  Gavin Barraclough  <barraclough@apple.com>
30
31         Move process suppression of WebProcess to Page (from UIProcess)
32         https://bugs.webkit.org/show_bug.cgi?id=126480
33
34         Reviewed by Sam Weinig.
35
36         Let each page take a UserActivity rather than having to coalesce this state, and take different activity
37         tokens for normal visibility and suppression disabled, so we can see why the process is not suppressed.
38
39         * Shared/mac/ChildProcessMac.mm:
40         (WebKit::ChildProcess::platformInitialize):
41             - Don't start with process supression disabled; this is unnecessary,
42               message from the UIProcess should wake.
43         * UIProcess/mac/WebProcessProxyMac.mm:
44         (WebKit::WebProcessProxy::updateProcessSuppressionState):
45             - Don't send explicit messages to supress the WebProcess, it handles this for itself.
46         * WebProcess/WebPage/WebPage.cpp:
47         (WebKit::WebPage::WebPage):
48             - call setIsVisuallyIdle.
49         (WebKit::WebPage::setViewState):
50             - call setIsVisuallyIdle.
51         (WebKit::WebPage::updatePreferences):
52             - Use m_suppressionDisabled to disable supression if the WebPreference is set.
53         (WebKit::WebPage::setIsVisuallyIdle):
54             - setThrottled -> setIsVisuallyIdle.
55         * WebProcess/WebPage/WebPage.h:
56             - setThrottled -> setIsVisuallyIdle, added m_suppressionDisabled.
57         * WebProcess/WebProcess.cpp:
58         * WebProcess/WebProcess.h:
59         (WebKit::WebProcess::shouldForceScreenFontSubstitution):
60             - Removed setProcessSuppressionEnabled - WebPage now detects the supression change.
61
62 2014-01-04  Martin Robinson  <mrobinson@igalia.com>
63
64         [GTK] [CMake] Improve the way we locate gobject-introspection
65         https://bugs.webkit.org/show_bug.cgi?id=126452
66
67         Reviewed by Philippe Normand.
68
69         * PlatformGTK.cmake: Use the new introspection variables.
70
71 2014-01-04  Zan Dobersek  <zdobersek@igalia.com>
72
73         Explicitly use the std:: nested name specifier when using std::pair, std::make_pair
74         https://bugs.webkit.org/show_bug.cgi?id=126439
75
76         Reviewed by Andreas Kling.
77
78         Instead of relying on std::pair and std::make_pair symbols being present in the current scope
79         through the pair and make_pair symbols, the std:: specifier should be used explicitly.
80
81         * Shared/mac/ArgumentCodersMac.mm:
82         (IPC::encode):
83         * UIProcess/Notifications/WebNotificationManagerProxy.cpp:
84         (WebKit::WebNotificationManagerProxy::show):
85         (WebKit::WebNotificationManagerProxy::cancel):
86         (WebKit::WebNotificationManagerProxy::didDestroyNotification):
87         * UIProcess/Notifications/WebNotificationManagerProxy.h:
88         * UIProcess/WebContext.cpp:
89         (WebKit::WebContext::createNewWebProcess):
90         * UIProcess/WebContext.h:
91
92 2014-01-03  Piotr Grad  <p.grad@samsung.com>
93
94         Build brake after 161045 on EFL port with WebKit2 and gcc 4.6.3
95         https://bugs.webkit.org/show_bug.cgi?id=126383
96
97         Reviewed by Sam Weinig.
98
99         Class identifier was missing.
100
101         * DatabaseProcess/DatabaseProcess.h:
102         * NetworkProcess/NetworkProcess.h:
103         * PluginProcess/PluginProcess.h:
104         * Shared/mac/CookieStorageShim.h:
105         * UIProcess/Plugins/PluginProcessManager.h:
106         * UIProcess/WebPageProxy.cpp:
107         * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
108         * WebProcess/WebProcess.h:
109
110 2014-01-03  Seokju Kwon  <seokju@webkit.org>
111
112         Unreviewed build fix on non-Mac port
113
114         * Shared/API/c/WKDeprecatedFunctions.cpp: Add ENABLE(MAC) guard for "WKContextPrivateMac.h".
115
116 2014-01-03  Gavin Barraclough  <barraclough@apple.com>
117
118         Simplify process suppression state calculation
119         https://bugs.webkit.org/show_bug.cgi?id=126473
120
121         Reviewed by Geoffrey Garen & Sam Weinig.
122
123         Don't check the application occlusion state (this is covered by the pages already),
124         and let the page check visually idle. Remove layers of functions.
125
126         * UIProcess/Network/NetworkProcessProxy.cpp:
127         (WebKit::NetworkProcessProxy::didFinishLaunching):
128             - Let the network process nap if all processes in its context are napping.*
129               (* Except not really. We currently leak a boost onto the process anyway.)
130         * UIProcess/Plugins/PluginProcessProxy.cpp:
131         (WebKit::PluginProcessProxy::didFinishLaunching):
132             - Let the plugin process nap if all processes in all contexts are napping.
133         * UIProcess/WebContext.h:
134             - Remove canEnableProcessSuppressionForNetworkProcess & canEnableProcessSuppressionForWebProcess
135             - canEnableProcessSuppressionForGlobalChildProcesses -> processSuppressionIsEnabledForAllContexts
136             - combine updateProcessSuppressionStateOfChildProcesses & updateProcessSuppressionStateOfGlobalChildProcesses
137                 -> updateProcessSuppressionState
138         * UIProcess/WebPageProxy.cpp:
139         (WebKit::WebPageProxy::isProcessSuppressible):
140             - WebProcess is supressible if IsVisuallyIdle.
141         (WebKit::WebPageProxy::viewStateDidChange):
142             - WebProcessProxy should updateProcessSuppressionState when IsVisuallyIdle changes.
143         * UIProcess/WebPageProxy.h:
144         * UIProcess/WebProcessProxy.cpp:
145         (WebKit::WebProcessProxy::createWebPage):
146         (WebKit::WebProcessProxy::addExistingWebPage):
147         (WebKit::WebProcessProxy::pageSuppressibilityChanged):
148         (WebKit::WebProcessProxy::pagePreferencesChanged):
149             - pageIsProcessSuppressible -> isProcessSuppressible
150         * UIProcess/WebProcessProxy.h:
151         * UIProcess/mac/WebContextMac.mm:
152         (WebKit::WebContext::updateProcessSuppressionState):
153             - Update supression state of network & plugin processes.
154         (WebKit::WebContext::processSuppressionIsEnabledForAllContexts):
155             - Changed iterator style, made a static member of WebContext.
156         * UIProcess/mac/WebProcessProxyMac.mm:
157         (WebKit::WebProcessProxy::updateProcessSuppressionState):
158             - Ask the WebContext to update supression state.
159         * UIProcess/mac/WindowServerConnection.h:
160         * UIProcess/mac/WindowServerConnection.mm:
161         (WebKit::WindowServerConnection::windowServerConnectionStateChanged):
162         (WebKit::WindowServerConnection::WindowServerConnection):
163             - Remove application occlusion state.
164
165 2014-01-03  Tim Horton  <timothy_horton@apple.com>
166
167         [iOS] [WK2] TileController creates all tiles on first paint, making it slow and consuming lots of memory
168         https://bugs.webkit.org/show_bug.cgi?id=126457
169
170         Reviewed by Simon Fraser.
171
172         Instead of making all of the tiles all of the time, we should use the
173         view-exposed-rect mechanism to inform TileController about what portion
174         of the WKContentView is currently exposed by the WKScrollView.
175
176         * UIProcess/API/ios/WKContentView.h:
177         * UIProcess/API/ios/WKContentView.mm:
178         (-[WKContentView setViewportSize:]):
179         (-[WKContentView didFinishScrollTo:]):
180         (-[WKContentView didScrollTo:]):
181         Inform the WebPageProxy that our exposed rect changed.
182
183         * UIProcess/API/ios/WKView.mm:
184         (-[WKView scrollViewDidScroll:]):
185         Inform the WKContentView that we've scrolled at all.
186         Rename the existing WKContentView didScrollTo: to didFinishScrollTo:,
187         because it is expected to only fire when a scroll lands. Add didScrollTo:,
188         which fires continually as scrolling progresses.
189
190         * UIProcess/WebPageProxy.cpp:
191         (WebKit::WebPageProxy::WebPageProxy):
192         (WebKit::WebPageProxy::viewExposedRectChanged):
193         (WebKit::WebPageProxy::exposedRectChangedTimerFired):
194         * UIProcess/WebPageProxy.h:
195         (WebKit::WebPageProxy::viewExposedRect):
196         * UIProcess/mac/WebPageProxyMac.mm:
197         Move view-exposed-rect stuff to WebPageProxy so it can be built on both
198         Mac and iOS, and un-!PLATFORM(IOS) some of the related members.
199
200         * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
201         * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
202         (WebKit::RemoteLayerTreeDrawingArea::RemoteLayerTreeDrawingArea):
203         (WebKit::RemoteLayerTreeDrawingArea::setExposedRect):
204         (WebKit::RemoteLayerTreeDrawingArea::setClipsToExposedRect):
205         (WebKit::RemoteLayerTreeDrawingArea::updateScrolledExposedRect):
206         (WebKit::RemoteLayerTreeDrawingArea::updateMainFrameClipsToExposedRect):
207         (WebKit::RemoteLayerTreeDrawingArea::mainFrameTiledBacking):
208         Steal TiledCoreAnimationDrawingArea's exposed-rect code.
209         Note that on iOS, we don't need to manually offset the exposed rect by
210         the scroll position, because the scroll position is already baked into
211         the exposed rect, and WebCore's notion of the scroll position will be
212         inaccurate until the scroll lands.
213
214 2014-01-03  Simon Fraser  <simon.fraser@apple.com>
215
216         Give all PlatformCALayers a PlatformLayerID, not just remote ones
217         https://bugs.webkit.org/show_bug.cgi?id=126466
218
219         Reviewed by Tim Horton.
220
221         The ScrollingStateTree has references to both GraphicsLayers and PlatformLayers
222         which is confusing, and is necessary because the underlying PlatformLayer
223         inside a GraphicsLayer can change. In order to hide some of this complexity,
224         expose GraphicsLayer::primaryLayerID() which is a PlatformLayerID that clients
225         can hold onto to test for underlying layer swapping.
226         
227         GraphicsLayerCARemote and PlatformCALayerRemote can now just use the
228         primaryLayerID() function exposed via the base class.
229
230         * WebProcess/WebPage/mac/GraphicsLayerCARemote.cpp:
231         * WebProcess/WebPage/mac/GraphicsLayerCARemote.h:
232         * WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
233         (PlatformCALayerRemote::PlatformCALayerRemote):
234         (PlatformCALayerRemote::recursiveBuildTransaction):
235         * WebProcess/WebPage/mac/PlatformCALayerRemote.h:
236
237 2014-01-03  Dan Bernstein  <mitz@apple.com>
238
239         [Cocoa] Expose session state API
240         https://bugs.webkit.org/show_bug.cgi?id=126463
241
242         Reviewed by Sam Weinig.
243
244         * UIProcess/API/Cocoa/WKBrowsingContextController.h: Declared new property and method.
245         * UIProcess/API/Cocoa/WKBrowsingContextController.mm:
246         (-[WKBrowsingContextController sessionState]): Added. Calls WebPageProxy::sessionStateData.
247         (-[WKBrowsingContextController restoreFromSessionState:]): Added. Calls
248         WebPageProxy::restoreFromSessionState.
249
250 2014-01-03  Gavin Barraclough  <barraclough@apple.com>
251
252         Remove SPI, user default for disabling process suppression
253         https://bugs.webkit.org/show_bug.cgi?id=126458
254
255         Reviewed by Sam Weinig.
256
257         * Shared/API/c/WKDeprecatedFunctions.cpp:
258         (WKContextGetProcessSuppressionEnabled):
259         (WKContextSetProcessSuppressionEnabled):
260             - depracated SPI.
261         * UIProcess/API/C/mac/WKContextPrivateMac.mm:
262             - depracated SPI.
263         * UIProcess/WebContext.cpp:
264         (WebKit::WebContext::WebContext):
265             - removed m_processSuppressionEnabled.
266         * UIProcess/WebContext.h:
267             - removed setProcessSuppressionEnabled, processSuppressionEnabled implementation,
268               processSuppressionEnabledChanged, m_processSuppressionEnabled.
269         * UIProcess/mac/WebContextMac.mm:
270         (WebKit::WebContext::platformInitialize):
271             - removed m_processSuppressionEnabled.
272         (WebKit::WebContext::processSuppressionEnabled):
273             - check whether all pages in all processes are suppressible.
274         (WebKit::WebContext::canEnableProcessSuppressionForNetworkProcess):
275             - removed call to omitProcessSuppression, m_processSuppressionEnabled -> processSuppressionEnabled().
276         (WebKit::WebContext::canEnableProcessSuppressionForWebProcess):
277             - removed call to omitProcessSuppression, processSuppressionEnabled (we don't care if a page in a difference process is not suppresible).
278         (WebKit::WebContext::canEnableProcessSuppressionForGlobalChildProcesses):
279             - removed call to omitProcessSuppression, s_processSuppressionEnabledForAllContexts -> processSuppressionIsEnabledForAllContexts().
280
281 2014-01-03  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
282
283         [WK2][CoordinatedGraphics] Removing repeated protected keyword in WebView
284         https://bugs.webkit.org/show_bug.cgi?id=126462
285
286         Reviewed by Simon Fraser.
287
288         * UIProcess/CoordinatedGraphics/WebView.h:
289
290 2014-01-03  Carlos Garcia Campos  <cgarcia@igalia.com>
291
292         Define WebProcess::usesNetworkProcess unconditionally
293         https://bugs.webkit.org/show_bug.cgi?id=126208
294
295         Reviewed by Martin Robinson.
296
297         Returning false when network process is not enabled like
298         WebContext does. This way we reduce the amount of ifdefs used when
299         checking whether network process is in use.
300
301         * UIProcess/gtk/WebContextGtk.cpp:
302         (WebKit::WebContext::platformInitializeWebProcess): Remove #ifdef
303         and only setup network features when not using network process.
304         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
305         (WebKit::WebPlatformStrategies::isAvailable): Remove #ifdef.
306         * WebProcess/WebProcess.cpp:
307         (WebKit::WebProcess::downloadManager):
308         (WebKit::WebProcess::shouldTerminate):
309         (WebKit::WebProcess::usesNetworkProcess):
310         * WebProcess/WebProcess.h:
311         * WebProcess/mac/WebProcessMac.mm:
312         (WebKit::WebProcess::platformSetCacheModel): Remove #ifdef.
313         (WebKit::WebProcess::platformInitializeWebProcess): Ditto.
314         * WebProcess/soup/WebProcessSoup.cpp:
315         (WebKit::WebProcess::platformSetCacheModel): Ditto.
316         (WebKit::WebProcess::platformClearResourceCaches): Ditto.
317         (WebKit::WebProcess::platformInitializeWebProcess): Ditto.
318         (WebKit::WebProcess::platformTerminate): Only remove the language
319         observer when not using network process.
320         (WebKit::WebProcess::setIgnoreTLSErrors): Assert when this is
321         called with network process enabled.
322         (WebKit::WebProcess::allowSpecificHTTPSCertificateForHost): Ditto.
323
324 2014-01-03  Jinwoo Song  <jinwoo7.song@samsung.com>
325
326         VibrationPattern should allocate an single vector instance for single integer input
327         https://bugs.webkit.org/show_bug.cgi?id=126417
328
329         Reviewed by Gyuyoung Kim.
330
331         Fix a vibration unit test regression after r161139. Also remove unnecessary test cases. 
332
333         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
334         (EWK2ViewTest::loadVibrationHTMLString):
335         (TEST_F):
336
337 2014-01-02  Carlos Garcia Campos  <cgarcia@igalia.com>
338
339         [GTK] Add API to WebKitResponsePolicyDecision to check if the MIME type can be shown
340         https://bugs.webkit.org/show_bug.cgi?id=124652
341
342         Reviewed by Martin Robinson.
343
344         * UIProcess/API/gtk/WebKitPolicyClient.cpp:
345         (decidePolicyForResponse): Pass canShowMIMEType to
346         webkitResponsePolicyDecisionCreate.
347         * UIProcess/API/gtk/WebKitResponsePolicyDecision.cpp:
348         (webkit_response_policy_decision_is_mime_type_supported): Return
349         canShowMIMEType.
350         (webkitResponsePolicyDecisionCreate): Set the canShowMIMEType
351         member from the given parameter.
352         * UIProcess/API/gtk/WebKitResponsePolicyDecision.h:
353         * UIProcess/API/gtk/WebKitResponsePolicyDecisionPrivate.h:
354         * UIProcess/API/gtk/WebKitWebView.cpp:
355         (webkitWebViewDecidePolicy): Use the new API instead of
356         webkit_web_view_can_show_mime_type() since it's more efficient.
357         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbol.
358         * UIProcess/API/gtk/tests/TestWebKitPolicyClient.cpp:
359         (testResponsePolicy): Test the new API.
360
361 2014-01-02  Carlos Garcia Campos  <cgarcia@igalia.com>
362
363         REGRESSION(r160304): [GTK] Disable libtool fast install
364         https://bugs.webkit.org/show_bug.cgi?id=126381
365
366         Reviewed by Martin Robinson.
367
368         Remove -no-fast-install ld flag since fast install is now disabled
369         globally.
370
371         * GNUmakefile.am:
372         * UIProcess/API/gtk/tests/GNUmakefile.am:
373
374 2014-01-02  Ryuan Choi  <ryuan.choi@samsung.com>
375
376         [EFL][WK2] Remove defaultPageGroupIdentifier not to make the confusion
377         https://bugs.webkit.org/show_bug.cgi?id=126249
378
379         Reviewed by Gyuyoung Kim.
380
381         ewk_page_group_create always creates new page group,
382         but the identifiers of page groups will be same as "defaultPageGroupIdentifier" when passed 0 or "".
383         It is unnecessary and just makes the confusion.
384
385         This patch let WebPageGroup generate unique identifier if 0 or "" is passed as argument.
386
387         * UIProcess/API/efl/ewk_page_group.cpp:
388         (EwkPageGroup::create):
389         * UIProcess/API/efl/ewk_page_group_private.h:
390
391 2014-01-02  Zan Dobersek  <zdobersek@igalia.com>
392
393         [GTK] Switch from WTF::Function to std::function in WebProcessTest
394         https://bugs.webkit.org/show_bug.cgi?id=126397
395
396         Reviewed by Anders Carlsson.
397
398         Use std::function<> and std::bind() instead of WTF::Function and WTF::bind,
399         following the effort of using STL concepts where possible.
400
401         * UIProcess/API/gtk/tests/WebProcessTest.cpp:
402         (WebProcessTest::add):
403         * UIProcess/API/gtk/tests/WebProcessTest.h:
404
405 2014-01-02  Gavin Barraclough  <barraclough@apple.com>
406
407         Refactor NSActivity handling code from ChildProcess to UserActivity
408         https://bugs.webkit.org/show_bug.cgi?id=126330
409
410         Reviewed by Sam Weinig.
411
412         UserActivity is a mechanism to express to the operating system (where appropriate)
413         that a user initiated activity is taking place, and as such that resources should be
414         made available to the process accordingly.
415
416         Currently we hold a single NSActivity, at the WebKit layer. This refactoring allows us
417         to hold different activity tokens for different user actions (which simplifies the
418         handling, and aides debugging since the token can more accurately express the activity
419         taking place), and also will allow us to avoid the layering difficulty of calling back
420         up the stack to WebKit to register that an activity is taking place.
421
422         * Shared/ChildProcess.cpp:
423         (WebKit::ChildProcess::ChildProcess):
424             - removed fields to directly manage NSActivity, use UserActivity objects instead.
425         * Shared/ChildProcess.h:
426         (WebKit::ChildProcess::processSuppressionEnabled):
427             - changed to initialize new fields.
428         * Shared/mac/ChildProcessMac.mm:
429         (WebKit::ChildProcess::setProcessSuppressionEnabled):
430             - implemented in terms of UserActivity m_processSuppressionDisabled.
431         (WebKit::ChildProcess::incrementActiveTaskCount):
432             - implemented in terms of UserActivity m_activeTasks.
433         (WebKit::ChildProcess::decrementActiveTaskCount):
434             - implemented in terms of UserActivity m_activeTasks.
435         (WebKit::ChildProcess::platformInitialize):
436             - implemented in terms of UserActivity m_processSuppressionDisabled.
437
438 2014-01-02  Gavin Barraclough  <barraclough@apple.com>
439
440         Propagate WindowServer modifications state to WebProcess
441         https://bugs.webkit.org/show_bug.cgi?id=126356
442
443         Reviewed by Sam Weinig.
444
445         This will be necessary to move control of process suppression to the WebProcess.
446         IsVisuallyIdle implies the process has stopped painting, or painted rects are
447         occluded and not actually being composited. State is provided on a per
448         WindowServer connection basis, and as such may produce (safe) false positives.
449
450         * Shared/ViewState.h:
451             - added IsVisuallyIdle.
452         * UIProcess/API/mac/PageClientImpl.h:
453         * UIProcess/API/mac/PageClientImpl.mm:
454         (WebKit::PageClientImpl::isVisuallyIdle):
455             - added, on mac checks WindowServerConnection.
456         * UIProcess/PageClient.h:
457         (WebKit::PageClient::isVisuallyIdle):
458             - base implementation purely based on isViewVisible.
459         * UIProcess/WebContext.cpp:
460         (WebKit::WebContext::windowServerConnectionStateChanged):
461             - broadcast the state change.
462         * UIProcess/WebContext.h:
463         * UIProcess/WebPageProxy.cpp:
464         (WebKit::WebPageProxy::updateViewState):
465         (WebKit::WebPageProxy::viewStateDidChange):
466             - propagate IsVisuallyIdle.
467         * UIProcess/WebProcessProxy.cpp:
468         (WebKit::WebProcessProxy::windowServerConnectionStateChanged):
469             - broadcast the state change.
470         * UIProcess/WebProcessProxy.h:
471             - add windowServerConnectionStateChanged.
472         * UIProcess/mac/WebContextMac.mm:
473         (WebKit::WebContext::updateProcessSuppressionStateOfGlobalChildProcesses):
474             - moved from static in fle to static member of class.
475         (WebKit::WebContext::platformInitialize):
476             - no need to enableOcclusionNotifications.
477         (WebKit::WebContext::canEnableProcessSuppressionForNetworkProcess):
478         (WebKit::WebContext::canEnableProcessSuppressionForWebProcess):
479         (WebKit::WebContext::canEnableProcessSuppressionForGlobalChildProcesses):
480             - changed to call WindowServerConnection.
481         (WebKit::WebContext::processSuppressionEnabledChanged):
482             - don't remove/reregister occlusion notifications.
483         * UIProcess/mac/WindowServerConnection.h: Added.
484         (WebKit::WindowServerConnection::applicationIsOccluded):
485         (WebKit::WindowServerConnection::applicationWindowModificationsHaveStopped):
486             - accessors.
487         * UIProcess/mac/WindowServerConnection.mm: Added.
488         (WebKit::WindowServerConnection::applicationBecameOccluded):
489         (WebKit::WindowServerConnection::applicationWindowModificationsStopped):
490         (WebKit::WindowServerConnection::applicationBecameVisible):
491         (WebKit::WindowServerConnection::applicationWindowModificationsStarted):
492             - handle notifications from the WindowServer.
493         (WebKit::WindowServerConnection::windowServerConnectionStateChanged):
494             - broadcast the state change.
495         (WebKit::WindowServerConnection::shared):
496             - accessor for singleton object.
497         (WebKit::WindowServerConnection::WindowServerConnection):
498             - constructor inizializes fields & register notification handlers.
499         * WebKit2.xcodeproj/project.pbxproj:
500             - added new files.
501         * config.h:
502             - added HAVE_WINDOW_SERVER_OCCLUSION_NOTIFICATIONS.
503
504 2014-01-02  Gavin Barraclough  <barraclough@apple.com>
505
506         Remove WindowIsVisible
507         https://bugs.webkit.org/show_bug.cgi?id=126270
508
509         Reviewed by Tim Horton.
510
511         We currently track visibility in two ways - ViewState::IsVisible and ViewState::WindowIsVisible.
512         The latter detects that the content is hidden in fewer cases than the former, and as such, the
513         former is always preferable.
514
515         This affects the hidden state provided to FocusController::contentAreaDidShowOrHide and to
516         Plugin::windowVisibilityChanged.
517
518         * Shared/ViewState.h:
519             - remove WindowIsVisible.
520         * UIProcess/API/mac/PageClientImpl.h:
521         * UIProcess/API/mac/PageClientImpl.mm:
522             - remove isWindowVisible.
523         * UIProcess/API/mac/WKView.mm:
524         (-[WKView viewDidMoveToWindow]):
525         (-[WKView _windowDidMiniaturize:]):
526         (-[WKView _windowDidDeminiaturize:]):
527         (-[WKView _windowDidOrderOffScreen:]):
528         (-[WKView _windowDidOrderOnScreen:]):
529             - remove ViewState::WindowIsVisible.
530         * UIProcess/PageClient.h:
531             - remove isWindowVisible.
532         * UIProcess/WebPageProxy.cpp:
533         (WebKit::WebPageProxy::updateViewState):
534             - remove handling of ViewState::WindowIsVisible.
535         * WebProcess/Plugins/PluginView.cpp:
536         (WebKit::PluginView::setIsVisible):
537         (WebKit::PluginView::didInitializePlugin):
538         * WebProcess/Plugins/PluginView.h:
539             - setWindowIsVisible -> setIsVisible.
540         * WebProcess/WebPage/WebPage.cpp:
541         (WebKit::WebPage::WebPage):
542         (WebKit::WebPage::setViewIsVisible):
543         (WebKit::WebPage::setViewState):
544         (WebKit::WebPage::windowAndWebPageAreFocused):
545         * WebProcess/WebPage/WebPage.h:
546         (WebKit::WebPage::isVisible):
547             - remove m_windowIsVisible, setWindowIsVisible (implementation moved to setViewIsVisible).
548
549 2014-01-02  Gavin Barraclough  <barraclough@apple.com>
550
551         Refactor ViewState handling for drawing area / plugins
552         https://bugs.webkit.org/show_bug.cgi?id=126272
553
554         Reviewed by Tim Horton.
555
556         Instead of all ViewState changes being handled by the WebPage, notify the DrawingArea & PluginView to better encapsulate.
557
558         * WebProcess/Plugins/PluginView.cpp:
559         (WebKit::PluginView::viewStateDidChange):
560         (WebKit::PluginView::platformViewStateDidChange):
561             - added, handle changes in ViewState relevant to PluginView.
562         (WebKit::PluginView::didInitializePlugin):
563             - helper function removed.
564         * WebProcess/Plugins/PluginView.h:
565             - added/removed function declarations.
566         * WebProcess/WebPage/DrawingArea.h:
567         (WebKit::DrawingArea::viewStateDidChange):
568             - declare viewStateDidChange.
569         * WebProcess/WebPage/WebPage.cpp:
570         (WebKit::WebPage::setActive):
571             - no need to notify plugin.
572         (WebKit::WebPage::setViewIsVisible):
573             - no need to notify drawing area.
574         (WebKit::WebPage::setViewState):
575             - send viewStateDidChange to drawing area / plugin.
576         (WebKit::WebPage::setWindowIsVisible):
577             - no need to notify plugin.
578         * WebProcess/WebPage/WebPage.h:
579         (WebKit::WebPage::layerHostingMode):
580             - removed setLayerHostingMode.
581         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
582             - declare viewStateDidChange.
583         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
584         (WebKit::TiledCoreAnimationDrawingArea::viewStateDidChange):
585             - added, handle changes in ViewState relevant to DrawingArea.
586
587 2014-01-02  Alexey Proskuryakov  <ap@apple.com>
588
589         Merge didMoveOnscreen / page visibility to isVisible
590         https://bugs.webkit.org/show_bug.cgi?id=126268
591
592         Build fix.
593
594         * UIProcess/WebContext.h: Removed some accidental input.
595
596 2014-01-02  Gavin Barraclough  <barraclough@apple.com>
597
598         Merge didMoveOnscreen / page visibility to isVisible
599         https://bugs.webkit.org/show_bug.cgi?id=126268
600
601         Reviewed by Tim Horton.
602
603         The onscreen state most closely tracks view visibility (though currently
604         also tracks a mix of in-window state). Make more consistent, simplify,
605         and move all animation suspension logic to Page, so it can be controlled
606         by the PageThrottler.
607
608         * WebProcess/WebPage/WebPage.cpp:
609         (WebKit::WebPage::WebPage):
610         (WebKit::WebPage::setViewIsVisible):
611             - updateVisibilityState -> setIsVisible.
612         (WebKit::WebPage::setIsInWindow):
613             - remove redundant willMoveOffscreen/didMoveOnscreen calls - this is handled
614               by setIsVisible.
615         (WebKit::WebPage::setMayStartMediaWhenInWindow):
616             - isOnscreen -> isInWindow. We start media when the view is in a window, not
617               when the view is visible.
618         (WebKit::WebPage::setVisibilityStatePrerender):
619             - setVisibilityState -> setIsPrerender.
620
621 2013-12-23  Oliver Hunt  <oliver@apple.com>
622
623         Refactor PutPropertySlot to be aware of custom properties
624         https://bugs.webkit.org/show_bug.cgi?id=126187
625
626         Reviewed by Antti Koivisto.
627
628         Update for new method signatures.
629
630         * WebProcess/Plugins/Netscape/NPJSObject.cpp:
631         (WebKit::NPJSObject::setProperty):
632
633 2014-01-02  Simon Fraser  <simon.fraser@apple.com>
634
635         Add AsyncScrollingCoordinator, which is a base class for threaded and future remote ScrollingCoordinators
636         https://bugs.webkit.org/show_bug.cgi?id=126389
637
638         Reviewed by Tim Horton.
639         
640         Add AsyncScrollingCoordinator, a ScrollingCoordinator that knows about ScrollingStateTrees
641         and ScrollingTrees, but leaves it up to subclasses to decide when and how to commit.
642         
643         * WebProcess/WebPage/EventDispatcher.cpp:
644         (WebKit::EventDispatcher::addScrollingTreeForPage): The ScrollingTree is exposed on
645         AsyncScrollingCoordinator now, not ScrollingCoordinator, so we have to cast here.
646         * WebProcess/WebPage/WebPage.cpp: m_useThreadedScrolling -> m_useAsyncScrolling terminology change.
647         (WebKit::WebPage::WebPage):
648         (WebKit::WebPage::~WebPage):
649         * WebProcess/WebPage/WebPage.h:
650         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
651         (WebKit::TiledCoreAnimationDrawingArea::updatePreferences): Cast to AsyncScrollingCoordinator in order
652         to get to the ScrollingTree.
653
654 2014-01-01  Simon Fraser  <simon.fraser@apple.com>
655
656         Create a ThreadedScrollingTree subclass of ScrollingTree, and push all knowledge of the scrolling thread into it
657         https://bugs.webkit.org/show_bug.cgi?id=126362
658
659         Reviewed by Sam Weinig.
660
661         Eventually we'll have a ScrollingTree in situations where there is no scrolling
662         thread, so make the ScrollingTree base class thread-agnostic (but threadsafe),
663         and subclass it in ThreadedScrollingTree for scrolling-thread-specific functionality.
664         
665         The ScrollingTree base class also no longer needs to know about the
666         ScrollingCoordinator.
667
668         ScrollingCoordinatorMac creates a ThreadedScrollingTree.
669
670         * WebProcess/WebPage/EventDispatcher.cpp:
671         (WebKit::EventDispatcher::addScrollingTreeForPage):
672         (WebKit::EventDispatcher::wheelEvent):
673         * WebProcess/WebPage/EventDispatcher.h:
674
675 2014-01-01  Simon Fraser  <simon.fraser@apple.com>
676
677         Add a typedef for PlatformLayerID on GraphicsLayer, and migrate RemoteLayerTreeTransaction to use it
678         https://bugs.webkit.org/show_bug.cgi?id=126346
679
680         Reviewed by Tim Horton.
681         
682         Remote scrolling tree code is soon going to use RemoteLayerTreeTransaction::LayerID,
683         so it makes more sense to put this layerID type on GraphicsLayer as
684         GraphicsLayer::PlatformLayerID.
685         
686         Also add some type cast macros for PlatformCALayer and subclasses, and use them
687         where appropriate.
688
689         * Shared/mac/RemoteLayerTreePropertyApplier.h:
690         * Shared/mac/RemoteLayerTreeTransaction.h:
691         (WebKit::RemoteLayerTreeTransaction::rootLayerID):
692         (WebKit::RemoteLayerTreeTransaction::changedLayers):
693         (WebKit::RemoteLayerTreeTransaction::destroyedLayers):
694         * Shared/mac/RemoteLayerTreeTransaction.mm:
695         (WebKit::RemoteLayerTreeTransaction::decode):
696         (WebKit::RemoteLayerTreeTransaction::setRootLayerID):
697         (WebKit::RemoteLayerTreeTransaction::setDestroyedLayerIDs):
698         (WebKit::RemoteLayerTreeTextStream::operator<<):
699         (WebKit::dumpChangedLayers):
700         (WebKit::RemoteLayerTreeTransaction::description):
701         * UIProcess/mac/RemoteLayerTreeHost.h:
702         * UIProcess/mac/RemoteLayerTreeHost.mm:
703         (WebKit::RemoteLayerTreeHost::commit):
704         (WebKit::RemoteLayerTreeHost::getLayer):
705         * WebProcess/WebPage/mac/GraphicsLayerCARemote.cpp:
706         (WebKit::GraphicsLayerCARemote::primaryLayerID):
707         * WebProcess/WebPage/mac/GraphicsLayerCARemote.h:
708         * WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
709         (generateLayerID):
710         * WebProcess/WebPage/mac/PlatformCALayerRemote.h:
711         (WebKit::PlatformCALayerRemote::layerID):
712         * WebProcess/WebPage/mac/RemoteLayerTreeContext.h:
713
714 2014-01-01  Martin Robinson  <mrobinson@igalia.com>
715
716         [GTK] [CMake] Fix the WEBKIT_SRC_DIR define when building the WebKit2 GObject API unit tests
717         https://bugs.webkit.org/show_bug.cgi?id=126350
718
719         Reviewed by Carlos Garcia Campos.
720
721         * UIProcess/API/gtk/tests/CMakeLists.txt: Fix the define.
722
723 2014-01-01  Martin Robinson  <mrobinson@igalia.com>
724
725         [GTK] Rename libtestnetscapeplugin to libTestNetscapePlugin
726         https://bugs.webkit.org/show_bug.cgi?id=126349
727
728         Reviewed by Carlos Garcia Campos.
729
730         All CMake ports use "libTestNetscapePlugin," so choosing the same
731         name in the autotools port will make the transition easier.
732
733         * UIProcess/API/gtk/tests/TestWebKitWebContext.cpp:
734         (testWebContextGetPlugins): Use the new plugin library name.
735
736 2013-12-31  Brendan Long  <b.long@cablelabs.com>
737
738         [Gtk] WebKitWebInspector has build warnings due to uninitialized didChangeAttachedWidth member
739         https://bugs.webkit.org/show_bug.cgi?id=126353
740
741         Reviewed by Martin Robinson.
742
743         * UIProcess/API/gtk/WebKitWebInspector.cpp:
744         (webkitWebInspectorCreate): Initialize didChangeAttachedWidth to null.
745
746 2013-12-30  Martin Robinson  <mrobinson@igalia.com>
747
748         [GTK] Make the output directory of GObject unit tests binaries consistent with the CMake build
749         https://bugs.webkit.org/show_bug.cgi?id=126297
750
751         Reviewed by Philippe Normand.
752
753         * UIProcess/API/gtk/tests/GNUmakefile.am: Build the tests in the new directory.
754         * UIProcess/API/gtk/tests/TestInspectorServer.cpp:
755         (startTestServer): Update the search path to reflect the new directory.
756         * UIProcess/API/gtk/tests/TestWebKitAccessibility.cpp:
757         (startTestServer): Update the search path to reflect the new directory.
758
759 2013-12-30  Carlos Garcia Campos  <cgarcia@igalia.com>
760
761         [SOUP] willSendRequest doesn't work after a redirect
762         https://bugs.webkit.org/show_bug.cgi?id=126290
763
764         Reviewed by Martin Robinson.
765
766         Add test cases to test send-request signal in case of
767         redirection.
768
769         * UIProcess/API/gtk/tests/TestResources.cpp:
770         (testWebResourceSendRequest):
771         (serverCallback):
772
773 2013-12-30  Commit Queue  <commit-queue@webkit.org>
774
775         Unreviewed, rolling out r161157, r161158, r161160, r161161,
776         r161163, and r161165.
777         http://trac.webkit.org/changeset/161157
778         http://trac.webkit.org/changeset/161158
779         http://trac.webkit.org/changeset/161160
780         http://trac.webkit.org/changeset/161161
781         http://trac.webkit.org/changeset/161163
782         http://trac.webkit.org/changeset/161165
783         https://bugs.webkit.org/show_bug.cgi?id=126332
784
785         Broke WebKit2 on Mountain Lion (Requested by ap on #webkit).
786
787         * Platform/IPC/Connection.cpp:
788         (IPC::Connection::SyncMessageState::wait):
789         (IPC::Connection::sendSyncMessageFromSecondaryThread):
790         (IPC::Connection::waitForSyncReply):
791
792 2013-12-30  Anders Carlsson  <andersca@apple.com>
793
794         Try to fix the test failures seen on the bots.
795
796         Restore the BinarySemaphore behavior that existed in the old binary semaphore.
797
798         * Platform/IPC/Connection.cpp:
799         (IPC::BinarySemaphore::wait):
800
801 2013-12-30  Anders Carlsson  <andersca@apple.com>
802
803         Fix.
804
805         * WebProcess/WebProcess.cpp:
806         (WebKit::WebProcess::plugInDidStartFromOrigin):
807
808 2013-12-30  Anders Carlsson  <andersca@apple.com>
809
810         Move more of Connection over to STL threading primitives
811         https://bugs.webkit.org/show_bug.cgi?id=126308
812
813         Reviewed by Andreas Kling.
814
815         * Platform/IPC/Connection.cpp:
816         (IPC::BinarySemaphore::BinarySemaphore):
817         (IPC::BinarySemaphore::~BinarySemaphore):
818         (IPC::BinarySemaphore::signal):
819         (IPC::BinarySemaphore::wait):
820         Add a new BinarySemaphore class that uses STL threading primitives.
821
822         (IPC::Connection::SyncMessageState::wait):
823         Change this to take a std::chrono::steady_clock::time_point.
824
825         (IPC::absoluteTimeoutTime):
826         Add a new helper function that returns a time point from the a given timeout duration,
827         correctly handling the max duration.
828
829         (IPC::Connection::sendSyncMessageFromSecondaryThread):
830         Pass a time point to SyncMessageState::wait.
831
832         (IPC::Connection::waitForSyncReply):
833         Ditto.
834
835 2013-12-30  Ryuan Choi  <ryuan.choi@samsung.com>
836
837         Replace remaning CoreIPC namespace to IPC
838         https://bugs.webkit.org/show_bug.cgi?id=126305
839
840         Reviewed by Anders Carlsson.
841
842         This patch replaces CoreIPC to IPC in build scripts and source codes to fix
843         build break on CMake based ports and Gtk (and maybe IOS).
844
845         * CMakeLists.txt:
846         * GNUmakefile.am:
847         * GNUmakefile.list.am:
848         * Platform/IPC/unix/AttachmentUnix.cpp:
849         * Platform/IPC/unix/ConnectionUnix.cpp:
850         * Platform/unix/SharedMemoryUnix.cpp:
851         (WebKit::SharedMemory::Handle::encode):
852         (WebKit::SharedMemory::Handle::decode):
853         (WebKit::SharedMemory::Handle::releaseToAttachment):
854         * PlatformEfl.cmake:
855         * PlatformGTK.cmake:
856         * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
857         * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.h:
858         * Shared/CoordinatedGraphics/WebCoordinatedSurface.cpp:
859         (WebKit::WebCoordinatedSurface::Handle::encode):
860         (WebKit::WebCoordinatedSurface::Handle::decode):
861         * Shared/CoordinatedGraphics/WebCoordinatedSurface.h:
862         * Shared/Downloads/soup/DownloadSoup.cpp:
863         (WebKit::DownloadClient::downloadFailed):
864         (WebKit::Download::cancel):
865         * Shared/WebBatteryStatus.cpp:
866         (WebKit::WebBatteryStatus::Data::encode):
867         (WebKit::WebBatteryStatus::Data::decode):
868         * Shared/WebBatteryStatus.h:
869         * Shared/WebNetworkInfo.cpp:
870         (WebKit::WebNetworkInfo::Data::encode):
871         (WebKit::WebNetworkInfo::Data::decode):
872         * Shared/WebNetworkInfo.h:
873         * Shared/cairo/LayerTreeContextCairo.cpp:
874         (WebKit::LayerTreeContext::encode):
875         (WebKit::LayerTreeContext::decode):
876         * Shared/efl/LayerTreeContextEfl.cpp:
877         (WebKit::LayerTreeContext::encode):
878         (WebKit::LayerTreeContext::decode):
879         * Shared/gtk/ArgumentCodersGtk.cpp:
880         * Shared/gtk/ArgumentCodersGtk.h:
881         * Shared/gtk/LayerTreeContextGtk.cpp:
882         (WebKit::LayerTreeContext::encode):
883         (WebKit::LayerTreeContext::decode):
884         * Shared/ios/WebPlatformTouchPointIOS.cpp:
885         (WebKit::WebPlatformTouchPoint::encode):
886         (WebKit::WebPlatformTouchPoint::decode):
887         * Shared/ios/WebTouchEventIOS.cpp:
888         (WebKit::WebTouchEvent::encode):
889         (WebKit::WebTouchEvent::decode):
890         * Shared/linux/SeccompFilters/OpenSyscall.cpp:
891         (WebKit::OpenSyscall::encode):
892         (WebKit::OpenSyscall::decode):
893         (WebKit::OpenSyscallResult::encode):
894         (WebKit::OpenSyscallResult::decode):
895         * Shared/linux/SeccompFilters/OpenSyscall.h:
896         * Shared/linux/SeccompFilters/SeccompBroker.cpp:
897         (WebKit::SeccompBrokerClient::dispatch):
898         (WebKit::SeccompBroker::runLoop):
899         * Shared/linux/SeccompFilters/Syscall.cpp:
900         (WebKit::Syscall::createFromDecoder):
901         (WebKit::SyscallResult::createFromDecoder):
902         * Shared/linux/SeccompFilters/Syscall.h:
903         * Shared/soup/WebCoreArgumentCodersSoup.cpp:
904         (IPC::ArgumentCoder<CertificateInfo>::encode):
905         (IPC::ArgumentCoder<CertificateInfo>::decode):
906         * UIProcess/API/ios/PageClientImplIOS.h:
907         * UIProcess/API/ios/PageClientImplIOS.mm:
908         (WebKit::PageClientImpl::accessibilityWebProcessTokenReceived):
909         * UIProcess/API/mac/PDFViewController.h:
910         * UIProcess/API/mac/PDFViewController.mm:
911         (WebKit::convertPostScriptDataSourceToPDF):
912         (WebKit::PDFViewController::setPDFDocumentData):
913         * UIProcess/CoordinatedGraphics/CoordinatedDrawingAreaProxy.h:
914         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:
915         * UIProcess/DrawingAreaProxyImpl.h:
916         * UIProcess/WebBatteryManagerProxy.h:
917         * UIProcess/WebNetworkInfoManagerProxy.h:
918         * UIProcess/WebVibrationProxy.h:
919         * UIProcess/ios/WebPageProxyIOS.mm:
920         (WebKit::WebPageProxy::registerWebProcessAccessibilityToken):
921         (WebKit::WebPageProxy::registerUIProcessAccessibilityTokens):
922         (WebKit::WebPageProxy::savePDFToTemporaryFolderAndOpenWithNativeApplication):
923         * UIProcess/soup/WebSoupRequestManagerProxy.h:
924         * WebProcess/Battery/WebBatteryManager.h:
925         * WebProcess/NetworkInfo/WebNetworkInfoManager.h:
926         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.cpp:
927         (WebKit::CoordinatedDrawingArea::didReceiveCoordinatedLayerTreeHostMessage):
928         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.h:
929         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
930         * WebProcess/WebPage/DrawingAreaImpl.h:
931         * WebProcess/WebPage/ios/WebPageIOS.mm:
932         (WebKit::WebPage::registerUIProcessAccessibilityTokens):
933         * WebProcess/ios/WebProcessIOS.mm:
934         (WebKit::WebProcess::platformInitializeWebProcess):
935         * WebProcess/soup/WebProcessSoup.cpp:
936         (WebKit::WebProcess::platformInitializeWebProcess):
937         * WebProcess/soup/WebSoupRequestManager.cpp:
938         (WebKit::WebSoupRequestManager::didHandleURIRequest):
939         (WebKit::WebSoupRequestManager::didReceiveURIRequestData):
940         * WebProcess/soup/WebSoupRequestManager.h:
941         * WebProcess/soup/WebSoupRequestManager.messages.in:
942
943 2013-12-30  Ryuan Choi  <ryuan.choi@samsung.com>
944
945         Unreviewed build fix attempt on GTK port after 161152
946
947         * WebProcess/WebCoreSupport/gtk/WebEditorClientGtk.cpp:
948         (WebKit::WebEditorClient::getEditorCommandsForKeyEvent):
949
950 2013-12-30  Anders Carlsson  <andersca@apple.com>
951
952         Use std::chrono::milliseconds for all IPC message timeouts
953         https://bugs.webkit.org/show_bug.cgi?id=126303
954
955         Reviewed by Andreas Kling.
956
957         * Platform/IPC/Connection.cpp:
958         (IPC::Connection::sendSyncMessage):
959         (IPC::Connection::sendSyncMessageFromSecondaryThread):
960         (IPC::Connection::waitForSyncReply):
961         * Platform/IPC/Connection.h:
962         (IPC::Connection::sendSync):
963         * Platform/IPC/MessageSender.h:
964         (IPC::MessageSender::sendSync):
965         * Shared/ChildProcessProxy.h:
966         (WebKit::ChildProcessProxy::sendSync):
967         * UIProcess/mac/WebPageProxyMac.mm:
968         (WebKit::WebPageProxy::stringSelectionForPasteboard):
969         (WebKit::WebPageProxy::dataSelectionForPasteboard):
970         (WebKit::WebPageProxy::readSelectionFromPasteboard):
971         (WebKit::WebPageProxy::shouldDelayWindowOrderingForEvent):
972         (WebKit::WebPageProxy::acceptsFirstMouse):
973         * WebProcess/InjectedBundle/InjectedBundle.cpp:
974         (WebKit::InjectedBundle::postSynchronousMessage):
975         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
976         (WebKit::WebChromeClient::runJavaScriptAlert):
977         (WebKit::WebChromeClient::runJavaScriptConfirm):
978         (WebKit::WebChromeClient::runJavaScriptPrompt):
979         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
980         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse):
981         * WebProcess/WebPage/WebInspector.cpp:
982         (WebKit::WebInspector::createInspectorPage):
983
984 2013-12-30  Anders Carlsson  <andersca@apple.com>
985
986         Remove empty directories.
987
988         * Platform/CoreIPC: Removed.
989         * Platform/CoreIPC/mac: Removed.
990         * Platform/CoreIPC/unix: Removed.
991
992 2013-12-30  Anders Carlsson  <andersca@apple.com>
993
994         Move code over to the IPC namespace.
995
996         Rubber-stamped by Andreas Kling.
997
998         * DatabaseProcess/DatabaseProcess.cpp:
999         (WebKit::DatabaseProcess::initializeConnection):
1000         (WebKit::DatabaseProcess::didClose):
1001         (WebKit::DatabaseProcess::didReceiveInvalidMessage):
1002         (WebKit::DatabaseProcess::createDatabaseToWebProcessConnection):
1003         * DatabaseProcess/DatabaseProcess.h:
1004         * DatabaseProcess/DatabaseToWebProcessConnection.cpp:
1005         (WebKit::DatabaseToWebProcessConnection::create):
1006         (WebKit::DatabaseToWebProcessConnection::DatabaseToWebProcessConnection):
1007         (WebKit::DatabaseToWebProcessConnection::didReceiveMessage):
1008         (WebKit::DatabaseToWebProcessConnection::didClose):
1009         (WebKit::DatabaseToWebProcessConnection::didReceiveInvalidMessage):
1010         * DatabaseProcess/DatabaseToWebProcessConnection.h:
1011         (WebKit::DatabaseToWebProcessConnection::connection):
1012         * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.cpp:
1013         (WebKit::DatabaseProcessIDBConnection::messageSenderConnection):
1014         * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.h:
1015         * NetworkProcess/AsynchronousNetworkLoaderClient.cpp:
1016         (WebKit::AsynchronousNetworkLoaderClient::willSendRequest):
1017         (WebKit::AsynchronousNetworkLoaderClient::canAuthenticateAgainstProtectionSpace):
1018         (WebKit::AsynchronousNetworkLoaderClient::didReceiveBuffer):
1019         * NetworkProcess/NetworkConnectionToWebProcess.cpp:
1020         (WebKit::NetworkConnectionToWebProcess::create):
1021         (WebKit::NetworkConnectionToWebProcess::NetworkConnectionToWebProcess):
1022         (WebKit::NetworkConnectionToWebProcess::didReceiveMessage):
1023         (WebKit::NetworkConnectionToWebProcess::didReceiveSyncMessage):
1024         (WebKit::NetworkConnectionToWebProcess::didClose):
1025         (WebKit::NetworkConnectionToWebProcess::didReceiveInvalidMessage):
1026         * NetworkProcess/NetworkConnectionToWebProcess.h:
1027         (WebKit::NetworkConnectionToWebProcess::connection):
1028         * NetworkProcess/NetworkProcess.cpp:
1029         (WebKit::NetworkProcess::didReceiveMessage):
1030         (WebKit::NetworkProcess::didReceiveSyncMessage):
1031         (WebKit::NetworkProcess::didClose):
1032         (WebKit::NetworkProcess::didReceiveInvalidMessage):
1033         (WebKit::NetworkProcess::downloadProxyConnection):
1034         (WebKit::NetworkProcess::initializeConnection):
1035         (WebKit::NetworkProcess::createNetworkConnectionToWebProcess):
1036         * NetworkProcess/NetworkProcess.h:
1037         * NetworkProcess/NetworkResourceLoader.cpp:
1038         (WebKit::NetworkResourceLoader::messageSenderConnection):
1039         * NetworkProcess/NetworkResourceLoader.h:
1040         * NetworkProcess/mac/DiskCacheMonitor.h:
1041         * NetworkProcess/mac/DiskCacheMonitor.mm:
1042         (WebKit::DiskCacheMonitor::messageSenderConnection):
1043         * Platform/IPC/ArgumentCoder.h:
1044         * Platform/IPC/ArgumentCoders.cpp:
1045         * Platform/IPC/ArgumentCoders.h:
1046         * Platform/IPC/ArgumentDecoder.cpp:
1047         * Platform/IPC/ArgumentDecoder.h:
1048         * Platform/IPC/ArgumentEncoder.cpp:
1049         * Platform/IPC/ArgumentEncoder.h:
1050         * Platform/IPC/Arguments.h:
1051         * Platform/IPC/Attachment.cpp:
1052         * Platform/IPC/Attachment.h:
1053         * Platform/IPC/Connection.cpp:
1054         (IPC::Connection::Connection):
1055         * Platform/IPC/Connection.h:
1056         * Platform/IPC/HandleMessage.h:
1057         * Platform/IPC/MessageDecoder.cpp:
1058         * Platform/IPC/MessageDecoder.h:
1059         * Platform/IPC/MessageEncoder.cpp:
1060         * Platform/IPC/MessageEncoder.h:
1061         * Platform/IPC/MessageFlags.h:
1062         * Platform/IPC/MessageReceiver.h:
1063         * Platform/IPC/MessageReceiverMap.cpp:
1064         * Platform/IPC/MessageReceiverMap.h:
1065         * Platform/IPC/mac/ConnectionMac.cpp:
1066         * Platform/IPC/mac/ImportanceAssertion.h:
1067         * Platform/IPC/mac/MachPort.h:
1068         * Platform/SharedMemory.h:
1069         * Platform/mac/SharedMemoryMac.cpp:
1070         (WebKit::SharedMemory::Handle::encode):
1071         (WebKit::SharedMemory::Handle::decode):
1072         * PluginProcess/PluginControllerProxy.cpp:
1073         (WebKit::PluginControllerProxy::streamDidReceiveData):
1074         (WebKit::PluginControllerProxy::manualStreamDidReceiveData):
1075         * PluginProcess/PluginControllerProxy.h:
1076         * PluginProcess/PluginControllerProxy.messages.in:
1077         * PluginProcess/PluginCreationParameters.cpp:
1078         (WebKit::PluginCreationParameters::encode):
1079         (WebKit::PluginCreationParameters::decode):
1080         * PluginProcess/PluginCreationParameters.h:
1081         * PluginProcess/PluginProcess.cpp:
1082         (WebKit::PluginProcess::didReceiveMessage):
1083         (WebKit::PluginProcess::didClose):
1084         (WebKit::PluginProcess::didReceiveInvalidMessage):
1085         (WebKit::PluginProcess::createWebProcessConnection):
1086         * PluginProcess/PluginProcess.h:
1087         * PluginProcess/WebProcessConnection.cpp:
1088         (WebKit::WebProcessConnection::create):
1089         (WebKit::WebProcessConnection::WebProcessConnection):
1090         (WebKit::WebProcessConnection::setGlobalException):
1091         (WebKit::WebProcessConnection::didReceiveMessage):
1092         (WebKit::WebProcessConnection::didReceiveSyncMessage):
1093         (WebKit::WebProcessConnection::didClose):
1094         (WebKit::WebProcessConnection::didReceiveInvalidMessage):
1095         * PluginProcess/WebProcessConnection.h:
1096         (WebKit::WebProcessConnection::connection):
1097         * PluginProcess/mac/PluginControllerProxyMac.mm:
1098         (WebKit::PluginControllerProxy::setComplexTextInputState):
1099         * Scripts/webkit2/messages.py:
1100         (arguments_type_old):
1101         (message_to_struct_declaration):
1102         (forward_declarations_and_headers):
1103         (generate_messages_header):
1104         (async_message_statement):
1105         (sync_message_statement):
1106         (headers_for_type):
1107         (generate_message_handler):
1108         * Scripts/webkit2/messages_unittest.py:
1109         (IPC):
1110         (std):
1111         * Shared/API/Cocoa/RemoteObjectRegistry.h:
1112         * Shared/APIGeometry.cpp:
1113         (API::Point::encode):
1114         (API::Point::decode):
1115         (API::Size::encode):
1116         (API::Size::decode):
1117         (API::Rect::encode):
1118         (API::Rect::decode):
1119         * Shared/APIGeometry.h:
1120         * Shared/APINumber.h:
1121         (API::Number::encode):
1122         (API::Number::decode):
1123         * Shared/Authentication/AuthenticationManager.h:
1124         * Shared/ChildProcess.cpp:
1125         (WebKit::didCloseOnConnectionWorkQueue):
1126         (WebKit::ChildProcess::initialize):
1127         (WebKit::ChildProcess::initializeConnection):
1128         (WebKit::ChildProcess::addMessageReceiver):
1129         (WebKit::ChildProcess::removeMessageReceiver):
1130         (WebKit::ChildProcess::messageSenderConnection):
1131         * Shared/ChildProcess.h:
1132         (WebKit::ChildProcess::parentProcessConnection):
1133         (WebKit::ChildProcess::messageReceiverMap):
1134         * Shared/ChildProcessProxy.cpp:
1135         (WebKit::ChildProcessProxy::fromConnection):
1136         (WebKit::ChildProcessProxy::sendMessage):
1137         (WebKit::ChildProcessProxy::addMessageReceiver):
1138         (WebKit::ChildProcessProxy::removeMessageReceiver):
1139         (WebKit::ChildProcessProxy::dispatchMessage):
1140         (WebKit::ChildProcessProxy::dispatchSyncMessage):
1141         (WebKit::ChildProcessProxy::didFinishLaunching):
1142         (WebKit::ChildProcessProxy::connectionWillOpen):
1143         (WebKit::ChildProcessProxy::connectionWillClose):
1144         * Shared/ChildProcessProxy.h:
1145         (WebKit::ChildProcessProxy::connection):
1146         (WebKit::ChildProcessProxy::send):
1147         * Shared/ChildProcessSupplement.h:
1148         (WebKit::ChildProcessSupplement::initializeConnection):
1149         * Shared/ConnectionStack.h:
1150         (WebKit::ConnectionStack::current):
1151         (WebKit::ConnectionStack::CurrentConnectionPusher::CurrentConnectionPusher):
1152         * Shared/CoreIPCSupport/WebContextMessageKinds.h:
1153         (WebContextLegacyMessages::messageReceiverName):
1154         (WebContextLegacyMessages::postMessageMessageName):
1155         (WebContextLegacyMessages::postSynchronousMessageMessageName):
1156         * Shared/Databases/DatabaseProcessCreationParameters.cpp:
1157         (WebKit::DatabaseProcessCreationParameters::encode):
1158         (WebKit::DatabaseProcessCreationParameters::decode):
1159         * Shared/Databases/DatabaseProcessCreationParameters.h:
1160         * Shared/DictionaryPopupInfo.cpp:
1161         (WebKit::DictionaryPopupInfo::encode):
1162         (WebKit::DictionaryPopupInfo::decode):
1163         * Shared/DictionaryPopupInfo.h:
1164         * Shared/Downloads/Download.cpp:
1165         (WebKit::Download::didFail):
1166         (WebKit::Download::didCancel):
1167         (WebKit::Download::messageSenderConnection):
1168         * Shared/Downloads/Download.h:
1169         * Shared/Downloads/DownloadManager.cpp:
1170         (WebKit::DownloadManager::downloadProxyConnection):
1171         * Shared/Downloads/DownloadManager.h:
1172         * Shared/Downloads/mac/DownloadMac.mm:
1173         (WebKit::Download::cancel):
1174         (-[WKDownloadAsDelegate download:didFailWithError:]):
1175         * Shared/EditorState.cpp:
1176         (WebKit::EditorState::encode):
1177         (WebKit::EditorState::decode):
1178         * Shared/EditorState.h:
1179         * Shared/EntryPointUtilities/mac/LegacyProcess/ChildProcessEntryPoint.h:
1180         * Shared/EntryPointUtilities/mac/LegacyProcess/ChildProcessEntryPoint.mm:
1181         (WebKit::ChildProcessMainDelegate::getConnectionIdentifier):
1182         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.h:
1183         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.mm:
1184         (WebKit::XPCServiceInitializerDelegate::getConnectionIdentifier):
1185         * Shared/FileAPI/BlobRegistrationData.cpp:
1186         (WebKit::BlobRegistrationData::encode):
1187         (WebKit::BlobRegistrationData::decode):
1188         * Shared/FileAPI/BlobRegistrationData.h:
1189         * Shared/FontInfo.cpp:
1190         (WebKit::FontInfo::encode):
1191         (WebKit::FontInfo::decode):
1192         * Shared/FontInfo.h:
1193         * Shared/LayerTreeContext.h:
1194         * Shared/Network/CustomProtocols/CustomProtocolManager.h:
1195         * Shared/Network/CustomProtocols/CustomProtocolManager.messages.in:
1196         * Shared/Network/CustomProtocols/mac/CustomProtocolManagerMac.mm:
1197         (WebKit::CustomProtocolManager::initializeConnection):
1198         (WebKit::CustomProtocolManager::didLoadData):
1199         * Shared/Network/NetworkProcessCreationParameters.cpp:
1200         (WebKit::NetworkProcessCreationParameters::encode):
1201         (WebKit::NetworkProcessCreationParameters::decode):
1202         * Shared/Network/NetworkProcessCreationParameters.h:
1203         * Shared/Network/NetworkResourceLoadParameters.cpp:
1204         (WebKit::NetworkResourceLoadParameters::encode):
1205         (WebKit::NetworkResourceLoadParameters::decode):
1206         * Shared/Network/NetworkResourceLoadParameters.h:
1207         * Shared/OriginAndDatabases.cpp:
1208         (WebKit::OriginAndDatabases::encode):
1209         (WebKit::OriginAndDatabases::decode):
1210         * Shared/OriginAndDatabases.h:
1211         * Shared/PlatformPopupMenuData.cpp:
1212         (WebKit::PlatformPopupMenuData::encode):
1213         (WebKit::PlatformPopupMenuData::decode):
1214         * Shared/PlatformPopupMenuData.h:
1215         * Shared/Plugins/NPIdentifierData.cpp:
1216         (WebKit::NPIdentifierData::encode):
1217         (WebKit::NPIdentifierData::decode):
1218         * Shared/Plugins/NPIdentifierData.h:
1219         * Shared/Plugins/NPObjectMessageReceiver.h:
1220         * Shared/Plugins/NPRemoteObjectMap.cpp:
1221         (WebKit::NPRemoteObjectMap::create):
1222         (WebKit::NPRemoteObjectMap::NPRemoteObjectMap):
1223         (WebKit::NPRemoteObjectMap::didReceiveSyncMessage):
1224         * Shared/Plugins/NPRemoteObjectMap.h:
1225         (WebKit::NPRemoteObjectMap::connection):
1226         * Shared/Plugins/NPVariantData.cpp:
1227         (WebKit::NPVariantData::encode):
1228         (WebKit::NPVariantData::decode):
1229         * Shared/Plugins/NPVariantData.h:
1230         * Shared/Plugins/PluginProcessCreationParameters.cpp:
1231         (WebKit::PluginProcessCreationParameters::encode):
1232         (WebKit::PluginProcessCreationParameters::decode):
1233         * Shared/Plugins/PluginProcessCreationParameters.h:
1234         * Shared/PrintInfo.cpp:
1235         (WebKit::PrintInfo::encode):
1236         (WebKit::PrintInfo::decode):
1237         * Shared/PrintInfo.h:
1238         * Shared/SandboxExtension.h:
1239         (WebKit::SandboxExtension::Handle::encode):
1240         (WebKit::SandboxExtension::Handle::decode):
1241         (WebKit::SandboxExtension::HandleArray::encode):
1242         (WebKit::SandboxExtension::HandleArray::decode):
1243         * Shared/SecurityOriginData.cpp:
1244         (WebKit::SecurityOriginData::encode):
1245         (WebKit::SecurityOriginData::decode):
1246         * Shared/SecurityOriginData.h:
1247         * Shared/SessionState.cpp:
1248         (WebKit::SessionState::encode):
1249         (WebKit::SessionState::decode):
1250         * Shared/SessionState.h:
1251         * Shared/ShareableBitmap.cpp:
1252         (WebKit::ShareableBitmap::Handle::encode):
1253         (WebKit::ShareableBitmap::Handle::decode):
1254         * Shared/ShareableBitmap.h:
1255         * Shared/ShareableResource.cpp:
1256         (WebKit::ShareableResource::Handle::encode):
1257         (WebKit::ShareableResource::Handle::decode):
1258         * Shared/ShareableResource.h:
1259         * Shared/StatisticsData.cpp:
1260         (WebKit::StatisticsData::encode):
1261         (WebKit::StatisticsData::decode):
1262         * Shared/StatisticsData.h:
1263         * Shared/TextCheckerState.h:
1264         * Shared/UpdateInfo.cpp:
1265         (WebKit::UpdateInfo::encode):
1266         (WebKit::UpdateInfo::decode):
1267         * Shared/UpdateInfo.h:
1268         * Shared/UserData.cpp:
1269         (WebKit::UserData::encode):
1270         (WebKit::UserData::decode):
1271         * Shared/UserData.h:
1272         * Shared/UserMessageCoders.h:
1273         (WebKit::UserMessageEncoder::baseEncode):
1274         (WebKit::UserMessageDecoder::baseDecode):
1275         * Shared/WebBackForwardListItem.cpp:
1276         (WebKit::WebBackForwardListItem::encode):
1277         (WebKit::WebBackForwardListItem::decode):
1278         * Shared/WebBackForwardListItem.h:
1279         * Shared/WebConnection.cpp:
1280         (WebKit::WebConnection::postMessage):
1281         (WebKit::WebConnection::didReceiveMessage):
1282         (WebKit::WebConnection::handleMessage):
1283         * Shared/WebConnection.h:
1284         * Shared/WebContextMenuItemData.cpp:
1285         (WebKit::WebContextMenuItemData::encode):
1286         (WebKit::WebContextMenuItemData::decode):
1287         * Shared/WebContextMenuItemData.h:
1288         * Shared/WebCoreArgumentCoders.cpp:
1289         * Shared/WebCoreArgumentCoders.h:
1290         * Shared/WebEvent.cpp:
1291         (WebKit::WebEvent::encode):
1292         (WebKit::WebEvent::decode):
1293         * Shared/WebEvent.h:
1294         * Shared/WebGeolocationPosition.cpp:
1295         (WebKit::WebGeolocationPosition::Data::encode):
1296         (WebKit::WebGeolocationPosition::Data::decode):
1297         * Shared/WebGeolocationPosition.h:
1298         * Shared/WebHitTestResult.cpp:
1299         (WebKit::WebHitTestResult::Data::encode):
1300         (WebKit::WebHitTestResult::Data::decode):
1301         * Shared/WebHitTestResult.h:
1302         * Shared/WebKeyboardEvent.cpp:
1303         (WebKit::WebKeyboardEvent::encode):
1304         (WebKit::WebKeyboardEvent::decode):
1305         * Shared/WebMouseEvent.cpp:
1306         (WebKit::WebMouseEvent::encode):
1307         (WebKit::WebMouseEvent::decode):
1308         * Shared/WebNavigationDataStore.h:
1309         (WebKit::WebNavigationDataStore::encode):
1310         (WebKit::WebNavigationDataStore::decode):
1311         * Shared/WebPageCreationParameters.cpp:
1312         (WebKit::WebPageCreationParameters::encode):
1313         (WebKit::WebPageCreationParameters::decode):
1314         * Shared/WebPageCreationParameters.h:
1315         * Shared/WebPageGroupData.cpp:
1316         (WebKit::WebPageGroupData::encode):
1317         (WebKit::WebPageGroupData::decode):
1318         * Shared/WebPageGroupData.h:
1319         * Shared/WebPlatformTouchPoint.cpp:
1320         (WebKit::WebPlatformTouchPoint::encode):
1321         (WebKit::WebPlatformTouchPoint::decode):
1322         * Shared/WebPopupItem.cpp:
1323         (WebKit::WebPopupItem::encode):
1324         (WebKit::WebPopupItem::decode):
1325         * Shared/WebPopupItem.h:
1326         * Shared/WebPreferencesStore.cpp:
1327         (WebKit::WebPreferencesStore::encode):
1328         (WebKit::WebPreferencesStore::decode):
1329         * Shared/WebPreferencesStore.h:
1330         * Shared/WebProcessCreationParameters.cpp:
1331         (WebKit::WebProcessCreationParameters::encode):
1332         (WebKit::WebProcessCreationParameters::decode):
1333         * Shared/WebProcessCreationParameters.h:
1334         * Shared/WebSerializedScriptValue.h:
1335         (WebKit::WebSerializedScriptValue::dataReference):
1336         * Shared/WebTouchEvent.cpp:
1337         (WebKit::WebTouchEvent::encode):
1338         (WebKit::WebTouchEvent::decode):
1339         * Shared/WebWheelEvent.cpp:
1340         (WebKit::WebWheelEvent::encode):
1341         (WebKit::WebWheelEvent::decode):
1342         * Shared/cf/ArgumentCodersCF.cpp:
1343         (IPC::encode):
1344         (IPC::decode):
1345         * Shared/cf/ArgumentCodersCF.h:
1346         * Shared/mac/ArgumentCodersMac.h:
1347         * Shared/mac/ArgumentCodersMac.mm:
1348         (IPC::encode):
1349         (IPC::decode):
1350         * Shared/mac/AttributedString.h:
1351         * Shared/mac/AttributedString.mm:
1352         (WebKit::AttributedString::encode):
1353         (WebKit::AttributedString::decode):
1354         * Shared/mac/ColorSpaceData.h:
1355         * Shared/mac/ColorSpaceData.mm:
1356         (WebKit::ColorSpaceData::encode):
1357         (WebKit::ColorSpaceData::decode):
1358         * Shared/mac/LayerTreeContextMac.mm:
1359         (WebKit::LayerTreeContext::encode):
1360         (WebKit::LayerTreeContext::decode):
1361         * Shared/mac/ObjCObjectGraphCoders.h:
1362         * Shared/mac/ObjCObjectGraphCoders.mm:
1363         (WebKit::ObjCObjectGraphEncoder::baseEncode):
1364         (WebKit::ObjCObjectGraphDecoder::baseDecode):
1365         (WebKit::WebContextObjCObjectGraphEncoderImpl::encode):
1366         (WebKit::WebContextObjCObjectGraphDecoderImpl::decode):
1367         (WebKit::InjectedBundleObjCObjectGraphEncoderImpl::encode):
1368         (WebKit::InjectedBundleObjCObjectGraphDecoderImpl::decode):
1369         (WebKit::WebContextObjCObjectGraphEncoder::encode):
1370         (WebKit::WebContextObjCObjectGraphDecoder::decode):
1371         (WebKit::InjectedBundleObjCObjectGraphEncoder::encode):
1372         (WebKit::InjectedBundleObjCObjectGraphDecoder::decode):
1373         * Shared/mac/RemoteLayerBackingStore.h:
1374         * Shared/mac/RemoteLayerBackingStore.mm:
1375         (RemoteLayerBackingStore::encode):
1376         (RemoteLayerBackingStore::decode):
1377         * Shared/mac/RemoteLayerTreeTransaction.h:
1378         * Shared/mac/RemoteLayerTreeTransaction.mm:
1379         (WebKit::RemoteLayerTreeTransaction::LayerCreationProperties::encode):
1380         (WebKit::RemoteLayerTreeTransaction::LayerCreationProperties::decode):
1381         (WebKit::RemoteLayerTreeTransaction::LayerProperties::encode):
1382         (WebKit::RemoteLayerTreeTransaction::LayerProperties::decode):
1383         (WebKit::RemoteLayerTreeTransaction::encode):
1384         (WebKit::RemoteLayerTreeTransaction::decode):
1385         * Shared/mac/SandboxExtensionMac.mm:
1386         (WebKit::SandboxExtension::Handle::encode):
1387         (WebKit::SandboxExtension::Handle::decode):
1388         (WebKit::SandboxExtension::HandleArray::encode):
1389         (WebKit::SandboxExtension::HandleArray::decode):
1390         * Shared/mac/SecItemRequestData.cpp:
1391         (WebKit::SecItemRequestData::encode):
1392         (WebKit::SecItemRequestData::decode):
1393         * Shared/mac/SecItemRequestData.h:
1394         * Shared/mac/SecItemResponseData.cpp:
1395         (WebKit::SecItemResponseData::encode):
1396         (WebKit::SecItemResponseData::decode):
1397         * Shared/mac/SecItemResponseData.h:
1398         * Shared/mac/SecItemShim.cpp:
1399         (WebKit::SecItemShim::initializeConnection):
1400         * Shared/mac/SecItemShim.h:
1401         * Shared/mac/WebCoreArgumentCodersMac.mm:
1402         (IPC::ArgumentCoder<ResourceRequest>::encodePlatformData):
1403         (IPC::ArgumentCoder<ResourceRequest>::decodePlatformData):
1404         (IPC::ArgumentCoder<ResourceResponse>::encodePlatformData):
1405         (IPC::ArgumentCoder<ResourceResponse>::decodePlatformData):
1406         (IPC::ArgumentCoder<CertificateInfo>::encode):
1407         (IPC::ArgumentCoder<CertificateInfo>::decode):
1408         (IPC::ArgumentCoder<ResourceError>::encodePlatformData):
1409         (IPC::ArgumentCoder<ResourceError>::decodePlatformData):
1410         * UIProcess/API/mac/PageClientImpl.h:
1411         * UIProcess/API/mac/PageClientImpl.mm:
1412         (WebKit::PageClientImpl::accessibilityWebProcessTokenReceived):
1413         * UIProcess/API/mac/WKView.mm:
1414         (-[WKView _accessibilityRegisterUIProcessTokens]):
1415         * UIProcess/API/mac/WKViewInternal.h:
1416         * UIProcess/Authentication/AuthenticationChallengeProxy.cpp:
1417         (WebKit::AuthenticationChallengeProxy::AuthenticationChallengeProxy):
1418         * UIProcess/Authentication/AuthenticationChallengeProxy.h:
1419         (WebKit::AuthenticationChallengeProxy::create):
1420         * UIProcess/Databases/DatabaseProcessProxy.cpp:
1421         (WebKit::DatabaseProcessProxy::connectionWillOpen):
1422         (WebKit::DatabaseProcessProxy::connectionWillClose):
1423         (WebKit::DatabaseProcessProxy::getDatabaseProcessConnection):
1424         (WebKit::DatabaseProcessProxy::didClose):
1425         (WebKit::DatabaseProcessProxy::didReceiveInvalidMessage):
1426         (WebKit::DatabaseProcessProxy::didCreateDatabaseToWebProcessConnection):
1427         (WebKit::DatabaseProcessProxy::didFinishLaunching):
1428         * UIProcess/Databases/DatabaseProcessProxy.h:
1429         * UIProcess/Databases/DatabaseProcessProxy.messages.in:
1430         * UIProcess/Downloads/DownloadProxy.cpp:
1431         (WebKit::createData):
1432         (WebKit::DownloadProxy::didFail):
1433         (WebKit::DownloadProxy::didCancel):
1434         * UIProcess/Downloads/DownloadProxy.h:
1435         * UIProcess/Downloads/DownloadProxy.messages.in:
1436         * UIProcess/DrawingAreaProxy.h:
1437         * UIProcess/Launcher/ProcessLauncher.cpp:
1438         (WebKit::ProcessLauncher::didFinishLaunchingProcess):
1439         * UIProcess/Launcher/ProcessLauncher.h:
1440         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
1441         (WebKit::connectToService):
1442         (WebKit::tryPreexistingProcess):
1443         (WebKit::createProcess):
1444         * UIProcess/Network/CustomProtocols/CustomProtocolManagerProxy.h:
1445         * UIProcess/Network/CustomProtocols/mac/CustomProtocolManagerProxyMac.mm:
1446         (-[WKCustomProtocolLoader connection:didReceiveData:]):
1447         * UIProcess/Network/NetworkProcessProxy.cpp:
1448         (WebKit::NetworkProcessProxy::connectionWillOpen):
1449         (WebKit::NetworkProcessProxy::connectionWillClose):
1450         (WebKit::NetworkProcessProxy::getNetworkProcessConnection):
1451         (WebKit::NetworkProcessProxy::networkProcessCrashedOrFailedToLaunch):
1452         (WebKit::NetworkProcessProxy::didReceiveMessage):
1453         (WebKit::NetworkProcessProxy::didReceiveSyncMessage):
1454         (WebKit::NetworkProcessProxy::didClose):
1455         (WebKit::NetworkProcessProxy::didReceiveInvalidMessage):
1456         (WebKit::NetworkProcessProxy::didCreateNetworkConnectionToWebProcess):
1457         (WebKit::NetworkProcessProxy::didFinishLaunching):
1458         * UIProcess/Network/NetworkProcessProxy.h:
1459         * UIProcess/Network/NetworkProcessProxy.messages.in:
1460         * UIProcess/Notifications/WebNotification.h:
1461         * UIProcess/PageClient.h:
1462         * UIProcess/Plugins/PluginProcessManager.h:
1463         * UIProcess/Plugins/PluginProcessProxy.cpp:
1464         (WebKit::PluginProcessProxy::getPluginProcessConnection):
1465         (WebKit::PluginProcessProxy::pluginProcessCrashedOrFailedToLaunch):
1466         (WebKit::PluginProcessProxy::didClose):
1467         (WebKit::PluginProcessProxy::didReceiveInvalidMessage):
1468         (WebKit::PluginProcessProxy::didFinishLaunching):
1469         (WebKit::PluginProcessProxy::didCreateWebProcessConnection):
1470         * UIProcess/Plugins/PluginProcessProxy.h:
1471         * UIProcess/Plugins/PluginProcessProxy.messages.in:
1472         * UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
1473         (WebKit::PluginProcessProxy::platformInitializePluginProcess):
1474         * UIProcess/Storage/StorageManager.cpp:
1475         (WebKit::StorageManager::StorageArea::addListener):
1476         (WebKit::StorageManager::StorageArea::removeListener):
1477         (WebKit::StorageManager::StorageArea::setItem):
1478         (WebKit::StorageManager::StorageArea::removeItem):
1479         (WebKit::StorageManager::StorageArea::clear):
1480         (WebKit::StorageManager::StorageArea::dispatchEvents):
1481         (WebKit::StorageManager::SessionStorageNamespace::allowedConnection):
1482         (WebKit::StorageManager::SessionStorageNamespace::create):
1483         (WebKit::StorageManager::SessionStorageNamespace::SessionStorageNamespace):
1484         (WebKit::StorageManager::SessionStorageNamespace::setAllowedConnection):
1485         (WebKit::StorageManager::createSessionStorageNamespace):
1486         (WebKit::StorageManager::setAllowedSessionStorageNamespaceConnection):
1487         (WebKit::StorageManager::processWillCloseConnection):
1488         (WebKit::StorageManager::createLocalStorageMap):
1489         (WebKit::StorageManager::createSessionStorageMap):
1490         (WebKit::StorageManager::destroyStorageMap):
1491         (WebKit::StorageManager::getValues):
1492         (WebKit::StorageManager::setItem):
1493         (WebKit::StorageManager::removeItem):
1494         (WebKit::StorageManager::clear):
1495         (WebKit::StorageManager::createSessionStorageNamespaceInternal):
1496         (WebKit::StorageManager::setAllowedSessionStorageNamespaceConnectionInternal):
1497         (WebKit::StorageManager::invalidateConnectionInternal):
1498         (WebKit::StorageManager::findStorageArea):
1499         * UIProcess/Storage/StorageManager.h:
1500         * UIProcess/WebApplicationCacheManagerProxy.h:
1501         * UIProcess/WebConnectionToWebProcess.cpp:
1502         (WebKit::WebConnectionToWebProcess::encodeMessageBody):
1503         (WebKit::WebConnectionToWebProcess::decodeMessageBody):
1504         (WebKit::WebConnectionToWebProcess::messageSenderConnection):
1505         * UIProcess/WebConnectionToWebProcess.h:
1506         * UIProcess/WebContext.cpp:
1507         (WebKit::WebContext::networkingProcessConnection):
1508         (WebKit::WebContext::didReceiveInvalidMessage):
1509         (WebKit::WebContext::createNewWebProcess):
1510         (WebKit::WebContext::postMessageToInjectedBundle):
1511         (WebKit::WebContext::addMessageReceiver):
1512         (WebKit::WebContext::removeMessageReceiver):
1513         (WebKit::WebContext::dispatchMessage):
1514         (WebKit::WebContext::dispatchSyncMessage):
1515         (WebKit::WebContext::didReceiveMessage):
1516         (WebKit::WebContext::didReceiveSyncMessage):
1517         * UIProcess/WebContext.h:
1518         * UIProcess/WebContextUserMessageCoders.h:
1519         (WebKit::WebContextUserMessageEncoder::encode):
1520         (WebKit::WebContextUserMessageDecoder::decode):
1521         * UIProcess/WebCookieManagerProxy.h:
1522         * UIProcess/WebDatabaseManagerProxy.h:
1523         * UIProcess/WebEditCommandProxy.cpp:
1524         (WebKit::WebEditCommandProxy::unapply):
1525         (WebKit::WebEditCommandProxy::reapply):
1526         * UIProcess/WebFrameProxy.h:
1527         * UIProcess/WebFullScreenManagerProxy.h:
1528         * UIProcess/WebGeolocationManagerProxy.cpp:
1529         (WebKit::WebGeolocationManagerProxy::startUpdating):
1530         (WebKit::WebGeolocationManagerProxy::stopUpdating):
1531         (WebKit::WebGeolocationManagerProxy::removeRequester):
1532         (WebKit::WebGeolocationManagerProxy::setEnableHighAccuracy):
1533         * UIProcess/WebGeolocationManagerProxy.h:
1534         * UIProcess/WebIconDatabase.cpp:
1535         (WebKit::WebIconDatabase::setIconDataForIconURL):
1536         (WebKit::WebIconDatabase::synchronousIconDataForPageURL):
1537         * UIProcess/WebIconDatabase.h:
1538         * UIProcess/WebIconDatabase.messages.in:
1539         * UIProcess/WebInspectorProxy.h:
1540         * UIProcess/WebMediaCacheManagerProxy.h:
1541         * UIProcess/WebOriginDataManagerProxy.h:
1542         * UIProcess/WebPageProxy.cpp:
1543         (WebKit::WebPageProxy::willGoToBackForwardListItem):
1544         (WebKit::WebPageProxy::preferencesDidChange):
1545         (WebKit::WebPageProxy::didStartProvisionalLoadForFrame):
1546         (WebKit::WebPageProxy::didReceiveServerRedirectForProvisionalLoadForFrame):
1547         (WebKit::WebPageProxy::didFailProvisionalLoadForFrame):
1548         (WebKit::WebPageProxy::didCommitLoadForFrame):
1549         (WebKit::WebPageProxy::didFinishDocumentLoadForFrame):
1550         (WebKit::WebPageProxy::didFinishLoadForFrame):
1551         (WebKit::WebPageProxy::didFailLoadForFrame):
1552         (WebKit::WebPageProxy::didSameDocumentNavigationForFrame):
1553         (WebKit::WebPageProxy::didReceiveTitleForFrame):
1554         (WebKit::WebPageProxy::didFirstLayoutForFrame):
1555         (WebKit::WebPageProxy::didFirstVisuallyNonEmptyLayoutForFrame):
1556         (WebKit::WebPageProxy::didLayout):
1557         (WebKit::WebPageProxy::didRemoveFrameFromHierarchy):
1558         (WebKit::WebPageProxy::didDisplayInsecureContentForFrame):
1559         (WebKit::WebPageProxy::didRunInsecureContentForFrame):
1560         (WebKit::WebPageProxy::didDetectXSSForFrame):
1561         (WebKit::WebPageProxy::decidePolicyForNavigationAction):
1562         (WebKit::WebPageProxy::decidePolicyForNewWindowAction):
1563         (WebKit::WebPageProxy::decidePolicyForResponse):
1564         (WebKit::WebPageProxy::decidePolicyForResponseSync):
1565         (WebKit::WebPageProxy::unableToImplementPolicy):
1566         (WebKit::WebPageProxy::willSubmitForm):
1567         (WebKit::WebPageProxy::mouseDidMoveOverElement):
1568         (WebKit::WebPageProxy::connectionWillOpen):
1569         (WebKit::WebPageProxy::connectionWillClose):
1570         (WebKit::WebPageProxy::sendMessage):
1571         (WebKit::WebPageProxy::messageSenderConnection):
1572         (WebKit::WebPageProxy::showContextMenu):
1573         (WebKit::WebPageProxy::internalShowContextMenu):
1574         (WebKit::WebPageProxy::dataCallback):
1575         (WebKit::WebPageProxy::scriptValueCallback):
1576         (WebKit::WebPageProxy::beginPrinting):
1577         (WebKit::WebPageProxy::endPrinting):
1578         (WebKit::WebPageProxy::computePagesForPrinting):
1579         (WebKit::WebPageProxy::drawRectToImage):
1580         (WebKit::WebPageProxy::drawPagesToPDF):
1581         (WebKit::WebPageProxy::drawPagesForPrinting):
1582         (WebKit::WebPageProxy::savePDFToFileInDownloadsFolder):
1583         * UIProcess/WebPageProxy.h:
1584         * UIProcess/WebPageProxy.messages.in:
1585         * UIProcess/WebProcessProxy.cpp:
1586         (WebKit::WebProcessProxy::connectionWillOpen):
1587         (WebKit::WebProcessProxy::connectionWillClose):
1588         (WebKit::WebProcessProxy::addBackForwardItem):
1589         (WebKit::WebProcessProxy::didReceiveMessage):
1590         (WebKit::WebProcessProxy::didReceiveSyncMessage):
1591         (WebKit::WebProcessProxy::didClose):
1592         (WebKit::WebProcessProxy::didReceiveInvalidMessage):
1593         (WebKit::WebProcessProxy::didFinishLaunching):
1594         * UIProcess/WebProcessProxy.h:
1595         (WebKit::WebProcessProxy::fromConnection):
1596         * UIProcess/WebProcessProxy.messages.in:
1597         * UIProcess/WebResourceCacheManagerProxy.h:
1598         * UIProcess/cf/WebBackForwardListCF.cpp:
1599         (WebKit::WebBackForwardList::createCFDictionaryRepresentation):
1600         * UIProcess/mac/RemoteLayerTreeHost.h:
1601         * UIProcess/mac/SecItemShimProxy.cpp:
1602         (WebKit::SecItemShimProxy::initializeConnection):
1603         (WebKit::SecItemShimProxy::secItemRequest):
1604         * UIProcess/mac/SecItemShimProxy.h:
1605         * UIProcess/mac/ViewGestureController.h:
1606         * UIProcess/mac/WebContextMac.mm:
1607         (WebKit::WebContext::platformInitializeWebProcess):
1608         * UIProcess/mac/WebPageProxyMac.mm:
1609         (WebKit::WebPageProxy::registerWebProcessAccessibilityToken):
1610         (WebKit::WebPageProxy::registerUIProcessAccessibilityTokens):
1611         (WebKit::WebPageProxy::savePDFToTemporaryFolderAndOpenWithNativeApplication):
1612         * WebKit2.xcodeproj/project.pbxproj:
1613         * WebProcess/ApplicationCache/WebApplicationCacheManager.h:
1614         * WebProcess/Cookies/WebCookieManager.h:
1615         * WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:
1616         (WebKit::WebIDBServerConnection::messageSenderConnection):
1617         * WebProcess/Databases/IndexedDB/WebIDBServerConnection.h:
1618         * WebProcess/Databases/WebToDatabaseProcessConnection.cpp:
1619         (WebKit::WebToDatabaseProcessConnection::WebToDatabaseProcessConnection):
1620         (WebKit::WebToDatabaseProcessConnection::didReceiveMessage):
1621         (WebKit::WebToDatabaseProcessConnection::didClose):
1622         (WebKit::WebToDatabaseProcessConnection::didReceiveInvalidMessage):
1623         * WebProcess/Databases/WebToDatabaseProcessConnection.h:
1624         (WebKit::WebToDatabaseProcessConnection::create):
1625         (WebKit::WebToDatabaseProcessConnection::connection):
1626         * WebProcess/EntryPoint/mac/LegacyProcess/WebContentProcessMain.mm:
1627         (WebKit::WebContentProcessMainDelegate::getConnectionIdentifier):
1628         * WebProcess/FullScreen/WebFullScreenManager.cpp:
1629         (WebKit::WebFullScreenManager::didReceiveMessage):
1630         * WebProcess/FullScreen/WebFullScreenManager.h:
1631         * WebProcess/Geolocation/WebGeolocationManager.h:
1632         * WebProcess/IconDatabase/WebIconDatabaseProxy.cpp:
1633         (WebKit::WebIconDatabaseProxy::synchronousIconForPageURL):
1634         (WebKit::WebIconDatabaseProxy::setIconDataForIconURL):
1635         * WebProcess/IconDatabase/WebIconDatabaseProxy.h:
1636         * WebProcess/InjectedBundle/InjectedBundle.cpp:
1637         (WebKit::InjectedBundle::postMessage):
1638         (WebKit::InjectedBundle::postSynchronousMessage):
1639         * WebProcess/InjectedBundle/InjectedBundleUserMessageCoders.h:
1640         (WebKit::InjectedBundleUserMessageEncoder::encode):
1641         (WebKit::InjectedBundleUserMessageDecoder::decode):
1642         * WebProcess/MediaCache/WebMediaCacheManager.h:
1643         * WebProcess/Network/NetworkProcessConnection.cpp:
1644         (WebKit::NetworkProcessConnection::NetworkProcessConnection):
1645         (WebKit::NetworkProcessConnection::didReceiveMessage):
1646         (WebKit::NetworkProcessConnection::didReceiveSyncMessage):
1647         (WebKit::NetworkProcessConnection::didClose):
1648         (WebKit::NetworkProcessConnection::didReceiveInvalidMessage):
1649         * WebProcess/Network/NetworkProcessConnection.h:
1650         (WebKit::NetworkProcessConnection::create):
1651         (WebKit::NetworkProcessConnection::connection):
1652         * WebProcess/Network/WebResourceLoader.cpp:
1653         (WebKit::WebResourceLoader::messageSenderConnection):
1654         (WebKit::WebResourceLoader::didReceiveData):
1655         * WebProcess/Network/WebResourceLoader.h:
1656         * WebProcess/Network/WebResourceLoader.messages.in:
1657         * WebProcess/Notifications/WebNotificationManager.h:
1658         * WebProcess/OriginData/WebOriginDataManager.h:
1659         * WebProcess/Plugins/PDF/PDFPlugin.h:
1660         * WebProcess/Plugins/Plugin.cpp:
1661         (WebKit::Plugin::Parameters::encode):
1662         (WebKit::Plugin::Parameters::decode):
1663         * WebProcess/Plugins/Plugin.h:
1664         * WebProcess/Plugins/PluginProcessConnection.cpp:
1665         (WebKit::PluginProcessConnection::PluginProcessConnection):
1666         (WebKit::PluginProcessConnection::didReceiveMessage):
1667         (WebKit::PluginProcessConnection::didReceiveSyncMessage):
1668         (WebKit::PluginProcessConnection::didClose):
1669         (WebKit::PluginProcessConnection::didReceiveInvalidMessage):
1670         * WebProcess/Plugins/PluginProcessConnection.h:
1671         (WebKit::PluginProcessConnection::create):
1672         (WebKit::PluginProcessConnection::connection):
1673         * WebProcess/Plugins/PluginProcessConnectionManager.cpp:
1674         (WebKit::PluginProcessConnectionManager::initializeConnection):
1675         (WebKit::PluginProcessConnectionManager::getPluginProcessConnection):
1676         (WebKit::PluginProcessConnectionManager::pluginProcessCrashed):
1677         * WebProcess/Plugins/PluginProcessConnectionManager.h:
1678         * WebProcess/Plugins/PluginProxy.cpp:
1679         (WebKit::PluginProxy::geometryDidChange):
1680         (WebKit::PluginProxy::streamDidReceiveData):
1681         (WebKit::PluginProxy::manualStreamDidReceiveData):
1682         * WebProcess/Plugins/PluginProxy.h:
1683         * WebProcess/ResourceCache/WebResourceCacheManager.h:
1684         * WebProcess/Storage/StorageAreaMap.h:
1685         * WebProcess/WebConnectionToUIProcess.cpp:
1686         (WebKit::WebConnectionToUIProcess::encodeMessageBody):
1687         (WebKit::WebConnectionToUIProcess::decodeMessageBody):
1688         (WebKit::WebConnectionToUIProcess::messageSenderConnection):
1689         * WebProcess/WebConnectionToUIProcess.h:
1690         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
1691         (WebKit::WebChromeClient::runJavaScriptAlert):
1692         (WebKit::WebChromeClient::runJavaScriptConfirm):
1693         (WebKit::WebChromeClient::runJavaScriptPrompt):
1694         * WebProcess/WebCoreSupport/WebDatabaseManager.h:
1695         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1696         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse):
1697         * WebProcess/WebPage/DecoderAdapter.cpp:
1698         (WebKit::DecoderAdapter::decodeBytes):
1699         (WebKit::DecoderAdapter::decodeString):
1700         * WebProcess/WebPage/DecoderAdapter.h:
1701         * WebProcess/WebPage/DrawingArea.h:
1702         * WebProcess/WebPage/EncoderAdapter.cpp:
1703         (WebKit::EncoderAdapter::dataReference):
1704         (WebKit::EncoderAdapter::encodeBytes):
1705         (WebKit::EncoderAdapter::encodeString):
1706         * WebProcess/WebPage/EncoderAdapter.h:
1707         * WebProcess/WebPage/EventDispatcher.cpp:
1708         (WebKit::EventDispatcher::initializeConnection):
1709         * WebProcess/WebPage/EventDispatcher.h:
1710         * WebProcess/WebPage/LayerTreeHost.h:
1711         * WebProcess/WebPage/ViewGestureGeometryCollector.h:
1712         * WebProcess/WebPage/WebInspector.cpp:
1713         (WebKit::WebInspector::createInspectorPage):
1714         * WebProcess/WebPage/WebInspector.h:
1715         * WebProcess/WebPage/WebPage.cpp:
1716         (WebKit::WebPage::messageSenderConnection):
1717         (WebKit::WebPage::loadURL):
1718         (WebKit::WebPage::loadURLRequest):
1719         (WebKit::WebPage::loadDataImpl):
1720         (WebKit::WebPage::loadString):
1721         (WebKit::WebPage::loadData):
1722         (WebKit::WebPage::loadHTMLString):
1723         (WebKit::WebPage::loadAlternateHTMLString):
1724         (WebKit::WebPage::loadPlainTextString):
1725         (WebKit::WebPage::loadWebArchiveData):
1726         (WebKit::WebPage::postInjectedBundleMessage):
1727         (WebKit::WebPage::runJavaScriptInMainFrame):
1728         (WebKit::WebPage::getContentsAsMHTMLData):
1729         (WebKit::WebPage::getSelectionAsWebArchiveData):
1730         (WebKit::WebPage::getMainResourceDataOfFrame):
1731         (WebKit::WebPage::getResourceDataFromFrame):
1732         (WebKit::WebPage::getWebArchiveOfFrame):
1733         (WebKit::WebPage::didReceiveMessage):
1734         (WebKit::WebPage::didReceiveSyncMessage):
1735         (WebKit::WebPage::drawPagesToPDF):
1736         (WebKit::WebPage::savePDFToFileInDownloadsFolder):
1737         (WebKit::WebPage::savePDFToTemporaryFolderAndOpenWithNativeApplication):
1738         * WebProcess/WebPage/WebPage.h:
1739         * WebProcess/WebPage/WebPage.messages.in:
1740         * WebProcess/WebPage/WebPageGroupProxy.h:
1741         * WebProcess/WebPage/mac/WebPageMac.mm:
1742         (WebKit::WebPage::platformInitialize):
1743         (WebKit::WebPage::registerUIProcessAccessibilityTokens):
1744         * WebProcess/WebProcess.cpp:
1745         (WebKit::WebProcess::initializeConnection):
1746         (WebKit::WebProcess::downloadProxyConnection):
1747         (WebKit::WebProcess::initializeWebProcess):
1748         (WebKit::WebProcess::ensureNetworkProcessConnection):
1749         (WebKit::WebProcess::didReceiveSyncMessage):
1750         (WebKit::WebProcess::didReceiveMessage):
1751         (WebKit::WebProcess::didClose):
1752         (WebKit::WebProcess::didReceiveInvalidMessage):
1753         (WebKit::WebProcess::postInjectedBundleMessage):
1754         (WebKit::WebProcess::ensureWebToDatabaseProcessConnection):
1755         * WebProcess/WebProcess.h:
1756         * WebProcess/WebProcess.messages.in:
1757         * WebProcess/mac/WebProcessMac.mm:
1758         (WebKit::WebProcess::platformInitializeWebProcess):
1759         * config.h:
1760
1761 2013-12-30  Anders Carlsson  <andersca@apple.com>
1762
1763         Move remaining IPC related files to Platform/IPC.
1764
1765         Rubber-stamped by Andreas Kling.
1766
1767         * Platform/IPC/ArgumentCoder.h: Renamed from Source/WebKit2/Platform/CoreIPC/ArgumentCoder.h.
1768         * Platform/IPC/ArgumentCoders.cpp: Renamed from Source/WebKit2/Platform/CoreIPC/ArgumentCoders.cpp.
1769         * Platform/IPC/ArgumentCoders.h: Renamed from Source/WebKit2/Platform/CoreIPC/ArgumentCoders.h.
1770         * Platform/IPC/ArgumentDecoder.cpp: Renamed from Source/WebKit2/Platform/CoreIPC/ArgumentDecoder.cpp.
1771         * Platform/IPC/ArgumentDecoder.h: Renamed from Source/WebKit2/Platform/CoreIPC/ArgumentDecoder.h.
1772         * Platform/IPC/ArgumentEncoder.cpp: Renamed from Source/WebKit2/Platform/CoreIPC/ArgumentEncoder.cpp.
1773         * Platform/IPC/ArgumentEncoder.h: Renamed from Source/WebKit2/Platform/CoreIPC/ArgumentEncoder.h.
1774         * Platform/IPC/Arguments.h: Renamed from Source/WebKit2/Platform/CoreIPC/Arguments.h.
1775         * Platform/IPC/Attachment.cpp: Renamed from Source/WebKit2/Platform/CoreIPC/Attachment.cpp.
1776         * Platform/IPC/Attachment.h: Renamed from Source/WebKit2/Platform/CoreIPC/Attachment.h.
1777         * Platform/IPC/Connection.cpp: Renamed from Source/WebKit2/Platform/CoreIPC/Connection.cpp.
1778         * Platform/IPC/Connection.h: Renamed from Source/WebKit2/Platform/CoreIPC/Connection.h.
1779         * Platform/IPC/HandleMessage.h: Renamed from Source/WebKit2/Platform/CoreIPC/HandleMessage.h.
1780         * Platform/IPC/MessageDecoder.cpp: Renamed from Source/WebKit2/Platform/CoreIPC/MessageDecoder.cpp.
1781         * Platform/IPC/MessageDecoder.h: Renamed from Source/WebKit2/Platform/CoreIPC/MessageDecoder.h.
1782         * Platform/IPC/MessageEncoder.cpp: Renamed from Source/WebKit2/Platform/CoreIPC/MessageEncoder.cpp.
1783         * Platform/IPC/MessageEncoder.h: Renamed from Source/WebKit2/Platform/CoreIPC/MessageEncoder.h.
1784         * Platform/IPC/MessageFlags.h: Renamed from Source/WebKit2/Platform/CoreIPC/MessageFlags.h.
1785         * Platform/IPC/MessageReceiver.h: Renamed from Source/WebKit2/Platform/CoreIPC/MessageReceiver.h.
1786         * Platform/IPC/MessageReceiverMap.cpp: Renamed from Source/WebKit2/Platform/CoreIPC/MessageReceiverMap.cpp.
1787         * Platform/IPC/MessageReceiverMap.h: Renamed from Source/WebKit2/Platform/CoreIPC/MessageReceiverMap.h.
1788         * Platform/IPC/mac/ConnectionMac.cpp: Renamed from Source/WebKit2/Platform/CoreIPC/mac/ConnectionMac.cpp.
1789         * Platform/IPC/mac/ImportanceAssertion.h: Renamed from Source/WebKit2/Platform/CoreIPC/mac/ImportanceAssertion.h.
1790         * Platform/IPC/mac/MachPort.h: Renamed from Source/WebKit2/Platform/CoreIPC/mac/MachPort.h.
1791         * Platform/IPC/unix/AttachmentUnix.cpp: Renamed from Source/WebKit2/Platform/CoreIPC/unix/AttachmentUnix.cpp.
1792         * Platform/IPC/unix/ConnectionUnix.cpp: Renamed from Source/WebKit2/Platform/CoreIPC/unix/ConnectionUnix.cpp.
1793         * WebKit2.xcodeproj/project.pbxproj:
1794
1795 2013-12-30  Martin Robinson  <mrobinson@igalia.com>
1796
1797         [GTK] [CMake] Parallel build sometimes fails when building libWebKit2APITestCore
1798         https://bugs.webkit.org/show_bug.cgi?id=126294
1799
1800         Reviewed by Daniel Bates.
1801
1802         * UIProcess/API/gtk/tests/CMakeLists.txt: Give libWebKit2APITestCore a dependency on
1803         WebKit2 so that it's always built before the auto-generated sources.
1804
1805 2013-12-30  Martin Robinson  <mrobinson@igalia.com>
1806
1807         [CMake] [GTK] Add support for GObject introspection
1808         https://bugs.webkit.org/show_bug.cgi?id=126162
1809
1810         Reviewed by Daniel Bates.
1811
1812         * PlatformGTK.cmake: Add the GIR targets, split the installed headers list
1813         between WebKitWebExtension and the WebKit2 library. Update the headers list
1814         with new headers.
1815
1816 2013-12-30  Michał Pakuła vel Rutka  <m.pakula@samsung.com>
1817
1818         [EFL][WK2] Replace ecore_main_loop_iterate with waitUntilTrue in ewk tests
1819         https://bugs.webkit.org/show_bug.cgi?id=125919
1820
1821         Reviewed by Gyuyoung Kim.
1822
1823         Using ecore_main_loop_iterate in while loop may result in tests hang-up when
1824         condition is not met. Replacing it with waitUntilTrue introduces a timer
1825         after which internal loop is canceled. This will cause test to fail instead
1826         of running infinitely.
1827
1828         * UIProcess/API/efl/tests/test_ewk2_auth_request.cpp:
1829         (TEST_F):
1830         * UIProcess/API/efl/tests/test_ewk2_color_picker.cpp:
1831         (TEST_F):
1832         * UIProcess/API/efl/tests/test_ewk2_cookie_manager.cpp:
1833         (TEST_F):
1834         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
1835         (EWK2ViewTest::onVibrate):
1836         (EWK2ViewTest::onCancelVibration):
1837         (EWK2ViewTest::loadVibrationHTMLString):
1838         (TEST_F):
1839
1840 2013-12-30  Carlos Garcia Campos  <cgarcia@igalia.com>
1841
1842         [GTK] Split WebKit2APITests/TestWebKitWebView
1843         https://bugs.webkit.org/show_bug.cgi?id=126284
1844
1845         Reviewed by Philippe Normand.
1846
1847         WebKitWebView test is too big already making more difficult to
1848         handle timeouts and skipped tests. Split it in 3 by moving
1849         UIClient and auth tests to their own files.
1850
1851         * UIProcess/API/gtk/tests/GNUmakefile.am:
1852         * UIProcess/API/gtk/tests/TestAuthentication.cpp: Added.
1853         (testWebViewAuthenticationRequest):
1854         (testWebViewAuthenticationCancel):
1855         (testWebViewAuthenticationLoadCancelled):
1856         (testWebViewAuthenticationFailure):
1857         (testWebViewAuthenticationNoCredential):
1858         (testWebViewAuthenticationStorage):
1859         (testWebViewAuthenticationSuccess):
1860         (serverCallback):
1861         (beforeAll):
1862         (afterAll):
1863         * UIProcess/API/gtk/tests/TestUIClient.cpp: Added.
1864         (testWebViewCreateReadyClose):
1865         (checkMimeTypeForFilter):
1866         (testWebViewAllowModalDialogs):
1867         (testWebViewDisallowModalDialogs):
1868         (testWebViewJavaScriptDialogs):
1869         (testWebViewWindowProperties):
1870         (testWebViewMouseTarget):
1871         (testWebViewPermissionRequests):
1872         (testWebViewFileChooserRequest):
1873         (beforeAll):
1874         (afterAll):
1875         * UIProcess/API/gtk/tests/TestWebKitWebView.cpp:
1876         (beforeAll):
1877         (afterAll):
1878
1879 2013-12-29  Martin Robinson  <mrobinson@igalia.com>
1880
1881         [GTK] [CMake] Convenience libraries that export API should be compiled with --whole-archive on Unix
1882         https://bugs.webkit.org/show_bug.cgi?id=126232
1883
1884         Reviewed by Gustavo Noronha Silva.
1885
1886         * PlatformGTK.cmake: Prefix libGObjectDOMBindings with --whole-archive so that
1887         symbols are not omitted during final linking.
1888
1889 2013-12-26  Sam Weinig  <sam@webkit.org>
1890
1891         Move FilterIterator and IteratorPair to WTF and reimplement HashMap::keys() and HashMap::values() using IteratorPair
1892         https://bugs.webkit.org/show_bug.cgi?id=126253
1893
1894         Reviewed by Anders Carlsson.
1895
1896         * Shared/APIArray.h:
1897         Update includes and make elementsOfType() a bit easier to read by using a typedef and some
1898         judicial indentation.
1899
1900         * Shared/FilterIterator.h: Moved to WTF.
1901         * Shared/IteratorPair.h: Moved to WTF.
1902         
1903         * WebKit2.xcodeproj/project.pbxproj:
1904         Remove the two files.
1905
1906 2013-12-28  Kwang Yul Seo  <skyul@company100.net>
1907
1908         [WK2][SOUP] Fix handling of cookies when network process is enabled
1909         https://bugs.webkit.org/show_bug.cgi?id=125576
1910
1911         Reviewed by Carlos Garcia Campos.
1912
1913         Initialize the network process with cookie accept policy, persistent
1914         storage path and type. Use
1915         WebContext::sendToNetworkingProcessRelaunchingIfNecessary instead of
1916         WebContext::sendToAllProcessesRelaunchingThemIfNecessary to send
1917         SetCookiePersistentStorage message.
1918
1919         * NetworkProcess/soup/NetworkProcessSoup.cpp:
1920         (WebKit::NetworkProcess::platformInitializeNetworkProcess):
1921         * Shared/Network/NetworkProcessCreationParameters.cpp:
1922         (WebKit::NetworkProcessCreationParameters::encode):
1923         (WebKit::NetworkProcessCreationParameters::decode):
1924         * Shared/Network/NetworkProcessCreationParameters.h:
1925         * UIProcess/soup/WebContextSoup.cpp:
1926         (WebKit::WebContext::platformInitializeNetworkProcess):
1927         * UIProcess/soup/WebCookieManagerProxySoup.cpp:
1928         (WebKit::WebCookieManagerProxy::setCookiePersistentStorage):
1929         * WebProcess/soup/WebProcessSoup.cpp:
1930         (WebKit::WebProcess::platformInitializeWebProcess):
1931
1932 2013-12-27  Daniel Bates  <dabates@apple.com>
1933
1934         [iOS] Upstream WebCore/page changes
1935         https://bugs.webkit.org/show_bug.cgi?id=126180
1936
1937         Reviewed by Darin Adler.
1938
1939         * WebProcess/WebCoreSupport/WebChromeClient.h:
1940         * WebProcess/WebCoreSupport/ios/WebChromeClientIOS.mm: Added.
1941         * WebProcess/WebPage/WebPage.cpp: Include header <WebCore/HitTestResult.h>.
1942
1943 2013-12-27  Gavin Barraclough  <barraclough@apple.com>
1944
1945         Merge PageVisibilityState & ViewState::IsVisible in WebKit2
1946         https://bugs.webkit.org/show_bug.cgi?id=126214
1947
1948         Reviewed by Alexey Proskuryakov.
1949
1950         WebKit2 redundantly tracks the visibility of the view through two mechanisms - the visibility
1951         state, and the view state. Remove visibility state from the WebKit2 layer. The visibility
1952         state also tracks the prerender state - so split this out and handle it separately (a change
1953         we should make in WebCore, too).
1954
1955         Removing the redundancy also removes the ability from the API to set a fake visibility state
1956         (IsVisible tracks the actual visibility of the view). Through private API
1957         (WKPageSetVisibilityState) a client could previously request the view be reported as hidden or
1958         visible, but this didn't really work - the override was not enforced and the API may reset the
1959         state at an arbitrary point. The mechanism is only used by testing code, which instead should
1960         actually update the view visibility (this tests more of the actual visibility mechanisms used
1961         by the browser). The one aspect of the API relied on by existing clients is the ability to
1962         initialize a hidden view as prerender - continue to support this specific functionality via
1963         WKPageSetVisibilityState, to maintain backwards compatibility.
1964
1965         - WebKit2 - remove internal state that tracks page visibility separately from the view state
1966         visibility. For backwards compatibility continue to support the WKPageSetVisibilityState API,
1967         but only to initialize the state to prerender.
1968
1969         * UIProcess/API/C/WKPage.cpp:
1970         (WKPageSetVisibilityState):
1971             - only support initializing the visibility state to prerender.
1972         * UIProcess/WebPageProxy.cpp:
1973         (WebKit::WebPageProxy::WebPageProxy):
1974             - remove m_visibilityState
1975         (WebKit::WebPageProxy::initializeWebPage):
1976             - no need to send initial visibility state (this is sent as a part of the creation parameters).
1977         (WebKit::WebPageProxy::viewStateDidChange):
1978             - no need to send visibility state change (this is sent as a part of view state).
1979         (WebKit::WebPageProxy::setVisibilityStatePrerender):
1980             - setVisibilityState -> setVisibilityStatePrerender.
1981         * UIProcess/WebPageProxy.h:
1982             - remove m_visibilityState, setVisibilityState -> setVisibilityStatePrerender.
1983         * WebProcess/WebPage/WebPage.cpp:
1984         (WebKit::WebPage::WebPage):
1985             - added call to updateVisibilityState.
1986         (WebKit::WebPage::setViewIsVisible):
1987             - added call to updateVisibilityState.
1988         (WebKit::WebPage::updateVisibilityState):
1989             - previously setVisibilityState, updates the page visibility state according to the view state.
1990         (WebKit::WebPage::setVisibilityStatePrerender):
1991             - set visibility state to prerender.
1992         * WebProcess/WebPage/WebPage.h:
1993             - remove m_visibilityState, setVisibilityState -> setVisibilityStatePrerender.
1994         * WebProcess/WebPage/WebPage.messages.in:
1995             - SetVisibilityState -> SetVisibilityStatePrerender.
1996
1997 2013-12-27  Zan Dobersek  <zdobersek@igalia.com>
1998
1999         [GTK] Unnecessary code is built into WebKitPluginProcess
2000         https://bugs.webkit.org/show_bug.cgi?id=126259
2001
2002         Reviewed by Carlos Garcia Campos.
2003
2004         * GNUmakefile.list.am: Stop building ChildProcessProxy and ProcessLauncher classes into WebKitPluginProcess.
2005         That code is not required in the plugin process, as one would expect.
2006
2007 2013-12-27  Ryuan Choi  <ryuan.choi@samsung.com>
2008
2009         [EFL][WK2] MiniBrowser scale up/down infinitely after r161087
2010         https://bugs.webkit.org/show_bug.cgi?id=126254
2011
2012         Reviewed by Gyuyoung Kim.
2013
2014         After r161087, contentScaleFactor of WebView is synced with pageScaleFactor
2015         of WebPage. It means that WKViewGetContentScaleFactor might not be same
2016         with PageViewportController's current scale value until received PageScaleFactorDidChange.
2017
2018         * UIProcess/efl/PageViewportControllerClientEfl.cpp:
2019         (WebKit::PageViewportControllerClientEfl::setViewportPosition):
2020         Use controller's current scale just to update and sync the position.
2021
2022 2013-12-26  Martin Robinson  <mrobinson@igalia.com>
2023
2024         Small build fix for the GTK+ CMake port
2025
2026         * UIProcess/API/gtk/tests/CMakeLists.txt: Make the way the output directory is specified similar
2027         to the WebKit1 version of these tests, so that it is more difficult to inadvertently specify the
2028         wrong directory.
2029
2030 2013-12-26  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
2031
2032         [WK2][CoordinatedGraphics] Removing duplicate scale information from WebVIew.cpp
2033         https://bugs.webkit.org/show_bug.cgi?id=126243
2034
2035         Reviewed by Benjamin Poulain.
2036
2037         The scale factor of the WebView must reflect the same information present in
2038         WebPageProxy.
2039         Previously, in WebView.cpp, there was a m_contentScaleFactor member, which adds
2040         information duplication and needs to be synchronizing with pageScaleFactor in
2041         WebPageProxy. We can avoid this by just making WebView access and set WebPageProxy's
2042         pageScaleFactor directly.
2043
2044         * UIProcess/CoordinatedGraphics/WebView.cpp:
2045         (WebKit::WebView::WebView):
2046         (WebKit::WebView::setContentScaleFactor):
2047         (WebKit::WebView::transformToScene):
2048         (WebKit::WebView::visibleContentsSize):
2049         * UIProcess/CoordinatedGraphics/WebView.h:
2050         (WebKit::WebView::contentScaleFactor):
2051
2052 2013-12-25  Commit Queue  <commit-queue@webkit.org>
2053
2054         Unreviewed, rolling out r161033 and r161074.
2055         http://trac.webkit.org/changeset/161033
2056         http://trac.webkit.org/changeset/161074
2057         https://bugs.webkit.org/show_bug.cgi?id=126240
2058
2059         Oliver says that a rollout would be better (Requested by ap on
2060         #webkit).
2061
2062         * WebProcess/Plugins/Netscape/NPJSObject.cpp:
2063         (WebKit::NPJSObject::setProperty):
2064
2065 2013-12-25  Brady Eidson  <beidson@apple.com>
2066
2067         DatabaseProcess: Implement version changing
2068         https://bugs.webkit.org/show_bug.cgi?id=126099
2069
2070         Reviewed by Sam Weinig.
2071
2072         * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.cpp:
2073         (WebKit::DatabaseProcessIDBConnection::getOrEstablishIDBDatabaseMetadata): Add logging.
2074         (WebKit::DatabaseProcessIDBConnection::openTransaction): Ditto.
2075         (WebKit::DatabaseProcessIDBConnection::beginTransaction): Ditto.
2076         (WebKit::DatabaseProcessIDBConnection::commitTransaction): Ditto.
2077         (WebKit::DatabaseProcessIDBConnection::resetTransaction): Ditto.
2078         (WebKit::DatabaseProcessIDBConnection::rollbackTransaction): Ditto.
2079         (WebKit::DatabaseProcessIDBConnection::changeDatabaseVersion): Implement this!
2080         * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.h:
2081         * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.messages.in:
2082
2083         * DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:
2084         (WebKit::UniqueIDBDatabase::shutdown): Clean up all requests, and also cleanup the backing store
2085           on the database queue.
2086         (WebKit::UniqueIDBDatabase::shutdownBackingStore): Shutdown the backing store.
2087         (WebKit::UniqueIDBDatabase::didShutdownBackingStore):
2088         (WebKit::UniqueIDBDatabase::changeDatabaseVersion): Pass along the new version to the database queue.
2089         (WebKit::UniqueIDBDatabase::didChangeDatabaseVersion):
2090         (WebKit::UniqueIDBDatabase::changeDatabaseVersionInBackingStore): Set the new version in the backing store.
2091         (WebKit::UniqueIDBDatabase::postMainThreadTask): Add a ref() to keep the database alive incase it is being
2092           shutdown on the main thread.
2093         (WebKit::UniqueIDBDatabase::performNextMainThreadTask): Balance the ref() from postMainThreadTask, and
2094           accept an empty mainThreadTask queue.
2095         * DatabaseProcess/IndexedDB/UniqueIDBDatabase.h:
2096
2097         * DatabaseProcess/IndexedDB/UniqueIDBDatabaseBackingStore.h: Add changeDatabaseVersion.
2098
2099         Flesh out SQLiteIDBTransaction to actually operation on a SQLiteTransaction in a real SQLiteDatabase:
2100         * DatabaseProcess/IndexedDB/sqlite/SQLiteIDBTransaction.cpp:
2101         (WebKit::SQLiteIDBTransaction::SQLiteIDBTransaction):
2102         (WebKit::SQLiteIDBTransaction::~SQLiteIDBTransaction):
2103         (WebKit::SQLiteIDBTransaction::begin):
2104         (WebKit::SQLiteIDBTransaction::commit):
2105         (WebKit::SQLiteIDBTransaction::reset):
2106         (WebKit::SQLiteIDBTransaction::rollback):
2107         (WebKit::SQLiteIDBTransaction::inProgress):
2108         * DatabaseProcess/IndexedDB/sqlite/SQLiteIDBTransaction.h:
2109         (WebKit::SQLiteIDBTransaction::create):
2110         (WebKit::SQLiteIDBTransaction::mode):
2111
2112         Rename m_metadataDB to m_sqliteDB, 
2113         * DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:
2114         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::createAndPopulateInitialMetadata):
2115         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::extractExistingMetadata):
2116         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::openSQLiteDatabaseAtPath): Disable threading checks on the DB
2117           as work queues can change threads.
2118         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::getOrEstablishMetadata):
2119         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::establishTransaction):
2120         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::beginTransaction):
2121         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::changeDatabaseVersion): After validating the transaction, actually
2122           update the version number on disk.
2123         * DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.h:
2124
2125         * WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:
2126         (WebKit::WebIDBServerConnection::~WebIDBServerConnection): Make sure to abort in-flight requests.
2127         (WebKit::WebIDBServerConnection::changeDatabaseVersion): 
2128         (WebKit::WebIDBServerConnection::didChangeDatabaseVersion):
2129         * WebProcess/Databases/IndexedDB/WebIDBServerConnection.h:
2130         * WebProcess/Databases/IndexedDB/WebIDBServerConnection.messages.in:
2131
2132 2013-12-25  Martin Robinson  <mrobinson@igalia.com>
2133
2134         [GTK] [CMake] Fix CMake style errors in Source/WebKit2/PlatformGTK.cmake
2135         https://bugs.webkit.org/show_bug.cgi?id=126221
2136
2137         Reviewed by Gustavo Noronha Silva.
2138
2139         * PlatformGTK.cmake: Fix CMake style errors.
2140
2141 2013-12-25  Martin Robinson  <mrobinson@igalia.com>
2142
2143         [GTK] [CMake] Clean up generated sources directories
2144         https://bugs.webkit.org/show_bug.cgi?id=126216
2145
2146         Reviewed by Gustavo Noronha Silva.
2147
2148         * PlatformGTK.cmake: Use the new derived sources variables.
2149         * UIProcess/API/gtk/tests/CMakeLists.txt: Ditto.
2150
2151 2013-12-25  Philippe Normand  <pnormand@igalia.com>
2152
2153         Unreviewed, GTK build fix after r161063
2154
2155         * GNUmakefile.am: Use locally built .gir dependencies when
2156         building the WebExtensions gir file.
2157
2158 2013-12-25  Carlos Garcia Campos  <cgarcia@igalia.com>
2159
2160         [GTK] Fix warnings when generating WebExtensions gobject-instrospection files
2161         https://bugs.webkit.org/show_bug.cgi?id=126225
2162
2163         Reviewed by Philippe Normand.
2164
2165         Add transfer annotation to webkit_web_page_get_dom_document() and
2166         document webkit_web_page_get_main_frame().
2167
2168         * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
2169
2170 2013-12-25  Carlos Garcia Campos  <cgarcia@igalia.com>
2171
2172         [GTK] Missing introspection information for WebExtensions
2173         https://bugs.webkit.org/show_bug.cgi?id=122407
2174
2175         Reviewed by Philippe Normand.
2176
2177         Generate WebKit2WebExtension-3.0.gir with the WebExtensions API
2178         and move the DOM bindings API from WebKit2-3.0.gir to
2179         WebKit2WebExtension-3.0.gir.
2180
2181         * GNUmakefile.am:
2182
2183 2013-12-24  Ryosuke Niwa  <rniwa@webkit.org>
2184
2185         32-bit Mac build fix attempt after r161045.
2186
2187         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
2188         (WebKit::windowMap):
2189
2190 2013-12-22  Sam Weinig  <sam@webkit.org>
2191
2192         [WK2] Replace usage of DEFINE_STATIC_LOCAL with NeverDestroyed
2193         https://bugs.webkit.org/show_bug.cgi?id=126144
2194
2195         Reviewed by Anders Carlsson.
2196
2197         * DatabaseProcess/DatabaseProcess.cpp:
2198         (WebKit::DatabaseProcess::shared):
2199         * DatabaseProcess/DatabaseProcess.h:
2200         * NetworkProcess/FileAPI/NetworkBlobRegistry.cpp:
2201         (WebKit::NetworkBlobRegistry::shared):
2202         * NetworkProcess/NetworkProcess.cpp:
2203         (WebKit::NetworkProcess::shared):
2204         (WebKit::NetworkProcess::downloadManager):
2205         * NetworkProcess/NetworkProcess.h:
2206         * NetworkProcess/NetworkProcessPlatformStrategies.cpp:
2207         (WebKit::NetworkProcessPlatformStrategies::initialize):
2208         * NetworkProcess/mac/RemoteNetworkingContext.mm:
2209         (WebKit::privateBrowsingStorageSessionIdentifierBase):
2210         * Platform/CoreIPC/Connection.cpp:
2211         (CoreIPC::Connection::SyncMessageState::syncMessageStateMap):
2212         (CoreIPC::Connection::SyncMessageState::syncMessageStateMapMutex):
2213         * PluginProcess/PluginProcess.cpp:
2214         (WebKit::PluginProcess::shared):
2215         * PluginProcess/PluginProcess.h:
2216         * PluginProcess/mac/PluginProcessMac.mm:
2217         (WebKit::fullscreenWindowTracker):
2218         * Shared/ConnectionStack.cpp:
2219         (WebKit::ConnectionStack::shared):
2220         * Shared/Plugins/Netscape/NetscapePluginModule.cpp:
2221         (WebKit::initializedNetscapePluginModules):
2222         * Shared/WebContextMenuItem.cpp:
2223         (WebKit::WebContextMenuItem::separatorItem):
2224         * Shared/WebPreferencesStore.cpp:
2225         (WebKit::boolTestRunnerOverridesMap):
2226         * Shared/mac/CookieStorageShim.cpp:
2227         (WebKit::CookieStorageShim::shared):
2228         * Shared/mac/CookieStorageShim.h:
2229         (WebKit::CookieStorageShim::CookieStorageShim):
2230         * UIProcess/Plugins/PluginProcessManager.cpp:
2231         (WebKit::PluginProcessManager::shared):
2232         * UIProcess/Plugins/PluginProcessManager.h:
2233         * UIProcess/WebContext.cpp:
2234         (WebKit::contexts):
2235         * UIProcess/WebDatabaseManagerProxy.cpp:
2236         (WebKit::WebDatabaseManagerProxy::originKey):
2237         (WebKit::WebDatabaseManagerProxy::originQuotaKey):
2238         (WebKit::WebDatabaseManagerProxy::originUsageKey):
2239         (WebKit::WebDatabaseManagerProxy::databaseDetailsKey):
2240         (WebKit::WebDatabaseManagerProxy::databaseDetailsNameKey):
2241         (WebKit::WebDatabaseManagerProxy::databaseDetailsDisplayNameKey):
2242         (WebKit::WebDatabaseManagerProxy::databaseDetailsExpectedUsageKey):
2243         (WebKit::WebDatabaseManagerProxy::databaseDetailsCurrentUsageKey):
2244         * UIProcess/WebInspectorProxy.cpp:
2245         (WebKit::WebInspectorPageGroups::shared):
2246         * UIProcess/WebPageGroup.cpp:
2247         (WebKit::webPageGroupMap):
2248         * UIProcess/WebPageProxy.cpp:
2249         (WebKit::ExceededDatabaseQuotaRecords::shared):
2250         (WebKit::WebPageProxy::executeEditCommand):
2251         * UIProcess/WebProcessProxy.cpp:
2252         (WebKit::globalPageMap):
2253         * UIProcess/cf/WebBackForwardListCF.cpp:
2254         (WebKit::SessionHistoryCurrentVersion):
2255         (WebKit::createEmptySessionHistoryDictionary):
2256         (WebKit::WebBackForwardList::createCFDictionaryRepresentation):
2257         (WebKit::WebBackForwardList::restoreFromCFDictionaryRepresentation):
2258         (WebKit::WebBackForwardList::restoreFromV0CFDictionaryRepresentation):
2259         (WebKit::WebBackForwardList::restoreFromV1CFDictionaryRepresentation):
2260         (WebKit::extractBackForwardListEntriesFromArray):
2261         * UIProcess/cf/WebPageProxyCF.cpp:
2262         (WebKit::WebPageProxy::sessionStateData):
2263         (WebKit::WebPageProxy::restoreFromSessionStateData):
2264         * UIProcess/mac/WebPageProxyMac.mm:
2265         (WebKit::WebPageProxy::standardUserAgent):
2266         * WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.cpp:
2267         (WebKit::sharedDatabaseBackendMap):
2268         * WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:
2269         (WebKit::generateServerConnectionIdentifier):
2270         * WebProcess/InjectedBundle/API/mac/WKDOMInternals.mm:
2271         (WebKit::WKDOMNodeCache):
2272         (WebKit::WKDOMRangeCache):
2273         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
2274         (WebKit::domHandleCache):
2275         * WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp:
2276         (WebKit::domHandleCache):
2277         * WebProcess/InjectedBundle/InjectedBundleDOMWindowExtension.cpp:
2278         (WebKit::allExtensions):
2279         * WebProcess/InjectedBundle/InjectedBundleScriptWorld.cpp:
2280         (WebKit::allWorlds):
2281         * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
2282         (WebKit::globalExceptionString):
2283         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
2284         (WebKit::windowMap):
2285         * WebProcess/Storage/StorageNamespaceImpl.cpp:
2286         (WebKit::localStorageNamespaceMap):
2287         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
2288         (WebKit::WebEditorClient::didBeginEditing):
2289         (WebKit::WebEditorClient::respondToChangedContents):
2290         (WebKit::WebEditorClient::respondToChangedSelection):
2291         (WebKit::WebEditorClient::didEndEditing):
2292         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2293         (WebKit::WebFrameLoaderClient::shouldFallBack):
2294         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
2295         (WebKit::WebPlatformStrategies::initialize):
2296         * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
2297         * WebProcess/WebPage/WebBackForwardListProxy.cpp:
2298         (WebKit::idToHistoryItemMap):
2299         (WebKit::historyItemToIDMap):
2300         * WebProcess/WebProcess.cpp:
2301         (WebKit::WebProcess::downloadManager):
2302         * WebProcess/WebProcess.h:
2303         * config.h:
2304
2305 2013-12-23  Tim Horton  <timothy_horton@apple.com>
2306
2307         Fix the iOS build after r161013 and r160672.
2308
2309         * Shared/mac/RemoteLayerTreePropertyApplier.mm:
2310         (WebKit::updateCustomAppearance):
2311         * Shared/mac/RemoteLayerTreeTransaction.mm:
2312
2313 2013-12-23  Ryuan Choi  <ryuan.choi@samsung.com>
2314
2315         Unreviewed build fix for EFL after r161007
2316
2317         * UIProcess/CoordinatedGraphics/CoordinatedDrawingAreaProxy.cpp:
2318         (WebKit::CoordinatedDrawingAreaProxy::waitForAndDispatchDidUpdateBackingStoreState):
2319         Changed the timeout parameter to std::chrono::milliseconds
2320
2321 2013-12-23  Oliver Hunt  <oliver@apple.com>
2322
2323         Refactor PutPropertySlot to be aware of custom properties
2324         https://bugs.webkit.org/show_bug.cgi?id=126187
2325
2326         Reviewed by msaboff.
2327
2328         Update for new method signatures.
2329
2330         * WebProcess/Plugins/Netscape/NPJSObject.cpp:
2331         (WebKit::NPJSObject::setProperty):
2332
2333 2013-12-23  Zan Dobersek  <zdobersek@igalia.com>
2334
2335         [GTK][WK2] Simplify ProcessExecutablePathGtk
2336         https://bugs.webkit.org/show_bug.cgi?id=126173
2337
2338         Reviewed by Martin Robinson.
2339
2340         Don't store process name strings in global variables -- each of the names is only used in the relevant
2341         function, so the string can be directly passed into the findWebKitProcess function call.
2342
2343         Simplify the findWebKitProcess function. Make the execDirectory variable static so that g_getenv is only
2344         called once, as it's not expected for the WEBKIT_EXEC_PATH environment variable to change during the runtime.
2345
2346         Introduce the getExecutablePath helper function that gets the current executable path and, if non-null, returns
2347         the directory path of that executable. The helper function preserves the small performance improvement of querying
2348         and processing the executable path only once.
2349         The return value of getExecutablePath is stored in a static variable and is used to construct the process path
2350         if the executable path was successfully retrieved.
2351
2352         * Shared/gtk/ProcessExecutablePathGtk.cpp:
2353         (WebKit::getExecutablePath):
2354         (WebKit::findWebKitProcess):
2355         (WebKit::executablePathOfWebProcess):
2356         (WebKit::executablePathOfPluginProcess):
2357         (WebKit::executablePathOfNetworkProcess):
2358
2359 2013-12-23  Zan Dobersek  <zdobersek@igalia.com>
2360
2361         Unreviewed build fix for GTK and EFL after r161007.
2362
2363         * UIProcess/DrawingAreaProxyImpl.cpp:
2364         (WebKit::DrawingAreaProxyImpl::waitForAndDispatchDidUpdateBackingStoreState):
2365         Use std::chrono::milliseconds instead of double for the timeout parameter to
2366         CoreIPC::Connection::waitForAndDispatchImmediately.
2367
2368 2013-12-23  Gustavo Noronha Silva  <gns@gnome.org>
2369
2370         [GTK] [CMake] Add support for generating gtkdoc
2371         https://bugs.webkit.org/show_bug.cgi?id=116376
2372
2373         Reviewed by Martin Robinson.
2374
2375         * PlatformGTK.cmake: make generated API files go to DerivedSources/WebKit2, to
2376         match the autotools build and gtkdoc.py's expectation.
2377
2378 2013-12-23  Martin Robinson  <mrobinson@igalia.com>
2379
2380         [GTK] [CMake] Build the WebKit2 GObject API tests
2381         https://bugs.webkit.org/show_bug.cgi?id=125683
2382
2383         Reviewed by Daniel Bates.
2384
2385         * UIProcess/API/gtk/tests/CMakeLists.txt: Added.
2386
2387 2013-12-23  Tim Horton  <timothy_horton@apple.com>
2388
2389         REGRESSION (r160672): Random remote layers are getting shadows
2390         https://bugs.webkit.org/show_bug.cgi?id=126126
2391
2392         Reviewed by Anders Carlsson.
2393
2394         In http://trac.webkit.org/changeset/160672, we unconditionally
2395         check m_properties.customAppearance without regard for whether it
2396         has ever been initialized. This would result in sending an uninitialized
2397         custom appearance to the UI process, which could end up requesting a shadow.
2398
2399         * Shared/mac/RemoteLayerTreeTransaction.mm:
2400         (WebKit::RemoteLayerTreeTransaction::LayerProperties::LayerProperties):
2401         Initialize LayerProperties to the CoreAnimation defaults.
2402
2403         * WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
2404         (PlatformCALayerRemote::PlatformCALayerRemote):
2405         Remove wrongly-placed default initialization of contentsScale;
2406         there's no reason to send it across the wire for every new layer
2407         if it's left at the default.
2408
2409 2013-12-23  Anders Carlsson  <andersca@apple.com>
2410
2411         Use std::chrono::milliseconds for message wait timeouts in WebKit2
2412         https://bugs.webkit.org/show_bug.cgi?id=126168
2413
2414         Reviewed by Sam Weinig.
2415
2416         * Platform/CoreIPC/Connection.cpp:
2417         (CoreIPC::Connection::waitForMessage):
2418         * Platform/CoreIPC/Connection.h:
2419         (CoreIPC::Connection::waitForAndDispatchImmediately):
2420         * UIProcess/API/mac/WKView.mm:
2421         (-[WKView forceAsyncDrawingAreaSizeUpdate:]):
2422         (-[WKView waitForAsyncDrawingAreaSizeUpdate]):
2423         * UIProcess/DrawingAreaProxy.cpp:
2424         * UIProcess/DrawingAreaProxy.h:
2425         (WebKit::DrawingAreaProxy::didUpdateBackingStoreStateTimeout):
2426         (WebKit::DrawingAreaProxy::waitForPossibleGeometryUpdate):
2427         * UIProcess/WebPageProxy.cpp:
2428         (WebKit::WebPageProxy::waitForDidUpdateViewState):
2429         * UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h:
2430         * UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm:
2431         (WebKit::TiledCoreAnimationDrawingAreaProxy::waitForPossibleGeometryUpdate):
2432
2433 2013-12-23  Anders Carlsson  <andersca@apple.com>
2434
2435         Include <condition_variable>, not <thread>.
2436
2437         * Platform/CoreIPC/Connection.h:
2438         * Shared/BlockingResponseMap.h:
2439         * UIProcess/API/mac/WKPrintingView.h:
2440
2441 2013-12-23  Lucas Forschler  <lforschler@apple.com>
2442
2443         <rdar://problem/15682948> Update copyright strings
2444
2445         Reviewed by Dan Bernstein
2446
2447         * DatabaseProcess/EntryPoint/mac/LegacyProcess/Info.plist:
2448         * DatabaseProcess/EntryPoint/mac/XPCService/DatabaseService.Development/Info.plist:
2449         * DatabaseProcess/EntryPoint/mac/XPCService/DatabaseService/Info.plist:
2450         * Info.plist:
2451         * NetworkProcess/EntryPoint/mac/LegacyProcess/Info.plist:
2452         * NetworkProcess/EntryPoint/mac/XPCService/NetworkService.Development/Info.plist:
2453         * NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info-OSX.plist:
2454         * NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info-iOS.plist:
2455         * PluginProcess/EntryPoint/mac/LegacyProcess/Info.plist:
2456         * PluginProcess/EntryPoint/mac/XPCService/PluginService.32-64.Info.plist:
2457         * PluginProcess/EntryPoint/mac/XPCService/PluginService.Development/Info.plist:
2458         * WebProcess/EntryPoint/mac/LegacyProcess/Info.plist:
2459         * WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/Info.plist:
2460         * WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-iOS.plist:
2461         * WebProcess/EntryPoint/mac/XPCService/WebContentService/Info.plist:
2462
2463 2013-12-23  Anders Carlsson  <andersca@apple.com>
2464
2465         Convert ThreadCondition in WebKit2 over to std::condition_variable
2466         https://bugs.webkit.org/show_bug.cgi?id=126161
2467
2468         Reviewed by Sam Weinig.
2469
2470         * Platform/CoreIPC/Connection.cpp:
2471         (CoreIPC::Connection::waitForMessage):
2472         (CoreIPC::Connection::processIncomingMessage):
2473         * Platform/CoreIPC/Connection.h:
2474         * Shared/BlockingResponseMap.h:
2475         (BlockingResponseMap::waitForResponse):
2476         (BlockingResponseMap::didReceiveResponse):
2477         (BlockingResponseMap::cancel):
2478         * UIProcess/API/mac/WKPrintingView.h:
2479         * UIProcess/API/mac/WKPrintingView.mm:
2480         (pageDidDrawToPDF):
2481         (-[WKPrintingView _preparePDFDataForPrintingOnSecondaryThread]):
2482         (prepareDataForPrintingOnSecondaryThread):
2483         (-[WKPrintingView knowsPageRange:]):
2484
2485 2013-12-22  Martin Robinson  <mrobinson@igalia.com>
2486
2487         [GTK][CMake] libtool-compatible soversion calculation
2488         https://bugs.webkit.org/show_bug.cgi?id=125511
2489
2490         Reviewed by Gustavo Noronha Silva.
2491
2492         * CMakeLists.txt: Use the POPULATE_LIBRARY_VERSION macro and the
2493         library-specific version information.
2494
2495 2013-12-23  Gustavo Noronha Silva  <gns@gnome.org>
2496
2497         [GTK] [CMake] Generate pkg-config files
2498         https://bugs.webkit.org/show_bug.cgi?id=125685
2499
2500         Reviewed by Martin Robinson.
2501
2502         * PlatformGTK.cmake: generate webkit2gtk.pc.
2503
2504 2013-12-23  Carlos Garcia Campos  <cgarcia@igalia.com>
2505
2506         [GTK] Build with network process unconditionally
2507         https://bugs.webkit.org/show_bug.cgi?id=126128
2508
2509         Reviewed by Martin Robinson.
2510
2511         Build always with the network process enabled and decide whether
2512         to use it or not using an environment variable. This makes a lot
2513         easier to work on the network process and also to switch between
2514         using it or not.
2515
2516         * GNUmakefile.am: Make sure we always include the WebKit2Prefix.h.
2517         * UIProcess/API/gtk/WebKitWebContext.cpp:
2518         (createDefaultWebContext): Use the network process when
2519         WEBKIT_USE_NETWORK_PROCESS environment variable is present.
2520         * WebKit2Prefix.h: Always enable network process for GTK port.
2521
2522 2013-12-23  Brian Holt  <brian.holt@samsung.com>
2523
2524         [WK2] Implement platform specific Resource Response for SOUP
2525         https://bugs.webkit.org/show_bug.cgi?id=125422
2526
2527         Reviewed by Martin Robinson.
2528
2529         SOUP specific Resource Response implementation for the Network
2530         Process.
2531
2532         * NetworkProcess/NetworkResourceLoader.cpp:
2533         (WebKit::NetworkResourceLoader::continueWillSendRequest):
2534         * WebProcess/Network/WebResourceLoader.cpp:
2535         (WebKit::WebResourceLoader::didReceiveResponseWithCertificateInfo):
2536
2537 2013-12-22  Kwang Yul Seo  <skyul@company100.net>
2538
2539         [WK2][SOUP] WebContext::allowSpecificHTTPSCertificateForHost does not work correctly when m_usesNetworkProcess is false
2540         https://bugs.webkit.org/show_bug.cgi?id=125564
2541
2542         Reviewed Carlos Garcia Campos.
2543
2544         WebContext::allowSpecificHTTPSCertificateForHost should send
2545         AllowSpecificHTTPSCertificateForHost to the web process when
2546         m_usesNetworkProcess is false. Also we shouldn't guard
2547         WebProcess::allowSpecificHTTPSCertificateForHost with
2548         !ENABLE(NETWORK_PROCESS) because we need this method when
2549         m_usesNetworkProcess is false.
2550
2551         * UIProcess/WebContext.cpp:
2552         (WebKit::WebContext::allowSpecificHTTPSCertificateForHost):
2553         * WebProcess/WebProcess.h:
2554         * WebProcess/WebProcess.messages.in:
2555         * WebProcess/soup/WebProcessSoup.cpp:
2556
2557 2013-12-22  Martin Robinson  <mrobinson@igalia.com>
2558
2559         [GTK][CMake] Integrate GResource for inspector files (and others?)
2560         https://bugs.webkit.org/show_bug.cgi?id=125569
2561
2562         Reviewed by Gustavo Noronha Silva.
2563
2564         * GNUmakefile.am: Use the newly added static WebKit2InspectorGResourceBundle.xml
2565         instead of generating the same file each time.
2566         * PlatformGTK.cmake: Add support for building the GResource bundles into WebKit2.
2567         * UIProcess/API/gtk/WebKit2InspectorGResourceBundle.xml: Added.
2568
2569 2013-12-22  Csaba Osztrogonác  <ossy@webkit.org>
2570
2571         URTBF after r160971 to try to make EFL build again.
2572
2573         * WebProcess/WebCoreSupport/efl/WebErrorsEfl.cpp:
2574         (WebKit::internalError):
2575
2576 2013-12-22  Carlos Garcia Campos  <cgarcia@igalia.com>
2577
2578         Unreviewed. Fix GTK+ build after r160971 and r160969.
2579
2580         * GNUmakefile.list.am:
2581         * UIProcess/API/gtk/WebKitFileChooserRequest.cpp:
2582         (webkit_file_chooser_request_select_files):
2583         * UIProcess/API/gtk/WebKitInjectedBundleClient.cpp:
2584         (didReceiveWebViewMessageFromInjectedBundle):
2585         * UIProcess/API/gtk/WebKitURISchemeRequest.cpp:
2586         (webkitURISchemeRequestCreate):
2587         * UIProcess/API/gtk/WebKitURISchemeRequestPrivate.h:
2588         * UIProcess/API/gtk/WebKitWebResource.cpp:
2589         (webkit_web_resource_get_data):
2590         * UIProcess/soup/WebSoupRequestManagerClient.h:
2591         * WebProcess/WebCoreSupport/gtk/WebErrorsGtk.cpp:
2592         (WebKit::internalError):
2593
2594 2013-12-21  Ryuan Choi  <ryuan.choi@samsung.com>
2595
2596         Unreviewed build fix attempt on EFL port after r160971 and r160969
2597
2598         * CMakeLists.txt:
2599         * UIProcess/soup/WebSoupRequestManagerClient.cpp:
2600         (WebKit::WebSoupRequestManagerClient::didReceiveURIRequest):
2601         * UIProcess/soup/WebSoupRequestManagerProxy.cpp:
2602         (WebKit::WebSoupRequestManagerProxy::didReceiveURIRequest):
2603
2604 2013-12-21  Sam Weinig  <sam@webkit.org>
2605
2606         [WK2] Rename WebError to API::Error
2607         https://bugs.webkit.org/show_bug.cgi?id=126125
2608
2609         Reviewed by Anders Carlsson.
2610
2611         * Shared/API/c/WKError.cpp:
2612         (WKErrorGetTypeID):
2613         (WKErrorCopyWKErrorDomain):
2614         * Shared/API/c/WKSharedAPICast.h:
2615         (WebKit::toAPI):
2616         * Shared/API/c/cf/WKErrorCF.cpp:
2617         (WKErrorCreateWithCFError):
2618         * Shared/APIError.cpp: Copied from Source/WebKit2/Shared/WebError.cpp.
2619         (API::Error::webKitErrorDomain):
2620         (API::Error::encode):
2621         (API::Error::decode):
2622         * Shared/APIError.h: Copied from Source/WebKit2/Shared/WebError.h.
2623         (API::Error::create):
2624         (API::Error::domain):
2625         (API::Error::failingURL):
2626         (API::Error::localizedDescription):
2627         (API::Error::Error):
2628         * Shared/Cocoa/WKNSError.h:
2629         (WebKit::wrapper):
2630         * Shared/Cocoa/WKNSError.mm:
2631         (-[WKNSError _web_createTarget]):
2632         * Shared/UserData.cpp:
2633         (WebKit::UserData::encode):
2634         (WebKit::UserData::decode):
2635         * Shared/UserMessageCoders.h:
2636         (WebKit::UserMessageEncoder::baseEncode):
2637         (WebKit::UserMessageDecoder::baseDecode):
2638         * Shared/WebError.cpp: Removed.
2639         * Shared/WebError.h: Removed.
2640         * UIProcess/AutoCorrectionCallback.h:
2641         (WebKit::AutocorrectionDataCallback::invalidate):
2642         * UIProcess/GenericCallback.h:
2643         (WebKit::VoidCallback::invalidate):
2644         (WebKit::GenericCallback::invalidate):
2645         (WebKit::ComputedPagesCallback::invalidate):
2646         (WebKit::ImageCallback::invalidate):
2647         * UIProcess/WebPageProxy.cpp:
2648         (WebKit::WebPageProxy::printFinishedCallback):
2649         * UIProcess/WebPageProxy.h:
2650         (WebKit::ValidateCommandCallback::invalidate):
2651         (WebKit::GestureCallback::invalidate):
2652         (WebKit::TouchesCallback::invalidate):
2653         * WebKit2.xcodeproj/project.pbxproj:
2654         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
2655         * WebProcess/InjectedBundle/InjectedBundlePagePolicyClient.cpp:
2656         * WebProcess/WebCoreSupport/mac/WebErrorsMac.mm:
2657         (WebKit::blockedError):
2658         (WebKit::cannotShowURLError):
2659         (WebKit::interruptedForPolicyChangeError):
2660         (WebKit::cannotShowMIMETypeError):
2661         (WebKit::pluginWillHandleLoadError):
2662         (WebKit::internalError):
2663
2664 2013-12-20  Sam Weinig  <sam@webkit.org>
2665
2666         [WK2] Rename WebURL to API::URL
2667         https://bugs.webkit.org/show_bug.cgi?id=126100
2668
2669         Reviewed by Anders Carlsson.
2670
2671         * Shared/API/c/WKSharedAPICast.h:
2672         (WebKit::toURLRef):
2673         (WebKit::toCopiedURLAPI):
2674         * Shared/API/c/WKURL.cpp:
2675         (WKURLGetTypeID):
2676         (WKURLCreateWithUTF8CString):
2677         (WKURLCreateWithBaseURL):
2678         * Shared/API/c/cf/WKURLCF.mm:
2679         (WKURLCreateWithCFURL):
2680         * Shared/APIURL.h: Copied from Source/WebKit2/Shared/WebURL.h.
2681         (API::URL::create):
2682         (API::URL::string):
2683         (API::URL::host):
2684         (API::URL::protocol):
2685         (API::URL::path):
2686         (API::URL::lastPathComponent):
2687         (API::URL::encode):
2688         (API::URL::decode):
2689         (API::URL::URL):
2690         * Shared/Cocoa/WKNSURL.h:
2691         (WebKit::wrapper):
2692         * Shared/Cocoa/WKNSURL.mm:
2693         (-[WKNSURL _web_createTarget]):
2694         * Shared/Plugins/Netscape/PluginInformation.cpp:
2695         (WebKit::createPluginInformationDictionary):
2696         * Shared/UserData.cpp:
2697         (WebKit::UserData::encode):
2698         (WebKit::UserData::decode):
2699         * Shared/UserMessageCoders.h:
2700         (WebKit::UserMessageEncoder::baseEncode):
2701         (WebKit::UserMessageDecoder::baseDecode):
2702         * Shared/WebArchiveResource.h:
2703         * Shared/WebURL.h: Removed.
2704         * UIProcess/WebFrameProxy.cpp:
2705         (WebKit::WebFrameProxy::getResourceData):
2706         * UIProcess/WebFrameProxy.h:
2707         * UIProcess/WebIconDatabase.cpp:
2708         (WebKit::WebIconDatabase::didChangeIconForPageURL):
2709         (WebKit::WebIconDatabase::notifyIconDataReadyForPageURL):
2710         * UIProcess/WebIconDatabaseClient.cpp:
2711         (WebKit::WebIconDatabaseClient::didChangeIconForPageURL):
2712         (WebKit::WebIconDatabaseClient::iconDataReadyForPageURL):
2713         * UIProcess/WebIconDatabaseClient.h:
2714         * UIProcess/WebOpenPanelResultListenerProxy.cpp:
2715         (WebKit::WebOpenPanelResultListenerProxy::chooseFiles):
2716         * UIProcess/WebPageProxy.cpp:
2717         (WebKit::WebPageProxy::getResourceDataFromFrame):
2718         * UIProcess/WebPageProxy.h:
2719         * WebKit2.xcodeproj/project.pbxproj:
2720         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
2721
2722 2013-12-21  Carlos Garcia Campos  <cgarcia@igalia.com>
2723
2724         [GTK] Test /webkit2/WebKitWebResource/mime-type fails when run after /webkit2/WebKitWebView/resources
2725         https://bugs.webkit.org/show_bug.cgi?id=126119
2726
2727         Reviewed by Martin Robinson.
2728
2729         The problem is that when the blank.ico resource is loaded from the
2730         disk cache, the mime type is null, because the soup cache doesn't
2731         cache sniffed mime types. This doesn't happen when a resource is
2732         loaded form the memory cache, because the ResourceResponse is
2733         cached, not only the headers. I think the disk cache should also
2734         cache the sniffed content type, but that needs to be done in
2735         soup. For now we can workaround the issue in the unit test by
2736         making sure that resources that can be cached, also include the
2737         Content-Type header, this way the mime type won't be sniffed and
2738         it will be cached as a HTTP header in the disk cache.
2739
2740         * UIProcess/API/gtk/tests/TestResources.cpp:
2741         (serverCallback): Add Content-Type header for resources that can
2742         be cached.
2743
2744 2013-12-21  Carlos Garcia Campos  <cgarcia@igalia.com>
2745
2746         REGRESSION(r160909): [GTK] Tests /webkit2/WebKitWebView/default-menu and /webkit2/WebKitSettings/webkit-settings fail
2747         https://bugs.webkit.org/show_bug.cgi?id=126117
2748
2749         Reviewed by Martin Robinson.
2750
2751         In r160909 the fullscreen setting default value was changed, but
2752         the unit tests relaying on the default value were not updated
2753         accordingly.
2754
2755         * UIProcess/API/gtk/tests/TestContextMenu.cpp:
2756         * UIProcess/API/gtk/tests/TestWebKitSettings.cpp:
2757         (testWebKitSettings):
2758
2759 2013-12-20  Jaehun Lim  <ljaehun.lim@samsung.com>
2760
2761         Unreviewed build fix after r160939
2762
2763         Add ENABLE(CUSTOM_PROTOCOLS) guard.
2764
2765         * UIProcess/WebContext.cpp:
2766
2767 2013-12-20  Simon Fraser  <simon.fraser@apple.com>
2768
2769         Change "threaded scrolling" terminology to "asynchronous scrolling"
2770         https://bugs.webkit.org/show_bug.cgi?id=126094
2771
2772         Reviewed by Tim Horton.
2773         
2774         Rename ENABLE_THREADED_SCROLLING to ENABLE_ASYNC_SCROLLING, and change
2775         references to "main thread scrolling" to "synchronous scrolling".
2776
2777         * WebProcess/WebPage/EventDispatcher.cpp:
2778         (WebKit::EventDispatcher::wheelEvent):
2779         * WebProcess/WebPage/EventDispatcher.h:
2780         * WebProcess/WebPage/WebPage.cpp:
2781         (WebKit::WebPage::WebPage):
2782         (WebKit::WebPage::~WebPage):
2783         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
2784         (WebKit::TiledCoreAnimationDrawingArea::didInstallPageOverlay):
2785         (WebKit::TiledCoreAnimationDrawingArea::didUninstallPageOverlay):
2786         (WebKit::TiledCoreAnimationDrawingArea::updatePreferences):
2787         (WebKit::TiledCoreAnimationDrawingArea::dispatchAfterEnsuringUpdatedScrollPosition):
2788
2789 2013-12-20  Ricky Mondello  <rmondello@apple.com>
2790
2791         Rename PlugInAutoStartProvider's ...EntriesAddedBeforeTime facility to ...EntriesAddedAfterTime
2792         https://bugs.webkit.org/show_bug.cgi?id=126078
2793
2794         Reviewed by Anders Carlsson.
2795
2796         r160922 accidentally named a facility for filtering out data added after a certain time,
2797         "...FilteringOutEntriesAddedBeforeTime", which was incorrect. This patch renames those instances
2798         to "...FilteringOutEntriesAddedAfterTime".
2799
2800         * UIProcess/API/C/WKContext.cpp:
2801         (WKContextSetPlugInAutoStartOriginsFilteringOutEntriesAddedAfterTime):
2802         * UIProcess/API/C/WKContext.h:
2803         * UIProcess/Plugins/PlugInAutoStartProvider.cpp:
2804         (WebKit::PlugInAutoStartProvider::setAutoStartOriginsFilteringOutEntriesAddedAfterTime):
2805         * UIProcess/Plugins/PlugInAutoStartProvider.h:
2806         * UIProcess/WebContext.cpp:
2807         (WebKit::WebContext::setPlugInAutoStartOriginsFilteringOutEntriesAddedAfterTime):
2808         * UIProcess/WebContext.h:
2809
2810 2013-12-20  Sam Weinig  <sam@webkit.org>
2811
2812         [WK2] Add SPI for using a custom protocol handler
2813         https://bugs.webkit.org/show_bug.cgi?id=126089
2814
2815         Reviewed by Anders Carlsson.
2816
2817         * UIProcess/API/C/mac/WKContextPrivateMac.h:
2818         * UIProcess/API/C/mac/WKContextPrivateMac.mm:
2819         (WKContextRegisterSchemeForCustomProtocol):
2820         (WKContextUnregisterSchemeForCustomProtocol):
2821         * UIProcess/API/Cocoa/WKBrowsingContextController.mm:
2822         (+[WKBrowsingContextController registerSchemeForCustomProtocol:]):
2823         (+[WKBrowsingContextController unregisterSchemeForCustomProtocol:]):
2824         * UIProcess/WebContext.cpp:
2825         (WebKit::WebContext::globalURLSchemesWithCustomProtocolHandlers):
2826         (WebKit::WebContext::registerGlobalURLSchemeAsHavingCustomProtocolHandlers):
2827         (WebKit::WebContext::unregisterGlobalURLSchemeAsHavingCustomProtocolHandlers):
2828         * UIProcess/WebContext.h:
2829         * UIProcess/mac/WebContextMac.mm:
2830         (WebKit::WebContext::platformInitializeWebProcess):
2831         (WebKit::WebContext::platformInitializeNetworkProcess):
2832         (WebKit::WebContext::registerNotificationObservers):
2833         (WebKit::WebContext::unregisterNotificationObservers):
2834
2835 2013-12-20  Tim Horton  <timothy_horton@apple.com>
2836
2837         WebKit2 View Gestures: Implement smartMagnifyWithEvent: and make it work
2838         https://bugs.webkit.org/show_bug.cgi?id=125752
2839         <rdar://problem/15664245>
2840
2841         Reviewed by Anders Carlsson.
2842
2843         Implement "smart magnify", which is the double-tap-to-zoom gesture on OS X.
2844
2845         * UIProcess/API/mac/WKView.mm:
2846         (-[WKView smartMagnifyWithEvent:]):
2847         Forward smartMagnifyWithEvent to ViewGestureController.
2848
2849         * UIProcess/mac/ViewGestureController.cpp:
2850         (WebKit::ViewGestureController::handleMagnificationGesture):
2851         Drive-by repair a comment.
2852
2853         (WebKit::ViewGestureController::handleSmartMagnificationGesture):
2854         Added. Immediately dispatch a message to the web process to retrieve
2855         the rendered rect of the element under the gesture.
2856
2857         (WebKit::maximumRectangleComponentDelta):
2858         Return the absolute maximum delta between corresponding components of two rects.
2859
2860         (WebKit::ViewGestureController::didCollectGeometryForSmartMagnificationGesture):
2861         Once the WebProcess has replied with the relevant geometry, use it to
2862         determine our target rectangle (the element's rect, with some padding)
2863         and target magnification (attempting to keep replaced elements
2864         fully in-view, and otherwise zooming in as far as possible to fit the
2865         element's width).
2866
2867         If this gesture occurs after the page is already magnified, and targets
2868         a similar region to the previous smart magnification gesture, zoom out
2869         instead of panning across the page.
2870
2871         Begin a transient zoom with the current magnification, and immediately
2872         commit it at our target magnification and offset, so that the drawing
2873         area will animate to the new parameters.
2874
2875         (WebKit::ViewGestureController::endActiveGesture):
2876         * UIProcess/mac/ViewGestureController.h:
2877         * UIProcess/mac/ViewGestureController.messages.in:
2878         * WebProcess/WebPage/ViewGestureGeometryCollector.cpp:
2879         (WebKit::ViewGestureGeometryCollector::collectGeometryForSmartMagnificationGesture):
2880         Hit-test the document to determine the node under the smart magnification
2881         gesture, and return it to the UI process along with various other bits of data.
2882
2883         * WebProcess/WebPage/ViewGestureGeometryCollector.h:
2884         * WebProcess/WebPage/ViewGestureGeometryCollector.messages.in:
2885         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
2886         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
2887         (WebKit::TiledCoreAnimationDrawingArea::TiledCoreAnimationDrawingArea):
2888         (WebKit::TiledCoreAnimationDrawingArea::adjustTransientZoom):
2889         (WebKit::TiledCoreAnimationDrawingArea::commitTransientZoom):
2890         (WebKit::TiledCoreAnimationDrawingArea::applyTransientZoomToPage):
2891         Instead of short-circuiting the animation if we didn't have to constrain
2892         the origin, short-circuit if we're already *at* the right origin,
2893         like the comment said. This prevents jarring jumps when double-tap-panning
2894         between elements when zoomed all the way in.
2895
2896 2013-12-20  Ricky Mondello  <rmondello@apple.com>
2897
2898         Allow partial application of PlugInAutoStart tables based on timestamp
2899         https://bugs.webkit.org/show_bug.cgi?id=125871
2900
2901         Reviewed by Anders Carlsson.
2902
2903         * UIProcess/API/C/WKContext.cpp:
2904         (WKContextSetPlugInAutoStartOriginsFilteringOutEntriesAddedBeforeTime): New API.
2905         * UIProcess/API/C/WKContext.h: New API.
2906
2907         * UIProcess/Plugins/PlugInAutoStartProvider.cpp:
2908         (WebKit::PlugInAutoStartProvider::setAutoStartOriginsTable): Call setAutoStartOriginsTableWithItemsPassingTest
2909             with a predicate that lets all policies pass.
2910         (WebKit::PlugInAutoStartProvider::setAutoStartOriginsFilteringOutEntriesAddedBeforeTime): Call
2911             setAutoStartOriginsTableWithItemsPassingTest with a predicate that lets policies created before a certain
2912             time pass.
2913         (WebKit::PlugInAutoStartProvider::setAutoStartOriginsTableWithItemsPassingTest): Added. Contains most of the
2914             contents of setAutoStartOriginsTable, with support for applying a predicate.
2915         * UIProcess/Plugins/PlugInAutoStartProvider.h: Add public method,
2916             `setAutoStartOriginsFilteringOutEntriesAddedBeforeTime`, and private method,
2917             `setAutoStartOriginsTableWithItemsPassingTest`.
2918
2919         * UIProcess/WebContext.cpp:
2920         (WebKit::WebContext::setPlugInAutoStartOriginsFilteringOutEntriesAddedBeforeTime): Pass through to the
2921             PlugInAutoStartProvider.
2922         * UIProcess/WebContext.h: Declare `setPlugInAutoStartOriginsFilteringOutEntriesAddedBeforeTime`.
2923
2924 2013-12-20  Enrique Ocaña González  <eocanha@igalia.com>
2925
2926         [GTK] WebKitWebViewBase's ClickCounter should be reset
2927         https://bugs.webkit.org/show_bug.cgi?id=122551
2928
2929         Reviewed by Martin Robinson.
2930
2931         * UIProcess/API/gtk/PageClientImpl.cpp:
2932         (WebKit::PageClientImpl::didCommitLoadForMainFrame):
2933         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
2934         (webkitWebViewBaseResetClickCounter):
2935         * UIProcess/API/gtk/WebKitWebViewBasePrivate.h:
2936
2937 2013-12-20  Enrique Ocaña González  <eocanha@igalia.com>
2938
2939         [GTK] The fullscreen API should be enabled by default
2940         https://bugs.webkit.org/show_bug.cgi?id=125993
2941
2942         Reviewed by Gustavo Noronha Silva.
2943
2944         Set the WebSettings property to TRUE
2945
2946         * UIProcess/API/gtk/WebKitSettings.cpp:
2947         (webkit_settings_class_init):
2948
2949 2013-12-20  Carlos Garcia Campos  <cgarcia@igalia.com>
2950
2951         [GTK] Some unit tests using web extensions fail when run alone
2952         https://bugs.webkit.org/show_bug.cgi?id=126002
2953
2954         Reviewed by Gustavo Noronha Silva.
2955
2956         The problem is that the page is created before the dbus connection
2957         has been established, and we are connecting to web-page-created
2958         signal once we have a valid dbus connection. We should connect to
2959         the signal before connecting to dbus and queue any request to emit
2960         a dbus signal until the connection is set. This also fixes the
2961         WebExtensions tests when using the network process because a new
2962         web process is launched for every test case.
2963
2964         * UIProcess/API/gtk/tests/WebExtensionTest.cpp:
2965         (DelayedSignal::DelayedSignal): Helper struct to queue signal
2966         emissions requested before the dbus connection has been
2967         established.
2968         (emitDocumentLoaded): Emit the dbus DocumentLoaded signal.
2969         (documentLoadedCallback): Queue the signal emission if we still
2970         don't have a connection or call emitDocumentLoaded otherwise.
2971         (emitURIChanged): Emit the dbus URIChanged signal.
2972         (uriChangedCallback): Queue the signal emission if we still don't
2973         have a connection or call emitURIChanged otherwise.
2974         (pageCreatedCallback): Pass the web extension as user data to
2975         document-loaded and uri-changed callbacks.
2976         (busAcquiredCallback): Set the connection as user data of the web
2977         extension and process any delayed signal emission pending.
2978         (webkit_web_extension_initialize): Connect to web-page-create
2979         signal before connecting to dbus.
2980
2981 2013-12-19  Benjamin Poulain  <bpoulain@apple.com>
2982
2983         [WK2][iOS] Enable multiprocess by default
2984         https://bugs.webkit.org/show_bug.cgi?id=126030
2985
2986         Reviewed by Anders Carlsson.
2987
2988         * UIProcess/API/Cocoa/WKProcessGroup.mm:
2989         (-[WKProcessGroup initWithInjectedBundleURL:]):
2990
2991 2013-12-19  Andy Estes  <aestes@apple.com>
2992
2993         Remove WebFilterEvaluator wrappers from WebKitSystemInterface
2994         https://bugs.webkit.org/show_bug.cgi?id=126028
2995
2996         Reviewed by Anders Carlsson.
2997
2998         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
2999         (InitWebCoreSystemInterface): Don't INIT() removed function pointers.
3000
3001 2013-12-19  Benjamin Poulain  <bpoulain@apple.com>
3002
3003         Remove WKContentViewPrivate.h, WKContentView.h is private now
3004         https://bugs.webkit.org/show_bug.cgi?id=125981
3005
3006         Reviewed by Dan Bernstein.
3007
3008         There is no need for a separate header, WKContentView has become an implementation
3009         detail of WKView.
3010
3011         * UIProcess/API/ios/WKContentView.h:
3012         * UIProcess/API/ios/WKContentViewInternal.h:
3013         * UIProcess/API/ios/WKContentViewPrivate.h: Removed.
3014         * UIProcess/API/ios/WKView.mm:
3015
3016 2013-12-19  Alexey Proskuryakov  <ap@apple.com>
3017
3018         REGRESSION (r160515): Frequent assertion failures on printing/print-close-crash.html
3019         https://bugs.webkit.org/show_bug.cgi?id=126014
3020
3021         Rolled out r160515 while Chris is investigating. Added FIXME comments in other
3022         places where we use this pattern.
3023
3024         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
3025         (WebKit::WebChromeClient::runJavaScriptAlert):
3026         (WebKit::WebChromeClient::runJavaScriptConfirm):
3027         (WebKit::WebChromeClient::runJavaScriptPrompt):
3028         (WebKit::WebChromeClient::print):
3029         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
3030         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse):
3031
3032 2013-12-19  Ricky Mondello  <rmondello@apple.com>
3033
3034         Add WebKit2 API for clearing the back-forward list
3035         https://bugs.webkit.org/show_bug.cgi?id=126005
3036
3037         Reviewed by Anders Carlsson.
3038
3039         * UIProcess/API/C/WKBackForwardListRef.cpp:
3040         (WKBackForwardListClear): Call through to the back-forward list's `clear()`.
3041         * UIProcess/API/C/WKBackForwardListRef.h: Declare new API.
3042
3043 2013-12-19  Csaba Osztrogonác  <ossy@webkit.org>
3044
3045         One more URTBF to make GTK build happy after r160853.
3046
3047         * UIProcess/API/gtk/WebKitDownloadClient.cpp:
3048         * UIProcess/API/gtk/WebKitInjectedBundleClient.cpp:
3049         (didReceiveWebViewMessageFromInjectedBundle):
3050         * UIProcess/API/gtk/WebKitResponsePolicyDecision.cpp:
3051         (webkitResponsePolicyDecisionCreate):
3052         * UIProcess/API/gtk/WebKitResponsePolicyDecisionPrivate.h:
3053
3054 2013-12-19  Csaba Osztrogonác  <ossy@webkit.org>
3055
3056         URTBF for GTK after r160853.
3057
3058         * GNUmakefile.list.am:
3059
3060 2013-12-19  Michał Pakuła vel Rutka  <m.pakula@samsung.com>
3061
3062         Unreviewed EFL build fix attempt after r160853
3063
3064         * CMakeLists.txt: Change WebURLResponse.cpp to APIURLResponse.cpp.
3065
3066 2013-12-17  Sam Weinig  <sam@webkit.org>
3067
3068         [WK2] Rename WebURLResponse to API::URLResponse
3069         https://bugs.webkit.org/show_bug.cgi?id=125910
3070
3071         Reviewed by Andreas Kling.
3072
3073         * Shared/API/c/WKSharedAPICast.h:
3074         (WebKit::toAPI):
3075         * Shared/API/c/WKURLResponse.cpp:
3076         (WKURLResponseGetTypeID):
3077         * Shared/API/c/mac/WKURLResponseNS.mm:
3078         (WKURLResponseCreateWithNSURLResponse):
3079         * Shared/APIURLRequest.cpp:
3080         * Shared/APIURLResponse.cpp: Copied from Source/WebKit2/Shared/WebURLResponse.cpp.
3081         (API::URLResponse::URLResponse):
3082         (API::URLResponse::encode):
3083         (API::URLResponse::decode):
3084         * Shared/APIURLResponse.h: Copied from Source/WebKit2/Shared/WebURLResponse.h.
3085         (API::URLResponse::create):
3086         * Shared/UserMessageCoders.h:
3087         (WebKit::UserMessageEncoder::baseEncode):
3088         (WebKit::UserMessageDecoder::baseDecode):
3089         * Shared/WebURLResponse.cpp: Removed.
3090         * Shared/WebURLResponse.h: Removed.
3091         * UIProcess/WebDownloadClient.cpp:
3092         (WebKit::WebDownloadClient::didReceiveResponse):
3093         * UIProcess/WebPolicyClient.cpp:
3094         (WebKit::WebPolicyClient::decidePolicyForResponse):
3095         * WebKit2.xcodeproj/project.pbxproj:
3096         * WebProcess/InjectedBundle/InjectedBundlePagePolicyClient.cpp:
3097         (WebKit::InjectedBundlePagePolicyClient::decidePolicyForResponse):
3098
3099 2013-12-19  Nick Diego Yamane  <nick.yamane@openbossa.org>
3100
3101         [CoordinatedGraphics] Regressions in WebView's contentScaleFactor/contentPosition
3102         https://bugs.webkit.org/show_bug.cgi?id=125943
3103
3104         Reviewed by Noam Rosenthal.
3105
3106         When WebView::pageDidRequestScroll is called it is scaling position requested
3107         to scroll before store it as contentPosition, that is not necessary since WebView
3108         already stores the requested contentScaleFactor so it's able to do that internally
3109         when needed, what simplifies the API and improves the readability of webview's code.
3110         This patch reverts changes from https://bugs.webkit.org/show_bug.cgi?id=118548, which
3111         was causing some regressions in contentScaleFactor/contentPosition related stuff.
3112         Besides that WebView::pageDidRequestScroll calls viewClient callback with the wrong
3113         position (different from the position stored in WebView).
3114
3115         * UIProcess/API/efl/EwkView.cpp:
3116         (EwkView::scrollBy):
3117         * UIProcess/CoordinatedGraphics/WebView.cpp:
3118         (WebKit::WebView::transformToScene):
3119         (WebKit::WebView::updateViewportSize):
3120         (WebKit::WebView::pageDidRequestScroll):
3121         * UIProcess/efl/PageViewportControllerClientEfl.cpp:
3122         (WebKit::PageViewportControllerClientEfl::setViewportPosition):
3123 2013-12-18  Tim Horton  <timothy_horton@apple.com>
3124
3125         WebKit2 View Gestures: Move WebProcess-side geometry collection into its own class
3126         https://bugs.webkit.org/show_bug.cgi?id=125967
3127
3128         Reviewed by Anders Carlsson.
3129
3130         Move the messages dispatched by ViewGestureController that grab geometry
3131         from the WebProcess out of the DrawingArea and into ViewGestureGeometryCollector.
3132         This class will grow when smart magnification is implemented.
3133
3134         * UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h:
3135         * UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm:
3136         * WebProcess/WebPage/DrawingArea.h:
3137         * WebProcess/WebPage/DrawingArea.messages.in:
3138         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
3139         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
3140         Remove BeginTransientZoom() message.
3141
3142         * DerivedSources.make:
3143         * UIProcess/DrawingAreaProxy.h:
3144         
3145         * UIProcess/mac/ViewGestureController.cpp:
3146         (WebKit::ViewGestureController::didCollectGeometryForMagnificationGesture):
3147         (WebKit::ViewGestureController::handleMagnificationGesture):
3148         * UIProcess/mac/ViewGestureController.h:
3149         * UIProcess/mac/ViewGestureController.messages.in:
3150         Make use of ViewGestureGeometryCollector and rename didBeginTransientZoom to didCollectGeometryForMagnificationGesture.
3151
3152         * WebKit2.xcodeproj/project.pbxproj:
3153         Add new files.
3154         
3155         * WebProcess/WebPage/ViewGestureGeometryCollector.cpp: Added.
3156         (WebKit::ViewGestureGeometryCollector::ViewGestureGeometryCollector):
3157         (WebKit::ViewGestureGeometryCollector::~ViewGestureGeometryCollector):
3158         (WebKit::ViewGestureGeometryCollector::collectGeometryForMagnificationGesture):
3159         * WebProcess/WebPage/ViewGestureGeometryCollector.h: Added.
3160         * WebProcess/WebPage/ViewGestureGeometryCollector.messages.in: Added.
3161         Move the code to collect the visible content rect and return it to the ViewGestureController into its own class.
3162
3163         * WebProcess/WebPage/WebPage.cpp:
3164         (WebKit::WebPage::WebPage):
3165         * WebProcess/WebPage/WebPage.h:
3166         Move m_pageID to the top of WebPage's initialization list so that
3167         it can be safely used from other members' constructors.
3168
3169         Add a ViewGestureGeometryCollector member and construct it.
3170
3171 2013-12-18  Gustavo Noronha Silva  <gns@gnome.org>
3172
3173         Unreviewed cmake build fix for GTK+.
3174
3175         * PlatformGTK.cmake: fix paths for files that were moved.
3176
3177 2013-12-18  Anders Carlsson  <andersca@apple.com>
3178
3179         MessageReceiverMap::addMessageReceiver should assert that destinationID is not zero
3180         https://bugs.webkit.org/show_bug.cgi?id=125965
3181
3182         Reviewed by Tim Horton.
3183
3184         * Platform/CoreIPC/MessageReceiverMap.cpp:
3185         (CoreIPC::MessageReceiverMap::addMessageReceiver):
3186
3187 2013-12-18  Anders Carlsson  <andersca@apple.com>
3188
3189         Deprecate some WKMutableDictionary functions
3190         https://bugs.webkit.org/show_bug.cgi?id=125962
3191
3192         Reviewed by Tim Horton.
3193
3194         * Shared/API/c/WKDeprecatedFunctions.cpp:
3195         (WKDictionaryIsMutable):
3196         (WKDictionaryAddItem):
3197         (WKDictionaryRemoveItem):
3198         * Shared/API/c/WKMutableDictionary.cpp:
3199         * Shared/API/c/WKMutableDictionary.h:
3200
3201 2013-12-18  Dan Bernstein  <mitz@apple.com>
3202
3203         [Cocoa] Allow the web process plug-in to intercept resource requests
3204         https://bugs.webkit.org/show_bug.cgi?id=125959
3205
3206         Reviewed by Anders Carlsson.
3207
3208         * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInLoadDelegate.h: Declared new
3209         delegate method.
3210         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
3211         (willSendRequestForFrame): Implemented this WKBundlePageResourceClient callback by calling
3212         the load delegate.
3213         (setUpResourceLoadClient): Added. Initializes the resource load client with the above
3214         function.
3215         (-[WKWebProcessPlugInBrowserContextController setLoadDelegate:]): Added calls to initialize
3216         and clear the resource load client.
3217
3218 2013-12-18  Yongjun Zhang  <yongjun_zhang@apple.com>
3219
3220         https://bugs.webkit.org/show_bug.cgi?id=125941
3221         Add Obj C API for injected bundle PageGroup class.
3222
3223         Reviewed by Dan Bernstein.
3224
3225         Add Obj C API (WKWebProcessPlugInPageGroup) for injected bundle PageGroup class. And add APIs to
3226         expose the main frame and page group from WKWebProcessPlugInBrowsingContextController.
3227
3228         * Shared/Cocoa/APIObject.mm:
3229         (API::Object::newObject): Create wrapper object for InjectedPageGroup object.
3230         * WebKit2.xcodeproj/project.pbxproj:
3231         * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInPageGroup.h: Added.
3232         * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInPageGroup.mm: Added.
3233         (-[WKWebProcessPlugInPageGroup identifier]):
3234         (-[WKWebProcessPlugInPageGroup dealloc]):
3235         (-[WKWebProcessPlugInPageGroup API::]):
3236         * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInPageGroupInternal.h: Added.
3237         (WebKit::wrapper):
3238         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.h: Add API to expose the main frame and page group
3239             for WKWebPocessPlugInBrowserContextController.
3240         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
3241         (-[WKWebProcessPlugInBrowserContextController mainFrame]):
3242         (-[WKWebProcessPlugInBrowserContextController pageGroup]):
3243
3244 2013-12-18  Tim Horton  <timothy_horton@apple.com>
3245
3246         PDFPlugin: Never make a NSEventType = 0
3247         https://bugs.webkit.org/show_bug.cgi?id=125955
3248
3249         Reviewed by Dan Bernstein.
3250
3251         * WebProcess/Plugins/PDF/PDFPlugin.mm:
3252         (WebKit::getEventTypeFromWebEvent):
3253         Make getEventTypeFromWebEvent return its NSEventType as an out arg, and
3254         make the return value represent whether or not we set it.
3255
3256         (WebKit::PDFPlugin::nsEventForWebMouseEvent):
3257         (WebKit::PDFPlugin::handleKeyboardEvent):
3258         Make use of getEventTypeFromWebEvent.
3259
3260 2013-12-18  Anders Carlsson  <andersca@apple.com>
3261
3262         WKRemoteObjectRegistry should invoke invocations
3263         https://bugs.webkit.org/show_bug.cgi?id=125945
3264
3265         Reviewed by Tim Horton.
3266
3267         * Shared/API/Cocoa/WKRemoteObjectRegistry.mm:
3268         (-[WKRemoteObjectRegistry _invokeMessageWithInterfaceIdentifier:encodedInvocation:]):
3269
3270 2013-12-18  Gavin Barraclough  <barraclough@apple.com>
3271
3272         Add layer hosting mode to ViewState
3273         https://bugs.webkit.org/show_bug.cgi?id=125803
3274
3275         Reviewed by Anders Carlsson.
3276
3277         When the view state of the page is updated the layer mode may also
3278         change. Currently this is passed by a separate message, remove this
3279         and fold it into ViewState.
3280         
3281         Previously the setLayerHostingMode message would be passed to the
3282         DrawingArea, which would inform the WebPage. Since the WebPage is
3283         passed the SetVisibilityState messgae reverse this.
3284
3285         WebPageProxy had a policy of only updating the hosting mode when
3286         visible - the value is sticky whilst the view is not visible. Make
3287         this policy explicit in the PageClientImpl, rather then implicit
3288         from the flow control.
3289
3290         * Shared/ViewState.h:
3291             - Added ViewState::IsLayerWindowServerHosted.
3292         * Shared/WebPageCreationParameters.cpp:
3293         (WebKit::WebPageCreationParameters::encode):
3294         (WebKit::WebPageCreationParameters::decode):
3295         * Shared/WebPageCreationParameters.h:
3296             - removed layerHostingMode.
3297         * UIProcess/API/mac/PageClientImpl.h:
3298         * UIProcess/API/mac/PageClientImpl.mm:
3299         (WebKit::PageClientImpl::PageClientImpl):
3300         (WebKit::PageClientImpl::isLayerWindowServerHosted):
3301         (WebKit::PageClientImpl::viewWillMoveToAnotherWindow):
3302             - viewLayerHostingMode -> isLayerWindowServerHosted, added m_layerHostingMode.
3303         * UIProcess/DrawingAreaProxy.h:
3304             - removed layerHostingModeDidChange.
3305         * UIProcess/PageClient.h:
3306             - viewLayerHostingMode -> isLayerWindowServerHosted.
3307         * UIProcess/WebPageProxy.cpp:
3308         (WebKit::WebPageProxy::WebPageProxy):
3309             - removed m_layerHostingMode.
3310         (WebKit::WebPageProxy::updateViewState):
3311             - added IsLayerWindowServerHosted.
3312         (WebKit::WebPageProxy::viewStateDidChange):
3313             - changes to ViewState::IsInWindow implies ViewState::IsLayerWindowServerHosted may change too.
3314             - remove special handling (separate message) for LayerHostingMode.
3315         (WebKit::WebPageProxy::initializeCreationParameters):
3316             - removed m_layerHostingMode.
3317         * UIProcess/WebPageProxy.h:
3318             - removed m_layerHostingMode.
3319         * UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h:
3320         * UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm:
3321             - removed layerHostingModeDidChange.
3322         * WebProcess/WebPage/DrawingArea.h:
3323         (WebKit::DrawingArea::setLayerHostingMode):
3324         (WebKit::DrawingArea::didUpdate):
3325             - setLayerHostingMode takes a LayerHostingMode.
3326         * WebProcess/WebPage/DrawingArea.messages.in:
3327             - SetLayerHostingMode is no longer a message.
3328         * WebProcess/WebPage/WebPage.cpp:
3329         (WebKit::WebPage::WebPage):
3330             - removed m_layerHostingMode.
3331         (WebKit::WebPage::setViewState):
3332             - handle ViewState::IsLayerWindowServerHosted.
3333         (WebKit::WebPage::setLayerHostingMode):
3334             - moved from ~Mac.mm (matching other ViewState setters), calls to DrawingArea.
3335         * WebProcess/WebPage/WebPage.h:
3336         (WebKit::WebPage::layerHostingMode):
3337             - layerHostingMode queries m_viewState, removed m_layerHostingMode.
3338         * WebProcess/WebPage/ios/WebPageIOS.mm:
3339             - removed setLayerHostingMode.
3340         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
3341         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
3342         (WebKit::TiledCoreAnimationDrawingArea::setLayerHostingMode):
3343             - setLayerHostingMode takes a LayerHostingMode, WebPage now calls to DrawingArea.
3344         * WebProcess/WebPage/mac/WebPageMac.mm:
3345             - removed setLayerHostingMode.
3346
3347 2013-12-18  Gavin Barraclough  <barraclough@apple.com>
3348
3349         Fix page visibility api test, initialization in WebKit2
3350         https://bugs.webkit.org/show_bug.cgi?id=125933
3351
3352         Reviewed by Anders Carlsson.
3353
3354         The API test for page visibility is broken, fix this. This revealed a recent regression in WebKit2
3355         (introduced in https://bugs.webkit.org/show_bug.cgi?id=123379), caused by a typo removing a '!'.
3356
3357         * WebProcess/WebPage/WebPage.cpp:
3358         (WebKit::WebPage::setVisibilityState):
3359             - Fix regression, accidentally removed a '!'.
3360
3361 2013-12-18  Anders Carlsson  <andersca@apple.com>
3362
3363         Fix 32-bit build.
3364
3365         * Shared/API/Cocoa/RemoteObjectRegistry.mm:
3366         (WebKit::RemoteObjectRegistry::invokeMethod):
3367
3368 2013-12-18  Anders Carlsson  <andersca@apple.com>
3369
3370         Make WKObjectRegistry objects be per page
3371         https://bugs.webkit.org/show_bug.cgi?id=125937
3372
3373         Reviewed by Andreas Kling.
3374
3375         Remove WKObjectRegistry from WKConnection. Also, add a C++ object that is in charge 
3376         of actually sending and receiving messages.
3377
3378         * DerivedSources.make:
3379         * Shared/API/Cocoa/RemoteObjectRegistry.h: Added.
3380         * Shared/API/Cocoa/RemoteObjectRegistry.messages.in: Added.
3381         * Shared/API/Cocoa/RemoteObjectRegistry.mm: Added.
3382         (WebKit::RemoteObjectRegistry::RemoteObjectRegistry):
3383         (WebKit::RemoteObjectRegistry::~RemoteObjectRegistry):
3384         (WebKit::RemoteObjectRegistry::sendInvocation):
3385         (WebKit::RemoteObjectRegistry::invokeMethod):
3386         * Shared/API/Cocoa/WKRemoteObjectRegistry.mm:
3387         (-[WKRemoteObjectRegistry _initWithMessageSender:IPC::]):
3388         (-[WKRemoteObjectRegistry _invalidate]):
3389         (-[WKRemoteObjectRegistry _sendInvocation:interface:]):
3390         (-[WKRemoteObjectRegistry WebKit::]):
3391         (-[WKRemoteObjectRegistry _invokeMethod:]):
3392         * Shared/API/Cocoa/WKRemoteObjectRegistryInternal.h:
3393         * UIProcess/API/Cocoa/WKBrowsingContextController.mm:
3394         (-[WKBrowsingContextController dealloc]):
3395         (-[WKBrowsingContextController remoteObjectRegistry]):
3396         * UIProcess/API/Cocoa/WKBrowsingContextControllerPrivate.h:
3397         * UIProcess/API/Cocoa/WKConnection.h:
3398         * UIProcess/API/Cocoa/WKConnection.mm:
3399         (didReceiveMessage):
3400         * WebKit2.xcodeproj/project.pbxproj:
3401         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
3402         (-[WKWebProcessPlugInBrowserContextController remoteObjectRegistry]):
3403         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextControllerPrivate.h:
3404
3405 2013-12-18  Conrad Shultz  <conrad_shultz@apple.com>
3406
3407         API to set a favicon
3408         https://bugs.webkit.org/show_bug.cgi?id=125892
3409
3410         Reviewed by Brian Weinstein.
3411
3412         * UIProcess/API/C/WKIconDatabase.cpp:
3413         (WKIconDatabaseSetIconDataForIconURL):
3414         Call WebIconDatabase::setIconDataForIconURL().
3415
3416         * UIProcess/API/C/WKIconDatabase.h:
3417         Declare WKIconDatabaseSetIconDataForIconURL().
3418
3419 2013-12-18  Anders Carlsson  <andersca@apple.com>
3420
3421         Fix Dictionary encoding
3422         https://bugs.webkit.org/show_bug.cgi?id=125930
3423
3424         Reviewed by Andreas Kling.
3425
3426         Encode the HashMap size as a 64-bit unsigned integer.
3427
3428         * Shared/UserData.cpp: