REGRESSION (r141051): Broke plugin support on non-Mac WebKit2 Ports
[WebKit-https.git] / Source / WebKit2 / ChangeLog
1 2013-01-30  Thiago Marcos P. Santos  <thiago.santos@intel.com>
2
3         REGRESSION (r141051): Broke plugin support on non-Mac WebKit2 Ports
4         https://bugs.webkit.org/show_bug.cgi?id=108182
5
6         Reviewed by Sam Weinig.
7
8         Send the plugin path to the PluginProcess as a parameter.
9
10         * PluginProcess/qt/PluginProcessMainQt.cpp:
11         (WebKit::PluginProcessMain):
12         * PluginProcess/unix/PluginProcessMainUnix.cpp:
13         (WebKit::PluginProcessMainUnix):
14         * UIProcess/Launcher/efl/ProcessLauncherEfl.cpp:
15         (WebKit::ProcessLauncher::launchProcess):
16         * UIProcess/Launcher/gtk/ProcessLauncherGtk.cpp:
17         (WebKit::ProcessLauncher::launchProcess):
18         * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
19         (WebKit::ProcessLauncher::launchProcess):
20         * UIProcess/Plugins/qt/PluginProcessProxyQt.cpp:
21         (WebKit::PluginProcessProxy::platformInitializeLaunchOptions):
22         * UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp:
23         (WebKit::PluginProcessProxy::platformInitializeLaunchOptions):
24
25 2013-01-30  Christophe Dumez  <christophe.dumez@intel.com>
26
27         [EFL][WK2] Use C API inside ewk_window_features
28         https://bugs.webkit.org/show_bug.cgi?id=107924
29
30         Reviewed by Sam Weinig.
31
32         Use C API inside ewk_window_features instead of accessing
33         internal C++ classes directly, to avoid violating API
34         layering.
35
36         * UIProcess/API/efl/EwkView.cpp:
37         (EwkView::createNewPage):
38         * UIProcess/API/efl/EwkView.h:
39         (EwkView):
40         * UIProcess/API/efl/ewk_window_features.cpp:
41         (EwkWindowFeatures::EwkWindowFeatures):
42         (getWindowFeatureValue):
43         (EwkWindowFeatures::getWindowFeatureBoolValue):
44         (EwkWindowFeatures::getWindowFeatureDoubleValue):
45         (ewk_window_features_geometry_get):
46         * UIProcess/API/efl/ewk_window_features_private.h:
47         (EwkWindowFeatures::create):
48         (EwkWindowFeatures::geometry):
49         (EwkWindowFeatures::setGeometry):
50         (EwkWindowFeatures):
51         * UIProcess/efl/PageUIClientEfl.cpp:
52         (WebKit::PageUIClientEfl::createNewPage):
53
54 2013-01-30  Zeno Albisser  <zeno@webkit.org>
55
56         [Qt] Fix Qt/Mac build after r141024 and r141037
57         https://bugs.webkit.org/show_bug.cgi?id=108318
58
59         Reviewed by Kentaro Hara.
60
61         * Platform/CoreIPC/mac/ConnectionMac.cpp:
62         (CoreIPC::Connection::platformInvalidate):
63             Replace nullptr with 0 to allow compiling without C++11 support.
64
65 2013-01-30  Kondapally Kalyan  <kalyan.kondapally@intel.com>
66
67         [EFL][Qt][WebGL] Avoid deleting an uncreated canvas.
68         https://bugs.webkit.org/show_bug.cgi?id=106878
69
70         Reviewed by Benjamin Poulain.
71
72         setContentsToCanvas is responsible for marking canvas for creation or deletion.
73         The issue here is that the canvas is marked for deletion even though it has not
74         been created. This causes an assert in LayerTreeRenderer::destroyCanvas.
75         This patch adds a seperate check to ensure that CoordinatedGraphicsLayer
76         tries to issue a request for canvas deletion only after request for canvas
77         creation has been handled.
78
79         New test: fast/canvas/webgl/canvas-resize-crash.html
80
81         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
82         (WebCore::CoordinatedGraphicsLayer::CoordinatedGraphicsLayer):
83         (WebCore::CoordinatedGraphicsLayer::setContentsToCanvas):
84         (WebCore::CoordinatedGraphicsLayer::destroyCanvasIfNeeded):
85         (WebCore::CoordinatedGraphicsLayer::createCanvasIfNeeded):
86         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
87         (CoordinatedGraphicsLayer):
88         (WebCore::CoordinatedGraphicsLayer::fixedToViewport):
89
90 2013-01-30  Zan Dobersek  <zdobersek@igalia.com>
91
92         Unreviewed GTK build fix.
93
94         * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp: Include GraphicsLayerTextureMapper.h
95         as a forwarding header from WebCore.
96
97 2013-01-30  Huang Dongsung  <luxtella@company100.net>
98
99         Coordinated Graphics: Remove m_pendingSyncBackingStores in LayerTreeRenderer.
100         https://bugs.webkit.org/show_bug.cgi?id=107099
101
102         Reviewed by Noam Rosenthal.
103
104         Instead of queuing the setting of backing stores in LayerTreeRenderer,
105         and then setting them directly to TextureMapperLayer, we allow
106         GraphicsLayerTextureMapper's existing queuing mechanism to handle that.
107         Instead of a m_pendingSyncBackingStores queue, we have a m_backingStores
108         queue which can be applied much more easily to the layer tree.
109
110         In addition, LayerTreeRenderer::purgeGLResources() does not call
111         TextureMapperLayer::clearBackingStoresRecursive() because
112         TextureMapperLayer will be destructed soon.
113
114         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
115         (WebKit::LayerTreeRenderer::deleteLayer):
116         (WebKit::LayerTreeRenderer::createBackingStoreIfNeeded):
117         (WebKit::LayerTreeRenderer::removeBackingStoreIfNeeded):
118         (WebKit::LayerTreeRenderer::resetBackingStoreSizeToLayerSize):
119         (WebKit::LayerTreeRenderer::createTile):
120         (WebKit::LayerTreeRenderer::removeTile):
121         (WebKit::LayerTreeRenderer::updateTile):
122         (WebKit::LayerTreeRenderer::commitPendingBackingStoreOperations):
123         (WebKit::LayerTreeRenderer::purgeGLResources):
124         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
125
126 2013-01-29  Anders Carlsson  <andersca@apple.com>
127
128         Update the expected generated message results
129         https://bugs.webkit.org/show_bug.cgi?id=108293
130
131         Reviewed by Beth Dakin.
132
133         * Scripts/webkit2/messages.py:
134         (generate_messages_header):
135         * Scripts/webkit2/messages_unittest.py:
136
137 2013-01-29  Sam Weinig  <sam@webkit.org>
138
139         Replace unnecessary ArgumentDecoder member functions with decode overloads
140         https://bugs.webkit.org/show_bug.cgi?id=102013
141
142         Reviewed by Anders Carlsson.
143
144         * Platform/CoreIPC/ArgumentCoders.cpp:
145         (CoreIPC::::decode):
146         * Platform/CoreIPC/ArgumentCoders.h:
147         * Platform/CoreIPC/ArgumentDecoder.cpp:
148         (CoreIPC::ArgumentDecoder::decodeVariableLengthByteArray):
149         (CoreIPC::ArgumentDecoder::decode):
150         * Platform/CoreIPC/ArgumentDecoder.h:
151         (ArgumentDecoder):
152         (CoreIPC::ArgumentDecoder::decodeEnum):
153         (CoreIPC):
154         * Platform/CoreIPC/Connection.cpp:
155         (CoreIPC::Connection::dispatchSyncMessage):
156         * Platform/CoreIPC/MessageDecoder.cpp:
157         (CoreIPC::MessageDecoder::MessageDecoder):
158         * Platform/mac/SharedMemoryMac.cpp:
159         (WebKit::SharedMemory::Handle::decode):
160         * Platform/win/SharedMemoryWin.cpp:
161         (WebKit::SharedMemory::Handle::decode):
162         * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
163         (CoreIPC::::decode):
164         (CoreIPC::decodeTimingFunction):
165         * Shared/DictionaryPopupInfo.cpp:
166         (WebKit::DictionaryPopupInfo::decode):
167         * Shared/UserMessageCoders.h:
168         (WebKit::UserMessageDecoder::baseDecode):
169         * Shared/cf/ArgumentCodersCF.cpp:
170         (CoreIPC::decode):
171         * Shared/mac/ArgumentCodersMac.mm:
172         (CoreIPC::decode):
173         * Shared/mac/ObjCObjectGraphCoders.mm:
174         (WebKit::ObjCObjectGraphDecoder::baseDecode):
175         * Shared/mac/SandboxExtensionMac.mm:
176         (WebKit::SandboxExtension::HandleArray::decode):
177         * Shared/mac/SecItemRequestData.cpp:
178         (WebKit::SecItemRequestData::decode):
179         * Shared/mac/SecItemResponseData.cpp:
180         (WebKit::SecItemResponseData::decode):
181         * Shared/qt/ArgumentCodersQt.cpp:
182         (CoreIPC::::decode):
183         * Shared/qt/QtNetworkReplyData.cpp:
184         (WebKit::QtNetworkReplyData::decode):
185         * WebProcess/WebPage/DecoderAdapter.cpp:
186         (WebKit::DecoderAdapter::decodeBool):
187         (WebKit::DecoderAdapter::decodeUInt16):
188         (WebKit::DecoderAdapter::decodeUInt32):
189         (WebKit::DecoderAdapter::decodeUInt64):
190         (WebKit::DecoderAdapter::decodeInt32):
191         (WebKit::DecoderAdapter::decodeInt64):
192         (WebKit::DecoderAdapter::decodeFloat):
193         (WebKit::DecoderAdapter::decodeDouble):
194
195 2013-01-29  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
196
197         [WK2] Adjust missing MessageID removals to fix build breaks
198         https://bugs.webkit.org/show_bug.cgi?id=108276
199
200         Unreviewed to fix build breaks.
201
202         Some MessageID removals wasn't adjusted into ConnectionUnix.cpp and coordinated graphics.
203
204         * Platform/CoreIPC/unix/ConnectionUnix.cpp:
205         (CoreIPC::MessageInfo::MessageInfo):
206         (CoreIPC::MessageInfo::setMessageBodyIsOutOfLine):
207         (CoreIPC::MessageInfo::isMessageBodyIsOutOfLine):
208         (CoreIPC::Connection::processMessage):
209         (CoreIPC::Connection::sendOutgoingMessage):
210         * UIProcess/WebPageProxy.cpp:
211         (WebKit::WebPageProxy::didReceiveMessage):
212         * UIProcess/WebProcessProxy.cpp:
213         * WebProcess/WebPage/WebPage.cpp:
214         (WebKit::WebPage::didReceiveMessage):
215
216 2013-01-29  Sheriff Bot  <webkit.review.bot@gmail.com>
217
218         Unreviewed, rolling out r140983.
219         http://trac.webkit.org/changeset/140983
220         https://bugs.webkit.org/show_bug.cgi?id=108277
221
222         Unfortunately, this API has one last client (Requested by
223         abarth on #webkit).
224
225         * Configurations/FeatureDefines.xcconfig:
226
227 2013-01-29  Anders Carlsson  <andersca@apple.com>
228
229         Remove MessageID parameter from Connection::sendMessage
230         https://bugs.webkit.org/show_bug.cgi?id=108269
231
232         Reviewed by Sam Weinig.
233
234         * Platform/CoreIPC/Connection.cpp:
235         (CoreIPC::Connection::sendMessage):
236         (CoreIPC::Connection::sendSyncReply):
237         (CoreIPC::Connection::sendSyncMessage):
238         (CoreIPC::Connection::sendSyncMessageFromSecondaryThread):
239         * Platform/CoreIPC/Connection.h:
240         (Connection):
241         (CoreIPC::Connection::send):
242         (CoreIPC::Connection::sendSync):
243         * Platform/CoreIPC/MessageSender.h:
244         (CoreIPC::MessageSender::send):
245         (CoreIPC::MessageSender::sendMessage):
246         * Platform/CoreIPC/mac/ConnectionMac.cpp:
247         (CoreIPC::Connection::open):
248         * Shared/ChildProcessProxy.cpp:
249         (WebKit::ChildProcessProxy::sendMessage):
250         (WebKit::ChildProcessProxy::didFinishLaunching):
251         * Shared/WebConnection.cpp:
252         (WebKit::WebConnection::postMessage):
253         * WebProcess/InjectedBundle/InjectedBundle.cpp:
254         (WebKit::InjectedBundle::postMessage):
255         (WebKit::InjectedBundle::postSynchronousMessage):
256
257 2013-01-29  Anders Carlsson  <andersca@apple.com>
258
259         Stop generating the message kind enum
260         https://bugs.webkit.org/show_bug.cgi?id=108258
261
262         Reviewed by Beth Dakin.
263
264         * Platform/CoreIPC/Connection.h:
265         (CoreIPC::Connection::send):
266         (CoreIPC::Connection::sendSync):
267         (CoreIPC::Connection::waitForAndDispatchImmediately):
268         * Platform/CoreIPC/MessageSender.h:
269         (CoreIPC::MessageSender::send):
270         * Scripts/webkit2/messages.py:
271         (surround_in_condition):
272         (message_to_struct_declaration):
273         (generate_messages_header):
274         * Scripts/webkit2/messages_unittest.py:
275         * Scripts/webkit2/model.py:
276         (Message.__init__):
277         * Shared/ChildProcessProxy.h:
278         (WebKit::ChildProcessProxy::send):
279         * Shared/WebConnection.cpp:
280         (WebKit::WebConnection::postMessage):
281
282 2013-01-29  Kiran Muppala  <cmuppala@apple.com>
283
284         Fix erroneous semicolon causing build failure: if statement has empty body [-Werror,-Wempty-body]
285         https://bugs.webkit.org/show_bug.cgi?id=108241
286
287         Reviewed by Anders Carlsson.
288
289         * UIProcess/WebProcessProxy.cpp:
290         (WebKit::WebProcessProxy::addExistingWebPage): Remove erroneous
291         semicolon following the if condition.
292
293 2013-01-29  Anders Carlsson  <andersca@apple.com>
294
295         Remove almost everything from MessageID
296         https://bugs.webkit.org/show_bug.cgi?id=108244
297
298         Reviewed by Beth Dakin.
299
300         * Platform/CoreIPC/MessageID.h:
301         (CoreIPC::MessageID::MessageID):
302         * Platform/CoreIPC/mac/ConnectionMac.cpp:
303         (CoreIPC):
304         (CoreIPC::Connection::sendOutgoingMessage):
305         (CoreIPC::createMessageDecoder):
306         (CoreIPC::Connection::receiveSourceEventHandler):
307
308 2013-01-29  Anders Carlsson  <andersca@apple.com>
309
310         Get rid of MessageID::is()
311         https://bugs.webkit.org/show_bug.cgi?id=108234
312
313         Reviewed by Beth Dakin.
314
315         Add explicit message receiver name equality checks instead of using MessageID::is.
316
317         * NetworkProcess/NetworkConnectionToWebProcess.cpp:
318         (WebKit::NetworkConnectionToWebProcess::didReceiveMessage):
319         (WebKit::NetworkConnectionToWebProcess::didReceiveSyncMessage):
320         * Platform/CoreIPC/MessageID.h:
321         * PluginProcess/WebProcessConnection.cpp:
322         (WebKit::WebProcessConnection::didReceiveMessage):
323         (WebKit::WebProcessConnection::didReceiveSyncMessage):
324         * Shared/mac/SecItemShim.cpp:
325         (WebKit::SecItemShim::didReceiveMessageOnConnectionWorkQueue):
326         * UIProcess/Network/NetworkProcessProxy.cpp:
327         (WebKit::NetworkProcessProxy::didReceiveMessage):
328         * UIProcess/WebContext.cpp:
329         (WebKit::WebContext::didReceiveMessage):
330         (WebKit::WebContext::didReceiveSyncMessage):
331         * UIProcess/WebPageProxy.cpp:
332         (WebKit::WebPageProxy::didReceiveMessage):
333         (WebKit::WebPageProxy::didReceiveSyncMessage):
334         * UIProcess/WebProcessProxy.cpp:
335         (WebKit::WebProcessProxy::didReceiveMessage):
336         (WebKit::WebProcessProxy::didReceiveSyncMessage):
337         (WebKit::WebProcessProxy::didReceiveMessageOnConnectionWorkQueue):
338         * UIProcess/mac/SecItemShimProxy.cpp:
339         (WebKit::SecItemShimProxy::didReceiveMessageOnConnectionWorkQueue):
340         * WebProcess/Network/NetworkProcessConnection.cpp:
341         (WebKit::NetworkProcessConnection::didReceiveMessage):
342         (WebKit::NetworkProcessConnection::didReceiveSyncMessage):
343         * WebProcess/Plugins/PluginProcessConnection.cpp:
344         (WebKit::PluginProcessConnection::didReceiveSyncMessage):
345         * WebProcess/WebPage/EventDispatcher.cpp:
346         (WebKit::EventDispatcher::didReceiveMessageOnConnectionWorkQueue):
347         * WebProcess/WebPage/WebPage.cpp:
348         (WebKit::WebPage::didReceiveMessage):
349         * WebProcess/WebProcess.cpp:
350         (WebKit::WebProcess::didReceiveMessage):
351         (WebKit::WebProcess::didReceiveMessageOnConnectionWorkQueue):
352
353 2012-11-28  Jer Noble  <jer.noble@apple.com>
354
355         Allow clients to ask for the WebView/WKView placeholder view when in full screen mode.
356         https://bugs.webkit.org/show_bug.cgi?id=103558
357         <rdar://problem/12763112>
358
359         Reviewed by Benjamin Poulain.
360
361         Clients may want to behave differently when their WebView/WKView has been swapped out by a placeholder
362         view when in full screen mode.  Add a simple accessor for the existing placeholder view to
363         WKFullScreenWindowController and WKView.
364
365         * UIProcess/API/mac/WKView.mm:
366         (-[WKView fullScreenPlaceholderView]): Added simple accessor.
367         * UIProcess/API/mac/WKViewPrivate.h:
368         * UIProcess/mac/WKFullScreenWindowController.h:
369         * UIProcess/mac/WKFullScreenWindowController.mm:
370         (-[WKFullScreenWindowController webViewPlaceholder]): Added simple accessor.
371
372 2013-01-29  Huang Dongsung  <luxtella@company100.net>
373
374         [WK2] Call LayerTreeHost::deviceOrPageScaleFactorChanged() when a device or page scale factor is changed.
375         https://bugs.webkit.org/show_bug.cgi?id=107802
376
377         Reviewed by Simon Fraser.
378
379         Currently, LayerTreeHostMac and *GTK call deviceOrPageScaleFactorChanged()
380         of the non compositing GraphicsLayer when a device scale factor is changed.
381
382         There are two problems.
383         1. We don't notify LayerTreeHost when a page scale factor is changed.
384         2. When using TiledCoreAnimationDrawingAreaProxy, LayerTreeHostMac does
385         not receive the device scale factor changed callback.
386
387         So this patch changes three points.
388         1. Rename from deviceScaleFactorDidChange() to deviceOrPageScaleFactorChanged()
389         in LayerTreeHost.
390         2. WebPage::setDeviceScaleFactor() calls LayerTreeHost::deviceScaleFactorDidChange()
391         because of dealing with TiledCoreAnimationDrawingAreaProxy.
392         3. WebPage::pageScaleFactor() calls LayerTreeHost::deviceScaleFactorDidChange()
393         to call deviceOrPageScaleFactorChanged() of the non compositing GraphicsLayer.
394
395         Unfortunately, I couldn't think of a way to test this in an automated fashion.
396
397         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
398         (WebKit::CoordinatedLayerTreeHost::deviceOrPageScaleFactorChanged):
399         * WebProcess/WebPage/DrawingAreaImpl.cpp:
400         (WebKit::DrawingAreaImpl::updateBackingStoreState):
401             Don't call LayerTreeHost::deviceScaleFactorDidChange() because this
402             method calls WebPage::setDeviceScaleFactor() and then
403             LayerTreeHost::deviceScaleFactorDidChange() is called.
404         * WebProcess/WebPage/LayerTreeHost.h:
405         (LayerTreeHost):
406         * WebProcess/WebPage/WebPage.cpp:
407         (WebKit::WebPage::scalePage):
408         (WebKit::WebPage::setDeviceScaleFactor):
409         * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:
410         (WebKit::LayerTreeHostGtk::deviceOrPageScaleFactorChanged):
411         * WebProcess/WebPage/gtk/LayerTreeHostGtk.h:
412         (LayerTreeHostGtk):
413         * WebProcess/WebPage/mac/LayerTreeHostMac.h:
414         (LayerTreeHostMac):
415         * WebProcess/WebPage/mac/LayerTreeHostMac.mm:
416         (WebKit::LayerTreeHostMac::deviceOrPageScaleFactorChanged):
417
418 2013-01-29  Anders Carlsson  <andersca@apple.com>
419
420         Get rid of MessageID::get()
421         https://bugs.webkit.org/show_bug.cgi?id=108235
422
423         Reviewed by Beth Dakin.
424
425         Just check for the message receiver name and message name explicitly instead.
426
427         * Platform/CoreIPC/MessageID.h:
428         (CoreIPC::MessageID::is):
429         * Shared/CoreIPCSupport/WebContextMessageKinds.h:
430         (WebContextLegacyMessage::messageReceiverName):
431         (WebContextLegacyMessage):
432         (WebContextLegacyMessage::postMessageMessageName):
433         (WebContextLegacyMessage::postSynchronousMessageMessageName):
434         * UIProcess/WebContext.cpp:
435         (WebKit::WebContext::didReceiveMessage):
436         (WebKit::WebContext::didReceiveSyncMessage):
437
438 2013-01-29  Kiran Muppala  <cmuppala@apple.com>
439
440         Add support for enabling process suppression in WebProcesses with no visible pages
441         https://bugs.webkit.org/show_bug.cgi?id=108054
442
443         Reviewed by Anders Carlsson.
444
445         Provide a preference to enable process suppression in WebProcesses with
446         no visible pages even if the application is not completely occluded.
447         This provides more opportunities for process suppression to take effect.
448
449         Replace the messaging of application occlusion status from UI process to
450         ChildProcesses with messages that indicate the current required process
451         suppression state.  WebProcessProxy should determine if the process is
452         eligible for process suppression based on both application occlusion
453         and page visibility.  When either of these parameters changes,
454         the proxy should message the child process of the updated process
455         suppression state.
456
457         * NetworkProcess/NetworkProcess.messages.in: Rename
458         SetApplicationIsOccluded to SetProcessSuppressionEnabled.
459         * PluginProcess/PluginProcess.messages.in: Ditto.
460         * Shared/ChildProcess.h: 
461         (WebKit::ChildProcess::processSuppressionEnabled): Rename
462         applicationIsOccluded.
463         * Shared/WebPreferencesStore.h: Add a new preference
464         pageVisibilityBasedProcessSuppressionEnabled, to enabled/disable
465         process suppression of WebProcesses when all pages are hidden.
466         * Shared/mac/ChildProcessMac.mm:
467         (WebKit::ChildProcess::setProcessSuppressionEnabled): Rename
468         setApplicationIsOccluded.
469         (WebKit::ChildProcess::platformInitialize): Replace call to
470         setApplicationIsOccluded with setProcessSuppressionEnabled.
471         * SharedWorkerProcess/SharedWorkerProcess.messages.in: Rename
472         SetApplicationIsOccluded to SetProcessSuppressionEnabled.
473         * UIProcess/API/C/WKPreferences.cpp:
474         (WKPreferencesSetPageVisibilityBasedProcessSuppressionEnabled):
475         (WKPreferencesGetPageVisibilityBasedProcessSuppressionEnabled):
476         * UIProcess/API/C/WKPreferencesPrivate.h:
477         * UIProcess/Network/NetworkProcessProxy.cpp:
478         (WebKit::NetworkProcessProxy::didFinishLaunching): Use setter
479         to update process suppression state instead of messaging directly.
480         Use WebContext::canEnableProcessSuppressionForNetworkProcess() helper
481         method to determine if process suppression should be enabled.
482         * UIProcess/Network/NetworkProcessProxy.h: Rename
483         setApplicationIsOccluded to setProcessSuppresionEnabled.
484         * UIProcess/Network/mac/NetworkProcessProxyMac.mm:
485         (WebKit::NetworkProcessProxy::setProcessSuppressionEnabled): Ditto.
486         * UIProcess/Plugins/PluginProcessManager.h: Ditto.
487         * UIProcess/Plugins/PluginProcessProxy.cpp:
488         (WebKit::PluginProcessProxy::didFinishLaunching): Use setter
489         to update process suppression state instead of messaging directly.
490         Use WebContext::canEnableProcessSuppressionForGlobalChildProcesses()
491         helper method to determine if process suppression should be enabled.
492         * UIProcess/Plugins/PluginProcessProxy.h: Rename
493         setApplicationIsOccluded to setProcessSuppresionEnabled.
494         * UIProcess/Plugins/mac/PluginProcessManagerMac.mm:
495         (WebKit::PluginProcessManager::setProcessSuppressionEnabled): Ditto.
496         * UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
497         (WebKit::PluginProcessProxy::setProcessSuppressionEnabled): Ditto.
498         * UIProcess/SharedWorkers/SharedWorkerProcessManager.h: Ditto.
499         * UIProcess/SharedWorkers/SharedWorkerProcessProxy.cpp:
500         (WebKit::SharedWorkerProcessProxy::didFinishLaunching): Use setter
501         to update process suppression state instead of messaging directly.
502         Use WebContext::canEnableProcessSuppressionForGlobalChildProcesses()
503         helper method to determine if process suppression should be enabled.
504         * UIProcess/SharedWorkers/SharedWorkerProcessProxy.h: Rename
505         setApplicationIsOccluded to setProcessSuppresionEnabled.
506         * UIProcess/SharedWorkers/mac/SharedWorkerProcessManagerMac.mm:
507         (WebKit::SharedWorkerProcessManager::setProcessSuppressionEnabled):
508         Ditto.
509         * UIProcess/SharedWorkers/mac/SharedWorkerProcessProxyMac.mm:
510         (WebKit::SharedWorkerProcessProxy::setProcessSuppressionEnabled): Ditto.
511         * UIProcess/WebContext.h: Replace applicationIsOccluded() getter with
512         helper methods to determine if a child process can have process
513         suppression enabled.
514         * UIProcess/WebPageProxy.cpp:
515         (WebKit::WebPageProxy::viewStateDidChange): Notify WebProcessProxy of
516         page visibility change.
517         (WebKit::WebPageProxy::preferencesDidChange): Notify WebProcessProxy of
518         change in preferences.
519         * UIProcess/WebProcessProxy.cpp:
520         (WebKit::WebProcessProxy::WebProcessProxy): Initialize member variable
521         tracking process suppression state to false.
522         (WebKit::WebProcessProxy::createWebPage): Update set of pages which can
523         be process suppressed and the resulting process suppression state for
524         the child process.
525         (WebKit::WebProcessProxy::addExistingWebPage): Ditto.
526         (WebKit::WebProcessProxy::removeWebPage): Ditto.
527         (WebKit::WebProcessProxy::pageVisibilityChanged): Ditto.
528         (WebKit::WebProcessProxy::pagePreferencesChanged): Ditto.
529         (WebKit::WebProcessProxy::didFinishLaunching): Call
530         updateProcessSuppressionState().
531         * UIProcess/WebProcessProxy.h:
532         * UIProcess/mac/WebContextMac.mm:
533         (WebKit::updateProcessSuppressionStateOfGlobalChildProcesses): Use new
534         helper method canEnableProcessSuppressionForGlobalChildProcesses() to
535         determine if process suppression should be enabled.
536         (WebKit::applicationOcclusionStateChanged): Update renamed methods
537         and variables.
538         (WebKit::enableOcclusionNotifications): Move OmitProcessSuppression
539         user default check into canEnableProcessSuppression methods.
540         (WebKit::omitProcessSuppression):
541         (WebKit::WebContext::updateProcessSuppressionStateOfChildProcesses):
542         Use new helper method canEnableProcessSuppressionForNetworkProcess() to
543         determine if process suppression should be enabled for NetworkProcess.
544         Let WebProcess update process suppression state based on application
545         occlusion state and page visibility.
546         (WebKit::WebContext::canEnableProcessSuppressionForNetworkProcess):
547         (WebKit::WebContext::canEnableProcessSuppressionForWebProcess):
548         (WebKit::WebContext::canEnableProcessSuppressionForGlobalChildProcesses):
549         (WebKit::WebContext::processSuppressionEnabledChanged): Reevaluate if
550         process suppression is enabled for all contexts and update process
551         suppression state of global child processes.
552         * UIProcess/mac/WebProcessProxyMac.mm:
553         (WebKit::WebProcessProxy::pageIsProcessSuppressible):
554         (WebKit::WebProcessProxy::allPagesAreProcessSuppressible):
555         (WebKit::WebProcessProxy::updateProcessSuppressionState):
556         * WebProcess/WebProcess.messages.in:
557
558 2013-01-29  Anders Carlsson  <andersca@apple.com>
559
560         Start using the message flag in MessageEncoder/MessageDecoder
561         https://bugs.webkit.org/show_bug.cgi?id=108227
562
563         Reviewed by Beth Dakin.
564
565         Stop using the flags in MessageID and store the flags directly in the message instead.
566         This is another step towards eliminating MessageID.
567
568         * Platform/CoreIPC/Connection.cpp:
569         (CoreIPC::Connection::SyncMessageState::processIncomingMessage):
570         (CoreIPC::Connection::createSyncMessageEncoder):
571         (CoreIPC::Connection::sendMessage):
572         (CoreIPC::Connection::sendSyncMessage):
573         (CoreIPC::Connection::sendSyncMessageFromSecondaryThread):
574         (CoreIPC::Connection::dispatchSyncMessage):
575         (CoreIPC::Connection::dispatchMessage):
576         * Platform/CoreIPC/Connection.h:
577         * Platform/CoreIPC/MessageDecoder.cpp:
578         (CoreIPC::MessageDecoder::MessageDecoder):
579         (CoreIPC::MessageDecoder::isSyncMessage):
580         (CoreIPC):
581         (CoreIPC::MessageDecoder::shouldDispatchMessageWhenWaitingForSyncReply):
582         * Platform/CoreIPC/MessageDecoder.h:
583         (MessageDecoder):
584         * Platform/CoreIPC/MessageEncoder.cpp:
585         (CoreIPC):
586         (CoreIPC::MessageEncoder::MessageEncoder):
587         (CoreIPC::MessageEncoder::~MessageEncoder):
588         (CoreIPC::MessageEncoder::setIsSyncMessage):
589         (CoreIPC::MessageEncoder::setShouldDispatchMessageWhenWaitingForSyncReply):
590         * Platform/CoreIPC/MessageEncoder.h:
591         (MessageEncoder):
592         * Platform/CoreIPC/MessageFlags.h: Copied from Source/WebKit2/Platform/CoreIPC/MessageEncoder.h.
593         (CoreIPC):
594         * Platform/CoreIPC/MessageID.h:
595         * WebKit2.xcodeproj/project.pbxproj:
596
597 2013-01-29  Anders Carlsson  <andersca@apple.com>
598
599         Encode/decode message send flags in the message
600         https://bugs.webkit.org/show_bug.cgi?id=108208
601
602         Reviewed by Beth Dakin.
603
604         This is another step towards getting rid of MessageID.
605
606         * Platform/CoreIPC/ArgumentDecoder.cpp:
607         (CoreIPC::ArgumentDecoder::decodeUInt8):
608         (CoreIPC):
609         * Platform/CoreIPC/ArgumentDecoder.h:
610         (ArgumentDecoder):
611         (CoreIPC::ArgumentDecoder::decode):
612         (CoreIPC):
613         * Platform/CoreIPC/ArgumentEncoder.cpp:
614         (CoreIPC::ArgumentEncoder::encode):
615         (CoreIPC):
616         * Platform/CoreIPC/ArgumentEncoder.h:
617         (ArgumentEncoder):
618         * Platform/CoreIPC/Connection.cpp:
619         (CoreIPC::Connection::sendMessage):
620         * Platform/CoreIPC/MessageDecoder.cpp:
621         (CoreIPC::MessageDecoder::MessageDecoder):
622         * Platform/CoreIPC/MessageDecoder.h:
623         (CoreIPC::MessageDecoder::messageSendFlags):
624         (MessageDecoder):
625         * Platform/CoreIPC/MessageEncoder.cpp:
626         (CoreIPC):
627         (CoreIPC::MessageEncoder::MessageEncoder):
628         (CoreIPC::MessageEncoder::~MessageEncoder):
629         (CoreIPC::MessageEncoder::setMessageSendFlags):
630         * Platform/CoreIPC/MessageEncoder.h:
631         (MessageEncoder):
632         * UIProcess/Authentication/AuthenticationChallengeProxy.h:
633         (CoreIPC):
634
635 2013-01-29  Mario Sanchez Prada  <mario.prada@samsung.com>
636
637         [GTK] Missing build flags when building with Harfbuzz
638         https://bugs.webkit.org/show_bug.cgi?id=108174
639
640         Reviewed by Martin Robinson.
641
642         Add FREETYPE_CFLAGS and FREETYPE_LIBS to makefiles so -lharfbuzz
643         parameter will be added to linking lines when needed.
644
645         * GNUmakefile.am: Added FREETYPE_CFLAGS and FREETYPE_LIBS.
646         * UIProcess/API/gtk/tests/GNUmakefile.am: Ditto.
647
648 2013-01-29  Grzegorz Czajkowski  <g.czajkowski@samsung.com>
649
650         [EFL] Unified text checker implementation.
651         https://bugs.webkit.org/show_bug.cgi?id=107682
652
653         Reviewed by Anders Carlsson.
654
655         * UIProcess/efl/TextCheckerEfl.cpp:
656         (WebKit):
657         (WebKit::TextChecker::checkTextOfParagraph):
658         Allow to check spelling for multiple words,
659         their misspelling location and length are saved to the vector.
660
661         * WebProcess/WebCoreSupport/WebEditorClient.h:
662         * WebProcess/WebCoreSupport/efl/WebEditorClientEfl.cpp:
663         (WebKit::WebEditorClient::checkTextOfParagraph):
664         (WebKit):
665         As spelling implementation is exposed to UIProcess,
666         send a meesage to UIProcess to call TextChecker::checkTextOfParagraph.
667
668 2013-01-29  Carlos Garcia Campos  <cgarcia@igalia.com>
669
670         [GTK] Add API to prefetch DNS of a given hostname to WebKit2 GTK+ API
671         https://bugs.webkit.org/show_bug.cgi?id=99695
672
673         Reviewed by Anders Carlsson.
674
675         * UIProcess/API/gtk/WebKitWebContext.cpp:
676         (webkit_web_context_prefetch_dns): Public method to resolve the
677         domain name in advance for the given hostname.
678         * UIProcess/API/gtk/WebKitWebContext.h:
679         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add
680         webkit_web_context_prefetch_dns.
681         * WebProcess/InjectedBundle/API/gtk/WebKitWebExtension.cpp:
682         (webkitWebExtensionDidReceiveMessage): Parse PrefetchDNS message
683         and call WebCore::prefetchDNS() with the given hostname.
684         (didReceiveMessage): Call webkitWebExtensionDidReceiveMessage().
685         (webkitWebExtensionCreate): Add implementation for
686         didReceiveMessage callback.
687
688 2013-01-29  Carlos Garcia Campos  <cgarcia@igalia.com>
689
690         [GTK] Implement resources API using injected bundle
691         https://bugs.webkit.org/show_bug.cgi?id=107457
692
693         Reviewed by Sam Weinig.
694
695         The ResourceLoaderClient was removed from the UI process in
696         r140285, and most of the GTK+ API depends on resources. This patch
697         implements the same API using the ResourceLoaderClient from
698         injected bundle. It fixes the resources unit tests, as well as
699         other 14 unit tests that are timing out because they depend on
700         resource API.
701
702         * GNUmakefile.list.am: Add new files to compilation.
703         * Shared/UserMessageCoders.h:
704         (WebKit::UserMessageEncoder::baseEncode): Add support for encoding
705         WebURLResponse and WebError objects in user messages.
706         (WebKit::UserMessageDecoder::baseDecode): Add support for decoding
707         WebURLResponse and WebError objects from user messages.
708         * UIProcess/API/gtk/WebKitInjectedBundleClient.cpp: Added.
709         (didReceiveWebViewMessageFromInjectedBundle): Handle messages sent
710         to the WebView. For now it hanldes all the sresource loader client
711         messages.
712         (didReceiveMessageFromInjectedBundle): Handle messages received
713         from injected bundle.
714         (attachInjectedBundleClientToContext): Initialize the injected
715         bundle client.
716         * UIProcess/API/gtk/WebKitInjectedBundleClient.h: Added.
717         * UIProcess/API/gtk/WebKitWebContext.cpp:
718         (_WebKitWebContextPrivate): Add a HashMap to map page IDs to
719         WebKitWebViews.
720         (createDefaultWebContext): Call
721         attachInjectedBundleClientToContext() to intialize the injected
722         bundle client.
723         (webkitWebContextCreatePageForWebView): Use
724         webkitWebViewBaseCreateWebPage() to create and initialize a new
725         WebPageProxy and map the newly created page with the given
726         WebKitWebView.
727         (webkitWebContextWebViewDestroyed): Called when the given
728         WebKitWebView is being destroyed to remove it from the views map.
729         (webkitWebContextGetWebViewForPage): Returns the WebKitWebView
730         associated to the given page ID.
731         * UIProcess/API/gtk/WebKitWebContextPrivate.h:
732         * UIProcess/API/gtk/WebKitWebView.cpp:
733         (webkitWebViewConstructed): Use
734         webkitWebContextCreatePageForWebView() instead of
735         webkitWebViewBaseCreateWebPage() directly.
736         (webkitWebViewDispose): Call webkitWebContextWebViewDestroyed() to
737         notify the context.
738         * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
739         (didInitiateLoadForResource): Send a message to the UI process
740         with the callback parameters encoded.
741         (willSendRequestForFrame): Ditto.
742         (didReceiveResponseForResource): Ditto.
743         (didReceiveContentLengthForResource): Ditto.
744         (didFinishLoadForResource): Ditto.
745         (didFailLoadForResource): Ditto.
746         (webkitWebPageCreate): Initialize the
747         WKBundlePageResourceLoadClient.
748
749 2013-01-29  Laszlo Gombos  <l.gombos@samsung.com>
750
751         [Qt] Remove misspelled ENABLE(SPEECH_INPUT) guard
752         https://bugs.webkit.org/show_bug.cgi?id=105683
753
754         Reviewed by Simon Hausmann.
755
756         The ENABLE(SPEECH_INPUT) guard is only used in one location
757         in the source tree and as such it is always 0.
758
759         I believe that this guard is a left over and is not needed any more
760         as the code guarded is not guarded anywhere else.
761
762         * WebProcess/qt/WebProcessQt.cpp:
763         (WebKit::WebProcess::platformInitializeWebProcess):
764
765 2013-01-29  Zan Dobersek  <zdobersek@igalia.com>
766
767         Unreviewed build fix after r141024.
768         Adding new files to the build.
769
770         * GNUmakefile.am:
771         * GNUmakefile.list.am:
772
773 2013-01-29  Jinwoo Song  <jinwoo7.song@samsung.com>
774
775         [WK2] Fix unused parameter build warning
776         https://bugs.webkit.org/show_bug.cgi?id=108156
777
778         Reviewed by Kentaro Hara.
779
780         Comment out the unused parameters to fix the build warnings.
781
782         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
783         * WebProcess/Plugins/PluginProxy.h:
784
785 2013-01-28  Jae Hyun Park  <jae.park@company100.net>
786
787         [Qt] Build fix
788         https://bugs.webkit.org/show_bug.cgi?id=108142
789
790         Reviewed by Gyuyoung Kim.
791
792         Build fix. Though StorageManager was added to WK2 in r141024,
793         it is not added to Target.pri for qt port.
794
795         * Target.pri:
796
797 2013-01-28  Huang Dongsung  <luxtella@company100.net>
798
799         Coordinated Graphics: Refactor code related to debug border and repaint count.
800         https://bugs.webkit.org/show_bug.cgi?id=107910
801
802         Reviewed by Noam Rosenthal.
803
804         There are two big changes:
805         1. CoordinatedGraphicsLayer sends debugging visuals to UI Process.
806         2. When updating a backing store, increment a repaint count.
807
808         In addition, we don't use QT_WEBKIT_SHOW_COMPOSITING_DEBUG_VISUALS
809         environment. EFL, GTK and QT will use WEBKIT_SHOW_COMPOSITING_DEBUG_VISUALS
810         after http://webkit.org/b/107198.
811
812         * Shared/CoordinatedGraphics/CoordinatedLayerInfo.h:
813         (WebKit::CoordinatedLayerInfo::CoordinatedLayerInfo):
814         (CoordinatedLayerInfo):
815         * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp:
816         (WebKit::CoordinatedBackingStore::removeAllTiles):
817         (WebKit::CoordinatedBackingStore::updateTile):
818         (WebKit::CoordinatedBackingStore::texture):
819         (WebKit::CoordinatedBackingStore::paintTilesToTextureMapper):
820         (WebKit::CoordinatedBackingStore::adjustedTransformForRect):
821         (WebKit::CoordinatedBackingStore::paintToTextureMapper):
822         (WebKit):
823         (WebKit::CoordinatedBackingStore::drawBorder):
824             Override TextureMapperPlatformLayer::drawBorder() to draw the border
825             for each tile.
826         (WebKit::CoordinatedBackingStore::drawRepaintCounter):
827         (WebKit::CoordinatedBackingStore::commitTileOperations):
828         * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.h:
829         (WebKit::CoordinatedBackingStoreTile::CoordinatedBackingStoreTile):
830         (CoordinatedBackingStoreTile):
831         (CoordinatedBackingStore):
832         (WebKit::CoordinatedBackingStore::rect):
833         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:
834         (WebKit::CoordinatedLayerTreeHostProxy::setLayerRepaintCount):
835         (WebKit):
836         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:
837         (CoordinatedLayerTreeHostProxy):
838         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.messages.in:
839         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
840         (WebKit::LayerTreeRenderer::setLayerRepaintCount):
841         (WebKit):
842         (WebKit::LayerTreeRenderer::setLayerState):
843         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
844         (LayerTreeRenderer):
845         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
846         (WebCore::CoordinatedGraphicsLayer::setShowDebugBorder):
847         (WebCore):
848         (WebCore::CoordinatedGraphicsLayer::setShowRepaintCounter):
849         (WebCore::CoordinatedGraphicsLayer::syncLayerState):
850         (WebCore::CoordinatedGraphicsLayer::setDebugBorder):
851         (WebCore::CoordinatedGraphicsLayer::tiledBackingStorePaintEnd):
852         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
853         (CoordinatedGraphicsLayerClient):
854         (CoordinatedGraphicsLayer):
855         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
856         (WebKit::CoordinatedLayerTreeHost::setLayerRepaintCount):
857         (WebKit):
858         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
859
860 2013-01-28  Sam Weinig  <sam@webkit.org>
861
862         Remove support from ArgumentEncoder for deprecated encode functions
863         https://bugs.webkit.org/show_bug.cgi?id=108155
864
865         Reviewed by Dan Bernstein.
866
867         * Platform/CoreIPC/ArgumentEncoder.h:
868         (CoreIPC::ArgumentEncoder::encode):
869
870 2013-01-28  Sam Weinig  <sam@webkit.org>
871
872         Disable default use of the Plug-in XPCService until we can
873         figure out how to deal with the 32-bit one.
874
875         * UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
876         (WebKit::shouldUseXPC):
877         (WebKit::PluginProcessProxy::platformInitializeLaunchOptions):
878
879 2013-01-28  Sam Weinig  <sam@webkit.org>
880
881         Plug-ins should initialize their sandbox at creation time
882         https://bugs.webkit.org/show_bug.cgi?id=108098
883
884         Reviewed by Anders Carlsson.
885
886         Add the ability to add string key/value pairs to process creation parameters
887         to allow the plugin process to get passed the plugin path which in turn allows
888         the plugin to initialize its sandbox at the correct time.
889
890         * NetworkProcess/EntryPoint/mac/XPCService/NetworkService.Development/NetworkServiceMain.Development.mm:
891         * NetworkProcess/EntryPoint/mac/XPCService/NetworkService/NetworkServiceMain.mm:
892         * NetworkProcess/EntryPoint/mac/XPCService/NetworkServiceEntryPoint.mm:
893         (NetworkServiceInitializer):
894         * PluginProcess/EntryPoint/mac/LegacyProcess/PluginProcessMain.mm:
895         (WebKit::PluginProcessMainDelegate::getExtraData):
896         (PluginProcessMainDelegate):
897         * PluginProcess/EntryPoint/mac/XPCService/PluginService.32/PluginService.32.Main.mm:
898         * PluginProcess/EntryPoint/mac/XPCService/PluginService.64/PluginService.64.Main.mm:
899         * PluginProcess/EntryPoint/mac/XPCService/PluginService.Development/PluginService.Development.Main.mm:
900         * PluginProcess/EntryPoint/mac/XPCService/PluginServiceEntryPoint.mm:
901         (WebKit):
902         (PluginServiceInitializerDelegate):
903         (WebKit::PluginServiceInitializerDelegate::PluginServiceInitializerDelegate):
904         (WebKit::PluginServiceInitializerDelegate::getExtraData):
905         (PluginServiceInitializer):
906         * PluginProcess/PluginProcess.cpp:
907         (WebKit::PluginProcess::initializeProcess):
908         (WebKit::PluginProcess::initializePluginProcess):
909         (WebKit::PluginProcess::initializeProcessName):
910         (WebKit::PluginProcess::initializeSandbox):
911         * PluginProcess/PluginProcess.h:
912         * PluginProcess/mac/PluginProcessMac.mm:
913         (WebKit::PluginProcess::platformInitializePluginProcess):
914         (WebKit::PluginProcess::platformInitializeProcess):
915         (WebKit::PluginProcess::initializeProcessName):
916         (WebKit::PluginProcess::initializeSandbox):
917         * Shared/ChildProcess.h:
918         (ChildProcessInitializationParameters):
919         * Shared/EntryPointUtilities/mac/LegacyProcess/ChildProcessMain.h:
920         (ChildProcessMainDelegate):
921         (WebKit::ChildProcessMain):
922         * Shared/EntryPointUtilities/mac/LegacyProcess/ChildProcessMain.mm:
923         (WebKit::ChildProcessMainDelegate::getExtraData):
924         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceBootstrapper.Development.h:
925         (WebKit::XPCServiceEventHandler):
926         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceBootstrapper.h:
927         (WebKit::XPCServiceEventHandler):
928         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.h: Added.
929         (XPCServiceInitializerDelegate):
930         (WebKit::XPCServiceInitializerDelegate::XPCServiceInitializerDelegate):
931         (WebKit::XPCServiceInitializer):
932         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.mm: Added.
933         (WebKit::XPCServiceInitializerDelegate::~XPCServiceInitializerDelegate):
934         (WebKit::XPCServiceInitializerDelegate::getConnectionIdentifier):
935         (WebKit::XPCServiceInitializerDelegate::getClientIdentifier):
936         (WebKit::XPCServiceInitializerDelegate::getClientProcessName):
937         (WebKit::XPCServiceInitializerDelegate::getExtraData):
938         * Shared/Plugins/PluginProcessCreationParameters.cpp:
939         (WebKit::PluginProcessCreationParameters::encode):
940         (WebKit::PluginProcessCreationParameters::decode):
941         * Shared/Plugins/PluginProcessCreationParameters.h:
942         (PluginProcessCreationParameters):
943         * UIProcess/Launcher/ProcessLauncher.h:
944         (LaunchOptions):
945         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
946         (WebKit::connectToService):
947         (WebKit::connectToReExecService):
948         (WebKit::createService):
949         (WebKit::createProcess):
950         (WebKit::ProcessLauncher::launchProcess):
951         * UIProcess/Plugins/PluginProcessProxy.cpp:
952         (WebKit::PluginProcessProxy::didFinishLaunching):
953         * UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
954         (WebKit::PluginProcessProxy::platformInitializeLaunchOptions):
955         (WebKit::PluginProcessProxy::platformInitializePluginProcess):
956         * WebKit2.xcodeproj/project.pbxproj:
957         * WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/WebContentServiceMain.Development.mm:
958         * WebProcess/EntryPoint/mac/XPCService/WebContentService/WebContentServiceMain.mm:
959         * WebProcess/EntryPoint/mac/XPCService/WebContentServiceEntryPoint.mm:
960         (WebContentServiceInitializer):
961
962 2013-01-28  Kiran Muppala  <cmuppala@apple.com>
963
964         Add window occlusion criteria to determine page visibility on Mac
965         https://bugs.webkit.org/show_bug.cgi?id=107494
966
967         Reviewed by Simon Fraser.
968
969         * UIProcess/API/mac/PageClientImpl.mm:
970         (WebKit::PageClientImpl::isViewVisible): Add window occlusion check.
971         * UIProcess/API/mac/WKView.mm:
972         (-[WKView dealloc]): Remove self from the all views vector.
973         (-[WKView addWindowObserversForWindow:]): Register observer for
974         NSWindowWillOrderOffScreenNotification.
975         (-[WKView removeWindowObservers]): Unregister observer for
976         NSWindowWillOrderOffScreenNotification.
977         (-[WKView viewWillMoveToWindow:]): Disable occlusion notifications.
978         (-[WKView viewDidMoveToWindow]): Enable occlusion notifications.
979         (-[WKView _windowWillOrderOffScreen:]): Disable occlusion notifications.
980         (-[WKView _windowDidOrderOnScreen:]): Enable occlusion notifications.
981         This notification ensures that occlusion notifications are registered
982         correctly even if the NSWindow object is assigned a window number after
983         the viewDidMoveToWindow notification has been received.  This occurs
984         for instance during application launch.
985         (-[WKView _setIsWindowOccluded:]):
986         (-[WKView _enableWindowOcclusionNotifications]):
987         (-[WKView _disableWindowOcclusionNotifications]):
988         (windowBecameVisible):
989         (windowBecameOccluded):
990         (+[WKView _registerWindowOcclusionNotificationHandlers]):
991         (+[WKView _unregisterWindowOcclusionNotificationHandlers]):
992         (+[WKView _allViews]):
993         (-[WKView _isWindowOccluded]):
994         (-[WKView initWithFrame:contextRef:pageGroupRef:relatedToPage:]): Add
995         self to the all views vector.
996         * UIProcess/API/mac/WKViewInternal.h:
997
998 2013-01-28  Huang Dongsung  <luxtella@company100.net>
999
1000         [TexMap] Enable debug borders and repaint counter via Settings.
1001         https://bugs.webkit.org/show_bug.cgi?id=107198
1002
1003         Reviewed by Benjamin Poulain.
1004
1005         Currently, if the environment variable WEBKIT_SHOW_COMPOSITING_DEBUG_VISUALS
1006         is set to 1, only CoordinatedBacking shows debug borders and repaint counter.
1007
1008         This patch makes the environment variable change Settings.
1009
1010         In addition, Qt uses WEBKIT_SHOW_COMPOSITING_DEBUG_VISUALS instead of
1011         QT_WEBKIT_SHOW_COMPOSITING_DEBUG_VISUALS from now.
1012
1013         After Bug 105787, all backing stores and platform layers in TextureMapper can
1014         show debug borders and repaint counter.
1015
1016         * UIProcess/API/efl/EwkView.cpp:
1017         (EwkView::EwkView):
1018         * UIProcess/API/gtk/WebKitSettings.cpp:
1019         (webKitSettingsSetProperty):
1020         * UIProcess/API/qt/qquickwebview.cpp:
1021         (QQuickWebViewPrivate::initialize):
1022
1023 2013-01-28  Anders Carlsson  <andersca@apple.com>
1024
1025         Move Mach port handling from WorkQueue to Connection
1026         https://bugs.webkit.org/show_bug.cgi?id=108140
1027
1028         Reviewed by Sam Weinig.
1029
1030         Instead of having WorkQueue know about Mach port sources, just fold that
1031         functionality directly into Connection. This lets us get rid of the generic source
1032         handling from WorkQueue.
1033
1034         * Platform/CoreIPC/Connection.h:
1035         (Connection):
1036         * Platform/CoreIPC/mac/ConnectionMac.cpp:
1037         (CoreIPC::Connection::platformInvalidate):
1038         (CoreIPC::createDataAvailableSource):
1039         (CoreIPC):
1040         (CoreIPC::Connection::open):
1041         (CoreIPC::Connection::initializeDeadNameSource):
1042         * Platform/WorkQueue.h:
1043         (WorkQueue::dispatchQueue):
1044         (WorkQueue):
1045         * Platform/mac/WorkQueueMac.cpp:
1046         (WorkQueue::platformInvalidate):
1047
1048 2013-01-28  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1049
1050         Add StorageManager class to cmake ports
1051
1052         Unreviewed build fix. Though StorageManager was added to WK2 in r141024,
1053         it is not added to cmake ports(EFL).
1054
1055         * CMakeLists.txt:
1056         * PlatformEfl.cmake:
1057
1058 2013-01-28  Sam Weinig  <sam@webkit.org>
1059
1060         <rdar://problem/13098777>
1061         Add (allow mach-lookup (global-name "com.apple.tccd.system"))
1062
1063         Reviewed by Maciej Stachowiak.
1064
1065         * WebProcess/com.apple.WebProcess.sb.in:
1066
1067 2013-01-28  Brady Eidson  <beidson@apple.com>
1068
1069         WebKit2 should notify the client if the NetworkProcess crashes.
1070         <rdar://problem/13090513> and https://bugs.webkit.org/show_bug.cgi?id=108126
1071
1072         Reviewed by Sam Weinig.
1073
1074         Add new client callback to the ContextClient:
1075         * UIProcess/API/C/WKContext.h:
1076         * UIProcess/WebContextClient.cpp:
1077         (WebKit::WebContextClient::networkProcessDidCrash):
1078         * UIProcess/WebContextClient.h:
1079
1080         Call out to the client when the NetworkProcess crashes:
1081         * UIProcess/WebContext.cpp:
1082         (WebKit::WebContext::networkProcessCrashed):
1083         * UIProcess/WebContext.h:
1084
1085         * UIProcess/Network/NetworkProcessProxy.cpp:
1086         (WebKit::NetworkProcessProxy::networkProcessCrashedOrFailedToLaunch):
1087
1088 2013-01-28  Pratik Solanki  <psolanki@apple.com>
1089
1090         PLATFORM(IOS) should come before __MAC_OS_X_VERSION_MIN_REQUIRED
1091         https://bugs.webkit.org/show_bug.cgi?id=108101
1092
1093         Reviewed by Benjamin Poulain.
1094
1095         Since iOS does not define __MAC_OS_X_VERSION_MIN_REQUIRED, any usage of
1096         __MAC_OS_X_VERSION_MIN_REQUIRED should be after a PLATFORM(IOS) check.
1097
1098         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
1099         (InitWebCoreSystemInterface):
1100
1101 2013-01-28  Anders Carlsson  <andersca@apple.com>
1102
1103         Add StorageManager class
1104         https://bugs.webkit.org/show_bug.cgi?id=108127
1105
1106         Reviewed by Sam Weinig.
1107
1108         The StorageManager will be in charge of handling access to local and session storage
1109         in the UI process.
1110
1111         * UIProcess/Storage/StorageManager.cpp: Added.
1112         * UIProcess/Storage/StorageManager.h: Added.
1113         * WebKit2.xcodeproj/project.pbxproj:
1114
1115 2013-01-28  Anders Carlsson  <andersca@apple.com>
1116
1117         More work on UI side local storage
1118         https://bugs.webkit.org/show_bug.cgi?id=108119
1119
1120         Reviewed by Beth Dakin.
1121
1122         * WebKit2.xcodeproj/project.pbxproj:
1123         * WebProcess/Storage/StorageNamespaceProxy.cpp:
1124         (WebKit::StorageNamespaceProxy::createSessionStorageNamespace):
1125         Rename create to createSessionStorageNamespace and make it take a WebPage.
1126
1127         (WebKit::StorageNamespaceProxy::StorageNamespaceProxy):
1128         Add WebPage parameter.
1129     
1130         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
1131         (WebKit::WebPlatformStrategies::sessionStorageNamespace):
1132         Add an #ifdef for enabling UI side storage.
1133         
1134         * WebProcess/WebPage/WebFrame.cpp:
1135         (WebKit::WebFrame::page):
1136         Call new WebPage::fromCorePage helper.
1137
1138         * WebProcess/WebPage/WebPage.cpp:
1139         (WebKit::WebPage::fromCorePage):
1140         Add new function for getting a WebPage from a WebCore::Page.
1141
1142 2013-01-28  Joseph Pecoraro  <pecoraro@apple.com>
1143
1144         Improve PageVisibility API with enums
1145         https://bugs.webkit.org/show_bug.cgi?id=107364
1146
1147         Reviewed by Sam Weinig.
1148
1149         * Shared/API/c/WKPageVisibilityTypes.h: Added.
1150         * Shared/API/c/WKSharedAPICast.h:
1151         (WebKit::toPageVisibilityState):
1152         Create an enum for page visibility APIs and a conversion function
1153         for the WK2 values to WebCore values.
1154
1155         * Target.pri:
1156         * GNUmakefile.list.am:
1157         * WebKit2.xcodeproj/project.pbxproj:
1158         Add WKPageVisibilityTypes.h to the build as a private export.
1159
1160         * UIProcess/API/C/WKPage.h:
1161         * UIProcess/API/C/WKPage.cpp:
1162         (WKPageSetVisibilityState):
1163         * UIProcess/WebPageProxy.h:
1164         * UIProcess/WebPageProxy.cpp:
1165         (WebKit::WebPageProxy::setVisibilityState):
1166         UIProcess API to set visibility state. WebPageProxy already
1167         had m_visibilityState, so update that when setter is used.
1168
1169         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
1170         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
1171         * WebProcess/InjectedBundle/InjectedBundle.cpp:
1172         * WebProcess/InjectedBundle/InjectedBundle.h:
1173         Remove the old SPI for WebKitTestRunner. Tests now use the C API.
1174
1175         * WebProcess/WebPage/WebPage.h:
1176         * WebProcess/WebPage/WebPage.cpp:
1177         (WebKit::WebPage::setVisibilityState):
1178         * WebProcess/WebPage/WebPage.messages.in:
1179         Update the existing WebPage API to use uint32_t, which matches
1180         other enum message types.
1181
1182 2013-01-28  Christophe Dumez  <christophe.dumez@intel.com>
1183
1184         [EFL][WK2] Use C API inside ewk_download_job
1185         https://bugs.webkit.org/show_bug.cgi?id=107810
1186
1187         Reviewed by Anders Carlsson.
1188
1189         Use C API inside ewk_download_job instead of accessing internal C++
1190         classes directly, to avoid violating API layering.
1191
1192         * UIProcess/API/C/WKDownload.cpp:
1193         (WKDownloadGetID): Add C API to get the download ID as we need it to
1194         support our public API and it seems like a useful addition.
1195         * UIProcess/API/C/WKDownload.h:
1196         * UIProcess/API/efl/ewk_download_job.cpp:
1197         (EwkDownloadJob::EwkDownloadJob):
1198         (EwkDownloadJob::id):
1199         (EwkDownloadJob::request):
1200         (EwkDownloadJob::cancel):
1201         * UIProcess/API/efl/ewk_download_job_private.h:
1202         (EwkDownloadJob::create):
1203         (EwkDownloadJob):
1204         * UIProcess/efl/DownloadManagerEfl.cpp:
1205         (WebKit::DownloadManagerEfl::decideDestinationWithSuggestedFilename):
1206         (WebKit::DownloadManagerEfl::didReceiveResponse):
1207         (WebKit::DownloadManagerEfl::didCreateDestination):
1208         (WebKit::DownloadManagerEfl::didReceiveData):
1209         (WebKit::DownloadManagerEfl::didFail):
1210         (WebKit::DownloadManagerEfl::didCancel):
1211         (WebKit::DownloadManagerEfl::didFinish):
1212         (WebKit::DownloadManagerEfl::registerDownloadJob): Rename
1213         registerDownload() to registerDownloadJob() for consistency with
1214         unregisterDownloadJob().
1215         (WebKit::DownloadManagerEfl::ewkDownloadJob): Rename downloadJob() to
1216         ewkDownloadJob() for clarity since it returns a EwkDownload object.
1217         Also take a WKDownloadRef in argument instead of an identifier since
1218         all the callers have a WKDownloadRef and it makes their code simpler.
1219         Finally, make the getter non-const since it returns a non-const pointer.
1220         (WebKit::DownloadManagerEfl::unregisterDownloadJob): Take a
1221         WKDownloadRef in argument instead of an identifier since all the
1222         callers have a WKDownloadRef and it makes their code simpler.
1223         * UIProcess/efl/DownloadManagerEfl.h:
1224         (DownloadManagerEfl):
1225         * UIProcess/efl/PageClientBase.cpp:
1226         (WebKit::PageClientBase::handleDownloadRequest):
1227
1228 2013-01-28  Tim Horton  <timothy_horton@apple.com>
1229
1230         PDFPlugin: getMainResourceDataOfFrame should return PDFPlugin's data so that Save... works
1231         https://bugs.webkit.org/show_bug.cgi?id=108060
1232         <rdar://problem/13075454>
1233
1234         Reviewed by Sam Weinig.
1235
1236         * WebProcess/Plugins/Netscape/NetscapePlugin.h: Implement getResourceData.
1237         * WebProcess/Plugins/PDF/SimplePDFPlugin.h:
1238         * WebProcess/Plugins/PDF/SimplePDFPlugin.mm: Implement getResourceData, returning the accumulated
1239         data if it exists and has finished loading.
1240         (WebKit::SimplePDFPlugin::getResourceData):
1241         * WebProcess/Plugins/Plugin.h: Add getResourceData, which hands out a raw pointer/size pair
1242         to the plugin's "main resource" data.
1243         * WebProcess/Plugins/PluginProxy.h: Implement getResourceData.
1244         * WebProcess/Plugins/PluginView.cpp:
1245         (WebKit::PluginView::getResourceData): Forward getResourceData through to the plugin.
1246         * WebProcess/Plugins/PluginView.h:
1247         * WebProcess/WebPage/WebPage.cpp:
1248         (WebKit::WebPage::getMainResourceDataOfFrame): If the requested frame is backed by a PluginDocument,
1249         attempt to ask the PluginView for its resource data.
1250
1251 2013-01-28  Tim Horton  <timothy_horton@apple.com>
1252
1253         [wk2] WKView's intrinsicContentSize should only report a flexible width if the content width is less than the minimum width
1254         https://bugs.webkit.org/show_bug.cgi?id=108056
1255
1256         Reviewed by Simon Fraser.
1257
1258         We're currently reporting a flexible width if the intrinsic
1259         content size is less than *or equal* to the minimum layout
1260         width. This is wrong and causes ping-ponging between flexible
1261         and inflexible width in cases where autolayout fits our
1262         view to exactly the intrinsic content size. It should be strictly
1263         less than instead.
1264
1265         * UIProcess/API/mac/WKView.mm:
1266         (-[WKView _setIntrinsicContentSize:]):
1267
1268 2013-01-28  Anders Carlsson  <andersca@apple.com>
1269
1270         Add StorageStrategy member functions to WebKit2
1271         https://bugs.webkit.org/show_bug.cgi?id=108105
1272
1273         Reviewed by Tim Horton.
1274
1275         Add default implementations that just chain up to the base class for now.
1276
1277         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
1278         (WebKit::WebPlatformStrategies::localStorageNamespace):
1279         (WebKit::WebPlatformStrategies::sessionStorageNamespace):
1280         * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
1281         (WebPlatformStrategies):
1282
1283 2013-01-28  Adam Barth  <abarth@webkit.org>
1284
1285         Remove webkitNotifications.createHTMLNotification
1286         https://bugs.webkit.org/show_bug.cgi?id=107598
1287
1288         Reviewed by Benjamin Poulain.
1289
1290         * Configurations/FeatureDefines.xcconfig:
1291
1292 2013-01-28  Andy Estes  <aestes@apple.com>
1293
1294         Fix non-fat builds by excluding PluginService.32 as a target dependency for WebKit2.
1295
1296         * WebKit2.xcodeproj/project.pbxproj:
1297
1298 2013-01-28  Renata Hodovan  <reni@webkit.org>
1299
1300         [Qt][Win][WK2] Build fix after r140957.
1301
1302         Rubber-stamped by Csaba Osztrogonác.
1303
1304         <sys/wait.h> is only needed and available on linux therefore it's moved into an ifdef block.
1305
1306         * WebProcess/qt/WebProcessMainQt.cpp:
1307
1308 2013-01-28  Kenneth Rohde Christiansen  <kenneth@webkit.org>
1309
1310         [EFL][WK2] Use C API inside ewk_url_response
1311         https://bugs.webkit.org/show_bug.cgi?id=107826
1312
1313         Reviewed by Andreas Kling.
1314
1315         * Shared/API/c/WKURLResponse.cpp:
1316         (WKURLResponseGetExpectedContentsLength):
1317         * Shared/API/c/WKURLResponse.h:
1318
1319             Add new WK2 C API to get the expected contents length.
1320
1321         * UIProcess/API/efl/ewk_url_response.cpp:
1322         (EwkUrlResponse::EwkUrlResponse):
1323         (EwkUrlResponse::httpStatusCode):
1324         (EwkUrlResponse::contentLength):
1325         * UIProcess/API/efl/ewk_url_response_private.h:
1326         (EwkUrlResponse::create):
1327         (EwkUrlResponse):
1328
1329             Change the methods to not call WebCore methods.
1330
1331 2013-01-28  Kenneth Rohde Christiansen  <kenneth@webkit.org>
1332
1333         [WK2][EFL] Remove unneeded private methods
1334         https://bugs.webkit.org/show_bug.cgi?id=107693
1335
1336         Reviewed by Andreas Kling.
1337
1338         Care has been taken to verify that the wrappers can
1339         never be null when called.
1340
1341         * UIProcess/API/efl/EwkViewImpl.cpp:
1342         (EwkViewImpl::displayTimerFired):
1343         (EwkViewImpl::createGLSurface):
1344         * UIProcess/API/efl/EwkViewImpl.h:
1345         (EwkViewImpl):
1346
1347 2013-01-28  Renata Hodovan  <reni@webkit.org>
1348
1349         [WK2] Putting QtWebProcess into a chrooted sandbox
1350         https://bugs.webkit.org/show_bug.cgi?id=90005
1351
1352         Reviewed by Anders Carlsson and Zoltan Herczeg.
1353
1354         This new feature makes possible to run WebProcess inside a chroot. In this case UIProcess calls the
1355         internal SandboxProcess binary what makes up an environment for WebProcess inside the sandbox and runs the WebProcess.
1356         SandboxProcess first creates two needed device files (random and urandom), mounts filesystems (proc and shared memory),
1357         then links run-time dependencies of WebProcess. After this, SandboxProcess moves to a new pid namespace (cloning with
1358         CLONE_NEWPID flag). Then after an other cloning (with CLONE_FS flag) we share our filesystem with our children. This is
1359         needed because we want to call chroot() function from here and jail our child (WebProcess) too. This will be performed
1360         when WebProcess sends a request for it via an socketpair. If sandboxing is done, SandboxProcess exits.
1361         Since chroot() system call needs sudoer rights SandboxProcess binary should have set its suid flag. However we can reduce
1362         its capabilites. First we restrict the capabilities of the process and the number of its possible resources. Furthermore
1363         we fallback to the nobody or the real user.
1364
1365         * Configurations/FeatureDefines.xcconfig:
1366         * SandboxProcess.pro: Added.
1367         * Shared/linux/SandboxProcess/SandboxEnvironmentLinux.cpp: Added.
1368         (launchChangeRootHelper):
1369         (setEnvironmentVariablesForChangeRootHelper):
1370         (prepareAndStartChangeRootHelper):
1371         (setCapabilities):
1372         (dropPrivileges):
1373         (fileExists):
1374         (directoryPermissions):
1375         (createDirectory):
1376         (createDirectoryPath):
1377         (createDeviceFiles):
1378         (mountFileSystems):
1379         (linkFile):
1380         (linkDirectory):
1381         (collectRunTimeDependencies):
1382         (setupXauthorityForNobodyUser):
1383         (initSandbox):
1384         (restrictCapabilities):
1385         (moveToNewPidNamespace):
1386         (run):
1387         (main):
1388         * Shared/linux/SandboxProcess/SandboxEnvironmentLinux.h: Added.
1389         * Shared/linux/SandboxProcess/StringOperations.cpp: Added.
1390         (stringCopy):
1391         (stringConcat):
1392         (stringAppend):
1393         * Shared/linux/SandboxProcess/StringOperations.h: Added.
1394         * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
1395         (WebKit::ProcessLauncher::launchProcess):
1396         * WebKit2.pri:
1397         * WebProcess.pro:
1398         * WebProcess/qt/WebProcessMainQt.cpp:
1399         (WebKit):
1400         (WebKit::chrootMe):
1401         (WebKit::WebProcessMainQt):
1402
1403 2013-01-28  Christophe Dumez  <christophe.dumez@intel.com>
1404
1405         [EFL][WK2] Rely more on C API in ewk_favicon_database
1406         https://bugs.webkit.org/show_bug.cgi?id=108035
1407
1408         Reviewed by Benjamin Poulain.
1409
1410         Rely less on internal C++ API in ewk_favicon_database and use C API
1411         instead of avoid breaking API layering.
1412
1413         * PlatformEfl.cmake:
1414         * UIProcess/API/C/cairo/WKIconDatabaseCairo.cpp: Added.
1415         (WKIconDatabaseTryGetCairoSurfaceForURL): Add C API for getting the
1416         favicon for a given page URL as a cairo_surface_t*.
1417         * UIProcess/API/C/cairo/WKIconDatabaseCairo.h: Added.
1418         * UIProcess/API/efl/ewk_favicon_database.cpp:
1419         (EwkFaviconDatabase::didChangeIconForPageURL):
1420         (EwkFaviconDatabase::getIconSurfaceSynchronously):
1421         (EwkFaviconDatabase::iconDataReadyForPageURL):
1422
1423 2013-01-27  Alexey Proskuryakov  <ap@apple.com>
1424
1425         Fix location of sandbox profiles in built products
1426         https://bugs.webkit.org/show_bug.cgi?id=108026
1427
1428         Reviewed by Sam Weinig.
1429
1430         * WebKit2.xcodeproj/project.pbxproj: Sandbox profiles go into WebKit2 framework resources.
1431
1432 2013-01-27  Zoltan Arvai  <zarvai@inf.u-szeged.hu>
1433
1434         Fixing atomicIncrement implementation for Windows by dropping support before XP SP2.
1435         https://bugs.webkit.org/show_bug.cgi?id=106740
1436
1437         Reviewed by Benjamin Poulain.
1438
1439         * config.h:
1440
1441 2013-01-27  Sam Weinig  <sam@webkit.org>
1442
1443         Add support for launching WebKit2 plugins using XPC
1444         https://bugs.webkit.org/show_bug.cgi?id=108040
1445
1446         Reviewed by Dan Bernstein.
1447
1448         * Configurations/PluginService.32.xcconfig: Copied from Source/WebKit2/Configurations/WebContentService.xcconfig.
1449         * Configurations/PluginService.64.xcconfig: Copied from Source/WebKit2/Configurations/WebContentService.xcconfig.
1450         * Configurations/PluginService.Development.xcconfig: Copied from Source/WebKit2/Configurations/WebContentService.xcconfig.
1451         Add configurations.
1452
1453         * PluginProcess/EntryPoint/mac/XPCService: Added.
1454         * PluginProcess/EntryPoint/mac/XPCService/PluginService.32: Added.
1455         * PluginProcess/EntryPoint/mac/XPCService/PluginService.32/Info.plist: Copied from Source/WebKit2/NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info.plist.
1456         * PluginProcess/EntryPoint/mac/XPCService/PluginService.32/PluginService.32.Main.mm: Copied from Source/WebKit2/NetworkProcess/EntryPoint/mac/XPCService/NetworkService/NetworkServiceMain.mm.
1457         * PluginProcess/EntryPoint/mac/XPCService/PluginService.64: Added.
1458         * PluginProcess/EntryPoint/mac/XPCService/PluginService.64/Info.plist: Copied from Source/WebKit2/NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info.plist.
1459         * PluginProcess/EntryPoint/mac/XPCService/PluginService.64/PluginService.64.Main.mm: Copied from Source/WebKit2/NetworkProcess/EntryPoint/mac/XPCService/NetworkService/NetworkServiceMain.mm.
1460         * PluginProcess/EntryPoint/mac/XPCService/PluginService.Development: Added.
1461         * PluginProcess/EntryPoint/mac/XPCService/PluginService.Development/Info.plist: Added.
1462         * PluginProcess/EntryPoint/mac/XPCService/PluginService.Development/PluginService.Development.Main.mm: Added.
1463         (main):
1464         * PluginProcess/EntryPoint/mac/XPCService/PluginServiceEntryPoint.mm: Copied from Source/WebKit2/NetworkProcess/EntryPoint/mac/XPCService/NetworkServiceEntryPoint.mm.
1465         (initializePluginService):
1466         Add entry points.
1467
1468         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
1469         (WebKit::serviceName):
1470         Add plugin process service names and move into correct #ifdef.
1471
1472         * UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
1473         (WebKit::shouldUseXPC):
1474         (WebKit::PluginProcessProxy::platformInitializeLaunchOptions):
1475         Opt into xpc using the same rules as the WebProcess.
1476
1477         * WebKit2.xcodeproj/project.pbxproj:
1478         Add files.
1479
1480 2013-01-26  Alexey Proskuryakov  <ap@apple.com>
1481
1482         Use shared ChildProcess code to enter plug-in sandbox.
1483
1484         Reviewed by Sam Weinig.
1485
1486         There is one known behavior change from this refactoring: getpwuid_r is used
1487         instead of NSHomeDirectory for home directory, mathcing other client processes.
1488
1489         * PluginProcess/PluginProcess.cpp: (WebKit::PluginProcess::enterSandbox):
1490         * PluginProcess/PluginProcess.h:
1491         PluginProcess prevents ChildProcess attempt to enter the sandbox immediately on
1492         launch for now, because we don't have a sandbox profile directory path yet.
1493         It now keeps a copy of ChildProcessInitializationParameters, so that
1494         ChildProcess::initializeSandbox() could be called later.
1495
1496         * PluginProcess/mac/PluginProcessMac.mm:
1497         (WebKit::PluginProcess::platformInitializeProcess): Store a copy of ChildProcessInitializationParameters
1498         for later.
1499         (WebKit::loadSandboxProfile): Build a sandbox profile from a common prefix and
1500         a plugin-specific part.
1501         (WebKit::PluginProcess::platformInitializePluginProcess): We can enter the sandbox now.
1502         (WebKit::PluginProcess::enterSandbox): Prepare SandboxInitializationParameters,
1503         and call ChildProcess::initializeSandbox().
1504
1505         * Shared/mac/ChildProcessMac.mm:
1506         (WebKit::ChildProcess::initializeSandbox): Actually handle system directory suffix
1507         from parameters.
1508
1509         * WebKit2.xcodeproj/project.pbxproj:
1510         * WebProcess/Plugins/Netscape/mac/NetscapeSandboxFunctions.h: Removed.
1511         * WebProcess/Plugins/Netscape/mac/NetscapeSandboxFunctions.mm: Removed.
1512
1513 2013-01-26  Sam Weinig  <sam@webkit.org>
1514
1515         Add support for running the networking process as an XPCService
1516         https://bugs.webkit.org/show_bug.cgi?id=108025
1517
1518         Reviewed by Dan Bernstein.
1519
1520         * Configurations/NetworkService.Development.xcconfig: Copied from Source/WebKit2/Configurations/WebContentService.Development.xcconfig.
1521         * Configurations/NetworkService.xcconfig: Copied from Source/WebKit2/Configurations/WebContentService.xcconfig.
1522         Add configurations.
1523
1524         * NetworkProcess/EntryPoint/mac/XPCService: Added.
1525         * NetworkProcess/EntryPoint/mac/XPCService/NetworkService: Added.
1526         * NetworkProcess/EntryPoint/mac/XPCService/NetworkService.Development: Added.
1527         * NetworkProcess/EntryPoint/mac/XPCService/NetworkService.Development/Info.plist: Copied from Source/WebKit2/WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/Info.plist.
1528         * NetworkProcess/EntryPoint/mac/XPCService/NetworkService.Development/NetworkServiceMain.Development.mm: Copied from Source/WebKit2/WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/WebContentServiceMain.Development.mm.
1529         * NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info.plist: Copied from Source/WebKit2/WebProcess/EntryPoint/mac/XPCService/WebContentService/Info.plist.
1530         * NetworkProcess/EntryPoint/mac/XPCService/NetworkService/NetworkServiceMain.mm: Copied from Source/WebKit2/WebProcess/EntryPoint/mac/XPCService/WebContentService/WebContentServiceMain.mm.
1531         * NetworkProcess/EntryPoint/mac/XPCService/NetworkServiceEntryPoint.mm: Copied from Source/WebKit2/WebProcess/EntryPoint/mac/XPCService/WebContentServiceEntryPoint.mm.
1532         (initializeNetworkService):
1533         Add entry points.
1534
1535         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
1536         (WebKit::serviceName):
1537         (WebKit::connectToServiceForDevelopment):
1538         (WebKit::createServiceForDevelopment):
1539         (WebKit::createService):
1540         (WebKit::createProcess):
1541         (WebKit::ProcessLauncher::launchProcess):
1542         Rework service creation to work for arbitrary services.
1543
1544         * UIProcess/Network/NetworkProcessProxy.cpp:
1545         (WebKit::NetworkProcessProxy::~NetworkProcessProxy):
1546         (WebKit::NetworkProcessProxy::getLaunchOptions):
1547         * UIProcess/Network/NetworkProcessProxy.h:
1548         * UIProcess/Network/mac/NetworkProcessProxyMac.mm:
1549         (WebKit::shouldUseXPC):
1550         (WebKit::NetworkProcessProxy::platformGetLaunchOptions):
1551         Opt into xpc using the same rules as the WebProcess.
1552
1553         * WebKit2.xcodeproj/project.pbxproj:
1554         Update files.
1555
1556         * WebProcess/EntryPoint/mac/XPCService/WebContentServiceEntryPoint.mm:
1557         (initializeWebContentService):
1558         Fix the comment to refer to the shim correctly.
1559
1560 2013-01-26  Sam Weinig  <sam@webkit.org>
1561
1562         Simplify environment creation in XPC service re-exec
1563         https://bugs.webkit.org/show_bug.cgi?id=108017
1564
1565         Reviewed by Dan Bernstein.
1566
1567         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceBootstrapper.Development.h:
1568         (WebKit::XPCServiceEventHandler):
1569         There is no need to copy these strings.
1570
1571 2013-01-26  Alexey Proskuryakov  <ap@apple.com>
1572
1573         Remove code for handling NetworkProcess authentication challenges in WebProcess
1574         https://bugs.webkit.org/show_bug.cgi?id=108003
1575
1576         Reviewed by Sam Weinig.
1577
1578         * DerivedSources.make:
1579         * NetworkProcess/NetworkConnectionToWebProcess.cpp:
1580         (WebKit::NetworkConnectionToWebProcess::didReceiveMessage):
1581         * WebKit2.xcodeproj/project.pbxproj:
1582         * NetworkProcess/NetworkResourceLoader.messages.in: Removed. We no longer have
1583         an messages to NetworkResourceLoader.
1584
1585         * Shared/WebCoreArgumentCoders.cpp:
1586         (CoreIPC::::encode):
1587         (CoreIPC::::decode):
1588         There is no longer an identifier inside AuthenticationChallenge.
1589
1590         * NetworkProcess/NetworkResourceLoader.cpp:
1591         (WebKit::NetworkResourceLoader::didReceiveAuthenticationChallenge):
1592         (WebKit::NetworkResourceLoader::didCancelAuthenticationChallenge):
1593         * NetworkProcess/NetworkResourceLoader.h:
1594         Removed code for receiving authentication responses from WebProcess. Removed
1595         m_currentAuthenticationChallenge - AuthenticationMAnager now keeps track of that.
1596
1597         * WebProcess/Network/WebResourceLoader.cpp:
1598         * WebProcess/Network/WebResourceLoader.h:
1599         * WebProcess/Network/WebResourceLoader.messages.in:
1600         Removed code for handling authentication challenges. They are now sent directly to
1601         UI Process. The only thing WebProcess still does is decide whether is can authenticate
1602         against a particular authentication space.
1603
1604 2013-01-26  Sam Weinig  <sam@webkit.org>
1605
1606         Fix the development build.
1607
1608         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceBootstrapper.Development.h:
1609         (WebKit::XPCServiceEventHandler):
1610         Use the right stringizer.
1611
1612 2013-01-26  Sam Weinig  <sam@webkit.org>
1613
1614         Refactor XPCService initialization to make it easier to add more services
1615         https://bugs.webkit.org/show_bug.cgi?id=108015
1616
1617         Reviewed by Dan Bernstein.
1618
1619         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceBootstrapper.Development.h: Added.
1620         (WebKit::XPCServiceEventHandler):
1621         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceBootstrapper.h: Added.
1622         (WebKit::XPCServiceEventHandler):
1623         Move bootstrapping to Shared (like we have for the legacy process). For now, we use
1624         a macro to define the actual initialization point function to use, in the future, we
1625         could consider alternatives, such as getting the function name from the bundle.
1626
1627         * WebKit2.xcodeproj/project.pbxproj:
1628         Update files.
1629
1630         * WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/WebContentServiceMain.Development.mm:
1631         * WebProcess/EntryPoint/mac/XPCService/WebContentService/WebContentServiceMain.mm:
1632         Simplify to use the new XPCServiceBootstrapper.
1633
1634         * WebProcess/EntryPoint/mac/XPCService/WebContentServiceEntryPoint.mm: Copied from Source/WebKit2/WebProcess/mac/WebProcessServiceEntryPoints.mm.
1635         (initializeWebContentService):
1636         * WebProcess/mac/WebProcessServiceEntryPoints.h: Removed.
1637         * WebProcess/mac/WebProcessServiceEntryPoints.mm: Removed.
1638         Move the entry point to where it belongs and extract the bootstrapping parts.
1639
1640 2013-01-26  Adenilson Cavalcanti  <cavalcantii@gmail.com>
1641
1642         [Qt]Qt build fix
1643         https://bugs.webkit.org/show_bug.cgi?id=108013
1644
1645         Changes on process initialization classes broke webkit building with Qt5. This
1646         patch fix it.
1647
1648         Reviewed by Sam Weinig.
1649
1650         * PluginProcess/qt/PluginProcessMainQt.cpp:
1651
1652 2013-01-26  Sam Weinig  <sam@webkit.org>
1653
1654         Hoist command line parsing into ChildProcessMain
1655         https://bugs.webkit.org/show_bug.cgi?id=108010
1656
1657         Reviewed by Dan Bernstein.
1658
1659         * NetworkProcess/EntryPoint/mac/LegacyProcess/NetworkProcessMain.mm:
1660         (NetworkProcessMain):
1661         * PluginProcess/EntryPoint/mac/LegacyProcess/PluginProcessMain.mm:
1662         (PluginProcessMain):
1663         * Shared/EntryPointUtilities/mac/LegacyProcess/ChildProcessMain.h:
1664         (WebKit::ChildProcessMain):
1665         * SharedWorkerProcess/EntryPoint/mac/LegacyProcess/SharedWorkerProcessMain.mm:
1666         (SharedWorkerProcessMain):
1667         * WebProcess/EntryPoint/mac/LegacyProcess/WebContentProcessMain.mm:
1668         (WebContentProcessMain):
1669
1670 2013-01-26  Sam Weinig  <sam@webkit.org>
1671
1672         Move LegacyProcess entry points into new EntryPoint directories
1673         https://bugs.webkit.org/show_bug.cgi?id=108008
1674
1675         Reviewed by Anders Carlsson.
1676
1677         Also refactors to remove the need for the overly general WebKitMain, by putting the
1678         framework lazy loading into a helper function each legacy process can call (in ChildProcessMainBootstrapper.h)
1679
1680         * Configurations/NetworkProcess.xcconfig:
1681         * Configurations/PluginProcess.xcconfig:
1682         * Configurations/SharedWorkerProcess.xcconfig:
1683         * Configurations/WebProcess.xcconfig:
1684         * NetworkProcess/EntryPoint: Added.
1685         * NetworkProcess/EntryPoint/mac: Added.
1686         * NetworkProcess/EntryPoint/mac/LegacyProcess: Added.
1687         * NetworkProcess/EntryPoint/mac/LegacyProcess/Info.plist: Copied from Source/WebKit2/NetworkProcess/Info.plist.
1688         * NetworkProcess/EntryPoint/mac/LegacyProcess/NetworkProcessMain.mm: Copied from Source/WebKit2/NetworkProcess/mac/NetworkProcessMainMac.mm.
1689         (NetworkProcessMain):
1690         * NetworkProcess/EntryPoint/mac/LegacyProcess/NetworkProcessMainBootstrapper.cpp: Added.
1691         (main):
1692         * NetworkProcess/Info.plist: Removed.
1693         * NetworkProcess/NetworkProcessMain.h: Removed.
1694         * NetworkProcess/mac/NetworkProcessMainMac.mm: Removed.
1695         * PluginProcess/EntryPoint: Added.
1696         * PluginProcess/EntryPoint/mac: Added.
1697         * PluginProcess/EntryPoint/mac/LegacyProcess: Added.
1698         * PluginProcess/EntryPoint/mac/LegacyProcess/Info.plist: Copied from Source/WebKit2/PluginProcess/Info.plist.
1699         * PluginProcess/EntryPoint/mac/LegacyProcess/PluginProcessMain.mm: Copied from Source/WebKit2/PluginProcess/mac/PluginProcessMainMac.mm.
1700         (PluginProcessMain):
1701         * PluginProcess/EntryPoint/mac/LegacyProcess/PluginProcessMainBootstrapper.cpp: Added.
1702         (main):
1703         * PluginProcess/Info.plist: Removed.
1704         * PluginProcess/PluginProcessMain.h: Removed.
1705         * PluginProcess/mac/PluginProcessMainMac.mm: Removed.
1706         * Shared/EntryPointUtilities: Added.
1707         * Shared/EntryPointUtilities/mac: Added.
1708         * Shared/EntryPointUtilities/mac/LegacyProcess: Added.
1709         * Shared/EntryPointUtilities/mac/LegacyProcess/ChildProcessMain.h: Copied from Source/WebKit2/Shared/mac/ChildProcessMain.h.
1710         * Shared/EntryPointUtilities/mac/LegacyProcess/ChildProcessMain.mm: Copied from Source/WebKit2/Shared/mac/ChildProcessMain.mm.
1711         * Shared/EntryPointUtilities/mac/LegacyProcess/ChildProcessMainBootstrapper.h: Added.
1712         (closeUnusedFileDescriptors):
1713         (getBootstrapMainFunction):
1714         * Shared/EntryPointUtilities/mac/XPCService: Added.
1715         * Shared/mac/ChildProcessMain.h: Removed.
1716         * Shared/mac/ChildProcessMain.mm: Removed.
1717         * SharedWorkerProcess/EntryPoint: Added.
1718         * SharedWorkerProcess/EntryPoint/mac: Added.
1719         * SharedWorkerProcess/EntryPoint/mac/LegacyProcess: Added.
1720         * SharedWorkerProcess/EntryPoint/mac/LegacyProcess/Info.plist: Copied from Source/WebKit2/SharedWorkerProcess/Info.plist.
1721         * SharedWorkerProcess/EntryPoint/mac/LegacyProcess/SharedWorkerProcessMain.mm: Copied from Source/WebKit2/SharedWorkerProcess/mac/SharedWorkerProcessMainMac.mm.
1722         (SharedWorkerProcessMain):
1723         * SharedWorkerProcess/EntryPoint/mac/LegacyProcess/SharedWorkerProcessMainBootstrapper.cpp: Added.
1724         (main):
1725         * SharedWorkerProcess/Info.plist: Removed.
1726         * SharedWorkerProcess/SharedWorkerProcessMain.h: Removed.
1727         * SharedWorkerProcess/mac/SharedWorkerProcessMainMac.mm: Removed.
1728         * WebKit2.xcodeproj/project.pbxproj:
1729         * WebProcess/EntryPoint/mac/LegacyProcess/Info.plist: Copied from Source/WebKit2/WebProcess/Info.plist.
1730         * WebProcess/EntryPoint/mac/LegacyProcess/WebContentProcessMain.mm: Copied from Source/WebKit2/WebProcess/mac/WebProcessMainMac.mm.
1731         (WebKit::WebContentProcessMainDelegate::WebContentProcessMainDelegate):
1732         (WebKit):
1733         (WebContentProcessMain):
1734         * WebProcess/EntryPoint/mac/LegacyProcess/WebContentProcessMainBootstrapper.cpp: Added.
1735         (main):
1736         * WebProcess/Info.plist: Removed.
1737         * WebProcess/WebKitMain.cpp: Removed.
1738         * WebProcess/WebProcessMain.h: Removed.
1739         * WebProcess/mac/WebProcessMainMac.mm: Removed.
1740         * mac/MainMacProcess.cpp: Removed.
1741
1742 2013-01-25  Christophe Dumez  <christophe.dumez@intel.com>
1743
1744         [EFL][WK2] Use C API inside ewk_database_manager and ewk_storage_manager
1745         https://bugs.webkit.org/show_bug.cgi?id=107920
1746
1747         Reviewed by Benjamin Poulain.
1748
1749         Use C API inside ewk_database_manager and ewk_storage_manager instead
1750         of accessing internal C++ classes directly, to avoid violating API
1751         layering.
1752
1753         * UIProcess/API/efl/ewk_context.cpp:
1754         (EwkContext::EwkContext):
1755         * UIProcess/API/efl/ewk_database_manager.cpp:
1756         (EwkDatabaseManager::EwkDatabaseManager):
1757         (EwkDatabaseManager::getDatabaseOrigins):
1758         * UIProcess/API/efl/ewk_database_manager_private.h:
1759         (EwkDatabaseManager::create):
1760         (EwkDatabaseManager):
1761         * UIProcess/API/efl/ewk_storage_manager.cpp:
1762         (EwkStorageManager::EwkStorageManager):
1763         (EwkStorageManager::getStorageOrigins):
1764         * UIProcess/API/efl/ewk_storage_manager_private.h:
1765         (EwkStorageManager::create):
1766         (EwkStorageManager):
1767
1768 2013-01-25  Andreas Kling  <akling@apple.com>
1769
1770         [Mac] Defer loading the Web Inspector bundle until it's necessary.
1771         <http://webkit.org/b/107999>
1772         <rdar://problem/13091861>
1773
1774         Reviewed by Anders Carlsson.
1775
1776         Don't instantiate an NSBundle for the Web Inspector before it's needed.
1777         1.51MB progression on Membuster3.
1778
1779         * WebProcess/WebPage/WebInspector.cpp:
1780         (WebKit::WebInspector::WebInspector):
1781         * WebProcess/WebPage/WebInspector.h:
1782         (WebInspector):
1783         * WebProcess/WebPage/mac/WebInspectorMac.mm:
1784         (WebKit::WebInspector::setInspectorUsesWebKitUserInterface):
1785         (WebKit::WebInspector::localizedStringsURL):
1786
1787 2013-01-25  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1788
1789         [EFL][WK2] Fix build break after r140891.
1790
1791         Unreviewed build fix. SerializedScriptValue needs to use PassRefPtr in WK2 as well.
1792
1793         * Shared/WebSerializedScriptValue.h:
1794         (WebKit::WebSerializedScriptValue::create):
1795
1796 2013-01-25  Mark Rowe  <mrowe@apple.com>
1797
1798         Don't crash when the WKBundlePageUIClient doesn't implement createPlugInExtraStyleSheet.
1799
1800         Reviewed by Dean Jackson.
1801
1802         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
1803         (WebKit::InjectedBundlePageUIClient::plugInExtraStyleSheet): Check that createPlugInExtraStyleSheet
1804         is provided before calling it.
1805
1806 2013-01-25  Andy Estes  <aestes@apple.com>
1807
1808         Wrap content filtering code in an object
1809         https://bugs.webkit.org/show_bug.cgi?id=107914
1810
1811         Reviewed by Alexey Proskuryakov.
1812
1813         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
1814         (InitWebCoreSystemInterface): Updated to reflect changes in WKSI.
1815
1816 2013-01-25  Brady Eidson  <beidson@apple.com>
1817
1818         HTTP Authentication should be directly between the NetworkProcess and the UIProcess
1819         <rdar://problem/13074829> and https://bugs.webkit.org/show_bug.cgi?id=107974
1820
1821         Reviewed by Alexey Proskuryakov.
1822
1823         Some of this patch is refactoring to enable more flexibility in the authentication mechanism
1824         and the rest is actually implementing Network->UI process authentication.
1825
1826         Expose the same AuthenticationManager to anyone in the NetworkProcess asking for it:
1827         * NetworkProcess/NetworkProcess.cpp:
1828         (WebKit::NetworkProcess::authenticationManager):
1829         (WebKit::NetworkProcess::downloadsAuthenticationManager):
1830         * NetworkProcess/NetworkProcess.h:
1831
1832         * NetworkProcess/NetworkResourceLoader.cpp:
1833         (WebKit::NetworkResourceLoader::didReceiveAuthenticationChallenge): Instead of messaging to
1834           the WebProcess, tell the NetworkProcess AuthenticationManager.
1835
1836         Add WebPageID and WebFrameID members to SchedulableLoader that they receive from 
1837         * NetworkProcess/SchedulableLoader.cpp:
1838         * NetworkProcess/SchedulableLoader.h:
1839         (WebKit::SchedulableLoader::webPageID):
1840         (WebKit::SchedulableLoader::webFrameID):
1841
1842         Add a 3rd form of "didReceiveAuthenticationChallenge" for NetworkProcess use:
1843         * Shared/Authentication/AuthenticationManager.cpp:
1844         (WebKit::AuthenticationManager::mapChallengeToIdentifier):
1845         (WebKit::AuthenticationManager::didReceiveAuthenticationChallenge):
1846         * Shared/Authentication/AuthenticationManager.h:
1847         * Shared/Authentication/mac/AuthenticationManager.mac.mm:
1848         (WebKit::AuthenticationManager::tryUsePlatformCertificateInfoForChallenge): Remove a now obsolete comment
1849
1850         Include the WebPage and WebFrame ID for the originator of this request in case it results in a challenge:
1851         * Shared/Network/NetworkResourceLoadParameters.cpp:
1852         (WebKit::NetworkResourceLoadParameters::NetworkResourceLoadParameters):
1853         (WebKit::NetworkResourceLoadParameters::encode):
1854         (WebKit::NetworkResourceLoadParameters::decode):
1855         * Shared/Network/NetworkResourceLoadParameters.h:
1856         (WebKit::NetworkResourceLoadParameters::webPageID):
1857         (WebKit::NetworkResourceLoadParameters::webFrameID):
1858
1859         Create a AuthenticationChallengeProxy pointing back to the NetworkProcess (instead of a WebProcess),
1860         and send the challenge to the appropriate WebPageProxy:
1861         * UIProcess/Network/NetworkProcessProxy.cpp:
1862         (WebKit::NetworkProcessProxy::didReceiveAuthenticationChallenge):
1863         * UIProcess/Network/NetworkProcessProxy.h:
1864         * UIProcess/Network/NetworkProcessProxy.messages.in:
1865
1866         Refactor didReceiveAuthenticationChallenge so an outsider can directly hand over an AuthenticationChallengeProxy:
1867         * UIProcess/WebPageProxy.cpp:
1868         (WebKit::WebPageProxy::didReceiveAuthenticationChallenge):
1869         (WebKit::WebPageProxy::didReceiveAuthenticationChallengeProxy):
1870         * UIProcess/WebPageProxy.h:
1871
1872         Add a global WebPageID -> WebPageProxy map so parties with an ID don't need to know which process it belongs to:
1873         * UIProcess/WebProcessProxy.cpp:
1874         (WebKit::globalPageMap):
1875         (WebKit::WebProcessProxy::webPage):
1876         (WebKit::WebProcessProxy::createWebPage):
1877         (WebKit::WebProcessProxy::addExistingWebPage):
1878         (WebKit::WebProcessProxy::removeWebPage):
1879         * UIProcess/WebProcessProxy.h:
1880
1881         * WebProcess/Network/WebResourceLoadScheduler.cpp:
1882         (WebKit::WebResourceLoadScheduler::scheduleLoad):
1883
1884         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
1885         (WebKit::WebPlatformStrategies::loadResourceSynchronously): Pass 0 for WebFrameID and WebPageID since synchronous
1886           loads don't go through "normal" authentication channels and don't need them. Yet.
1887
1888 2013-01-25  Alexey Proskuryakov  <ap@apple.com>
1889
1890         <rdar://problem/13089261> Crash in WKSandboxExtensionGetSerializedFormat when opening Web Inspector
1891
1892         Reviewed by Brady Eidson.
1893
1894         * WebProcess/com.apple.WebProcess.sb.in: Should be able to issue extensions for
1895         Inspector files.
1896
1897 2013-01-25  Sam Weinig  <sam@webkit.org>
1898
1899         Try to fix the debug build.
1900
1901         * WebKit2.xcodeproj/project.pbxproj:
1902
1903 2013-01-25  Sam Weinig  <sam@webkit.org>
1904
1905         Move the WebContentServices to WebProcess/EntryPoint/mac/XPCService/.
1906
1907         Reviewed by Anders Carlsson.
1908
1909         * Configurations/WebContentService.Development.xcconfig:
1910         * Configurations/WebContentService.xcconfig:
1911         * WebKit2.xcodeproj/project.pbxproj:
1912         * WebProcess/EntryPoint: Added.
1913         * WebProcess/EntryPoint/mac: Added.
1914         * WebProcess/EntryPoint/mac/LegacyProcess: Added.
1915         * WebProcess/EntryPoint/mac/XPCService: Added.
1916         * WebProcess/EntryPoint/mac/XPCService/WebContentService: Copied from WebProcessService.
1917         * WebProcess/EntryPoint/mac/XPCService/WebContentService.Development: Copied from WebProcessServiceForWebKitDevelopment.
1918         * WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/WebContentServiceMain.Development.mm: Copied from WebProcessServiceForWebKitDevelopment/WebProcessServiceForWebKitDevelopmentMain.mm.
1919         * WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/WebProcessServiceForWebKitDevelopmentMain.mm: Removed.
1920         * WebProcess/EntryPoint/mac/XPCService/WebContentService/WebContentServiceMain.mm: Copied from WebProcessService/WebProcessServiceMain.mm.
1921         * WebProcess/EntryPoint/mac/XPCService/WebContentService/WebProcessServiceMain.mm: Removed.
1922         * WebProcessService: Removed.
1923         * WebProcessService/Info.plist: Removed.
1924         * WebProcessService/WebProcessServiceMain.mm: Removed.
1925         * WebProcessServiceForWebKitDevelopment: Removed.
1926         * WebProcessServiceForWebKitDevelopment/Info.plist: Removed.
1927         * WebProcessServiceForWebKitDevelopment/WebProcessServiceForWebKitDevelopmentMain.mm: Removed.
1928
1929 2013-01-25  Ivan Krstić  <ike@apple.com>
1930
1931         Prepend common plugin sandbox profile to specific per-plugin one.
1932         <rdar://problem/13044349>
1933
1934         Reviewed by Alexey Proskuryakov.
1935
1936         * PluginProcess/mac/PluginProcessMac.mm:
1937         (WebKit::initializeSandbox):
1938
1939 2013-01-25  Dean Jackson  <dino@apple.com>
1940
1941         Add a user agent stylesheet for plugins
1942         https://bugs.webkit.org/show_bug.cgi?id=107890
1943
1944         Reviewed by Alexey Proskuryakov.
1945
1946         * WebProcess/InjectedBundle/API/c/WKBundlePage.h: Rename client callbacks
1947         to have a "create" prefix, making it clear that these generate new Strings.
1948         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp: Actually call into
1949         the injected bundle to retrieve any custom stylesheet for plugins.
1950         (WebKit::InjectedBundlePageUIClient::plugInExtraStyleSheet):
1951         * WebProcess/WebCoreSupport/WebChromeClient.h:
1952         (WebChromeClient): Add override keyword onto virtual functions now
1953         that the base class has implementations.
1954
1955 2013-01-25  Alexey Proskuryakov  <ap@apple.com>
1956
1957         NetworkProcess cannot load files with non-ASCII names
1958         https://bugs.webkit.org/show_bug.cgi?id=107977
1959
1960         Reviewed by Brady Eidson.
1961
1962         * Shared/Network/NetworkResourceLoadParameters.cpp:
1963         (WebKit::NetworkResourceLoadParameters::encode): Use the correct path accessor.
1964
1965 2013-01-25  Alexey Proskuryakov  <ap@apple.com>
1966
1967         REGRESSION: System directory prefix doesn't have a "+"
1968         https://bugs.webkit.org/show_bug.cgi?id=107971
1969
1970         Reviewed by Brady Eidson.
1971
1972         * Shared/mac/ChildProcessMac.mm: (WebKit::ChildProcess::initializeSandbox):
1973         Re-added the "+".
1974
1975 2013-01-25  Brady Eidson  <beidson@apple.com>
1976
1977         New NetworkProcess can ASSERT after old NetworkProcess crashes
1978         https://bugs.webkit.org/show_bug.cgi?id=107970
1979
1980         Reviewed by Alexey Proskuryakov.
1981
1982         * NetworkProcess/NetworkConnectionToWebProcess.cpp:
1983         (WebKit::NetworkConnectionToWebProcess::removeLoadIdentifier): Don't tell the scheduler
1984           to remove a loader that doesn't exist, as we might be recovering from a crash.
1985
1986 2013-01-25  Alexey Proskuryakov  <ap@apple.com>
1987
1988         Send sandbox extensions for local files to NetworkProcess
1989         https://bugs.webkit.org/show_bug.cgi?id=107872
1990
1991         Reviewed by Brady Eidson.
1992
1993         Send sandbox extensions in NetworkResourceLoadParameters, and consume/invalidate
1994         them during loading. Changed NetworkProcess code to only use that class for IPC,
1995         not for actual implementation.
1996
1997         * NetworkProcess/HostRecord.cpp:
1998         (WebKit::HostRecord::scheduleResourceLoader):
1999         * NetworkProcess/NetworkResourceLoadScheduler.cpp:
2000         (WebKit::NetworkResourceLoadScheduler::scheduleLoader):
2001         (WebKit::NetworkResourceLoadScheduler::removeLoader):
2002         (WebKit::NetworkResourceLoadScheduler::receivedRedirect):
2003         * NetworkProcess/NetworkResourceLoader.cpp:
2004         (WebKit::NetworkResourceLoader::destinationID):
2005         (WebKit::NetworkResourceLoader::start):
2006         (WebKit::NetworkResourceLoader::resourceHandleStopped):
2007         (WebKit::NetworkResourceLoader::didReceiveResponse):
2008         (WebKit::NetworkResourceLoader::didFinishLoading):
2009         (WebKit::NetworkResourceLoader::didFail):
2010         (WebKit::NetworkResourceLoader::shouldUseCredentialStorage):
2011         * NetworkProcess/SchedulableLoader.cpp:
2012         (WebKit::SchedulableLoader::SchedulableLoader):
2013         (WebKit::SchedulableLoader::consumeSandboxExtensions):
2014         (WebKit::SchedulableLoader::invalidateSandboxExtensions):
2015         * NetworkProcess/SchedulableLoader.h:
2016         (WebKit::SchedulableLoader::identifier):
2017         (WebKit::SchedulableLoader::request):
2018         (WebKit::SchedulableLoader::priority):
2019         (WebKit::SchedulableLoader::contentSniffingPolicy):
2020         (WebKit::SchedulableLoader::allowStoredCredentials):
2021         (WebKit::SchedulableLoader::inPrivateBrowsingMode):
2022         (SchedulableLoader):
2023         * NetworkProcess/SyncNetworkResourceLoader.cpp:
2024         (WebKit::SyncNetworkResourceLoader::start):
2025         * Shared/Network/NetworkResourceLoadParameters.cpp:
2026         (WebKit::NetworkResourceLoadParameters::encode):
2027         (WebKit::NetworkResourceLoadParameters::decode):
2028         * Shared/Network/NetworkResourceLoadParameters.h:
2029         (WebKit::NetworkResourceLoadParameters::requestBodyExtensions):
2030         (WebKit::NetworkResourceLoadParameters::resourceSandboxExtension):
2031
2032 2013-01-25  Claudio Saavedra  <csaavedra@igalia.com>
2033
2034         Remove stale class include
2035         https://bugs.webkit.org/show_bug.cgi?id=107945
2036
2037         Reviewed by Andreas Kling.
2038
2039         * UIProcess/Notifications/NotificationPermissionRequestManagerProxy.h:
2040         GeolocationPermissionRequestProxy has nothing to do here.
2041
2042 2013-01-25  Zan Dobersek  <zdobersek@igalia.com>
2043
2044         Unreviewed.
2045
2046         Now searching for *.messages.in in Source/WebKit2/WebProcess/Storage
2047         instead of Source/WebKit2/WebProcess/KeyValueStorage after the
2048         WebKeyValueStorageManager.messages.in was moved there.
2049
2050         * GNUmakefile.am:
2051
2052 2013-01-25  Zan Dobersek  <zdobersek@igalia.com>
2053
2054         Unreviewed.
2055
2056         Reincluding the input file for WebKeyValueStorageManager IPC messages
2057         into the extra distribution list after the file was moved.
2058
2059         * GNUmakefile.am:
2060
2061 2013-01-25  Zan Dobersek  <zdobersek@igalia.com>
2062
2063         Further GTK build fixing.
2064         Adding Source/WebKit2/WebProcess/Storage to the list of directories
2065         to be searched for header inclusion.
2066
2067         * GNUmakefile.am:
2068
2069 2013-01-25  Zan Dobersek  <zdobersek@igalia.com>
2070
2071         Unreviewed GTK build fix.
2072         Adjusting the build targets after WebKeyValueStorageManager.cpp was moved
2073         to a different directory.
2074
2075         * GNUmakefile.list.am:
2076
2077 2013-01-25  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
2078
2079         [WK2][EFL] PagePolicyClientEfl should be based on C WK2 API
2080         https://bugs.webkit.org/show_bug.cgi?id=107854
2081
2082         Reviewed by Benjamin Poulain.
2083
2084         PagePolicyClientEfl should be based on C WK2 API in order not to
2085         break API layering.
2086
2087         * UIProcess/efl/PagePolicyClientEfl.cpp:
2088         (WebKit::PagePolicyClientEfl::decidePolicyForResponseCallback):
2089
2090 2013-01-25  Huang Dongsung  <luxtella@company100.net>
2091
2092         [Qt][Gtk] build fix after r140752.
2093         https://bugs.webkit.org/show_bug.cgi?id=107908
2094
2095         Reviewed by Kentaro Hara.
2096
2097         Build break after r140752.
2098
2099         Move Authentication and Downloads to Shared.
2100
2101         * DerivedSources.pri:
2102         * GNUmakefile.am:
2103         * WebKit2.pri:
2104
2105 2013-01-24  Tim Horton  <timothy_horton@apple.com>
2106
2107         [wk2] Page overlays should do their own animation, instead of relying on implicit animation
2108         https://bugs.webkit.org/show_bug.cgi?id=107896
2109         <rdar://problem/12900058>
2110
2111         Reviewed by Sam Weinig.
2112
2113         Use PageOverlay's animation instead of CA implicit animations for uninstallPageOverlay.
2114
2115         Make WKBundlePageInstallPageOverlay/WKBundlePageUninstallPageOverlay default to no animation.
2116
2117         Add WKBundlePageInstallPageOverlayWithAnimation/WKBundlePageUninstallPageOverlayWithAnimation.
2118
2119         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
2120         (WKBundlePageUninstallPageOverlay): The default for shouldFadeOut is now false, so we don't need to pass it.
2121         (WKBundlePageInstallPageOverlayWithAnimation): Add a version of WKBundlePageInstallPageOverlay that fades in.
2122         (WKBundlePageUninstallPageOverlayWithAnimation): Add a version of WKBundlePageUninstallPageOverlay that fades out.
2123         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
2124         * WebProcess/WebCoreSupport/WebInspectorClient.cpp:
2125         (WebKit::WebInspectorClient::highlight): installPageOverlay used to animate by default, now we need to ask for it.
2126         (WebKit::WebInspectorClient::hideHighlight): uninstallPageOverlay used to implicitly animate accidentally, now we need to ask for it.
2127         * WebProcess/WebPage/FindController.cpp:
2128         (WebKit::FindController::updateFindUIAfterPageScroll): Ditto.
2129         (WebKit::FindController::hideFindUI): Ditto.
2130         * WebProcess/WebPage/WebPage.cpp:
2131         (WebKit::WebPage::installPageOverlay): Add shouldFadeIn parameter.
2132         (WebKit::WebPage::uninstallPageOverlay):
2133         * WebProcess/WebPage/WebPage.h:
2134         (WebPage): Add shouldFadeIn to installPageOverlay; make both it and uninstallPageOverlay's shouldFade out default to false.
2135         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
2136         (WebKit::TiledCoreAnimationDrawingArea::destroyPageOverlayLayer): Disable implicit animations when removing a page overlay.
2137
2138 2013-01-24  Huang Dongsung  <luxtella@company100.net>
2139
2140         [EFL] Unreviewed build fix after r140752.
2141         https://bugs.webkit.org/show_bug.cgi?id=107886
2142
2143         Build break after r140752.
2144
2145         * PlatformEfl.cmake: Move DownloadSoupErrorsEfl and DownloadSoup to Shared/Downloads.
2146
2147 2013-01-24  Tim Horton  <timothy_horton@apple.com>
2148
2149         Fix NetworkProcess loading after r140730.
2150
2151         Reviewed by Sam Weinig.
2152
2153         If a process' sandbox profile path is empty, don't try to initialize the sandbox.
2154
2155         * Shared/mac/ChildProcessMac.mm:
2156         (WebKit::ChildProcess::initializeSandbox):
2157
2158 2013-01-24  Ryosuke Niwa  <rniwa@webkit.org>
2159
2160         Mac build fix after r140752.
2161
2162         * DerivedSources.make:
2163
2164 2013-01-24  Jae Hyun Park  <jae.park@company100.net>
2165
2166         Redundant LegacyReceiver attribute in WebPage.messages.in
2167         https://bugs.webkit.org/show_bug.cgi?id=107875
2168
2169         Reviewed by Anders Carlsson.
2170
2171         To generate WebPageMessageReceiver with legacy, just one LegacyReceiver
2172         attribute in WebPage.messages.in is enough. This patch removes this
2173         redundant attribute.
2174
2175         * WebProcess/WebPage/WebPage.messages.in:
2176
2177 2013-01-24  Anders Carlsson  <andersca@apple.com>
2178
2179         Fix release build.
2180
2181         * WebProcess/Storage/StorageAreaProxy.cpp:
2182         (WebKit::StorageAreaProxy::length):
2183
2184 2013-01-24  Alexey Proskuryakov  <ap@apple.com>
2185
2186         <rdar://problem/9971916> [WK2] Update sandbox extension usage
2187         https://bugs.webkit.org/show_bug.cgi?id=107861
2188
2189         Reviewed by Sam Weinig.
2190
2191         * Shared/SandboxExtension.h:
2192         * Shared/mac/SandboxExtensionMac.mm:
2193         (WebKit::wkSandboxExtensionType):
2194         * UIProcess/Downloads/DownloadProxy.cpp:
2195         (WebKit::DownloadProxy::decideDestinationWithSuggestedFilename):
2196         * UIProcess/WebContext.cpp:
2197         (WebKit::WebContext::createNewWebProcess):
2198         (WebKit::WebContext::processDidFinishLaunching):
2199         (WebKit::WebContext::startMemorySampler):
2200         * WebProcess/com.apple.WebProcess.sb.in:
2201
2202 2013-01-24  Brady Eidson  <beidson@apple.com>
2203
2204         Move Authentication and Downloads from WebProcess to Shared.
2205         https://bugs.webkit.org/show_bug.cgi?id=107879
2206
2207         Reviewed by Anders Carlsson.
2208
2209         * Shared/Authentication/AuthenticationManager.cpp: Renamed from Source/WebKit2/WebProcess/Authentication/AuthenticationManager.cpp.
2210         * Shared/Authentication/AuthenticationManager.h: Renamed from Source/WebKit2/WebProcess/Authentication/AuthenticationManager.h.
2211         * Shared/Authentication/AuthenticationManager.messages.in: Renamed from Source/WebKit2/WebProcess/Authentication/AuthenticationManager.messages.in.
2212         * Shared/Authentication/mac/AuthenticationManager.mac.mm: Renamed from Source/WebKit2/WebProcess/Authentication/mac/AuthenticationManager.mac.mm.
2213         * Shared/Downloads/Download.cpp: Renamed from Source/WebKit2/WebProcess/Downloads/Download.cpp.
2214         * Shared/Downloads/Download.h: Renamed from Source/WebKit2/WebProcess/Downloads/Download.h.
2215         * Shared/Downloads/DownloadAuthenticationClient.cpp: Renamed from Source/WebKit2/WebProcess/Downloads/DownloadAuthenticationClient.cpp.
2216         * Shared/Downloads/DownloadAuthenticationClient.h: Renamed from Source/WebKit2/WebProcess/Downloads/DownloadAuthenticationClient.h.
2217         * Shared/Downloads/DownloadManager.cpp: Renamed from Source/WebKit2/WebProcess/Downloads/DownloadManager.cpp.
2218         * Shared/Downloads/DownloadManager.h: Renamed from Source/WebKit2/WebProcess/Downloads/DownloadManager.h.
2219         * Shared/Downloads/cfnet/DownloadCFNet.cpp: Renamed from Source/WebKit2/WebProcess/Downloads/cfnet/DownloadCFNet.cpp.
2220         * Shared/Downloads/curl/DownloadCurl.cpp: Renamed from Source/WebKit2/WebProcess/Downloads/curl/DownloadCurl.cpp.
2221         * Shared/Downloads/efl/DownloadSoupErrorsEfl.cpp: Renamed from Source/WebKit2/WebProcess/Downloads/efl/DownloadSoupErrorsEfl.cpp.
2222         * Shared/Downloads/gtk/DownloadSoupErrorsGtk.cpp: Renamed from Source/WebKit2/WebProcess/Downloads/gtk/DownloadSoupErrorsGtk.cpp.
2223         * Shared/Downloads/mac/DownloadMac.mm: Renamed from Source/WebKit2/WebProcess/Downloads/mac/DownloadMac.mm.
2224         * Shared/Downloads/qt/DownloadQt.cpp: Renamed from Source/WebKit2/WebProcess/Downloads/qt/DownloadQt.cpp.
2225         * Shared/Downloads/qt/QtFileDownloader.cpp: Renamed from Source/WebKit2/WebProcess/Downloads/qt/QtFileDownloader.cpp.
2226         * Shared/Downloads/qt/QtFileDownloader.h: Renamed from Source/WebKit2/WebProcess/Downloads/qt/QtFileDownloader.h.
2227         * Shared/Downloads/soup/DownloadSoup.cpp: Renamed from Source/WebKit2/WebProcess/Downloads/soup/DownloadSoup.cpp.
2228         * Shared/Downloads/soup/DownloadSoupErrors.h: Renamed from Source/WebKit2/WebProcess/Downloads/soup/DownloadSoupErrors.h.
2229
2230         * CMakeLists.txt:
2231         * GNUmakefile.list.am:
2232         * Target.pri:
2233         * WebKit2.xcodeproj/project.pbxproj:
2234
2235 2013-01-24  Seokju Kwon  <seokju.kwon@gmail.com>
2236
2237         [EFL] Unreviewed build fix after r140711
2238         https://bugs.webkit.org/show_bug.cgi?id=107873
2239
2240         Unreviewed build fix.
2241
2242         Build break after r140711.
2243
2244         * CMakeLists.txt: Move WebKeyValueStorageManager to WebProcess/Storage.
2245
2246 2013-01-24  Jae Hyun Park  <jae.park@company100.net>
2247
2248         Coordinated Graphics: remove SurfaceUpdateInfo::encode/decode
2249         https://bugs.webkit.org/show_bug.cgi?id=107794
2250
2251         Reviewed by Anders Carlsson.
2252
2253         We want to remove the dependency on CoreIPC from SurfaceUpdateInfo
2254         because we will extract Coordinated Graphics from WK2. Since
2255         SurfaceUpdateInfo is only used in Coordinated Graphics, this patch
2256         moves it to Shared/CoordinatedGraphics, and removes CoreIPC
2257         dependency.
2258
2259         No new tests, no change in behavior.
2260
2261         * CMakeLists.txt:
2262         * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
2263         (CoreIPC::::encode):
2264         (CoreIPC):
2265         (CoreIPC::::decode):
2266         * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.h:
2267         (WebKit):
2268         * Shared/CoordinatedGraphics/SurfaceUpdateInfo.h: Renamed from Source/WebKit2/Shared/SurfaceUpdateInfo.h.
2269         (WebKit):
2270         (SurfaceUpdateInfo):
2271         (WebKit::SurfaceUpdateInfo::SurfaceUpdateInfo):
2272         * Shared/SurfaceUpdateInfo.cpp: Removed.
2273         * Target.pri:
2274
2275 2013-01-24  Anders Carlsson  <andersca@apple.com>
2276
2277         More StorageAreaProxy cleanup
2278         https://bugs.webkit.org/show_bug.cgi?id=107870
2279
2280         Reviewed by Beth Dakin.
2281
2282         Remove some unnecessary 'WebCore::' qualifications, 
2283         and implement StorageNamespaceProxy::storageArea.
2284         
2285         * WebProcess/Storage/StorageAreaProxy.cpp:
2286         * WebProcess/Storage/StorageAreaProxy.h:
2287         * WebProcess/Storage/StorageNamespaceProxy.cpp:
2288
2289 2013-01-24  Sam Weinig  <sam@webkit.org>
2290
2291         Cleanup sandbox initialization a bit
2292         https://bugs.webkit.org/show_bug.cgi?id=107847
2293
2294         Reviewed by Alexey Proskuryakov.
2295
2296         * NetworkProcess/NetworkProcess.cpp:
2297         (WebKit::NetworkProcess::initializeSandbox):
2298         * NetworkProcess/NetworkProcess.h:
2299         * NetworkProcess/mac/NetworkProcessMac.mm:
2300         (WebKit::NetworkProcess::initializeSandbox):
2301         * PluginProcess/PluginProcess.h:
2302         * Shared/ChildProcess.cpp:
2303         (WebKit::ChildProcess::initialize):
2304         (WebKit::ChildProcess::initializeSandbox):
2305         * Shared/ChildProcess.h:
2306         (ChildProcess):
2307         * Shared/SandboxInitializationParameters.h:
2308         (SandboxInitializationParameters):
2309         (WebKit::SandboxInitializationParameters::mode):
2310         (WebKit::SandboxInitializationParameters::setOverrideSandboxProfilePath):
2311         (WebKit::SandboxInitializationParameters::overrideSandboxProfilePath):
2312         (WebKit::SandboxInitializationParameters::setSandboxProfile):
2313         (WebKit::SandboxInitializationParameters::sandboxProfile):
2314         (WebKit::SandboxInitializationParameters::SandboxInitializationParameters):
2315         (WebKit::SandboxInitializationParameters::~SandboxInitializationParameters):
2316         * Shared/mac/ChildProcessMac.mm:
2317         (WebKit::ChildProcess::platformInitialize):
2318         (WebKit::ChildProcess::initializeSandbox):
2319         * Shared/mac/SandboxInitialiationParametersMac.mm:
2320         (WebKit::SandboxInitializationParameters::SandboxInitializationParameters):
2321         * WebProcess/WebProcess.cpp:
2322         (WebKit::WebProcess::initializeSandbox):
2323         * WebProcess/WebProcess.h:
2324         * WebProcess/mac/WebProcessMac.mm:
2325         (WebKit::ChildProcess::initializeSandbox):
2326
2327 2013-01-24  Anders Carlsson  <andersca@apple.com>
2328
2329         Add stubbed out StorageAreaProxy class
2330         https://bugs.webkit.org/show_bug.cgi?id=107864
2331
2332         Reviewed by Beth Dakin.
2333
2334         * WebKit2.xcodeproj/project.pbxproj:
2335         * WebProcess/Storage/StorageAreaProxy.cpp: Added.
2336         * WebProcess/Storage/StorageAreaProxy.h: Added.
2337
2338 2013-01-24  Csaba Osztrogonác  <ossy@webkit.org>
2339
2340         Unreviewed trivial buildfix after r140711.
2341
2342         * DerivedSources.pri:
2343         * Target.pri:
2344
2345 2013-01-24  Mark Hahnenberg  <mhahnenberg@apple.com>
2346
2347         Objective-C API: Rename JSValue.h/APIJSValue.h to JSCJSValue.h/JSValue.h
2348         https://bugs.webkit.org/show_bug.cgi?id=107327
2349
2350         Reviewed by Filip Pizlo.
2351
2352         We're renaming these two files, so we have to replace the names everywhere.
2353
2354         * WebProcess/WebPage/WebPage.cpp:
2355
2356 2013-01-24  Dean Jackson  <dino@apple.com>
2357
2358         Allow some plugin snapshot UI content to come from Injected Bundle
2359         https://bugs.webkit.org/show_bug.cgi?id=107852
2360
2361         Reviewed by Anders Carlsson.
2362
2363         Hook up three new methods: plugInStartLabelTitle, plugInStartLabelSubtitle and
2364         plugInExtraStyleSheet to allow some custom styling and content to come
2365         from the InjectedBundle.
2366
2367         * WebProcess/InjectedBundle/API/c/WKBundlePage.h: Callbacks added to
2368         WKBundlePageUIClient structure.
2369         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp: Stub implementations
2370         of the three new methods.
2371         (WebKit::InjectedBundlePageUIClient::plugInStartLabelTitle):
2372         (WebKit::InjectedBundlePageUIClient::plugInStartLabelSubtitle):
2373         (WebKit::InjectedBundlePageUIClient::plugInExtraStyleSheet):
2374         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
2375         (InjectedBundlePageUIClient):
2376         * WebProcess/WebCoreSupport/WebChromeClient.cpp: Call into the injected bundle
2377         for each of these methods.
2378         (WebKit::WebChromeClient::plugInStartLabelTitle):
2379         (WebKit::WebChromeClient::plugInStartLabelSubtitle):
2380         (WebKit::WebChromeClient::plugInExtraStyleSheet):
2381         * WebProcess/WebCoreSupport/WebChromeClient.h:
2382         (WebChromeClient): Declare the virtual methods in the Chrome
2383         Client so that they can accessed from WebCore eventually.
2384
2385 2013-01-24  Anders Carlsson  <andersca@apple.com>
2386
2387         Add stubbed out StorageNamespaceProxy class
2388         https://bugs.webkit.org/show_bug.cgi?id=107846
2389
2390         Reviewed by Sam Weinig.
2391
2392         Add new class.
2393
2394         * WebKit2.xcodeproj/project.pbxproj:
2395         * WebProcess/Storage/StorageNamespaceProxy.cpp: Added.
2396         * WebProcess/Storage/StorageNamespaceProxy.h: Added.
2397
2398 2013-01-24  Anders Carlsson  <andersca@apple.com>
2399
2400         Move WebKeyValueStorageManager to WebProcess/Storage.
2401
2402         Rubber-stamped by Sam Weinig.
2403
2404         Try this again, with DerivedSources.make correctly updated this time.
2405
2406         * DerivedSources.make:
2407         * WebKit2.xcodeproj/project.pbxproj:
2408         * WebProcess/Storage/WebKeyValueStorageManager.cpp: Renamed from Source/WebKit2/WebProcess/KeyValueStorage/WebKeyValueStorageManager.cpp.
2409         * WebProcess/Storage/WebKeyValueStorageManager.h: Renamed from Source/WebKit2/WebProcess/KeyValueStorage/WebKeyValueStorageManager.h.
2410         * WebProcess/Storage/WebKeyValueStorageManager.messages.in: Renamed from Source/WebKit2/WebProcess/KeyValueStorage/WebKeyValueStorageManager.messages.in.
2411
2412 2013-01-24  Christophe Dumez  <christophe.dumez@intel.com>
2413
2414         [EFL][WK2] Use C API inside ewk_favicon_database
2415         https://bugs.webkit.org/show_bug.cgi?id=107680
2416
2417         Reviewed by Kenneth Rohde Christiansen.
2418
2419         Use C API inside ewk_favicon_database instead of
2420         accessible the C++ classes and violating layering.
2421         We still rely on some C++ methods but this will be
2422         addressed later since there is no equivalent in
2423         the C API and it will require more refactoring.
2424
2425         * UIProcess/API/efl/ewk_context.cpp:
2426         (EwkContext::ensureFaviconDatabase):
2427         * UIProcess/API/efl/ewk_favicon_database.cpp:
2428         (EwkFaviconDatabase::EwkFaviconDatabase):
2429         (EwkFaviconDatabase::~EwkFaviconDatabase):
2430         (EwkFaviconDatabase::iconURLForPageURL):
2431         (EwkFaviconDatabase::iconForPageURL):
2432         (EwkFaviconDatabase::getIconSurfaceSynchronously):
2433         (EwkFaviconDatabase::iconDataReadyForPageURL):
2434         (ewk_favicon_database_async_icon_get):
2435         * UIProcess/API/efl/ewk_favicon_database_private.h:
2436         (EwkFaviconDatabase::create):
2437         (EwkFaviconDatabase):
2438
2439 2013-01-24  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
2440
2441         [EFL][WK2] Rename EwkViewImpl class to EwkView
2442         https://bugs.webkit.org/show_bug.cgi?id=107719
2443
2444         Reviewed by Andreas Kling.
2445
2446         Rename EwkViewImpl class to EwkView, due to ewk view
2447         refactoring plan (https://bugs.webkit.org/show_bug.cgi?id=107662#c1).
2448
2449         * PlatformEfl.cmake:
2450         * UIProcess/API/C/efl/WKView.cpp:
2451         (WKViewCreate):
2452         (WKViewCreateWithFixedLayout):
2453         (WKViewGetPage):
2454         (WKViewCreateSnapshot):
2455         * UIProcess/API/efl/EwkView.cpp: Renamed from Source/WebKit2/UIProcess/API/efl/EwkViewImpl.cpp.
2456         (pageViewMap):
2457         (EwkView::addToPageViewMap):
2458         (EwkView::removeFromPageViewMap):
2459         (EwkView::viewFromPageViewMap):
2460         (EwkView::EwkView):
2461         (EwkView::~EwkView):
2462         (EwkView::smartData):
2463         (EwkView::fromEvasObject):
2464         (EwkView::wkPage):
2465         (EwkView::setCursor):
2466         (EwkView::setDeviceScaleFactor):
2467         (EwkView::deviceScaleFactor):
2468         (EwkView::transformFromScene):
2469         (EwkView::transformToScene):
2470         (EwkView::transformToScreen):
2471         (EwkView::layerTreeRenderer):
2472         (EwkView::displayTimerFired):
2473         (EwkView::update):
2474         (EwkView::enterFullScreen):
2475         (EwkView::exitFullScreen):
2476         (EwkView::windowGeometry):
2477         (EwkView::setWindowGeometry):
2478         (EwkView::setImageData):
2479         (EwkView::size):
2480         (EwkView::isFocused):
2481         (EwkView::isVisible):
2482         (EwkView::title):
2483         (EwkView::inputMethodContext):
2484         (EwkView::themePath):
2485         (EwkView::setThemePath):
2486         (EwkView::customTextEncodingName):
2487         (EwkView::setCustomTextEncodingName):
2488         (EwkView::setMouseEventsEnabled):
2489         (EwkView::setTouchEventsEnabled):
2490         (EwkView::informIconChange):
2491         (EwkView::createGLSurface):
2492         (EwkView::enterAcceleratedCompositingMode):
2493         (EwkView::exitAcceleratedCompositingMode):
2494         (EwkView::requestColorPicker):
2495         (EwkView::dismissColorPicker):
2496         (EwkView::showContextMenu):
2497         (EwkView::hideContextMenu):
2498         (EwkView::requestPopupMenu):
2499         (EwkView::closePopupMenu):
2500         (EwkView::requestJSAlertPopup):
2501         (EwkView::requestJSConfirmPopup):
2502         (EwkView::requestJSPromptPopup):
2503         (EwkView::informDatabaseQuotaReached):
2504         (EwkView::informURLChange):
2505         (EwkView::windowFeatures):
2506         (EwkView::createNewPage):
2507         (EwkView::close):
2508         (EwkView::onMouseDown):
2509         (EwkView::onMouseUp):
2510         (EwkView::onMouseMove):
2511         (EwkView::feedTouchEvents):
2512         (EwkView::onTouchDown):
2513         (EwkView::onTouchUp):
2514         (EwkView::onTouchMove):
2515         (EwkView::onFaviconChanged):
2516         (EwkView::takeSnapshot):
2517         * UIProcess/API/efl/EwkView.h: Renamed from Source/WebKit2/UIProcess/API/efl/EwkViewImpl.h.
2518         (WebKit):
2519         (WebCore):
2520         (EwkView):
2521         (EwkView::view):
2522         (EwkView::page):
2523         (EwkView::ewkContext):
2524         (EwkView::settings):
2525         (EwkView::backForwardList):
2526         (EwkView::url):
2527         (EwkView::faviconURL):
2528         (EwkView::mouseEventsEnabled):
2529         (EwkView::touchEventsEnabled):
2530         (EwkView::setNeedsSurfaceResize):
2531         (EwkView::smartCallback):
2532         (EwkView::pageClient):
2533         (EwkView::setPageScaleFactor):
2534         (EwkView::pageScaleFactor):
2535         (EwkView::setPagePosition):
2536         (EwkView::pagePosition):
2537         (EwkView::isHardwareAccelerated):
2538         (EwkView::setDrawsBackground):
2539         (EwkView::evasGLContext):
2540         (EwkView::evasGLSurface):
2541         * UIProcess/API/efl/ewk_context_menu.cpp:
2542         (EwkContextMenu::EwkContextMenu):
2543         * UIProcess/API/efl/ewk_context_menu_private.h:
2544         (EwkContextMenu::create):
2545         (EwkContextMenu):
2546         * UIProcess/API/efl/ewk_download_job.cpp:
2547         (EwkDownloadJob::EwkDownloadJob):
2548         (EwkDownloadJob::view):
2549         * UIProcess/API/efl/ewk_download_job_private.h:
2550         (EwkDownloadJob::create):
2551         (EwkDownloadJob):
2552         * UIProcess/API/efl/ewk_popup_menu.cpp:
2553         (EwkPopupMenu::EwkPopupMenu):
2554         (EwkPopupMenu::close):
2555         * UIProcess/API/efl/ewk_popup_menu_private.h:
2556         (EwkPopupMenu::create):
2557         (EwkPopupMenu):
2558         * UIProcess/API/efl/ewk_settings.cpp:
2559         (EwkSettings::preferences):
2560         * UIProcess/API/efl/ewk_settings_private.h:
2561         (EwkSettings::create):
2562         (EwkSettings::EwkSettings):
2563         (EwkSettings):
2564         * UIProcess/API/efl/ewk_view.cpp:
2565         (createEwkView):
2566         (ewk_view_base_add):
2567         * UIProcess/API/efl/ewk_view.h:
2568         * UIProcess/API/efl/ewk_view_private.h:
2569         * UIProcess/API/efl/ewk_window_features.cpp:
2570         (EwkWindowFeatures::EwkWindowFeatures):
2571         (EwkWindowFeatures::setToolbarVisible):
2572         (EwkWindowFeatures::setStatusBarVisible):
2573         (EwkWindowFeatures::setMenuBarVisible):
2574         (EwkWindowFeatures::setResizable):
2575         * UIProcess/API/efl/ewk_window_features_private.h:
2576         (EwkWindowFeatures::create):
2577         (EwkWindowFeatures):
2578         * UIProcess/cairo/BackingStoreCairo.cpp:
2579         (WebKit::BackingStore::incorporateUpdate):
2580         * UIProcess/efl/ContextHistoryClientEfl.cpp:
2581         (WebKit::ContextHistoryClientEfl::didNavigateWithNavigationData):
2582         (WebKit::ContextHistoryClientEfl::didPerformClientRedirect):
2583         (WebKit::ContextHistoryClientEfl::didPerformServerRedirect):
2584         (WebKit::ContextHistoryClientEfl::didUpdateHistoryTitle):
2585         * UIProcess/efl/ContextMenuClientEfl.cpp:
2586         (ContextMenuClientEfl::ContextMenuClientEfl):
2587         * UIProcess/efl/ContextMenuClientEfl.h:
2588         (WebKit::ContextMenuClientEfl::create):
2589         (ContextMenuClientEfl):
2590         * UIProcess/efl/DownloadManagerEfl.cpp:
2591         (WebKit::DownloadManagerEfl::decideDestinationWithSuggestedFilename):
2592         (WebKit::DownloadManagerEfl::didFail):
2593         (WebKit::DownloadManagerEfl::didCancel):
2594         (WebKit::DownloadManagerEfl::didFinish):
2595         (WebKit::DownloadManagerEfl::registerDownload):
2596         * UIProcess/efl/DownloadManagerEfl.h:
2597         (DownloadManagerEfl):
2598         * UIProcess/efl/FindClientEfl.cpp:
2599         (WebKit::FindClientEfl::didFindString):
2600         (WebKit::FindClientEfl::didFailToFindString):
2601         (WebKit::FindClientEfl::FindClientEfl):
2602         * UIProcess/efl/FindClientEfl.h:
2603         (WebKit::FindClientEfl::create):
2604         (FindClientEfl):
2605         * UIProcess/efl/FormClientEfl.cpp:
2606         (WebKit::FormClientEfl::willSubmitForm):
2607         (WebKit::FormClientEfl::FormClientEfl):
2608         * UIProcess/efl/FormClientEfl.h:
2609         (WebKit::FormClientEfl::create):
2610         (FormClientEfl):
2611         * UIProcess/efl/InputMethodContextEfl.cpp:
2612         (WebKit::InputMethodContextEfl::InputMethodContextEfl):
2613         (WebKit::InputMethodContextEfl::onIMFInputSequenceComplete):
2614         (WebKit::InputMethodContextEfl::onIMFPreeditSequenceChanged):
2615         (WebKit::InputMethodContextEfl::updateTextInputState):
2616         * UIProcess/efl/InputMethodContextEfl.h:
2617         (WebKit::InputMethodContextEfl::create):
2618         (InputMethodContextEfl):
2619         * UIProcess/efl/PageClientBase.cpp:
2620         (WebKit::PageClientBase::PageClientBase):
2621         (WebKit::PageClientBase::view):
2622         (WebKit::PageClientBase::createDrawingAreaProxy):
2623         (WebKit::PageClientBase::setViewNeedsDisplay):
2624         (WebKit::PageClientBase::viewSize):
2625         (WebKit::PageClientBase::isViewFocused):
2626         (WebKit::PageClientBase::isViewVisible):
2627         (WebKit::PageClientBase::processDidCrash):
2628         (WebKit::PageClientBase::didRelaunchProcess):
2629         (WebKit::PageClientBase::toolTipChanged):
2630         (WebKit::PageClientBase::setCursor):
2631         (WebKit::PageClientBase::createPopupMenuProxy):
2632         (WebKit::PageClientBase::createContextMenuProxy):
2633         (WebKit::PageClientBase::enterAcceleratedCompositingMode):
2634         (WebKit::PageClientBase::exitAcceleratedCompositingMode):
2635         (WebKit::PageClientBase::updateTextInputState):
2636         (WebKit::PageClientBase::handleDownloadRequest):
2637         * UIProcess/efl/PageClientBase.h:
2638         (PageClientBase):
2639         * UIProcess/efl/PageClientDefaultImpl.cpp:
2640         (WebKit::PageClientDefaultImpl::PageClientDefaultImpl):
2641         (WebKit::PageClientDefaultImpl::updateViewportSize):
2642         (WebKit::PageClientDefaultImpl::convertToDeviceSpace):
2643         (WebKit::PageClientDefaultImpl::convertToUserSpace):
2644         (WebKit::PageClientDefaultImpl::didChangeContentsSize):
2645         * UIProcess/efl/PageClientDefaultImpl.h:
2646         (WebKit::PageClientDefaultImpl::create):
2647         (PageClientDefaultImpl):
2648         * UIProcess/efl/PageClientLegacyImpl.cpp:
2649         (WebKit::PageClientLegacyImpl::PageClientLegacyImpl):
2650         (WebKit::PageClientLegacyImpl::didCommitLoad):
2651         (WebKit::PageClientLegacyImpl::updateViewportSize):
2652         (WebKit::PageClientLegacyImpl::didChangeViewportProperties):
2653         (WebKit::PageClientLegacyImpl::didChangeContentsSize):
2654         (WebKit::PageClientLegacyImpl::pageDidRequestScroll):
2655         (WebKit::PageClientLegacyImpl::didRenderFrame):
2656         (WebKit::PageClientLegacyImpl::pageTransitionViewportReady):
2657         * UIProcess/efl/PageClientLegacyImpl.h:
2658         (WebKit::PageClientLegacyImpl::create):
2659         (PageClientLegacyImpl):
2660         * UIProcess/efl/PageLoadClientEfl.cpp:
2661         (WebKit::PageLoadClientEfl::didReceiveTitleForFrame):
2662         (WebKit::PageLoadClientEfl::didReceiveIntentForFrame):
2663         (WebKit::PageLoadClientEfl::registerIntentServiceForFrame):
2664         (WebKit::PageLoadClientEfl::didChangeProgress):
2665         (WebKit::PageLoadClientEfl::didFinishLoadForFrame):
2666         (WebKit::PageLoadClientEfl::didFailLoadWithErrorForFrame):
2667         (WebKit::PageLoadClientEfl::didStartProvisionalLoadForFrame):
2668         (WebKit::PageLoadClientEfl::didReceiveServerRedirectForProvisionalLoadForFrame):
2669         (WebKit::PageLoadClientEfl::didFailProvisionalLoadWithErrorForFrame):
2670         (WebKit::PageLoadClientEfl::didCommitLoadForFrame):
2671         (WebKit::PageLoadClientEfl::didChangeBackForwardList):
2672         (WebKit::PageLoadClientEfl::didSameDocumentNavigationForFrame):
2673         (WebKit::PageLoadClientEfl::didReceiveAuthenticationChallengeInFrame):
2674         (WebKit::PageLoadClientEfl::PageLoadClientEfl):
2675         * UIProcess/efl/PageLoadClientEfl.h:
2676         (WebKit::PageLoadClientEfl::create):
2677         (PageLoadClientEfl):
2678         (WebKit::PageLoadClientEfl::view):
2679         * UIProcess/efl/PagePolicyClientEfl.cpp:
2680         (WebKit::PagePolicyClientEfl::decidePolicyForNavigationAction):
2681         (WebKit::PagePolicyClientEfl::decidePolicyForNewWindowAction):
2682         (WebKit::PagePolicyClientEfl::PagePolicyClientEfl):
2683         * UIProcess/efl/PagePolicyClientEfl.h:
2684         (WebKit::PagePolicyClientEfl::create):
2685         (PagePolicyClientEfl):
2686         * UIProcess/efl/PageUIClientEfl.cpp:
2687         (WebKit::PageUIClientEfl::PageUIClientEfl):
2688         (WebKit::PageUIClientEfl::close):
2689         (WebKit::PageUIClientEfl::takeFocus):
2690         (WebKit::PageUIClientEfl::focus):
2691         (WebKit::PageUIClientEfl::unfocus):
2692         (WebKit::PageUIClientEfl::runJavaScriptAlert):
2693         (WebKit::PageUIClientEfl::runJavaScriptConfirm):
2694         (WebKit::PageUIClientEfl::runJavaScriptPrompt):
2695         (WebKit::PageUIClientEfl::toolbarsAreVisible):
2696         (WebKit::PageUIClientEfl::setToolbarsAreVisible):
2697         (WebKit::PageUIClientEfl::menuBarIsVisible):
2698         (WebKit::PageUIClientEfl::setMenuBarIsVisible):
2699         (WebKit::PageUIClientEfl::statusBarIsVisible):
2700         (WebKit::PageUIClientEfl::setStatusBarIsVisible):
2701         (WebKit::PageUIClientEfl::isResizable):
2702         (WebKit::PageUIClientEfl::setIsResizable):
2703         (WebKit::PageUIClientEfl::getWindowFrame):
2704         (WebKit::PageUIClientEfl::setWindowFrame):
2705         (WebKit::PageUIClientEfl::exceededDatabaseQuota):
2706         (WebKit::PageUIClientEfl::runOpenPanel):
2707         (WebKit::PageUIClientEfl::createNewPage):
2708         (WebKit::PageUIClientEfl::showColorPicker):
2709         (WebKit::PageUIClientEfl::hideColorPicker):
2710         * UIProcess/efl/PageUIClientEfl.h:
2711         (WebKit::PageUIClientEfl::create):
2712         (PageUIClientEfl):
2713         * UIProcess/efl/PageViewportControllerClientEfl.cpp:
2714         (WebKit::PageViewportControllerClientEfl::PageViewportControllerClientEfl):
2715         (WebKit::PageViewportControllerClientEfl::drawingArea):
2716         (WebKit::PageViewportControllerClientEfl::updateViewportSize):
2717         (WebKit::PageViewportControllerClientEfl::didChangeContentsSize):
2718         (WebKit::PageViewportControllerClientEfl::setViewportPosition):
2719         (WebKit::PageViewportControllerClientEfl::setPageScaleFactor):
2720         (WebKit::PageViewportControllerClientEfl::didResumeContent):
2721         (WebKit::PageViewportControllerClientEfl::didChangeVisibleContents):
2722         * UIProcess/efl/PageViewportControllerClientEfl.h:
2723         (WebKit::PageViewportControllerClientEfl::create):
2724         (PageViewportControllerClientEfl):
2725         * UIProcess/efl/VibrationClientEfl.cpp:
2726         (VibrationClientEfl::vibrateCallback):
2727         (VibrationClientEfl::cancelVibrationCallback):
2728         (VibrationClientEfl::create):
2729         (VibrationClientEfl::VibrationClientEfl):
2730         (VibrationClientEfl::~VibrationClientEfl):
2731         * UIProcess/efl/VibrationClientEfl.h:
2732         (VibrationClientEfl):
2733         * UIProcess/efl/WebContextMenuProxyEfl.cpp:
2734         (WebKit::WebContextMenuProxyEfl::WebContextMenuProxyEfl):
2735         (WebKit::WebContextMenuProxyEfl::showContextMenu):
2736         (WebKit::WebContextMenuProxyEfl::hideContextMenu):
2737         * UIProcess/efl/WebContextMenuProxyEfl.h:
2738         (WebKit::WebContextMenuProxyEfl::create):
2739         (WebContextMenuProxyEfl):
2740         * UIProcess/efl/WebFullScreenManagerProxyEfl.cpp:
2741         (WebKit::WebFullScreenManagerProxy::enterFullScreen):
2742         (WebKit::WebFullScreenManagerProxy::exitFullScreen):
2743         * UIProcess/efl/WebInspectorProxyEfl.cpp:
2744         (WebKit::WebInspectorProxy::platformCreateInspectorPage):
2745         * UIProcess/efl/WebPageProxyEfl.cpp:
2746         (WebKit::WebPageProxy::viewWidget):
2747         * UIProcess/efl/WebPopupMenuProxyEfl.cpp:
2748         (WebKit::WebPopupMenuProxyEfl::WebPopupMenuProxyEfl):
2749         (WebKit::WebPopupMenuProxyEfl::showPopupMenu):
2750         (WebKit::WebPopupMenuProxyEfl::hidePopupMenu):
2751         * UIProcess/efl/WebPopupMenuProxyEfl.h:
2752         (WebKit::WebPopupMenuProxyEfl::create):
2753         (WebPopupMenuProxyEfl):
2754
2755 2013-01-24  Andras Becsi  <andras.becsi@digia.com>
2756
2757         Remove nonexistent header from WebKit2/Target.pri
2758
2759         Unreviewed cleanup after r139919.
2760
2761         * Target.pri:
2762
2763 2013-01-24  Michael Brüning  <michael.bruning@digia.com>
2764
2765         [Qt][WK2] Pages / resources cannot be loaded from qrc files.
2766         https://bugs.webkit.org/show_bug.cgi?id=107031
2767
2768         Reviewed by Jocelyn Turcotte.
2769
2770         Enables WebKit2 Qt applications to load files from the bundled
2771         qrc files. This is achieved by adding a url scheme handler for
2772         the "qrc" scheme using the application scheme handler and ignoring
2773         all handlers for the qrc application scheme that the application might
2774         set.
2775
2776         * UIProcess/API/qt/qquickurlschemedelegate.cpp:
2777         (QQuickQrcSchemeDelegate::QQuickQrcSchemeDelegate):
2778         (QQuickQrcSchemeDelegate::readResourceAndSend):
2779         * UIProcess/API/qt/qquickurlschemedelegate_p.h:
2780         (QQuickQrcSchemeDelegate):
2781         * UIProcess/API/qt/qquickwebview.cpp:
2782         (QQuickWebViewPrivate::initialize):
2783         (QQuickWebViewExperimental::schemeDelegates_Append):
2784         (QQuickWebViewExperimental::invokeApplicationSchemeHandler):
2785         * UIProcess/API/qt/tests/qmltests/WebView/tst_applicationScheme.qml:
2786         * UIProcess/API/qt/tests/qmltests/common/qrctest.html: Added.
2787         * UIProcess/API/qt/tests/qmltests/resources.qrc:
2788
2789 2013-01-24  Krzysztof Czech  <k.czech@samsung.com>
2790
2791         [EFL][WK2] Expose accessibility hierarchy in WebKit2-EFL.
2792         https://bugs.webkit.org/show_bug.cgi?id=106216
2793
2794         Reviewed by Andreas Kling.
2795
2796         Create WebPage's accessibility object on WebPage initialization.
2797         Wrap around WebCore's accessibility objects.
2798         Updating accessibility hierarchy. Expands accessibility implementation
2799         of WebKit-GTK to be used in EFL.
2800
2801         * PlatformEfl.cmake:
2802         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2803         (WebKit::WebFrameLoaderClient::dispatchDidClearWindowObjectInWorld):
2804         * WebProcess/WebPage/WebPage.h:
2805         (WebPage):
2806         * WebProcess/WebPage/atk/WebPageAccessibilityObjectAtk.cpp:
2807         (webPageAccessibilityObjectGetIndexInParent):
2808         (web_page_accessibility_object_init):
2809         * WebProcess/WebPage/efl/WebPageEfl.cpp:
2810         (WebKit::WebPage::platformInitialize):
2811         (WebKit):
2812         (WebKit::WebPage::updateAccessibilityTree):
2813
2814 2013-01-23  Seokju Kwon  <seokju.kwon@gmail.com>
2815
2816         [EFL] Unreviewed build fix after r140605
2817         https://bugs.webkit.org/show_bug.cgi?id=107787
2818
2819         Unreviewed build fix.
2820
2821         Build break after r140605.
2822
2823         * UIProcess/WebBatteryManagerProxy.cpp:
2824         * UIProcess/WebBatteryManagerProxy.h:
2825         (WebBatteryManagerProxy):
2826         * UIProcess/WebNetworkInfoManagerProxy.cpp:
2827         * UIProcess/WebNetworkInfoManagerProxy.h:
2828         (WebNetworkInfoManagerProxy):
2829         * UIProcess/WebVibrationProxy.cpp:
2830         * UIProcess/WebVibrationProxy.h:
2831         (WebVibrationProxy):
2832         * UIProcess/soup/WebSoupRequestManagerProxy.cpp:
2833         * UIProcess/soup/WebSoupRequestManagerProxy.h:
2834         (WebSoupRequestManagerProxy):
2835         * WebProcess/Battery/WebBatteryManager.cpp:
2836         * WebProcess/Battery/WebBatteryManager.h:
2837         (WebBatteryManager):
2838         * WebProcess/NetworkInfo/WebNetworkInfoManager.cpp:
2839         * WebProcess/NetworkInfo/WebNetworkInfoManager.h:
2840         (WebNetworkInfoManager):
2841         * WebProcess/soup/WebSoupRequestManager.cpp:
2842         * WebProcess/soup/WebSoupRequestManager.h:
2843         (WebSoupRequestManager):
2844
2845 2013-01-23  Sam Weinig  <sam@webkit.org>
2846
2847         Cleanup the names of the WebKit2 xpc services
2848         https://bugs.webkit.org/show_bug.cgi?id=107759
2849
2850         Reviewed by Anders Carlsson.
2851
2852         Renames:
2853             com.apple.WebKit2.WebProcessService -> com.apple.WebKit.WebContent
2854             com.apple.WebKit2.WebProcessServiceForWebKitDevelopment -> com.apple.WebKit.WebContent.Development
2855
2856         * Configurations/BaseXPCService.xcconfig: Copied from Source/WebKit2/Configurations/WebProcessService.xcconfig.
2857         * Configurations/WebContentService.xcconfig: Copied from Source/WebKit2/Configurations/WebProcessService.xcconfig.
2858         * Configurations/WebContentServiceForDevelopment.xcconfig: Copied from Source/WebKit2/Configurations/WebProcessServiceForWebKitDevelopment.xcconfig.
2859         * Configurations/WebProcessService.xcconfig: Removed.
2860         * Configurations/WebProcessServiceForWebKitDevelopment.xcconfig: Removed.
2861         Rename config files to match new service names and add base config.
2862
2863         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
2864         (WebKit::connectToWebProcessServiceForWebKitDevelopment):
2865         (WebKit::createWebProcessServiceForWebKitDevelopment):
2866         (WebKit::createWebProcessService):
2867         * WebKit2.xcodeproj/project.pbxproj:
2868         * WebKit2Service: Removed.
2869         * WebProcessService/Info.plist:
2870         * WebProcessServiceForWebKitDevelopment/Info.plist:
2871         Update for new names.
2872
2873 2013-01-23  Seulgi Kim  <seulgikim@company100.net>
2874
2875         Coordinated Graphics : Reduce the number of calls to Functional and number of IPC messages by sending the created/deleted layers in a vector.
2876         https://bugs.webkit.org/show_bug.cgi?id=107625
2877
2878         Reviewed by Benjamin Poulain.
2879
2880         Currently, the number of messages sent by CoordinatedLayerTreeHost is
2881         equal to the number of layers created/deleted even though they requested
2882         in the same cycle.
2883         It's not good since CoreIPC creates functional before sending messages,
2884         and CoordinatedLayerTreeHostProxy creates functional before
2885         create/delete layers.
2886
2887         This patch makes CoordinatedLayerTreeHost send just one
2888         CreateCompositingLayers message and CoordinatedLayerTreeHostProxy create
2889         just one functional in a cycle. The same work has been done with
2890         DeleteCompositingLayers message.
2891
2892         This patch will reduce the number of calls to Functional and number of
2893         IPC messages by sending the created/deleted layers in a vector.
2894
2895         No new tests, no change in behavior.
2896
2897         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:
2898         (WebKit::CoordinatedLayerTreeHostProxy::createCompositingLayers):
2899         (WebKit::CoordinatedLayerTreeHostProxy::deleteCompositingLayers):
2900         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:
2901         (CoordinatedLayerTreeHostProxy):
2902         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.messages.in:
2903         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
2904         (WebKit::LayerTreeRenderer::createLayers):
2905         (WebKit):
2906         (WebKit::LayerTreeRenderer::deleteLayers):
2907         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
2908         (LayerTreeRenderer):
2909         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
2910         (WebKit::CoordinatedLayerTreeHost::createCompositingLayers):
2911         (WebKit::CoordinatedLayerTreeHost::deleteCompositingLayers):
2912
2913 2013-01-23  Huang Dongsung  <luxtella@company100.net>
2914
2915         Coordinated Graphics: Add LegacyReceiver to messages.in files.
2916         https://bugs.webkit.org/show_bug.cgi?id=107760
2917
2918         Reviewed by Anders Carlsson.
2919
2920         After r140605, LegacyReceiver attribute is needed to use recevier specific
2921         memeber functions.
2922
2923         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.messages.in:
2924         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.messages.in:
2925
2926 2013-01-23  Sheriff Bot  <webkit.review.bot@gmail.com>
2927
2928         Unreviewed, rolling out r140612.
2929         http://trac.webkit.org/changeset/140612
2930         https://bugs.webkit.org/show_bug.cgi?id=107768
2931
2932          broke the build (Requested by smfr on #webkit).
2933
2934         * WebKit2.xcodeproj/project.pbxproj:
2935         * WebProcess/KeyValueStorage/WebKeyValueStorageManager.cpp: Renamed from Source/WebKit2/WebProcess/Storage/WebKeyValueStorageManager.cpp.
2936         (WebKit):
2937         (WebKit::WebKeyValueStorageManager::supplementName):
2938         (WebKit::WebKeyValueStorageManager::WebKeyValueStorageManager):
2939         (WebKit::WebKeyValueStorageManager::initialize):
2940         (WebKit::keyValueStorageOriginIdentifiers):
2941         (WebKit::WebKeyValueStorageManager::dispatchDidGetKeyValueStorageOrigins):
2942         (WebKit::WebKeyValueStorageManager::getKeyValueStorageOrigins):
2943         (WebKit::WebKeyValueStorageManager::didFinishLoadingOrigins):
2944         (WebKit::WebKeyValueStorageManager::dispatchDidModifyOrigin):
2945         (WebKit::WebKeyValueStorageManager::deleteEntriesForOrigin):
2946         (WebKit::WebKeyValueStorageManager::deleteAllEntries):
2947         * WebProcess/KeyValueStorage/WebKeyValueStorageManager.h: Renamed from Source/WebKit2/WebProcess/Storage/WebKeyValueStorageManager.h.
2948         (WebKit):
2949         (WebKeyValueStorageManager):
2950         (WebKit::WebKeyValueStorageManager::localStorageDirectory):
2951         (WebKit::WebKeyValueStorageManager::indexedDBDatabaseDirectory):
2952         * WebProcess/KeyValueStorage/WebKeyValueStorageManager.messages.in: Renamed from Source/WebKit2/WebProcess/Storage/WebKeyValueStorageManager.messages.in.
2953
2954 2013-01-23  Ian Vollick  <vollick@chromium.org>
2955
2956         Introduce the "stacking container" concept.
2957         https://bugs.webkit.org/show_bug.cgi?id=107734
2958
2959         Reviewed by Simon Fraser.
2960
2961         A stacking container is treated just like a stacking context. That
2962         is, it has z-order lists, it and its descendants are stacked as a
2963         unit, and when the RenderLayerCompositor does its overlap testing,
2964         the composited regions for all layer lists take effect only once the
2965         stacking container is done being processed.
2966
2967         This patch also adds the function RenderLayer::isStackingContainer().
2968         Currently, this is equivalent to RenderLayer::isStackingContext(),
2969         but in future, the definition of stacking container will be broadened
2970         to encompass more than just stacking contexts.
2971
2972         Other than the addition of this extra function, the patch is mostly
2973         comprised of name changes. Any code that used to refer to the
2974         stacking context concept, but didn't necessarily require a stacking
2975         context in the strict, CSS-sense, was switched to refer to stacking
2976         container. No functionality was changed.
2977
2978         No new tests, no change in functionality.
2979
2980         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
2981         (WebKit::updateOffsetFromViewportForSelf):
2982
2983 2013-01-23  Anders Carlsson  <andersca@apple.com>
2984
2985         Move Move WebKeyValueStorageManager to WebProcess/Storage.
2986
2987         Rubber-stamped by Sam Weinig.
2988
2989         * WebKit2.xcodeproj/project.pbxproj:
2990         * WebProcess/Storage/WebKeyValueStorageManager.cpp: Renamed from Source/WebKit2/WebProcess/KeyValueStorage/WebKeyValueStorageManager.cpp.
2991         * WebProcess/Storage/WebKeyValueStorageManager.h: Renamed from Source/WebKit2/WebProcess/KeyValueStorage/WebKeyValueStorageManager.h.
2992         * WebProcess/Storage/WebKeyValueStorageManager.messages.in: Renamed from Source/WebKit2/WebProcess/KeyValueStorage/WebKeyValueStorageManager.messages.in.
2993
2994 2013-01-23  Anders Carlsson  <andersca@apple.com>
2995
2996         Remove LegacyReceiver from a couple of .messages.in files
2997         https://bugs.webkit.org/show_bug.cgi?id=107749
2998
2999         Reviewed by Beth Dakin.
3000
3001         * UIProcess/Notifications/WebNotificationManagerProxy.cpp:
3002         (WebKit):
3003         * UIProcess/Notifications/WebNotificationManagerProxy.h:
3004         (WebNotificationManagerProxy):
3005         * UIProcess/Notifications/WebNotificationManagerProxy.messages.in:
3006         * UIProcess/WebGeolocationManagerProxy.cpp:
3007         * UIProcess/WebGeolocationManagerProxy.h:
3008         (WebGeolocationManagerProxy):
3009         * UIProcess/WebGeolocationManagerProxy.messages.in:
3010         * UIProcess/WebIconDatabase.cpp:
3011         * UIProcess/WebIconDatabase.h:
3012         (WebIconDatabase):
3013         * UIProcess/WebIconDatabase.messages.in:
3014         * UIProcess/WebKeyValueStorageManagerProxy.cpp:
3015         * UIProcess/WebKeyValueStorageManagerProxy.h:
3016         (WebKeyValueStorageManagerProxy):
3017         * UIProcess/WebKeyValueStorageManagerProxy.messages.in:
3018         * UIProcess/WebMediaCacheManagerProxy.cpp:
3019         * UIProcess/WebMediaCacheManagerProxy.h:
3020         (WebMediaCacheManagerProxy):
3021         * UIProcess/WebMediaCacheManagerProxy.messages.in:
3022         * UIProcess/WebResourceCacheManagerProxy.cpp:
3023         * UIProcess/WebResourceCacheManagerProxy.h:
3024         (WebResourceCacheManagerProxy):
3025         * UIProcess/WebResourceCacheManagerProxy.messages.in:
3026         * WebProcess/Geolocation/WebGeolocationManager.cpp:
3027         * WebProcess/Geolocation/WebGeolocationManager.h:
3028         (WebGeolocationManager):
3029         * WebProcess/Geolocation/WebGeolocationManager.messages.in:
3030         * WebProcess/IconDatabase/WebIconDatabaseProxy.cpp:
3031         * WebProcess/IconDatabase/WebIconDatabaseProxy.h:
3032         (WebIconDatabaseProxy):
3033         * WebProcess/IconDatabase/WebIconDatabaseProxy.messages.in:
3034         * WebProcess/KeyValueStorage/WebKeyValueStorageManager.cpp:
3035         * WebProcess/KeyValueStorage/WebKeyValueStorageManager.h:
3036         (WebKeyValueStorageManager):
3037         * WebProcess/KeyValueStorage/WebKeyValueStorageManager.messages.in:
3038         * WebProcess/MediaCache/WebMediaCacheManager.cpp:
3039         * WebProcess/MediaCache/WebMediaCacheManager.h:
3040         (WebMediaCacheManager):
3041         * WebProcess/MediaCache/WebMediaCacheManager.messages.in:
3042         * WebProcess/Notifications/WebNotificationManager.cpp:
3043         * WebProcess/Notifications/WebNotificationManager.h:
3044         (WebNotificationManager):
3045         * WebProcess/Notifications/WebNotificationManager.messages.in:
3046         * WebProcess/ResourceCache/WebResourceCacheManager.cpp:
3047         * WebProcess/ResourceCache/WebResourceCacheManager.h:
3048         (WebResourceCacheManager):
3049         * WebProcess/ResourceCache/WebResourceCacheManager.messages.in:
3050         * WebProcess/WebPage/WebPageGroupProxy.cpp:
3051         (WebKit):
3052         * WebProcess/WebPage/WebPageGroupProxy.h:
3053         (WebPageGroupProxy):
3054         * WebProcess/WebPage/WebPageGroupProxy.messages.in:
3055
3056 2013-01-23  Anders Carlsson  <andersca@apple.com>
3057
3058         Message receiver generation should work in terms of MessageReceiver objects
3059         https://bugs.webkit.org/show_bug.cgi?id=107742
3060
3061         Reviewed by Beth Dakin.
3062
3063         The generated message receiver code should generate the MessageReceiver
3064         member functions didReceiveMessage and didReceiveSyncMessage instead of
3065         receiver specific member functions.
3066
3067         * NetworkProcess/NetworkConnectionToWebProcess.messages.in:
3068         * NetworkProcess/NetworkProcess.messages.in:
3069         * NetworkProcess/NetworkResourceLoader.messages.in:
3070         * PluginProcess/PluginControllerProxy.messages.in:
3071         * PluginProcess/PluginProcess.messages.in:
3072         * PluginProcess/WebProcessConnection.messages.in:
3073         * Scripts/webkit2/messages.py:
3074         (generate_message_handler):
3075         * Scripts/webkit2/messages_unittest.py:
3076         * Scripts/webkit2/model.py:
3077         (MessageReceiver.__init__):
3078         (MessageReceiver.has_attribute):
3079         * Scripts/webkit2/parser.py:
3080         (parse):
3081         * Shared/Network/CustomProtocols/CustomProtocolManager.messages.in:
3082         * Shared/Plugins/NPObjectMessageReceiver.messages.in:
3083         * Shared/WebConnection.messages.in:
3084         * Shared/mac/SecItemShim.messages.in:
3085         * SharedWorkerProcess/SharedWorkerProcess.messages.in:
3086         * UIProcess/Downloads/DownloadProxy.messages.in:
3087         * UIProcess/DrawingAreaProxy.messages.in:
3088         * UIProcess/Network/CustomProtocols/CustomProtocolManagerProxy.messages.in:
3089         * UIProcess/Network/NetworkProcessProxy.messages.in:
3090         * UIProcess/Notifications/WebNotificationManagerProxy.messages.in:
3091         * UIProcess/Plugins/PluginProcessProxy.messages.in:
3092         * UIProcess/SharedWorkers/SharedWorkerProcessProxy.messages.in:
3093         * UIProcess/WebApplicationCacheManagerProxy.messages.in:
3094         * UIProcess/WebContext.messages.in:
3095         * UIProcess/WebCookieManagerProxy.messages.in:
3096         * UIProcess/WebDatabaseManagerProxy.messages.in:
3097         * UIProcess/WebFullScreenManagerProxy.messages.in:
3098         * UIProcess/WebGeolocationManagerProxy.messages.in:
3099         * UIProcess/WebIconDatabase.messages.in:
3100         * UIProcess/WebInspectorProxy.messages.in:
3101         * UIProcess/WebKeyValueStorageManagerProxy.messages.in:
3102         * UIProcess/WebMediaCacheManagerProxy.messages.in:
3103         * UIProcess/WebPageProxy.messages.in:
3104         * UIProcess/WebProcessProxy.messages.in:
3105         * UIProcess/WebResourceCacheManagerProxy.messages.in:
3106         * UIProcess/mac/RemoteLayerTreeHost.messages.in:
3107         * UIProcess/mac/SecItemShimProxy.messages.in:
3108         * WebProcess/ApplicationCache/WebApplicationCacheManager.messages.in:
3109         * WebProcess/Authentication/AuthenticationManager.h:
3110         * WebProcess/Authentication/AuthenticationManager.messages.in:
3111         * WebProcess/Cookies/WebCookieManager.messages.in:
3112         * WebProcess/FullScreen/WebFullScreenManager.messages.in:
3113         * WebProcess/Geolocation/WebGeolocationManager.messages.in:
3114         * WebProcess/IconDatabase/WebIconDatabaseProxy.messages.in:
3115         * WebProcess/KeyValueStorage/WebKeyValueStorageManager.messages.in:
3116         * WebProcess/MediaCache/WebMediaCacheManager.messages.in:
3117         * WebProcess/Network/NetworkProcessConnection.messages.in:
3118         * WebProcess/Network/WebResourceLoader.messages.in:
3119         * WebProcess/Notifications/WebNotificationManager.messages.in:
3120         * WebProcess/Plugins/PluginProcessConnection.messages.in:
3121         * WebProcess/Plugins/PluginProxy.messages.in:
3122         * WebProcess/ResourceCache/WebResourceCacheManager.messages.in:
3123         * WebProcess/WebCoreSupport/WebDatabaseManager.messages.in:
3124         * WebProcess/WebPage/DrawingArea.messages.in:
3125         * WebProcess/WebPage/EventDispatcher.messages.in:
3126         * WebProcess/WebPage/WebInspector.messages.in:
3127         * WebProcess/WebPage/WebPage.messages.in:
3128         * WebProcess/WebPage/WebPageGroupProxy.messages.in:
3129         * WebProcess/WebProcess.messages.in:
3130
3131 2013-01-23  Huang Dongsung  <luxtella@company100.net>
3132
3133         Coordinated Graphics: remove CoordinatedLayerInfo::encode/decode.
3134         https://bugs.webkit.org/show_bug.cgi?id=107644
3135
3136         Reviewed by Anders Carlsson.
3137
3138         We want to remove the dependency on CoreIPC from CoordinatedLayerInfo because we
3139         will extract Coordinated Graphics from WK2.
3140
3141         * CMakeLists.txt:
3142         * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
3143         (CoreIPC::::encode):
3144         (CoreIPC):
3145         (CoreIPC::::decode):
3146         * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.h:
3147         (WebKit):
3148         * Shared/CoordinatedGraphics/CoordinatedLayerInfo.cpp: Removed.
3149         * Shared/CoordinatedGraphics/CoordinatedLayerInfo.h:
3150         * Target.pri:
3151
3152 2013-01-23  Kenneth Rohde Christiansen  <kenneth@webkit.org>
3153
3154         [WK2] Replace some internal API usage in EwkView with C API
3155         https://bugs.webkit.org/show_bug.cgi?id=107652
3156
3157         Reviewed by Benjamin Poulain.
3158
3159         * UIProcess/API/efl/ewk_view.cpp:
3160         (ewk_view_url_set):
3161         (ewk_view_reload):
3162         (ewk_view_reload_bypass_cache):
3163         (ewk_view_stop):
3164         (ewk_view_load_progress_get):
3165         (ewk_view_scale_set):
3166         (ewk_view_scale_get):
3167         (ewk_view_device_pixel_ratio_get):
3168         (ewk_view_back):
3169         (ewk_view_forward):
3170         (ewk_view_back_possible):
3171         (ewk_view_forward_possible):
3172         (ewk_view_html_string_load):
3173         (ewk_view_text_find):
3174         (ewk_view_text_find_highlight_clear):
3175         (ewk_view_text_matches_count):
3176         (ewk_view_inspector_show):
3177         (ewk_view_inspector_close):
3178
3179 2013-01-23  Alexey Proskuryakov  <ap@apple.com>
3180
3181         Build fix.
3182
3183         * Platform/CoreIPC/Connection.cpp: (CoreIPC::Connection::sendSyncMessage):
3184         Copy/paste trouble fix.
3185
3186 2013-01-23  Alexey Proskuryakov  <ap@apple.com>
3187
3188         <rdar://problem/13064414> REGRESSION(r139514): didFailToSendSyncMessage is not called by Connection
3189         https://bugs.webkit.org/show_bug.cgi?id=107715
3190
3191         Reviewed by Anders Carlsson.
3192
3193         * Platform/CoreIPC/Connection.cpp:
3194         (CoreIPC::Connection::sendSyncMessage):
3195         (CoreIPC::Connection::sendSyncMessageFromSecondaryThread):
3196         Correcting a misapplied edit - didFailToSendSyncMessage should be kept in main
3197         thread message sending, not in secondary thread.
3198
3199 2013-01-23  Brady Eidson  <beidson@apple.com>
3200
3201         Recursion handling cancelled authentication challenges in NetworkProcess
3202         <rdar://problem/13024541> and https://bugs.webkit.org/show_bug.cgi?id=107702
3203
3204         Reviewed by Alexey Proskuryakov.
3205
3206         This turned in to both a bug fix with authentication and a minimal refactoring of NetworkResourceLoader.
3207
3208         - Rename ::stop to ::resourceHandleStopped
3209         - Move all cleanup code to ::resourceHandleStopped
3210         - Schedule a resourceHandleStopped call when an authentication cancellation occurs
3211         - Tell the WebResourceLoader to cancel when an authentication cancellation occurs
3212
3213         * NetworkProcess/NetworkResourceLoader.cpp:
3214         (WebKit::NetworkResourceLoader::~NetworkResourceLoader):
3215         (WebKit::NetworkResourceLoader::start):
3216         (WebKit::NetworkResourceLoader::performStops):
3217         (WebKit::NetworkResourceLoader::resourceHandleStopped):
3218         (WebKit::NetworkResourceLoader::didFail):
3219         (WebKit::NetworkResourceLoader::receivedAuthenticationCancellation):
3220         * NetworkProcess/NetworkResourceLoader.h:
3221
3222         * WebProcess/Network/WebResourceLoader.cpp:
3223         (WebKit::WebResourceLoader::cancelResourceLoader):
3224         * WebProcess/Network/WebResourceLoader.h:
3225         * WebProcess/Network/WebResourceLoader.messages.in:
3226
3227 2013-01-23  Christophe Dumez  <christophe.dumez@intel.com>
3228
3229         [EFL][WK2] Use C API inside ewk_cookie_manager
3230         https://bugs.webkit.org/show_bug.cgi?id=107661
3231
3232         Reviewed by Alexey Proskuryakov.
3233
3234         Use C API inside ewk_cookie_manager instead of
3235         accessing C++ classes directly and violating
3236         layering.
3237
3238         * PlatformEfl.cmake:
3239         * UIProcess/API/C/soup/WKCookieManagerSoup.cpp: Added.
3240         (toSoupCookiePersistentStorageType):
3241         (WKCookieManagerSetCookiePersistentStorage): Add C API for setting
3242         the persistent storage path and type when using libsoup.
3243         * UIProcess/API/C/soup/WKCookieManagerSoup.h: Added.
3244         * UIProcess/API/efl/ewk_context.cpp:
3245         (EwkContext::cookieManager):
3246         * UIProcess/API/efl/ewk_cookie_manager.cpp:
3247         (EwkCookieManager::EwkCookieManager):
3248         (EwkCookieManager::~EwkCookieManager):
3249         (EwkCookieManager::setPersistentStorage):
3250         (EwkCookieManager::setHTTPAcceptPolicy):
3251         (EwkCookieManager::clearHostnameCookies):
3252         (EwkCookieManager::clearAllCookies):
3253         (EwkCookieManager::watchChanges):
3254         (EwkCookieManager::getHostNamesWithCookies):
3255         (EwkCookieManager::getHTTPAcceptPolicy):
3256         (ewk_cookie_manager_persistent_storage_set):
3257         (ewk_cookie_manager_hostname_cookies_clear):
3258         * UIProcess/API/efl/ewk_cookie_manager_private.h:
3259         (EwkCookieManager::create):
3260         (EwkCookieManager):
3261
3262 2013-01-22  Anders Carlsson  <andersca@apple.com>
3263
3264         Use a platforom strategy for local storage
3265         https://bugs.webkit.org/show_bug.cgi?id=107600
3266
3267         Reviewed by Andreas Kling.
3268
3269         Update for new storage strategy.
3270
3271         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
3272         (WebKit::WebPlatformStrategies::createStorageStrategy):
3273         (WebKit):
3274         * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
3275         (WebPlatformStrategies):
3276
3277 2013-01-21  Kentaro Hara  <haraken@chromium.org>
3278
3279         Implement UIEvent constructor
3280         https://bugs.webkit.org/show_bug.cgi?id=107430
3281
3282         Reviewed by Adam Barth.
3283
3284         Editor's draft: https://dvcs.w3.org/hg/d4e/raw-file/tip/source_respec.htm
3285
3286         UIEvent constructor is implemented under a DOM4_EVENTS_CONSTRUCTOR flag,
3287         which is enabled on Safari and Chromium for now.
3288
3289         * Configurations/FeatureDefines.xcconfig:
3290
3291 2013-01-22  Alexey Proskuryakov  <ap@apple.com>
3292
3293         Move sandbox initialization to ChildProcess
3294         https://bugs.webkit.org/show_bug.cgi?id=107486
3295
3296         Reviewed by Sam Weinig.
3297
3298         * NetworkProcess/NetworkProcess.h:
3299         * NetworkProcess/NetworkProcess.cpp:
3300         (WebKit::NetworkProcess::initializeSandbox): Removed. We no longer need this function
3301         to be implemented in each process type.
3302
3303         * NetworkProcess/mac/NetworkProcessMac.mm:
3304         (WebKit::initializeSandbox): Removed a custom (and incomplete) implementation.
3305         (WebKit::NetworkProcess::processUpdateSandboxInitializationParameters): Clear
3306         sandbox profile path in parameters, telling ChildProcess to not enter a sandbox.
3307
3308         * PluginProcess/PluginProcess.h:
3309         * PluginProcess/mac/PluginProcessMac.mm:
3310         Added FIXMEs, saying that we should switch to ChildProcess implementation.
3311
3312         * Shared/ChildProcess.cpp: Dummy implementations for other platforms.
3313
3314         * Shared/ChildProcess.h: Added processUpdateSandboxInitializationParameters, which
3315         child processes will override to change sandbox initialization parameters.
3316
3317         * Shared/SandboxInitializationParameters.h: Added.
3318         * Shared/mac/SandboxInitialiationParametersMac.mm: Added.
3319         Abstracts out sandbox parameter vector for coding safety. Encapsulates other
3320         things that subclasses will want to do differently.
3321
3322         * Shared/mac/ChildProcessMac.mm: (WebKit::ChildProcess::initializeSandbox):
3323         Added a shared implementation, based largely on WebProcess version.
3324
3325         * SharedWorkerProcess/mac/SharedWorkerProcessMac.mm: Removed custom sandboxing code.
3326
3327         * WebKit2.xcodeproj/project.pbxproj: Added SandboxInitializationParameters files.
3328
3329         * WebProcess/WebProcess.cpp:
3330         * WebProcess/WebProcess.h:
3331         Updated dummy implementations to match ChildProcess.
3332
3333         * WebProcess/mac/WebProcessMac.mm:
3334         (WebKit): Moved sandboxing code to ChildProcess.
3335         (WebKit::WebProcess::processUpdateSandboxInitializationParameters): Override
3336         profile path, because default one doesn't work for WebProcessService.
3337
3338 2013-01-22  Joseph Pecoraro  <pecoraro@apple.com>
3339
3340         [Mac] Enable Page Visibility (PAGE_VISIBILITY_API)
3341         https://bugs.webkit.org/show_bug.cgi?id=107230
3342
3343         Reviewed by David Kilzer.
3344
3345         * Configurations/FeatureDefines.xcconfig:
3346
3347 2013-01-22  Joseph Pecoraro  <pecoraro@apple.com>
3348
3349         Remove empty file WebPageProxyMessageKinds.h
3350         https://bugs.webkit.org/show_bug.cgi?id=107335
3351
3352         Reviewed by Kentaro Hara.
3353
3354         * GNUmakefile.list.am:
3355         * Shared/CoreIPCSupport/WebPageProxyMessageKinds.h: Removed.
3356
3357 2013-01-22  Tim Horton  <timothy_horton@apple.com>
3358
3359         PDFPlugin: Build PDFPlugin everywhere, enable at runtime
3360         https://bugs.webkit.org/show_bug.cgi?id=107117
3361
3362         Reviewed by Alexey Proskuryakov.
3363
3364         Since PDFLayerController SPI is all forward-declared, the plugin should build
3365         on all Mac platforms, and can be enabled at runtime.
3366
3367         * Configurations/FeatureDefines.xcconfig:
3368
3369 2013-01-21  Dirk Schulze  <dschulze@adobe.com>
3370
3371         Add build flag for Canvas's Path object (disabled by default)
3372         https://bugs.webkit.org/show_bug.cgi?id=107473
3373
3374         Reviewed by Dean Jackson.
3375
3376         Add CANVAS_PATH build flag to build systems.
3377
3378         * Configurations/FeatureDefines.xcconfig:
3379
3380 2013-01-21  Jinwoo Song  <jinwoo7.song@samsung.com>
3381
3382         [EFL][WK2] Add APIs to set/get view source mode
3383         https://bugs.webkit.org/show_bug.cgi?id=106633
3384
3385         Reviewed by Gyuyoung Kim.
3386
3387         Added APIs to set/get view source mode for enabling to load
3388         the source code of the web page.
3389
3390         * UIProcess/API/efl/ewk_view.cpp:
3391         (ewk_view_source_mode_set):
3392         (ewk_view_source_mode_get):
3393         * UIProcess/API/efl/ewk_view.h:
3394         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
3395         (TEST_F):
3396         * UIProcess/WebPageProxy.cpp:
3397         (WebKit::WebPageProxy::WebPageProxy):
3398         (WebKit::WebPageProxy::setMainFrameInViewSourceMode):
3399         * UIProcess/WebPageProxy.h:
3400         (WebKit::WebPageProxy::mainFrameInViewSourceMode):
3401         (WebPageProxy):
3402
3403 2013-01-21  Sudarsana Nagineni  <sudarsana.nagineni@intel.com>
3404
3405         [EFL][WK2] Implement WebInspector::localizedStringsURL() on EFL
3406         https://bugs.webkit.org/show_bug.cgi?id=107363
3407
3408         Reviewed by Benjamin Poulain.
3409
3410         Implement WebInspector::localizedStringsURL() method to return the
3411         file URL of the localizedStrings.js.
3412
3413         This prevents printing warnings about "Localized string not found" in
3414         the console and fixes Web inspector related failing tests on the bots.
3415
3416         * WebProcess/WebPage/efl/WebInspectorEfl.cpp:
3417         (WebKit::WebInspector::localizedStringsURL):
3418
3419 2013-01-21  Kiran Muppala  <cmuppala@apple.com>
3420
3421         Enable process suppression by default on Mac
3422         https://bugs.webkit.org/show_bug.cgi?id=106804
3423
3424         Reviewed by Alexey Proskuryakov.
3425
3426         * UIProcess/WebContext.cpp:
3427         (WebKit::WebContext::WebContext): Change initialized value of
3428         m_processSuppressionEnabled from false to true.
3429         * UIProcess/mac/WebContextMac.mm:
3430         (WebKit::WebContext::platformInitialize): Since process suppression
3431         is no longer disabled on construction, do not disable it for global
3432         child processes either.  Instead enable occlusion notifications as
3433         they are needed to trigger process suppression.
3434
3435 2013-01-17  Andy Estes  <aestes@apple.com>
3436
3437         Add a USE() macro for content filtering code
3438         https://bugs.webkit.org/show_bug.cgi?id=107098
3439
3440         Reviewed by Mark Rowe.
3441
3442         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
3443         (InitWebCoreSystemInterface): Use USE(CONTENT_FILTERING).
3444
3445 2013-01-21  Anders Carlsson  <andersca@apple.com>
3446
3447         Don't null out the IPC connection in ChildProcess:terminate
3448         https://bugs.webkit.org/show_bug.cgi?id=107469
3449         <rdar://problem/13015294>
3450
3451         Reviewed by Dan Bernstein.
3452
3453         We already invalidate the connection, and Connection::sendMessage checks if a connection
3454         is valid and bails if it isn't, so the only thing that nulling out the connection here does
3455         is that it would force us to add random connection null checks everywhere.
3456
3457         * Shared/ChildProcess.cpp:
3458         (WebKit::ChildProcess::terminate):
3459
3460 2013-01-21  Joone Hur  <joone.hur@intel.com>
3461
3462         [EFL] API unit tests are running extremely slow on the bots
3463         https://bugs.webkit.org/show_bug.cgi?id=104665
3464
3465         Reviewed by Gyuyoung Kim.
3466
3467         Clear HTTP cache files before running the unit tests, which prevents 
3468         performance degradation due to so many cache files.
3469
3470         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp:
3471         (EWK2UnitTest::EWK2UnitTestBase::SetUp):
3472